Releases: jakobkmar/pacmc
0.5.2
0.5.1
This release adds Curseforge support back in, this time using the new Curseforge API! #30
additional features and fixes:
- improved slug handling - and will ask which slug was meant if it is present in multiple repositories
- fixed some mods not being removed correctly
- added
pacmc debug test
for OS packages which require a basic test
Additionally, there should be a Homebrew package soon!
0.5.0
After a long time and a lot of work, the pacmc rewrite is coming together nicely - although still not completed.
New features and changes
- modifications to an archive are now abstracted into transactions, which can always be previewed and must be confirmed
- you can now change the default archive using
pacmc archive set-default
#34 - the version of installed content will now always be shown by
pacmc list
#17 - improved file and dependency resolving (will probably also fix #22)
pacmc archive init
replacespacmc init
- now using and displaying project slugs everywhere
- now supporting Fabric, Quilt and Forge as mod loaders
- removing a mod now also removes unused dependencies
- mods are now downloaded in parallel
- better feedback while loading using spinners
- allow installing and removing multiple mods at once #18
- added
-y
(yes flag) which automatically accepts all confirmation questions (this enables pacmc to be reliably used in scripting) - mod files now have a more usable file name in the format
slug_repo_id.pacmc.jar
(e.g.sodium_mr_AANobbMI.pacmc.jar
) #19 - archives now have a random color assigned to them, which will be displayed
New repository APIs
pacmc now uses the Modrinth v2 API, which fixes all issues with the old Modrinth API (#32, #33).
The foundation has been built for supporting the new Curseforge API, but sadly it was not possible to finish it for this release and before Curseforge shuts down its old API - that's why Curseforge support has been dropped in this release and will hopefully be back in the next release.
Internal changes
pacmc now uses a different database (which is not backwards compatible to the old one), so you have to recreate your archives.
Additionally, pacmc is now highly modularized, and thanks to Kotlin multiplatform, the doors are now open for other frontends like pacmc-gui or even a web frontend.
The location where pacmc stores its data has changed. It is now $dataLocalDir/pacmc/data/
for data, and $configDir/pacmc/config/
for config files.
pacmc now caches requests, the cache is located under $dataLocalDir/pacmc/cache/
. Cached requests can be used for displaying metadata in commands like pacmc list
.
A lot more to come
I have a lot of plans for new features, frontends and more, the rewrite is just the beginning, required for all the other cool stuff!
0.4.2
0.4.1
0.4.0
pacmc 0.4.0
Modrinth support
This release brings primary Modrinth support to pacmc. Modrinth is an open source modding platform, it has a documented API and is much more package manager friendly :)
Fixed Curseforge search
Curseforge deleted the Fabric category, which affected pacmc. Pacmc now does not use this category anymore.
Info command
(The old info command has been renamed to debug
)
There is a new pacmc info modname
command which requests the detailed mod description from Modrinth and renders it into your terminal.
New appearance
- a lot of command messages have been tweaked in their appearance
- now using a Windows Terminal compatible arrow on Windows (lol)
Internal changes
- database migration
- updated Kotlin to 1.5.30
- better abstraction of repository interaction
0.3.0
pacmc 0.3.0 - Improved archive handling
Features
Update archive version
You can now update the Minecraft version of an archive to the latest available version!
This can be done using the following command:
pacmc archive update [(archivename)]
(as usual, the archive name defaults to ".minecraft")
After the update, pacmc will download the correct files of all your mods for that version.
Change archive version #5
You can also set the version of an archive to a specific Minecraft version:
pacmc archive version [mcversion] [(archivename)]
(as usual, the archive name defaults to ".minecraft")
This will also refresh the files for that new (or older) Minecraft version.
Add archives without specifying the path
pacmc archive add [archivename]
now works too.
(Previously only pacmc archive add [archivename] [archivepath]
worked)
If you do not specifiy a path, now it will default to the pacmc data directory, more specifically:
pacmcdatadir/archives/archivename
You can find out what pacmcdatadir is on your system using pacmc info
and having a look at the dataLocalDir
field.
Fixes
- you now cannot create two archives at the same position anymore (if you have old archive definitions in your database, you may have to redefine them for this safety feature to work for that path).
- when refreshing the mods of an archive, you will now receive a warning if a mod is not available for the current Minecraft version or if it has been deleted by its owner
- reduced the size of the log output for deleting old mod files
- ignore mods of other unknown mod loaders for now
0.2.2
0.2.1
- outdated local files inside an archive do not count as "already installed" anymore
- this means that you can now update individual packages using the
pacmc install
command, as this command will search for the newest version and install that one if it is not "already installed" in the archive
- this means that you can now update individual packages using the
- now using Kotlin
1.5.21
0.2.0
New features
Refresh command
pacmc refresh
refreshes an archive by:- updating all mods and their dependencies
- resolving all dependencies again
- deleting all old files
- redownloading every single files
Load command
pacmc load
loads one archive into another, this way you can use archives for handling your own "mod packs" - e.g. you can create multiple different "mod profiles" and load them into your main .minecraft mods folder on demand
Usage:
pacmc load sourcearchive [-a targetarchive]
(as usual, the targetarchive defaults to the.minecraft/mods
archive)
Feature improvements
- added more help messages
- improved look of the command output
Performance and compatibility
- compatibility with Java 16 (#3)
- removed
xodus-dnq
- removed
- major performance improvements
- no file system warning on Windows anymore
- better overall feel because pacmc reacts instantly before a long running task is executed
Upgrading
This is a breaking update!
Save the list of archives and mods before updating.
You will have to reinstall the previously installed mods and run the new pacmc refresh
command to refresh all local files in the archive.