Skip to content

1.0.0

Compare
Choose a tag to compare
@github-actions github-actions released this 18 Nov 22:17
· 221 commits to main since this release

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 the filters 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 between regolith runs. 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 and regolith update-all commands. In this version, you can use regolith install-all to update the filters to match the definitions from the config.json file (instead of update-all). The regolith update command doesn't have a direct replacement, but you can always forcefully regolith install a filter to a specific version if you need to reinstall the filter. Implemented by @Nusiq

Documentation and CI

Other

New Contributors

Full Changelog: 0.0.18...1.0.0