Commit Graph

383 Commits

Author SHA1 Message Date
TheEpicBlock
52b123018f Always download files into cache (#362)
* Always download files into cache

Previous implementation would skip downloading the file if no new hashes were requested. Issue is that the curseforge and modrinth exports require the file contents. Not retrieving the file violates these assumptions. Instead of creating new parameters to force a file download, I changed the code to simply always download instead. This seems like reasonable behaviour for a cache. This fixes #296

* Bump cache index version, delete potentially broken files from old version
2025-11-24 14:33:19 +01:00
TheEpicBlock
d12b2f35c0 Fix loader comparison when unrecognized loader is encountered (#372)
Since an unrecognized loader has an index of -1, and since lower number indicate a better loader, an unrecognized loader (when found in b) would immediately be assumed to be a great loader. Since the loop for A properly handles it, B would always be assumed to be the best, which has quite wrong consequences.
2025-11-02 00:57:34 +01:00
TheEpicBlock
52af16871a chore: update packwiz vendorHash 2025-11-01 17:44:02 +00:00
Karcsesz
2e214a45de Fix minecraft version 1.21.1 pulling in NeoForge versions for 1.21.10 (#370)
Since the compatibility check only verified that the first characters matched
between the version strings, a one-character patch version could be
misinterpreted if a two-character patch version existed.
2025-11-01 18:43:17 +01:00
TheEpicBlock
adfe66935c Don't interpret the new nf version format as the old one (#363)
Fixes #335
2025-09-02 17:10:22 +02:00
Nadwey
c3a6e56882 Add missing NeoForge to WriteManifestFromPack (#326)
Fixes #295
2025-08-10 21:42:31 +01:00
comp500
3ed92e8ee7 chore: update packwiz vendorHash 2025-08-10 20:37:50 +00:00
comp500
935b0afc89 Tidy dependencies 2025-08-10 21:36:49 +01:00
Katherine
78c6a77c78 Fix problems with sides in packwiz mr add and packwiz url add (#327)
* Assume "url" files are UniversalSide

Signed-off-by: unilock <unilock@fennet.rentals>

* Assume Modrinth projects with no sides marked are UniversalSide

Signed-off-by: unilock <unilock@fennet.rentals>

---------

Signed-off-by: unilock <unilock@fennet.rentals>
2025-08-10 21:22:11 +01:00
comp500
be94495d34 chore: update packwiz vendorHash 2025-08-10 20:05:44 +00:00
Nikita
c936fe72c5 Update and fix nix flake (#341)
Since nix tries to update inputs on newer versions out of, I suppose,
some introduced incompatibility, `nix build` fails. And nixpkgs from
2023 sounds rather obsolete at this point, so update was kinda due I
think.
On newer versions of nixpkgs however buildGoModule has changed and
requires one of its arguments to be called vendorHash and not
vendorSha256, this patch changes that as well.

Fixes #297, closes #314, closes #307
2025-08-10 21:04:46 +01:00
comp500
a9e091eae8 Update dependencies, move to non-experimental slices package 2025-08-10 20:48:20 +01:00
OwOmay
a0d66150df Fix gitattributes file name (#337) 2025-08-10 20:32:49 +01:00
comp500
241f24b550 Allow re-running the GH actions build manually 2025-01-19 23:11:23 +00:00
TheEpicBlock
0626c00149 Fix neoforge versions (#319)
* Fix neoforge versions

* Parse NeoForge versions for supported minecraft versions

* Fix fetching NeoForge 1.20.1 versions
2024-10-14 17:49:53 +01:00
comp500
811dbc6f90 Pin Goreleaser version 2024-09-24 23:15:24 +01:00
comp500
ea1050a1f2 Update goreleaser config 2024-09-24 23:08:53 +01:00
comp500
9f40558905 Update goreleaser args 2024-09-24 22:50:15 +01:00
comp500
4cd729aa13 Update Github actions versions 2024-09-24 21:19:16 +01:00
comp500
6e026f173d rehash command tweaks 2024-09-24 20:31:38 +01:00
comp500
0bb89a4872 Merge pull request #258 from unascribed/feature/rehash
Prefer SHA-512 for Modrinth, add rehash command
2024-08-28 19:19:41 +01:00
comp500
f1ea588c83 Don't write hash if retrieval failed 2024-08-28 19:19:12 +01:00
comp500
2d181f9f70 Restrict rehash hashes to secure hashes 2024-08-28 19:10:45 +01:00
comp500
4779b0a218 Merge branch 'main' into pr/unascribed/258 2024-08-28 18:58:50 +01:00
comp500
c391e1cfdd Run go fmt 2024-08-28 18:54:13 +01:00
comp500
f05bbe1dd4 Merge branch 'main' into pr/unascribed/258 2024-08-28 18:53:47 +01:00
comp500
19b1cad665 Merge pull request #230 from unilock/gh-releases
Support for GitHub Releases
2024-08-28 18:46:00 +01:00
comp500
8d68ac2126 Run go fmt ./... 2024-08-28 18:26:29 +01:00
comp500
a0c4aadba0 Merge branch 'main' into pr/unilock/230 2024-08-28 18:25:44 +01:00
comp500
4503e905d7 Reformat, force line endings to LF for Go files 2024-08-28 18:14:00 +01:00
Keith
7b4be47578 Update modrinth url regex to accept 'www.' as well (#304) 2024-05-27 20:54:22 +01:00
James Groom
9cca74476d Improve r13y of packwiz modrinth export by sorting manifestFiles (#287)
resolves #244
2024-04-21 12:46:33 +01:00
Omay
5bb680f266 Improve installation instructions in README (#283) 2024-04-21 12:44:34 +01:00
Omay
62e78d40e9 Include primary version in printed acceptable versions list (#280)
fix #255
2024-04-21 12:43:31 +01:00
comp500
1c76f79888 chore: update packwiz vendorSha256 2024-04-21 11:42:16 +00:00
James Groom
069d32c5de Respect -y for packwiz init (#290) 2024-04-21 12:41:22 +01:00
unilock
4853d807e1 github: also exclude -dev-preshadow.jar assets by default
seems common among GTNewHorizons projects, which is the primary target (for me personally)

Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-16 07:16:41 -04:00
unilock
7207d4c6a4 github: use regexp2 for advanced regex
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-16 07:04:13 -04:00
unilock
979b606b1e github: check + fail if there are no assets matching regex
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 19:18:05 -04:00
unilock
d54da349d5 github: allow using a regular expression to match assets
safeguard against "undefined behavior" when a release has more than one asset

Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 15:30:22 -04:00
unilock
bae4a6be64 github: remove outdated comment
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 15:29:06 -04:00
unilock
72afdee4d8 github: Handle empty x-ratelimit-remaining header
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:49:02 -04:00
unilock
3859b37267 github: Notify user when encountering GitHub API ratelimit
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:49:02 -04:00
unilock
3f5b953d00 github: Allow specifying branch to retrieve releases for via CLI
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:49:02 -04:00
unilock
e5d1d9d383 github: Properly handle writing to pack index
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:49:02 -04:00
unilock
d7fd884f48 github: Use Viper for GitHub API token
Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:49:02 -04:00
unilock
8d4f8d9a86 github: Accept GitHub API token via OS environment variable
"GH_API_TOKEN"

Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:48:57 -04:00
unilock
c96a6a30ad github: don't return releases on wrong branch
if a branch is specified, but a release cannot be found on that branch, return an error instead of simply the latest release

Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:48:57 -04:00
unilock
01945213d7 github: standardize language + fix api requests
language:
- funcs, vars, log messages, etc.

api requests:
- make all requests use the makeGet() function
- include packwiz user agent

Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:48:57 -04:00
unilock
6116393310 github: fixes and improvements
- "file" -> "asset"
- "version" -> "tag" or "release" (where appropriate)
- fix updater.go for upstream changes
- make printed log messages more similar to those of other modules
- move http request function(s) to separate file "request.go"
- remove the concept of a "Mod"; we're using "Repo"s (GitHub repositories) instead
- remove unnecessary fields in structs
- use sha256 instead of sha1 for asset checksums

Signed-off-by: unilock <unilock@fennet.rentals>
2024-04-15 14:48:57 -04:00