155 Commits

Author SHA1 Message Date
Geometrically
0efeffeaa3
Bump ratelimit to 200 RPM, allow specified IPs to have lax ratelimit restrictions, and allow wildcard for CORS 2020-12-31 18:54:58 -07:00
Geometrically
7a86d272bb
Merge pull request #121 from modrinth/fix-description-cache
Fix description cache
2020-12-31 10:58:40 -07:00
Geometrically
4d780904d1
Fix formatting, remove failing backblaze test due to expired token 2020-12-31 10:16:32 -07:00
Geometrically
0a6fa65075
Fix clippy 2020-12-31 10:09:57 -07:00
Geometrically
6440220640
Fix again 2020-12-29 22:25:52 -07:00
Geometrically
4350c9a72b
Fix again 2020-12-29 22:19:03 -07:00
Geometrically
77feae0ab9 Merge branch 'fix-description-cache' of https://github.com/modrinth/labrinth into fix-description-cache 2020-12-29 22:12:00 -07:00
Geometrically
1261696ba2
Make it compile 2020-12-29 22:11:23 -07:00
Geometrically
6b35a0a527
Merge branch 'master' into fix-description-cache 2020-12-29 21:57:54 -07:00
Geometrically
fd33ff81c9
Fix description cache 2020-12-29 21:49:01 -07:00
Geometrically
178b1e8bb0
Merge pull request #120 from modrinth/team-member-fixes
Fix revocation of invites, allow for /user_id/teams to be useful
2020-12-28 10:51:16 -07:00
Geometrically
9d50f03cb1
Fix game version editing for versions 2020-12-27 18:58:27 -07:00
Geometrically
8c1688657a
Fix revocation of invites, allow for /user_id/teams to be useful 2020-12-27 18:50:10 -07:00
Geometrically
833cb99f41
Merge pull request #119 from modrinth/team-member-fixes
Add 'accepted' field to TeamMember
2020-12-27 08:18:34 -07:00
Geometrically
bd5d84abcd
Add 'accepted' field to TeamMember 2020-12-26 22:49:07 -07:00
Geometrically
d451ba9b6e
Merge pull request #118 from modrinth/fix-invites
Fix invites
2020-12-26 15:21:41 -07:00
Geometrically
14bd02a569
Merge branch 'master' into fix-invites 2020-12-26 15:18:47 -07:00
Geometrically
4beace1bb0
Fix inites (again) 2020-12-26 15:17:51 -07:00
Geometrically
6996dfcd3b
Fix incorrect route for team fetching (#117)
* Fix invites failing

* Fix incorrect route for team fetching
2020-12-26 12:25:27 -07:00
Geometrically
42c46d7d5c
Fix incorrect route for team fetching 2020-12-26 12:20:23 -07:00
Geometrically
9b31ce83c5
Fix invites failing (#116) 2020-12-26 12:13:09 -07:00
Geometrically
cb5250527b
Fix invites failing 2020-12-26 12:08:28 -07:00
Geometrically
f0b73fd696
Change index interval, add slug to search documents (#110)
* Change index interval, add slug to search documents

* Allow the removal of '@' for slug get

* Fix

* Remove name and rename side type

* Run prepare
2020-12-13 18:10:58 -07:00
Geometrically
df5684a9f8
Fix access controls (#109)
* Fix access controls

* Remove CF indexing, fix some stuff
2020-12-02 10:24:20 -07:00
Aeledfyr
b3f724c799
Hotfix: fix version delete permissions and CORS allowed methods (#107) 2020-11-30 10:45:59 -07:00
Geometrically
a7be6504a2
Fix hash (#106)
* More mod info

* Downloading mods

* Run prepare

* User editing + icon editing

* Finish

* Some fixes

* Fix clippy errors

* Fix hash lookup

* Run prepare

* Run formatter
2020-11-29 14:27:40 -07:00
Geometrically
1da5357df6
More mod info (#104)
* More mod info

* Downloading mods

* Run prepare

* User editing + icon editing

* Finish

* Some fixes

* Fix clippy errors
2020-11-27 10:57:04 -07:00
Aeledfyr
92e1847c59
Hotfix: route new moderation routes (#103) 2020-11-15 20:47:45 -07:00
Geometrically
0500994def
Moderation + Mod Editing (#101)
* Moderation + Mod Editing WIP

* Run prepare, fix perms

* Make it compile

* Finish moderation and edit routes

* More fixes

* Use better queries

* Final Fixes
2020-11-15 19:58:11 -07:00
Aeledfyr
da911bfeb8
Minor fixes to orderings and permission serialization (#102)
* Fix latest_version in search results

* Handle users with invalid permissions instead of skipping them

* Specify order of some queries, fix serialization of permissions

* Run sqlx prepare
2020-11-10 09:27:36 -07:00
Geometrically
578d673a4e
Team routes (#92)
* Team routes template

* More work on teams

* Updating routes WIP

* Edit routes

* Fixes

* Run prepare, prevent non-members from seeing perms

* More fixes

* Finish team routes

* More fixes

* Unpushed changes

* Some more fixes and error handling

* Fix sqlx prepare, formatting

Co-authored-by: Aeledfyr <aeledfyr@gmail.com>
2020-11-09 19:39:23 -07:00
Aeledfyr
c8e58a1e5b
Fix indexing, upgrade MeiliSearch sdk (#100)
* Hotfixes for indexing

* Handles missing INDEX_CACHE_PATH environment variable
* Exits on startup if environment variables are missing. The flag
  --allow-missing-vars disables this, but that is generally a bad
  idea, since most environment variables are required (and the ones
  that aren't should be marked as such).
* Disables the query loggers

* Upgrade meilisearch-sdk to 0.4.0 for MeiliSearch 0.16 support

* Fix swap of Forge and Fabric labeling
2020-11-05 08:38:03 -07:00
Aeledfyr
d477874535
Optimize and fix some bugs in indexing (#98)
* Improve curseforge and local indexing

This should make curseforge indexing more efficient, and reuses
some of the normal local indexing for the queued indexing of
recently created mods.

* Unify impls for single and multiple routes for mods and versions

This uses the same backend for the single and multiple query
routes so that they no longer return inconsistent information.

* Cache valid curseforge mod ids to reduce request load

This caches the ids of minecraft mods and reuses them on indexing
to reduce the amount of unused addons that are returned.
2020-11-03 17:55:50 -07:00
Aeledfyr
da79386cc3
Track and sort by release date of game_versions tags (#95) 2020-10-31 21:06:47 -07:00
Aeledfyr
a4ba6d1444
Game Version types, indexing, and bugfixes (#91)
* Add types to game_versions, allow filtering by version type

- Fixes an issue with version numbers in the initial mod indexing
  queue
- Modifies the /api/v1/categories/game_versions route to take an
  optional query parameter `type` to filter the listed game versions
- Creating tags is now idempotent
- Creating game_versions now requires a JSON body that specifies
  the version type

* Implement automatic indexing of new Minecraft versions

It's currently set to run every 6 hours and isn't configurable; we
could add config for it, but it doesn't seem likely to be rate
limited or have issues with frequency.
2020-10-28 09:11:49 -07:00
Geometrically
ef28459b61
Rate limiting + version fixes (#90)
* Rate limiting + version fixes

* Move patch to proper place

* More fixes

* Fix commit hash pin
2020-10-25 13:51:07 -07:00
Geometrically
1ff8c908b8
Add way to fetch team members (#89)
* Add way to fetch team members, fix files not being returned with version route

* Make it compile

* Fixes

* Use default error handling
2020-10-21 12:30:35 -07:00
Aeledfyr
e966ef96e5
Await an unused future and change #![allow(unused)] to dead_code (#88)
Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2020-10-19 22:24:40 -07:00
Geometrically
b05b38b269
Add files to initial versions/mods (#84)
* Add files to initial versions/mods

* Remove useless code, fix actual problem

* Remove debug text

* Rename body to description
2020-10-19 22:08:47 -07:00
Geometrically
8e1f1ff2e6
Fix another bug (#87) 2020-10-19 20:04:26 -07:00
Geometrically
680d6c20ca
Search hotfix (#86) 2020-10-19 19:46:33 -07:00
Geometrically
c886e7949e
Support for using a master key (#83)
* Support for using a master key

* Expand scope of PR, add wrapper struct, add files to intitial versions/mods

* Change changelog path, run formatter

* Split file changes into different PR

* Formatting, rename main variable

Co-authored-by: Aeledfyr <aeledfyr@gmail.com>
2020-10-19 14:23:05 -07:00
Geometrically
e0b972f6d6
Add S3 File Host (#81)
* Add S3 File Host

* Fix tests, set default ACL level to public

* Refactor

* Fix merge conflicts

* Env fixes

* Run formatter

* Remove extra allocations
2020-10-18 13:26:13 -07:00
Aeledfyr
25daa9f2da
Update actix-web to 3.0, update deps (#82) 2020-10-18 10:50:37 -07:00
Aeledfyr
d0fb5c3bd5
Refactor mod creation route, add more checks (#80)
This also removes the `team_members` field of `InitialModData`, as
team members are no longer specified at mod creation.
2020-10-17 19:34:23 -07:00
Aeledfyr
520b12e56b
Make mod creation always create initial versions & don't require mod id for mod creation versions (#79)
* Make mod creation always create initial versions, other fixes

* Fix sqlx prepare

Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
2020-10-16 13:28:53 -07:00
Geometrically
5c8ffe961e
Fix local indexing (#78) 2020-10-16 11:21:07 -07:00
Aeledfyr
7983e82b60
Fix some issues with search and mod creation (#77) 2020-10-16 10:04:38 -07:00
Geometrically
77d35b61a9
Fix indexing (#76) 2020-10-15 09:56:41 -07:00
Geometrically
285a97aaf8
Creation fix (#74)
* Lots of little fixes

* Change + Add TODOs back that were incomplete

* Fix migrations

* Run prepare

* Minor fixes

* Fix formatting

* SQLX Prepare

* Add status to creation query
2020-10-14 20:43:40 -07:00