aecsocket and GitHub
336050f4df
Clear owned projects cache when deleting an org with projects ( #6429 )
2026-06-17 19:24:44 +00:00
aecsocket and GitHub
2bb1ef775c
Serve stale Tiltify data if API is not available ( #6427 )
2026-06-17 14:58:07 +00:00
aecsocket and GitHub
64e17c7c1b
Include compatible dependencies field in project search ( #6366 )
...
* include compatible dependency projects field
* fix
2026-06-11 20:18:44 +00:00
aecsocket and GitHub
d2a66bb2b0
Allow searching by project dependencies ( #6350 )
...
* Allow searching by project dependencies
* change field name
* use query macro
2026-06-10 17:30:03 +00:00
aecsocket and GitHub
bc5a761312
Add analytics meta for downloading dependent projects ( #6318 )
...
* Send dependent mod info to backend
* Parse meta from query
* condense dependent_on and modpack
* Analytics dependents response
2026-06-09 15:47:52 +00:00
aecsocket and GitHub
c7ba6ba8b2
Bump frontend version upload timeout ( #6333 )
...
Bump upload timeout
2026-06-08 15:43:18 +00:00
aecsocket and GitHub
d61397097c
Tilitfy webhook changes ( #6267 )
...
* Tilitfy webhook changes
* add env
* fix
2026-06-02 15:14:02 +02:00
aecsocket and GitHub
c3a58aba9e
Fix clickhouse URI, country filtering ( #6247 )
...
* Switch to bind for long params
* Country filtering
* prepare
* playtime preservation
2026-06-01 16:11:44 +00:00
aecsocket and GitHub
cc8d556448
Expose user campaign donation info ( #6266 )
...
expose extra donation info for users
2026-05-31 15:18:40 +00:00
aecsocket and GitHub
c29973ec1a
Pride 26 campaign backend integration ( #6254 )
...
* wip: pride 2026 webhooks and stuff
* setup webhook and link to user
* fix up code
* improve donation resolution
* Pride 26 campaign
* idempotency
* wip: tiltify
* fix
* redis caching
* add num donators
* fix
* Revert openapi
* Prepare
* improve oauth token gen code
2026-05-30 19:21:33 +00:00
aecsocket and GitHub
67e1743d6c
Flatten facets response format, remove detailed route ( #6244 )
...
* Flatten facets response format
* delete test file
2026-05-29 23:22:08 +02:00
aecsocket and GitHub
62cedab6dd
Analytics faceting fixes ( #6243 )
2026-05-29 22:46:51 +02:00
aecsocket and GitHub
99611d22c7
Filter out invalid loaders in analytics, fix query bug ( #6241 )
...
* should fix bucketing query bug
* Filter out invalid loaders, fix query bug
* fixes
2026-05-29 12:46:59 -07:00
aecsocket and GitHub
527f2f800b
Analytics faceting return count, improve performance ( #6229 )
2026-05-28 17:58:19 +00:00
aecsocket and GitHub
ec49a3b051
Move all-projects route to specific user scope ( #6220 )
...
* Move all-projects route to specific user scope
* ci
* ci flaky test
* fmt
2026-05-28 14:41:57 +00:00
aecsocket and GitHub
64edf2ddeb
Improve analytics performance, analytics faceting ( #6180 )
...
* fix uri too long
* all projects route for user
* analytics facet fetching
* cache download source regexes
* filtering
* prepare
* Split up analytics metrics into separate modules
* prepare
* fix ci
2026-05-27 00:01:13 +00:00
aecsocket and GitHub
2f248027d6
Also run Daedalus manifest uploads when there's a new game version ( #6213 )
2026-05-26 21:55:54 +00:00
aecsocket and GitHub
5727e156ed
Fetch project analytics events on analytics get ( #6143 )
...
* Fetch project analytics events
* fix
* post-query ua bucketing
* fmt
2026-05-22 18:32:33 +00:00
aecsocket and GitHub
4e1a61d8b6
Adjust window occlusion threshold ( #6157 )
2026-05-21 21:48:39 +00:00
aecsocket and GitHub
71dee4de40
Add modpacks with external files filter to moderation queue ( #6155 )
...
* simplify query
* make it a tristate
* external deps count
2026-05-21 20:21:54 +00:00
aecsocket and GitHub
451b2d0e44
Window occlusion checks on MacOS ( #6135 )
...
* wip: window occlusion checks on MacOS
* wip: occlusion works
* occlusion notification
* fix ci
* fix
* wire in hiding into macos occlusion
* remove debug logs
* fix
* clean up
2026-05-20 19:31:12 +00:00
aecsocket and GitHub
f106dc580f
Restrict what tokens can be used for auth init flows ( #6137 )
2026-05-19 15:45:58 +00:00
aecsocket and GitHub
244c263e40
Implement analytics marker events ( #6090 )
...
* Analytics events
* prepare
* change route prefix
* update route return
* Add mod launcher analytics
* more UA strings
* fix ci
* caching on analytics events
* Return parent modpack versions for playtime queries
* sqlx prepare
* fmt
* dummy fixtures
2026-05-19 13:06:04 +00:00
aecsocket and GitHub
d1185414b6
Fix changelog ( #6125 )
...
fix changelog
2026-05-17 23:21:10 +02:00
aecsocket and GitHub
510439acbf
Changelog ( #6124 )
...
changelog
2026-05-17 22:50:23 +02:00
aecsocket and GitHub
c564495e11
Ad webview occlusion handling ( #6116 )
...
* wip: ad webview occlusion
* Ad webview window occlusion testing
* revert refresh test
2026-05-17 20:27:04 +00:00
aecsocket and GitHub
cee942dcef
Fix file version updates not considering visibility ( #6105 )
2026-05-16 16:18:18 +00:00
aecsocket and GitHub
e5bbd9d409
Remove non-Typesense search backends, add default env vars ( #6082 )
...
* Remove non-Typesense search backends, add default env vars
* shear
* remove some default keys
2026-05-13 17:15:37 +00:00
aecsocket and GitHub
f5462b6dd8
Add Modrinth App to app user agent string ( #6084 )
...
* Add Modrinth App to app user agent string
* Simplify UA brand strings
2026-05-12 15:23:33 +00:00
aecsocket and GitHub
1ddbae40b7
Re-enable summary weight in search ( #5871 )
...
* re-enable summary weighting in search
* prioritize tokens/drop tokens thresh
2026-05-12 12:14:45 +00:00
aecsocket and GitHub
ca1b36efde
Analytics request loader and game version validation ( #6064 )
...
* Analytics request loader and game version validation
* tweak agents
* factor tags into its own util
* lock cache refresh to avoid cache stampede
* Make analytics fields opptional
2026-05-11 14:45:50 +00:00
aecsocket and GitHub
a5417e0851
Fix new analytics backend bucketing and revenue ( #6052 )
...
* Fix analytics backend QA items
* cargo prepare
2026-05-10 10:57:24 +00:00
aecsocket and GitHub
671f6d264a
changelog ( #6054 )
2026-05-09 18:34:26 +00:00
aecsocket and GitHub
e231df1f97
WebView window event handling fixes ( #6038 )
...
* WebView fixes
* UA override logic
* fix
* debug logs
* alter all webviews
* cookies stuff
* remove debug stuff
2026-05-09 15:10:51 +00:00
aecsocket and GitHub
e8dc3c3150
Add update download reason to analytics ( #6023 )
...
* Add download reason to analytics
* mark modpack updates as actual updates in analytics
* fmt
2026-05-07 13:07:20 +00:00
aecsocket and GitHub
2f311643a0
Expose new analytics data in backend route ( #5982 )
...
* Expose more analytics data in backend
* Adjust fetch analytics body
* fix
* fix
2026-05-04 16:33:26 +00:00
aecsocket and GitHub
9403462915
Update to rustc 1.95.0 ( #5962 )
...
* Update to rustc 1.95.0
* fmt
2026-05-01 19:39:14 +00:00
aecsocket and GitHub
1875b89556
Have app send download analytics meta ( #5954 )
...
* wip: add download reasons to app
* update how download meta is gathered
* cargo fmt
* prepr frontend
2026-04-30 19:55:47 +00:00
aecsocket and GitHub
e8be67d41f
Fix how analytics writes are serialized ( #5926 )
2026-04-27 14:25:57 +02:00
aecsocket and GitHub
e3d6a498d0
Track new analytics metrics in backend ( #5895 )
...
* Allow filtering by project IDs in analytics route
* Download meta info in header
* add recursion limit
* Track playtime country
* fix clickhouse migrations
2026-04-24 15:43:25 +00:00
aecsocket and GitHub
11ac27f71f
Make mrpack downloads HTTPS-only ( #5882 )
...
* Add set of trusted download hosts for mrpacks
* split secure/insecure reqwest client
* make fetching https-only
* lint fix
2026-04-23 19:04:38 +00:00
aecsocket and GitHub
9483656881
Fix issues relating to app directory changes ( #5826 )
...
* Fix canceling app directory change
* Improve directory moving error messages
* tombi
2026-04-17 14:00:08 +00:00
aecsocket and GitHub
546b117437
Tweak token prioritization in Typesense ( #5776 )
...
* Tweak toke prioritization in typesense
* tweaks
* allow configuring max_candidates
* tweak max_candidates
* final changes
2026-04-15 19:45:41 +00:00
aecsocket and GitHub
f12bd7b4b8
Add utoipa info for v2 routes ( #5775 )
...
* wip: add v2 docs, routes to config, paths
* fix up path prefixes
* fix leading slashes
* fix slash route
* fix more slashes
* wip: full utopification of v2
* convert last few v2 routes to utoipa
2026-04-15 13:25:35 +00:00
aecsocket and GitHub
71e4f7cb91
Update ad webview logic ( #5774 )
...
* add clarifying comments to ad webview code
* properly manage adview show/hiding
* check if webviews manage visibility on Windows
* comment out testing code
* add clarifying comments
2026-04-11 15:49:52 +00:00
aecsocket and GitHub
a9c417d1d1
Switch from Swagger to Scalar for OpenAPI docs ( #5766 )
...
* Switch from Swagger to Scalar for OpenAPI docs
* remove old comments
2026-04-07 22:14:26 +00:00
aecsocket and GitHub
de4f0bffb0
Add server ID to Intercom JWT payload ( #5769 )
2026-04-07 22:14:15 +00:00
aecsocket and GitHub
e71a8c10fa
Fix passing intercom identity from CF v2 ( #5753 )
2026-04-04 14:50:32 -07:00
aecsocket and GitHub
54c45ac9f3
Fix passing intercom identity from CF ( #5752 )
2026-04-04 10:40:26 -07:00
aecsocket and GitHub
e5f600ddd7
Fix buffer allocations in server pinging code ( #5751 )
2026-04-04 17:22:40 +00:00
aecsocket and GitHub
bb3506823d
Add secure support connection to website ( #5750 )
...
* wip: icom jwts
* should fix auth token passing
* add to wrangler
2026-04-04 08:47:03 -07:00
aecsocket and GitHub
92bf2e5c29
Install transitive dependencies of versions properly ( #5745 )
...
* install recursive deps properly
* fix up
2026-04-03 20:29:08 +00:00
aecsocket and GitHub
ef1ffa6577
Fix payout sync response schema ( #5644 )
2026-03-26 22:44:54 +00:00
aecsocket and GitHub
da48a12551
Only mark servers as offline if they fail pings 3+ times ( #5664 )
...
* wip: online status fix
* use INCR
* properly clear cache
2026-03-26 06:34:20 +00:00
aecsocket and GitHub
0731654a1c
maybe fix daedalus ( #5665 )
2026-03-26 06:33:58 +00:00
aecsocket and GitHub
3c5bd0756d
Index search by original and split title ( #5589 )
...
* Index search by original and split title
* better normalization of title/author names for indexing
* replace println with warn
* fix test
2026-03-20 04:01:19 +00:00
aecsocket and GitHub
3b604cfdc0
Get AutoMod to ignore .rpo files ( #5616 )
2026-03-19 00:16:30 +00:00
aecsocket and GitHub
31b541007d
Revert "Unify server pinging implementations between app and backend ( #5510 )" ( #5558 )
2026-03-13 13:58:57 -07:00
aecsocket and GitHub
455a4f527d
Add title stemming to typesense ( #5553 )
2026-03-13 17:03:54 +00:00
aecsocket and GitHub
c8279481f8
Revert last canary flag PR and use a better method ( #5535 )
...
* Revert "Implement Labrinth Canary API flag (#5531 )"
This reverts commit 3b21944a75 .
* Use Labrinth-Canary header instead of cookie for API canary
* prepr
* fix rebase
2026-03-13 16:29:08 +00:00
aecsocket and GitHub
d14360aba5
Unify server pinging implementations between app and backend ( #5510 )
...
* Improve ping impl to bring parity to app lib impl
* Fix issue with new impl
* fix labrinth compile
* wip: why do servers not provide server info..
* Fix ping impl overriding port
* fix theseus_gui
* remove unneeded recursion lmit
2026-03-13 16:21:09 +00:00
aecsocket and GitHub
991b4d8c13
Fix Typesense tests ( #5541 )
...
* Fix Typesense tests
* fix
* add back author
* Split project title and authors by words and index on that
* clippy
2026-03-13 13:34:51 +00:00
aecsocket and GitHub
f0224dfff7
Search backend refactor with typesense impl ( #5528 )
...
* initial elasticsearch impl
* working elastic cluster
* replace SearchError with ApiError for preparation of search backend
* start factoring meili out to trait
* move meili to backend
* update routes to use search backend trait
* wip
* Update projects.rs
* search backend is only init'd once in config
* wip
* wip: backend agnostic
* change search internal routes to delegate to backend
* initial elasticsearch impl
* fix filtering
* elastic impl
* refactor indexing into its own module
* clean up elastic code
* fix ci
* fix tests
* fix elastic health check
* fix up env rebase
* fix compile
* dummy commit to update github pr
* Fix rebase
* Elastic basic https auth
* Fix duplicate projects showing up
* Fix up tests
* Replace search `ApiErrors` with `eyre::Reports`, propagate background task errors
* clean up agents files
* make index chunk size configurable
* make `match_phrase` in elastic case-insensitive
* use current/next indices and swap between them
* test case for error body
* Fix failing case
* da merge
* factor out common stuff from search backends
* allow fetching hit metadata from search results
* allow customising elasticsearch search config
* bit of docs
* add mappings to indices for elastic
* Implement Typesense
* wip
* fix up some sort fields stuff
* use different approach to filterable field sets
* remove a bunch of search fields which weren't used for filtering
* bucket text matches
* Bucketing by text_match for typesense
* fix tombi lint
* fix some sentry errors and dont prioritise 2+ term matches
* tweak ts query settings
* expose some more search settings
* query sort changes
* small fixes
* should fix pagination stuff
* fix healthcheck maybe
* ragebait ci
* tests
* tests
* revert environment
2026-03-12 18:58:55 +01:00
aecsocket and GitHub
1c1683adb6
Fix various user/project deletion queries ( #5511 )
2026-03-12 12:46:39 +00:00
aecsocket and GitHub
407e6217f5
Fix permissions on project component edits ( #5526 )
2026-03-11 19:09:44 +00:00
aecsocket and GitHub
3b21944a75
Implement Labrinth Canary API flag ( #5531 )
2026-03-11 15:28:09 +00:00
aecsocket and GitHub
2b8175ad66
Daedalus doesn't instantly fail when upstream loses versions ( #5518 )
...
* Daedalus doesn't instantly fail when upstream loses versions
* fix shear
* Revert DashMap changes for try_join_all
2026-03-10 18:59:47 +00:00
aecsocket and GitHub
0c98f6bf45
Update changelog for app 0.11.4 ( #5519 )
...
* Update changelog
* fix up
2026-03-10 16:59:41 +00:00
aecsocket and GitHub
4a0c610fc5
Fix search sorting ( #5509 )
...
* Ensure newest published versions get sorted at the top
* fix issue with querying
* sort by correct fields depending on server/not server project
* sqlx prepare
2026-03-09 15:46:38 +00:00
aecsocket and GitHub
ace2659861
Server projects post launch fixes ( #5481 )
...
* Vendor async-minecraft-ping and fix servers returning protocol version -1
* Don't have automod reject server projects
* fmt
* Add region to search facets
* remove AMP .github
2026-03-08 00:17:38 +00:00
aecsocket and GitHub
d902b281f7
comment out impl ( #5468 )
2026-03-04 01:03:20 +01:00
155f4091a6
Tweak search sorting ( #5464 )
...
* Tweak search sorting
* Tweak search sorting
* fix ping impl
* remove port field, add server regions
* fix compile
* fix tests
* update frontend banner upload size limit
* feat: use server project region instead of country
* remove java and bedrock port in frontend
* add helper text
* allow filtering by if server is online
* add server status online offline filter
* use region in instance
* pre-collapse status in app discovery
* pnpm prepr
* remove server discovery flag
* add servers into mobile nav tabs
* parse port from address if present
---------
Co-authored-by: tdgao <mr.trumgao@gmail.com >
2026-03-03 23:20:48 +01:00
aecsocket and GitHub
34997bada5
Rescan tech review reports when a new version of Delphi is ran ( #5433 )
...
* Delphi rescan when version changes
* Fix inserting duplicate reports when rescanning
* upsert report issue details instead of deleting
* fix up rescan stuff
2026-03-03 17:44:30 +00:00
aecsocket and GitHub
63daac917b
Fix Mural API response schema ( #5454 )
...
* Fix Mural API response schema
* Fix clippy
* fix compile
* fix compile
2026-03-03 17:17:44 +00:00
aecsocket and GitHub
47ef7ee42e
When deleting a project, retain the thread's project ID ( #5418 )
2026-02-27 01:03:08 +00:00
aecsocket and GitHub
5b49af1fe8
Fix creating projects from mod install flow ( #5402 )
...
* Explicitly state if a mod is incompatible when installing
* wip: debug create instance modal
* Fix mod install createInstance
2026-02-21 00:22:06 +00:00
f052ecd702
Batch of tech review backend fixes ( #5398 )
...
* Don't enter project into tech review if no new traces
* Send tech review exited message if files are deleted
* change PATCH /issue-detail/{id} to batch update details
* Fix sorting
* store delphi jar in backend
* show jar in tech review card
* improve jar display in frontend
* Fix live/in review label for tech review cards
* sqlx prepare
* polish: decode segments + code qual fix
* fix: skip first seg
* fix: only slice if needed
* Fix tech rev card styling
---------
Co-authored-by: Calum H. (IMB11) <contact@cal.engineer >
2026-02-20 12:54:36 +00:00
aecsocket and GitHub
ec81bcb13c
Improve environment variable handling and reading ( #5389 )
...
* wip: better env var reading
* move most env vars to env.rs
* migrate more env vars
* more migration
* more migrations
* More migration
* 🦀 dotenvy is gone (almost)
* 🦀 dotenvy is gone 🦀
* Fix mural source account env var handling
* Remove defaults from admin key vars
* dummy commit to update github pr
* fix ci
2026-02-19 17:33:41 +00:00
aecsocket and GitHub
b6b4bc21f1
Cherry-pick migrations from server projects into main ( #5395 )
...
* Cherry-pick migrations from server projects into main
* Fix up project types and seed data
* fix tag test
2026-02-19 17:32:58 +00:00
aecsocket and GitHub
9f558404bd
Improve error logging in project delete route ( #5388 )
...
* Improve error logging in project delete route
* remove_documents more error logging
* fix ci
* try fix ci? idk man
2026-02-18 05:06:50 +00:00
aecsocket and GitHub
e7eb4899a1
Fix user deletion to update more tables ( #5351 )
...
* wip: fix user delete
* add wrap_errs
* delete more rows in user deletion
* sqlx prepare
2026-02-12 11:37:40 +00:00
b34564a770
Fix editing project team member permissions ( #5315 )
...
* Fix editing project team member permissions
* prepare
* add success notifications
---------
Co-authored-by: tdgao <mr.trumgao@gmail.com >
2026-02-06 14:56:36 -08:00
aecsocket and GitHub
b1954be2c7
Ref-count Redis pool internals, fix project creation slug/ID collision ( #5302 )
...
* Ref-count Redis pool internals, fix project creation slug/ID collision
* cargo sqlx prepare
2026-02-05 05:18:33 +00:00
aecsocket and GitHub
3f5e3b1d8b
Disable login captcha if backend has no captcha secret ( #5288 )
...
* Add /_internal/globals route
* Don't show login captcha if backend claims it's disabled
* try to re-add tombi
* typos
* Assume captcha enabled if globals route is unreachable
* Prepare frontend fixes
2026-02-04 18:08:14 +00:00
aecsocket and GitHub
5d6593a9da
Add more Prometheus metrics for memory and Tokio tasks ( #5282 )
...
* Add more Prometheus metrics for memory and Tokio tasks
* pr comments
2026-02-03 19:05:34 +00:00
aecsocket and GitHub
d5869c514e
Use deadpool fork with tracing ( #5276 )
...
* Use deadpool fork with tracing
* Implement minimum Redis connections
* fix typos maybe
* address pr comments
2026-02-02 23:24:55 +00:00
aecsocket and GitHub
a207daef0d
Update charges rows on user deletion ( #5269 )
2026-02-01 19:14:38 +00:00
aecsocket and GitHub
ddd395ed4f
Fix FX conversion for Tremendous methods ( #5268 )
2026-02-01 19:05:32 +00:00
aecsocket and GitHub
e57c15b3ce
Add SQLx operation tracing ( #5223 )
...
* wip: vendor sqlx-tracing
* (compiles) standardize pg types used
* more standardization
* general log message improvements
* wip: improve sqlx-tracing architecture
* unify sqlx::Executor type
* wip: try fix sqlx tracing
* wip: sqlx-tracing compiles
* so close
* it compiles
* fix ci
2026-01-28 13:38:57 +00:00
aecsocket and GitHub
05f8113bd0
Fix CI on main ( #5213 )
2026-01-25 12:40:22 -08:00
aecsocket and GitHub
1d193ed01b
More tracing spans for Labrinth Redis ( #5182 )
...
* more tracing in redis ops
* Improve Redis tracing
* improve messages
* make lpush and brpop use traced cmds
2026-01-22 17:46:37 +01:00
aecsocket and GitHub
e072f2237b
Improve Labrinth Sentry integration ( #5174 )
...
* Improve Sentry integration
* remove debug routes
* fix ci
* sentry tracing stuff
* Add spans to Sentry logging
* Fix CI
* Redis op instrumentation
* pr comments
2026-01-21 18:59:05 +00:00
aecsocket and GitHub
306eee3a21
Fix changing Delphi report issue detail verdict if already exists ( #5172 )
...
* Fix changing Delphi report issue detail verdict if already exists
* cargo sqlx prepare
2026-01-21 16:12:21 +00:00
aecsocket and GitHub
c94dde9b47
Fix updating mod version if file hash is the same ( #5138 )
...
* Start fixing infinite update glitch
* adjust app cache logic
* more cache logic
* cleanup
* add v2 redirect
* add v2 version file route to config
2026-01-19 21:40:44 +00:00
240e5455cc
Auto create NeoForge instance from mod version ( #5142 )
...
* Auto create NeoForge instance from mod version
* prioritise fabric over nf
* pnpm prepr
---------
Co-authored-by: tdgao <mr.trumgao@gmail.com >
2026-01-16 21:21:14 +00:00
aecsocket and GitHub
c37bf75853
Implement replied/unreplied filter for tech review ( #5006 )
...
* Implement replied/unreplied filter for tech review
* project status filter
* wip: issue type filter
* correct filter field
* wip: break up tech review query
* Improve tech review query
* Get tech review working more properly
* Add get single project reports endpoint
2026-01-15 11:54:20 +00:00
aecsocket and GitHub
f85a2d3ec1
Make changelog in version response optional ( #5115 )
...
* Make changelog on version routes optional
* fix clippy
* fix ci
2026-01-14 10:55:20 +00:00
d055dc68dc
Payout flows in backend - fix Tremendous forex cards ( #5001 )
...
* wip: payouts flow api
* working
* Finish up flow migration
* vibe-coded frontend changes
* fix typos and vue
* fix: types
---------
Co-authored-by: Calum H. (IMB11) <contact@cal.engineer >
2026-01-14 10:53:35 +00:00
aecsocket and GitHub
ad3edf541b
Replace MaxMind with CloudFlare headers ( #4934 )
...
* Replace MaxMind with CloudFlare headers
* Remove MaxMind env vars
* Fix test harness
2025-12-30 16:49:49 +00:00
aecsocket and GitHub
cace1a54cd
Fix tech review query routes ( #4946 )
2025-12-21 09:23:21 +00:00