Releases: juraj-hrivnak/Pakku
v0.18.2
- Fixed error when GitHub license URL is
null
.
v0.18.1
- Fixed tag parsing in GitHub project arguments.
v0.18.0
Highlights
Pakku now fully supports GitHub.
Adding GitHub projects
GitHub repositories with releases can be added as projects.
To add a GitHub project, run pakku add {owner}/{repo}
or pakku add https://github.com/{owner}/{repo}
.
You can also use the prj
subcommand: pakku add prj --gh {owner}/{repo}
or pakku add prj --gh https://github.com/{owner}/{repo}
Combining projects is also possible: pakku add prj --mr greenery --gh juraj-hrivnak/Greenery
To add a specific version (tag) of a GitHub project, run pakku add {owner}/{repo}@{tag}
, pakku add https://github.com/{owner}/{repo}/releases/tag/{tag}
or pakku add https://github.com/{owner}/{repo}/tree/{tag}
.
Updating
GitHub projects can be updated using the pakku update
command.
They are also recognized in other commands as expected.
Exporting
For CurseForge, GitHub projects are added to the overrides
.
For Modrinth, GitHub projects are added to the modrinth.index.json
also with generated sha512
and sha1
hashes.
The project side of GitHub projects defaults to BOTH.
If you need to change this, do so in pakku.json
.
Pakku determines whether the GitHub project is redistributable based on its licence's spdx code. No licence means ARR
.
UI
GitHub projects are displayed in the format: gh={owner}/{repo}
Other Changes
- Project types can now be overridden in the config file (
pakku.json
). - Deprecated
set
command's-s
,--side
and-r
,--redistributable
options. Use the config file (pakku.json
) instead.
Technical Notes
- Many functions now support
IProjectProvider
s instead ofPlatform
s only. - The lock file is now sorted by project names instead of slugs.
- Implemented the
ProjectArg
monad to better handle project additions.- Its
fold()
function can be used to map the possible arg types:arg.fold( commonArg = { }, gitHubArg = { } )
- Its
- Integrity checking will now allow projects without hashes (GitHub) and will warn the user instead.
v0.17.1
v0.17.0
- Added the
prj
subcommand for theadd
command.- With this subcommand you can specify the project you want to add precisely, using the
--cf
and/or--mr
options. - This subcommand can be used multiple times.
- Example usage:
pakku add prj --mr iris --cf irisshaders
- Note that the
add
command functionality remains the same.
- With this subcommand you can specify the project you want to add precisely, using the
- Added descriptions to command arguments.
v0.16.0
- When adding projects, slugs are now more robustly resolved.
- Project additions are now stricter. Pakku now doesn't allow you to add projects without any files.
- Fixed #15.
- Added backup handling when writing to files. When an error occurs during writing to a file a backup is restored.
- Pakku now shows you the project type alongside the slugs in all messages.
v0.15.1
- Fixed modpack
@var@
replacements not working. - URLs in FileDirector's config are now encoded. This is a workaround for FileDirector#19.
v0.15.0
- Refactored deleting old files in
fetch
command. (Improved performance.) - The
status
command now also shows you the Minecraft version, loaders and author. - Removed
cache4k
dependency.
v0.14.3
- Fixed that resource and shader packs were exported to the server pack when their project side was missing.
v0.14.2
- Fixed typo in the
export
command output path.