Commit Graph

582 Commits

Author SHA1 Message Date
Azareal 9fd88bd6bc verify Site.URL on start-up 2020-08-13 09:46:10 +10:00
Azareal fbed07a8b4 add m4a file extension 2020-08-12 18:24:41 +10:00
Azareal e9819389af cover avatars with AvatarResBase config setting 2020-07-31 22:45:20 +10:00
Azareal 4606a49886 add tgz file extension 2020-07-31 15:58:17 +10:00
Azareal 4680aef783 set RefNoRef to true when using an external domain for StaticResBase 2020-07-31 15:53:33 +10:00
Azareal f502bf4f53 subresource integrity 2020-07-31 15:33:29 +10:00
Azareal 26ad61057a cover dynamically loaded static resources
cover default noavatars
2020-07-31 09:40:14 +10:00
Azareal 43d72e6f3b wip allow for more cdns
add res template function
add ExtraCSPOrigins config setting
add StaticResBase config setting
skip flush directives
2020-07-30 18:10:29 +10:00
Azareal ed64b8f29b eliminate allocs for getting static resources
optimise two char emoticons
add 30 parser tests
2020-07-26 14:36:40 +10:00
Azareal be609b47ce new modtools ux
- don't allow users to select things they shouldn't be able to
- hide mod options the user doesn't have access to
- highlight options which can be selected
- stop counting topics twice when they're clicked on multiple times

fix modtools not opening in some cases
fix command orders in batch files
fix global.js's getExt()
reduce boilerplate
2020-07-19 13:26:56 +10:00
Azareal 0c230e12ec add WSUser.WriteToPageBytesMulti 2020-07-16 20:51:34 +10:00
Azareal 96b61078c5 hide modtool options we don't have access to on forum and topics pages
use hookgen for route_topic_list_start hook
add route_topic_list_mostviewed_start hook
2020-07-15 18:27:36 +10:00
Azareal 32bd1a5e28 let admins reset default emojis 2020-07-15 17:05:06 +10:00
Azareal 5bfc5e3e40 unit tests for profile comment visibility 2020-07-15 16:59:47 +10:00
Azareal b1af963916 Add per-user profile comment visibility settings.
Honor user blocks in ProfileReplyEditSubmit.
Reduce boilerplate.

Update account_privacy_profile_comments phrase.
Add account_privacy_profile_comments_public phrase.
Add account_privacy_profile_comments_registered phrase.
Add account_privacy_profile_comments_self phrase.
Add account_privacy_enable_embeds phrase.

Add profile_comments column to users table.
Add who_can_convo column to users table.

You will need to run the updater / patcher for this commit.
2020-07-15 07:50:29 +10:00
Azareal 5ac7739648 Config.NoEmbed should override user preferences. 2020-06-29 21:40:52 +10:00
Azareal c4f2f0df90 support youtu.be urls
add noscript tags for video embeds
support youtube timestamps
validate youtube video parameters

