Commit graph

6495 commits

Author SHA1 Message Date
9a37203a7a Use Forgejo workflows for building
Some checks failed
ci / docker (push) Failing after 1m25s
2024-09-05 12:46:41 -03:00
Shish
3981ea188d more useful errors from page_to_text 2024-09-05 12:36:41 +01:00
Shish
d1ed1c4b64 footer_html as HTMLElement 2024-09-05 12:27:21 +01:00
Shish
4076051456 factor out commonly duplicated flash_html 2024-09-05 12:19:48 +01:00
Shish
bda801054d don't assume exception messages are html 2024-09-05 12:18:12 +01:00
Shish
12a8747020 add another special case for URL parsing, and some tests, see #1236 2024-09-04 19:09:32 +01:00
Shish
17c43f62e2 add even more hacks onto the pile of hacks for URL parsing, see #1236 2024-09-04 16:46:10 +01:00
Shish
b151a029c1 make sure stdlib_ex is included before database things, fixes #1240 2024-09-04 15:13:57 +01:00
Shish
187a739ed4 send DatabaseUpgradeEvent if NO_AUTO_DB_UPGRADE is _not_ set 2024-09-04 15:13:46 +01:00
Shish
70f7108e22 Replace flexihash with weighted rendezvous hashing
`Flexihash.php` hasn't been maintained for years and isn't php8.4 compatible; WRH is much simpler, and much better balanced, and nearly as fast
2024-09-03 17:19:02 +01:00
mjokfox
fcbd70e623 Fix a typo in the cache key
Message cache was not updating when reading a pm, found the issue to be a mistyped cache key
2024-09-03 17:17:14 +01:00
a7927a4209 Generate summary_large_image preview for images 2024-09-02 01:01:52 +01:00
Shish
95c390393b ffsphp-bump 2024-09-01 00:38:05 +01:00
Shish
edb4ca5e74 [settings] postToSettings
Trying to keep the weird POST-formatting to a minimum, using real types where possible
2024-09-01 00:13:53 +01:00
Shish
7353683a13 no implicit nulls (they are deprecated in php8.4) 2024-09-01 00:06:46 +01:00
Shish
df72df8040 bump eventtracer dep for php8.4 compat 2024-08-31 22:55:10 +01:00
discomrade
d8505f4469 [tag_history] prevent tag aliasing for correctness and huge performance improvement 2024-08-31 22:08:46 +01:00
discomrade
f50795029a [tag_history] add diff colour-coding to tag changes 2024-08-31 22:08:46 +01:00
Shish
8c2b6ade4b format 2024-08-31 22:02:26 +01:00
Shish
b3aa0fc381
Merge branch 'main' into speed-hax 2024-08-31 22:00:30 +01:00
Shish
33f5b5ef1a [core] use salted sha3 instead of md5 for session tokens 2024-08-31 21:53:30 +01:00
discomrade
c83401d43b [relationships] use permission to check if editable 2024-08-31 21:38:09 +01:00
discomrade
eeef6da955 [filter] remove broken code 2024-08-31 21:36:20 +01:00
discomrade
30b437542d [setup] allow setting bool option to false if default is true 2024-08-31 21:33:28 +01:00
discomrade
d809b0b18e [bbcode] allow relative image links
This is useful for CSP when a site is hosted on multiple domains, such as a mirror.
2024-08-31 21:29:00 +01:00
Shish
399a56ac79 [dev] bump phpstan strictness
no more null surprises
2024-08-31 21:25:20 +01:00
Shish
845c8b3d85 [core] Make User::by_name / User::by_id not-null
Nearly everywhere that these functions are called, the result is assumed to be not-null, and a null will break things
2024-08-31 20:39:36 +01:00
Shish
8b20fa3bc2 Add preg_replace_ex
having preg_replace return string|array|null is a pain, string|exception is much cleaner
2024-08-31 19:56:27 +01:00
Shish
2e8f38cce0 [core] merge Config and BaseConfig
Multiple layers of inheritance were confusing both humans and tools...
2024-08-31 19:33:27 +01:00
Shish
32368a8f94 people who need Configs should accept Configs, no need to specify BaseConfig 2024-08-31 19:19:46 +01:00
Shish
8efa960e5d Make some more things null-safe
(in preparation for bumping up the phpstan strictness to disallow null-unsafe code)
2024-08-31 19:19:24 +01:00
Shish
c88c26c256 [docker] remove unused tests target 2024-08-31 17:58:50 +01:00
Shish
8f8c0d151a Update dependency versions 2024-08-31 17:06:39 +01:00
Shish
8a8d78ae66 [docker] add rsync for backups 2024-06-30 11:31:13 +01:00
Shish
d4c17598fb [core] add PetalBot to the list of bots 2024-06-30 01:25:36 +01:00
Shish
bd3c6647af [biography] add logging 2024-06-29 18:44:56 +01:00
Matthew Barbour
1ed6704e19 Added sqlite compatible date criteria to numeric score.
Fixed missing semicolon that would cause the word "day" to appear on the "Popular by Day" screen after the current date.
Fixed month browsing issue when viewing "Popular by Month" on the 31st of a month, which happened to be today.
2024-06-24 19:33:57 +01:00
discomrade
94cdfd6952 [futaba] add missing class to username links 2024-06-22 13:16:49 +01:00
discomrade
9deeb38c00 [statistics] make usernames into links 2024-06-22 13:16:29 +01:00
discomrade
3fc9753e8e [statistics] alias tags before counting changes, include total edit count 2024-06-22 13:16:29 +01:00
discomrade
2a9228e244 [statistics] sort by tag id for correctness
Sorting by user.id was an oversight which caused tags to be miscredited when comparing against the previous tag history entry for an image. For example, whoever had the lowest user ID (rather than the uploader) had their entry considered the initial tag list.
2024-06-22 13:16:29 +01:00
Shish
d7f0f17fea [image_view_counter] use a proper DB version counter 2024-06-21 19:38:17 +01:00
Shish
7150af6b9e [core] use sha3 instead of md5 for csrf tokens 2024-06-21 19:35:47 +01:00
Shish
17b0b4e94f [core] remove config->set_XXX("foo", null) -- use config->delete("foo") instead 2024-06-21 19:17:44 +01:00
Shish
f84bcaec01 microhtml for everything in <head>
I wanted to ensure that all pages (even the downtime page, terms page, home page, etc) had the appropriate `data-` attributes on `<body>` (because those are required for certain javascript, eg autocomplete, to work). One thing led to another and now everything in `head` is microhtml'ed
2024-06-21 18:52:05 +01:00
discomrade
839b4b51e8 [alias] add info on tag aliases and tag implications 2024-06-21 18:28:30 +01:00
discomrade
1ad6acf37c [themes] add search link to rating 2024-06-21 18:27:51 +01:00
discomrade
f7047350b9 [comment] move recent comments below tags on post list 2024-06-21 18:26:51 +01:00
discomrade
38a7bb542b use <code> where appropriate 2024-06-21 18:24:38 +01:00
Shish
24d6aff794 [core] remove unusued isnull SQL function 2024-06-21 18:03:39 +01:00