Commit Graph

558 Commits

Author SHA1 Message Date
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
Azareal 46732286e5 optimise route perf tracking
expand route perf tracking to more routes
2020-02-29 11:10:39 +10:00
Azareal 03862d1b09 experiment with more route perf tracking 2020-02-29 09:11:07 +10:00
Azareal c403b4a85a optimise os tracking
optimise memory tracking

add panel_stats_routes_perf_head phrase
2020-02-28 15:47:43 +10:00
Azareal ca8411a519 experimental route perf pane
add 1.14 to travis test list
more qutils tests

add panel_menu_stats_routes_perf phrase
2020-02-28 14:52:45 +10:00
Azareal 671134b1f3 try to fix the int max bug again 2020-02-28 11:56:06 +10:00
Azareal 4ea5e91f2d tweak the check 2020-02-28 11:41:16 +10:00
Azareal 8db923cb6e troubleshoot anomalous int max with stacktrace 2020-02-28 09:21:38 +10:00
Azareal af7b6ebbcb try to fix int max perf counter bug 2020-02-27 11:45:07 +10:00
Azareal ea1037bd63 track favicon stats
experiment with tracking average route performance
temporary error route stub
optimise dumprequest
add DisableAnalytics config setting
fix double hyphens in slugs being mistaken for sql injection
more querygen tests

You wil need to run the updater / patcher for this commit.
2020-02-26 20:34:38 +10:00
Azareal 04fdf4c318 optimise agent and system counters 2020-02-25 18:12:54 +10:00
Azareal 64335cf1ef optimise lang counter
optimise dumprequest
add more suspicious phrases
capture more router gen errors
2020-02-25 14:25:50 +10:00
Azareal fb942fd100 optimise route counter
allow for multiple keys in mysql AddKey
add SimpleBulkInsert method
add BulkInsert acc builder
add DateOlderThanQ AccSelectBuilder method
2020-02-24 21:15:17 +10:00
Azareal 9c185cd1fd add missing perf units 2020-02-24 18:28:43 +10:00
Azareal 459d745cb1 initial perf anaytics
add tasks to debug page
ignore .git on debug page for speed

add perfchunks table

Renamed phrases (changed statistics to stats):
panel_menu_stats
panel_menu_stats_posts
panel_menu_stats_topics
panel_menu_stats_forums
panel_menu_stats_routes
panel_menu_stats_agents
panel_menu_stats_systems
panel_menu_stats_languages
panel_menu_stats_referrers
panel_menu_stats_memory
panel_menu_stats_active_memory
panel_menu_stats_perf
panel_stats_views_head_suffix
panel_stats_user_agents_head
panel_stats_forums_head
panel_stats_languages_head
panel_stats_post_counts_head
panel_stats_referrers_head
panel_stats_routes_head
panel_stats_operating_systems_head
panel_stats_topic_counts_head
panel_stats_requests_head
panel_stats_memory_head
panel_stats_active_memory_head
panel_stats_spam_hide
panel_stats_spam_show
panel_stats_memory_type_total
panel_stats_memory_type_stack
panel_stats_memory_type_heap
panel_stats_time_range_one_year
panel_stats_time_range_three_months
panel_stats_time_range_one_month
panel_stats_time_range_one_week
panel_stats_time_range_two_days
panel_stats_time_range_one_day
panel_stats_time_range_twelve_hours
panel_stats_time_range_six_hours
panel_stats_post_counts_chart_aria
panel_stats_topic_counts_chart_aria
panel_stats_requests_chart_aria
panel_stats_memory_chart_aria
panel_stats_details_head
panel_stats_post_counts_table_aria
panel_stats_topic_counts_table_aria
panel_stats_route_views_table_aria
panel_stats_requests_table_aria
panel_stats_memory_table_aria
panel_stats_views_suffix
panel_stats_posts_suffix
panel_stats_topics_suffix
panel_stats_user_agents_no_user_agents
panel_stats_forums_no_forums
panel_stats_languages_no_languages
panel_stats_post_counts_no_post_counts
panel_stats_referrers_no_referrers
panel_stats_routes_no_routes
panel_stats_operating_systems_no_operating_systems
panel_stats_memory_no_memory

Added phrases:
panel_debug_tasks
panel_debug_tasks_half_second
panel_debug_tasks_second
panel_debug_tasks_fifteen_minute
panel_debug_tasks_hour
panel_debug_tasks_shutdown
panel_stats_perf_head
panel_stats_perf_low
panel_stats_perf_high
panel_stats_perf_avg

You will need to run the updater / patcher for this commit.
2020-02-23 19:08:47 +10:00
Azareal 24cef43439 fix search not working properly
fix missing title index properly
add search tests
roll back accidental duplicate indices

You will need to run the updater / patcher for this commit.
2020-02-21 21:42:21 +10:00
Azareal d723895f5d remove polls from poll cache on deletion
add test for poll castvote and delete
2020-02-20 21:28:49 +10:00
Azareal 887804ff54 fix attachcount not being updated properly when attachments are deleted
tests for attachcount changes

add fget method to attachmentstore
2020-02-20 14:32:49 +10:00
Azareal 1766d5decd more attachment tests
Add UpdateLinked method to AttachmentStore.
2020-02-19 20:32:26 +10:00
Azareal 1191076c5b stop storing poll vote ips when anti-cheat is off
remove the PollStore.CastVote method
2020-02-19 15:17:12 +10:00
Azareal 7fd67210d0 reduce poll ip cutoff to 90 days 2020-02-19 15:00:55 +10:00
Azareal da3a41b51a reduce poll ip cutoff to 180 days 2020-02-19 14:58:45 +10:00
Azareal 570569be77 avoid confusion by formatting nil errors differently in LogWarning 2020-02-19 09:21:16 +10:00
Azareal 363826624f Reduce bandwidth usage for client templates.
Add js and ptmpl (stub) template functions.
Simple constant folding for true / false values in templates.
Use empty string instead of 0 for poll vote ips when DisablePollIP is enabled.

Shorten some things.
2020-02-19 09:04:14 +10:00
Lars Lehtonen 548a8bb39f
common: fix shadowed error in SQLSearcher.Query() 2020-02-18 11:21:32 -08:00