add more parser tests
2020-06-25 17:46:09 +10:00
Azareal 7f1cd665ca fix csps for embeds being reset by next post 2020-06-25 12:36:06 +10:00
Azareal 572ff8e073 token based anti-spam for when javascript is disabled
reduce the number of allocs when generating templates
2020-06-19 16:38:32 +10:00
Azareal 195b41cb79 stop suspicious email check breaking optional emails 2020-06-19 14:22:41 +10:00
Azareal 2c220c47df docs for weakpass.json
grammar
add a weakpass literal
2020-06-19 13:03:10 +10:00
Azareal 3efd887b1a cover common mutations of literal definitions
add seven char weak password definitions to take advantage of mutations
avoid majority of the weak password logic for really long passwords
2020-06-18 13:37:05 +10:00
Azareal 08d5e2e0d8 add more weak password definitions
move the weak password logic to it's own file
add another weak password test case and split the test function
2020-06-18 12:39:21 +10:00
Azareal f0c9544af6 make it easier to define weak password definitions
add tests for weak passwords
make it easier to check values of errors returned from weak password
loosen weak password requirements for long passwords
reduce boilerplate when loading json files
only check for email in passwords when it is longer than two chars
more canonemail tests
2020-06-18 08:03:36 +10:00
Azareal 0254687d5b oh 2020-06-16 13:25:38 +10:00
Azareal bb0f6be91c canonalize emails properly
shorten var names
2020-06-16 12:07:21 +10:00
Azareal 304c246cb2 security: stop exempting video sites in frame-src on pages which don't have video embeds
perf: reduce allocs in action posts
perf: avoid allocing a map and slice for single reply posts when it is liked and the post also has an attachment.
perf: use hookgen for topic_reply_row_assign hook.
perf: stop unnecessarily indirecting r in topic_reply_row_assign hook.
perf: try optimising reqUserList logic in Topic.Replies()
2020-06-09 12:04:58 +10:00
Azareal 019efc8c62 add support for niconico videos
tweak tempra simple text attach padding
2020-06-08 22:19:32 +10:00
Azareal 8be3f79abb improve text file attachment blocks 2020-06-08 21:13:19 +10:00
Azareal a8702b617f initial AText 2020-06-08 17:04:47 +10:00
Azareal 8ef9dc8353 strip bbcode tags from ogdesc meta blocks for topics
add topic_ogdesc_assign hook
initialise hooks after filling slices in bbcode init
hoist poll input checks out of inner loops in CreateTopicSubmit
shorten variable names and reduce boilerplate
2020-06-08 12:18:17 +10:00
Azareal 07d478179d implement HooksNoRet and HooksSkip
use hookgen for route_forum_list_start
use hookgen for forums_frow_assign
change forums_frow_assign to a noret hook
save bytes and reduce boilerplate
2020-05-26 17:53:56 +10:00
Azareal 67772f2f9a avoid double indirect for header in simple_forum_check_pre_perms hook
avoid double indirect for header in forum_check_pre_perms hook
use hookgen for forum_check_pre_perms hook
2020-05-26 11:46:02 +10:00
Azareal 13552ee662 meta hook api
add route_topic_list_mostviewed_start hook
shorten some extend.go var names
2020-05-24 17:22:00 +10:00
Azareal 6746c9c91b add audio player
add wav, oga, ogv, ogx file extensions
2020-05-05 18:10:19 +10:00
Azareal 365b84c81b allow uploads for apng and ogg.
add missing var
2020-05-01 07:32:34 +10:00
Azareal c32498d543 use a video player for uploaded videos
optimise the parser
2020-04-30 16:28:01 +10:00
Azareal b915131ab4 avoid writer indirects in templates 2020-04-30 13:04:52 +10:00
Azareal ab9dc20c3c optimise away the array on single phrase
use sync.Pool to optimise CompressBytesGzip()
2020-04-29 10:26:15 +10:00
Azareal a7773d0ca2 optimise bunit 2020-04-29 09:49:26 +10:00
Azareal 5b0fcd91d1 we don't use pFrag in topic replies 2020-04-28 08:23:21 +10:00
Azareal 46a87defee optimise topic pages
optimise profiles
simple nil ptr handling in template boolean expressions
2020-04-27 22:41:55 +10:00
Azareal 01cece2ad6 cache the second page of the topic list too 2020-04-13 16:44:20 +10:00
Azareal faf215f388 try speeding up static files with brotli
track ref routes for a bit to debug them
hit more bots with MicroNotFound
2020-04-13 13:28:52 +10:00
Azareal fbc50c9086 eliminate string allocs for HasWidgets
add BuildWidgets3 to avoid string allocs and redundant w.Write calls in templates
2020-04-12 15:37:38 +10:00
Azareal 5fe0c8c95b add BuildWidget2 to avoid allocing as many strings in templates for docks
dynamic load /topics/ page where possible
reduce boilerplate
2020-04-12 15:00:15 +10:00
Azareal 5a9e0c72d3 try to optimise DefaultLikeStore.BulkExists
initial like tests
2020-04-10 11:32:02 +10:00
Azareal d74471d591 fix createdAt error for reply likes on newer mariadb 2020-04-10 08:44:52 +10:00
Azareal 709b0d5541 save bytes 2020-04-05 13:18:36 +10:00
Azareal e2293b3495 rudimentary css minification
eliminate carriage returns in scripts
2020-04-03 15:53:15 +10:00
Azareal 4bfb8b0005 missed a spot 2020-04-03 09:06:26 +10:00
Azareal 00a2456376 save bytes in search queries 2020-04-03 09:00:58 +10:00
Azareal 8b059ac877 other mfa store tests
save a few bytes
2020-04-03 08:24:32 +10:00
Azareal 95d3f9ebe1 try to reduce noise in tests
save bytes
2020-04-03 06:25:55 +10:00
Azareal 1fe51768f0 initial mfa tests
save a few bytes
2020-04-03 06:19:42 +10:00
Azareal e7b2333481 update second scratch slot properly 2020-04-02 21:00:01 +10:00
Azareal bc16b724c2 avoid loading as many alerts outside of the bounding box 2020-03-31 22:33:40 +10:00
Azareal 48b0b410c9 add a few more parser tests
save bytes in the parser
save allocs in external image embeds in the parser
save alloc bytes in convos
2020-03-28 14:48:42 +10:00
Azareal d3b2721746 optimise attach exts
optimise PrepResources
2020-03-28 09:10:54 +10:00
Azareal cd66782129 push content type for opensearch
don't insert a last ip on installation
save bytes and allocs in the parser
add attach parser test cases
more benchmarks
2020-03-28 07:01:44 +10:00
Azareal b53577a126 fix MicroNotFound
reduce allocs in cdn push
2020-03-27 22:00:29 +10:00
Azareal 3adee57b37 save allocs in router
better logging for bad char in path
router_pre_route hook now returns properly
2020-03-27 16:05:35 +10:00
Azareal dd5aef22dd fix the order of the status code / header pushes in errors 2020-03-27 13:41:28 +10:00
Azareal a47a0318a7 increase the number of agents on the ua chart
optimise mfaVerifySession
reduce boilerplate for populating the menu items
shorten ua phrases for semrush and aspiegel
rename account_username_updated phrase to account_name_updated
2020-03-24 12:07:30 +10:00
Azareal 0635627950 minify menu templates
save bytes in init.js
2020-03-23 11:37:35 +10:00
Azareal a3d6f1c844 minify interpreted templates
save bytes in init.js
2020-03-23 11:18:10 +10:00
Azareal a668cd296b save bytes in the client templates
rename template file and functions to reduce bandwidth usage
replace x-loggedin with theoretically faster x-mem
remove redundant check in ua loop
move extraData initialisation down to where it's needed
2020-03-23 09:14:08 +10:00
Azareal ade8f82af7 add python and go user agents.
add new bot class for python, go and curl to reduce resource usage.
don't push canonicals for loggedin users
try to avoid pushing google site verify when it isn't necessary
give ahrefs the semrush treatment
2020-03-22 14:37:45 +10:00
Azareal f86346ba22 reduce boilerplate in the client template builder
save a few more bytes in client templates
shave down img tags and global.js mini parse
remove comment in topic alt userinfo
2020-03-22 12:37:32 +10:00
Azareal f074b5578c fix account tmpls breaking due to time elapsed changes 2020-03-22 12:20:13 +10:00
Azareal 75ed0cd5f2 save bytes in client templates 2020-03-22 10:25:10 +10:00
Azareal 22ec566a2c add website datenbank user agent
reduce redundancy and fix sublties in StaticFile()
2020-03-21 17:44:33 +10:00
Azareal 6a7b8fd3ee map msnbot to bing and avoid bytes for ahrefs too 2020-03-19 07:21:06 +10:00
Azareal b66a494f1c Revert "Revert "will a pointer make this faster...?""
This reverts commit 501bcc2425.
2020-03-18 19:21:34 +10:00
Azareal 501bcc2425 Revert "will a pointer make this faster...?"
This reverts commit 8e414486b8.
2020-03-15 21:34:57 +10:00
Azareal 8e414486b8 will a pointer make this faster...? 2020-03-15 17:06:44 +10:00
Azareal 8d19048c0d reduce bytes used on semrush 2020-03-14 12:09:18 +10:00
Azareal 372508bf98 fix poll results on ajax topic and eliminate unnecessary allocs for resources that aren't used 2020-03-13 12:56:23 +10:00
Azareal aa32bd335c try to avoid as many upfront gzip allocs to avoid wasting resources when they're not needed
avoid gzip for guests on routeAPI
2020-03-12 16:52:26 +10:00
Azareal 17c8f7604a rename avatar to img to save a few bytes in alerts 2020-03-12 13:29:19 +10:00
Azareal 61688a0c6d improve efficiency for small static files 2020-03-12 13:00:04 +10:00
Azareal 30b68945b4 guarantee more space for alerts 2020-03-12 11:08:56 +10:00
Azareal d43bffdec5 experiment with ajax load for topic
track route perf for BadRoute
2020-03-11 13:26:33 +10:00
Azareal aa303dc14d use empty string instead of 0 for pruned ips
eliminate a WriteRune call in BuildAlertSb
2020-03-09 17:11:58 +10:00
Azareal 28f210371e try to optimise routeAPI 2020-03-09 15:16:44 +10:00
Azareal b04d77d7b6 optimise topic lists by caching common qcounts for getList stmts
recalc forum topic counts
reduce thaw period to 3
cache top 8 forums instead of 5
optimise GetListByForum with zero topics
add Each method to ForumStore
2020-03-09 13:51:44 +10:00
Azareal 5007ddcb1e fix tests 2020-03-08 18:10:56 +10:00
Azareal f5c9a34fdd simple top forum topiclist caching
reduce thaw period to 4
fix the _ ua bug
try using a hard period for routeAPI to avoid unneccessary churn for a return string that is unlikely to change
2020-03-08 18:04:37 +10:00
Azareal 7d2be466b3 optimise ua tracking
reduce number of bytes used when we don't know the lang
add more spammy domain strings
2020-03-08 14:15:27 +10:00
Azareal f3bdfffbed avoid allocs for guest alert etags
use phrase file modtime instead of instance start time for routeAPIPhrases to avoid cache churn
2020-03-07 12:59:06 +10:00
Azareal 83a2659b1c this too x.x 2020-03-07 07:55:26 +10:00
Azareal 133c240350 experiment with range header in StaticFile
optimise StaticFile with StrLength
add things i forgot yesterday
2020-03-07 07:52:58 +10:00
Azareal 8f21d34964 experiment with bce in plist 2020-03-05 14:43:40 +10:00
Azareal c31ca03a0d use string builder in buildFlexiWhere
add string builder growth hints
track favicon perf
2020-03-05 09:56:45 +10:00
Azareal 28daeee702 use string builder for alert api 2020-03-04 14:31:11 +10:00
Azareal 24107aaef1 initial reduce pointer derefs and improve bce in templates 2020-03-03 23:02:46 +10:00
Azareal 2330b5bfeb optimise topic list orderby
filter out forums with no topics from search queries
update go version in go.mod
2020-03-03 14:25:18 +10:00
Azareal 7c3c8dcae0 unify single forums in topic lists and forum pages with GetListByForum
add GetListByForum method
remove forums with topic counts of zero from filter lists
avoid locking whenever possible in route view counter
2020-03-01 16:22:43 +10:00
Azareal b1c9e0d11c swap TopicCountInForums's implementation out for a saner one...
clean up repetition in route legends
2020-02-29 17:34:38 +10:00
Azareal ae8c27fc2d remove redundant topiccount query in topiclist slow path 2020-02-29 15:38:30 +10:00