1.0.0
Regolith 1.0.0
After this release, we will try to make compatibility-breaking changes less often. We will also
follow proper semantic versioning. This update simplifies the user experience, adds new features, and
it comes with new beautiful documentation.
New features and improvements
- Added
regolith apply-filter
command. The command runs a selected filter to destructively modify the source files of RP and BP. This is useful when you want to apply some changes to the files of your project permanently. Implemented by @Nusiq in #220, #234 - Added
regolith config
command. It lets you adjust various user settings. E.g: You can define your own filter resolver URL or you can set up Regolith to save the filters cache in Regolith's app data folder. More user config features will be added in the future. Implemented by @Nusiq in #225 - Added conditionally executed filters. A New
when
property can now be used in thefilters
list (in config.json and filter.json) to run a filter based on a condition. Implemented by @stirante and @Nusiq in #215, #230 - Python, NodeJS, and Nim filters can now point at the path to the file/folder that defines the dependencies of the filter. This gives the filter developers more freedom in structuring their projects. Fixed #222 by @Nusiq in #227
- The filters now have to explicitly state that they modify their data. In the previous version of Regolith, the data folder was fully copied during every
regolith run
from the temporary directory back to the data directory. Most of the filters don't use that feature because they don't save anything in their data betweenregolith run
s. This change should speed up Regolith on the projects that store a lot of files in their data folder (by avoiding the creation of unnecessary copies of the files). Implemented by @Nusiq in #232 - Improved the CLI. We're now using a new command-line arguments parser. It slightly changes how the flags are used in the Regolith commands. The old command-line parser required placing them before the arguments. The new one requires placing them after the arguments. The quality of messages from the
help
command was improved. Implemented by @Nusiq in #224, #219 - Nim filters: Better memory manager and improved nimble CLI by @evilguy50 in #223
- Added allow-all permission flag to Deno filters. Deno filters now will be able to read and write any files they need to. Implemented by @evilguy50 in #226
- Added a system that uses a "lockfile" to prevent running multiple instances of Regolith at the same time in the same project. Implementd by @stirante and @Nusiq
Removed features
- Removed
regolith unlock
command. We decided that this safety feature is unnecessary. After all, Regolith is a program that runs scripts from the internet. It wouldn't protect people who use it carelessly. Implemented by @Nusiq in #218 - Removed
recycled
copy. This function didn't work as intended and there was no reason to keep it. Implemented by @Nusiq in #216 - Removed
regolith update
andregolith update-all
commands. In this version, you can useregolith install-all
to update the filters to match the definitions from theconfig.json
file (instead ofupdate-all
). Theregolith update
command doesn't have a direct replacement, but you can always forcefullyregolith install
a filter to a specific version if you need to reinstall the filter. Implemented by @Nusiq
Documentation and CI
- Ported docs to Vitepress. The documentation is way nicer than before. Implemented by @arexon in #233
- Added automatic pull request checks. Implemented by @DaanV2 in #205 and #207, #217
- Documented
exe
filters. Closed #187 by @Luminoso-256 in #204
Other
- Our error-handling library is now a separate project called go-burrito. Implemented by @stirante in #229
New Contributors
- @Luminoso-256 made their first contribution in #204
- @DaanV2 made their first contribution in #205
- @arexon made their first contribution in #233
Full Changelog: 0.0.18...1.0.0