Commit Graph

556 Commits

Author SHA1 Message Date
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
Lars Lehtonen
080a8fd615
common: fix shadowed error in SendEmail() 2020-02-18 11:16:16 -08:00
Azareal
cd7577c84c convo alerts
change convo_dev phrase
change account_menu_messages phrase
change alerts_no_linked_topic phrase
change alerts_no_linked_topic_by_reply phrase
add alerts.convo_create phrase
add alerts.convo_reply phrase
add alerts_no_linked_convo phrase
2020-02-13 20:44:03 +10:00