Skip to content

Releases: Bedrock-OSS/regolith

0.0.9

04 Mar 21:12
Compare
Choose a tag to compare

Regolith 0.0.9

  • Fixed bug that caused the local shell filters to always crash
  • Improved error messages from Python filters (fixed misleading messages)

0.0.8

28 Feb 21:16
62ac5f0
Compare
Choose a tag to compare

Regolith 0.0.8

This release marks the end of our filter-versioning epic, and comes with three main enhancements:

  1. The ability to version your filters via tag or SHA.
  2. New config format, which defines installed filters in 'filterDefinitions', including version. Installed filters may be referenced by-name in the profiles.
  3. New suite of installation and update commands, which allow you to install and update filters via the command line.

Having migration issues? We will be updating the docs to reflect 0.0.8 in the coming days. For now, our recommendation is:

  1. Take a backup of your project
  2. Delete config.json, and clear your .regolith folder.
  3. Run 'regolith init' to create a new config file, or copy/paste from the website
  4. Run 'regolith install ' for every filter you were using
  5. Add these filters back into your profiles, by name

Good luck, and please report issues on github, or on discord.

For a full changelog, please see bellow.


Changelog

  • db32193 'go install --add' also downloads the filter.
  • 79f9792 'regolith init' and 'regolith unlock improvements + other stuff: - 'regolith init' now can be runned only in empty folders. - 'regolith unlock' can't overwrite the lock file and doesn't run when the project doesn't have valid config file. - Fixed 'regolith init' creating .gitignore file with the first line empty. - New utility function 'isEmptyDir' - Improved 'wrappedError' and 'wrappedErrorf' messages formatting. - Deleted 'IsProjectInitialized' function because it's not used anymore.
  • 2160eb5 'regolith install --add' command can now also install standard filters without giving it full URL
  • 825b3be 'regolith install --add' with keyword 'HEAD' or 'latest' won't lock the version anymmore
  • 801d671 Added 'regolith install --add ' command WIP. Updated dependencies (go-getter 1.5.9 had a bug which didn't allow downloading wiht commit ID). Added semver dependency.
  • f532cc4 Added build-in hello_world filter.
  • 53b2ee7 Added new 'installations' property to the config.json. Current implemetation uses global variable to pass info to the remote filters.
  • 4a0ee83 Added new function 'wrapErrorf' (wrapError + Sprintf). Changed the order of args of wrapError.
  • 5c29788 Added test that, dwnloads a versioned filters, unlocks regolith project and runs the filter
  • 512bb10 Added tests for 'regolit update' and 'regolith update-all'
  • ccdb104 Added warning messages to 'install', 'install-all', 'update' and 'update-all' commands that informs about Git not being installed. Installation of the remote filters fails with this message when Git is not instlled. Close #136
  • 52f7c83 Additional refactoring
  • cf67637 All filters types have different struct type. All filter structs implement FilterRunner.
  • 5b26dad Attempt to disambiguate dependency installation Vs. downloading
  • 7e36c2f Awful spagheti code but it passes the tests.
  • e90de48 Continuation of previous commit. Code compiles but doesn't pass the tests.
  • 9678ccc Disabled stack traces from the 'zap' logger.
  • c8219a5 Docs push
  • 0dd6c41 Filter versioning epic
  • 84895c8 Fix failing tests
  • fee0e63 Fix init logic
  • 3ab9f7f Fixed WarpError typo (should be warpError).
  • c895286 Fixed a bug which caused the 'regolith install' command not to copy the filter data.
  • 751b761 Fixed code that prevents compilation.
  • 31ca446 Fixed problem with remote filters not being able to read filter.json file while f.Run().
  • 3013913 Fixed problems that caused tests to fail: - updated the config.json files to the new format - remote filter copy their data folder - FilterFromObject loads the 'filter' property - the filters from 'filter.json' of remote filter get fake value for 'filter' property to avoid crashes
  • fa3cda2 Fixed shell filter bug which caused it to always return error.
  • 5d16162 Fixed typo in filter_remote.go name (filter_reomote).
  • 9d56e7d Fixing a typo
  • 93f76b4 Further installation edits
  • a53d25f Implemented 'regolith update', 'regolith update-all' and a bunch of utility functions for better error handling.
  • 3f80a36 Improve error messaging, improve initialization code
  • 5115f2f Improve wrapped errors
  • 38f6ded Improved some error messages. Regolith install won't add the filter to the filtersDefinitions list unless the installation finishes successfuly.
  • 076c3fd Making installFilter function cleaner.
  • 9201d86 Merge branch 'main' into feature/filter-versioning
  • 1cdd748 Merge branch 'main' of https://github.com/Bedrock-OSS/regolith into feature/filter-versioning
  • 070562e Merge pull request #128 from Bedrock-OSS/feature/filter-versioning
  • d00bb02 Merge pull request #129 from retr0cube/patch-1
  • 7e3d730 Merge pull request #133 from Bedrock-OSS/feature/installations
  • 39b4770 Merge pull request #134 from MajestikButter/patch-1
  • d832264 Merge pull request #138 from Bedrock-OSS/filter-definitions-code-cleanup
  • cd32e4f Merge pull request #141 from Bedrock-OSS/new-commands
  • 62ac5f0 Merge pull request #143 from Bedrock-OSS/docs/filter-versioning
  • 64d8bae Moved Installation struct and its functions to separate file
  • b03c649 Moved dataPath from 'Profile' to 'RegolithProject'
  • 5de30aa Moved everything related to RemoteFilter to filter_remote.go
  • 6597bd7 Moved the methods of RemoteFilterDefinition from 'installations.go' to 'filter_remote.go'
  • 6429c5d New error handling for 'config.json'. WrapError and WrapErrorf can print their locations.
  • 17f9d3f New error handling for 'export.go'
  • 75da00f New error handling for 'file_protection.go'
  • cdd1328 New error handling for 'install_add.go' and 'installation.go'.
  • 538045c New error handling for all 'filter_*.go' files
  • 894717a New error handling for other *.go files.
  • 61cbc30 Pushing unfinished changes: - Every Filter (e.g. PythonFilter) will have corresponding FilterDefinition (e.g. PythonFilterDefinition). They are based on the Filter and FilterDefinition structs. - FilterDefinitions contain most info about the filter but the Filters have additional properties - Settings , Name, Disabled and Arguments. - The FilterDefinitions are created based on the JSON in the filters list of the 'regolith' - The Filters are created based on their JSON (from filters of a Profile) and a FilterDefinition. - Every Filter has a FilterDefinition as property (which is necessary for
    egolith run). - All FilterDefinitions implement the FilterInstaller interface which has following methods: InstallDependencies, Check, CreateFilterRunner - All Filters implement the FilterRunner interface with methods: Run, GetFriendlyName -
    egolith run uses FilterRunners and doesn't need to know exactly what kind of the runner is being used (executes them from a list) -
    egolith install uses FilterInstallers and doesn't need to know exactly what kind of installer is being used (installs them from a list)
  • 349ba8a Regolith always prints stack trace of the final error.
  • 77c8bbe Remote filters store their version inside filter.json file when their downloaded (close #74). Added firstErr() utility function for easier handling groups of errors.
  • 277aff4 Remove friendly name handling
  • 304508e Removed Install_OLD
  • 282cc42 Removed filter_remote.go the functions were moved to other places, added update.go for functions related to regolith updates.
  • 3beecbb Removed the build-in filters.
  • cd09c66 Removed use of global variables. The nested remote filters are not supported anymore (including standard filters). Updated tests to match new behaviors of Regolith.
  • 29daf27 Renamed 'regolith->filters' property of the config.json file to 'filterDefinitoins'
  • 75d2b88 Renamed the 'Installation' object to 'FilterDefinition' in the code. Renamed the 'installations' field in config.json to 'filters'.
  • 6630014 Reorganised some code
  • 5004df9 Reorganised the project
  • b42d0ed Reorganize docs
  • b6a6fc9 Restored old .gitignore
  • e09a042 Simlper stack traces in error messages.
  • 4578f0f Small error updates
  • ff46913 Some error cleanup
  • 261503a Started implementing new set of commands: install, install-all, update, update-all, run, init, clean, unlock
  • baa0434 Starting all of the error messages with capital letters, adding period at the end of every sentence in error messages, switching apostrophes used as quotation marks with quotation marks.
  • 7faaf68 Style changes
  • 25c7538 Temp
  • deed191 The 'filter' property of remote filter is now required. Fixd problem of remote filters installing in a wrong path.
  • 23e0783 The RecursiveInstall of Filter sturct creates Profiles from filter.json and recursively installs nested filters. Copying the filter data is not implemented yet.
  • 4ce0c7e The RemoteFilterDefinition uses the StandardLibraryUrl by default when it's not defined.
  • f2628e7 Update README.md
  • 9bc213d config.go: updated the documentation comments; removed --update flag from 'regolith install' (it didn't do anything)

0.0.7

03 Jan 20:21
42e4a24
Compare
Choose a tag to compare

Changelog

  • 633d333 'regolith install' installs local filter dependencies even if its script is in relative path that uses '..'
  • 4a4e16d Add RCE protection
  • 4aa825d Add hello world filter
  • 033bf6a Added separate implementations of certain parts of regolith that are Windows specific. (#125)
  • af685c6 Added test that validates the ACLs of packs exported by Regolith with "development" target (close #85). Improved error handling of function that finds com.mojang directory.
  • 077197b Added test which checks if the file protection gets triggered after adding files to export directory. Close #100
  • 9b06878 Cleaning up the code mostly for issue #53
  • ea03b43 Code cleanup
  • 998ec3c Code cleanup
  • 63dbc88 Create LICENSE
  • 23e7386 Create LICENSE.rtf
  • 42e4a24 Create LICENSE.rtf (#130)
  • e68475d Delete LICENSE
  • 2cdb787 Delete LICENSE.rtf
  • ce38992 Fix mod/sum
  • 6decada Fix null reference when trying to print an error without a cause
  • c718b04 Fix profiles
  • f025dee Fix project
  • 330953c Fix typo
  • 64f48de Fix url example
  • 6daefe1 Fixed Regolith crashes when the BP or RP path is missing. Close #119. (#121)
  • 86e693b Fixed problems with copying the data folder for nested remote filters, added test for this case. Close #32
  • bf7b0d2 Implement 'test' folder
  • 967e93a Improved exporter performance (close #87) and fixed read-only export (close #94)
  • b032c00 Local python regolith filters can use requirements.txt (#122).
  • 2054352 Merge branch 'main' of https://github.com/Bedrock-OSS/regolith into main
  • a086f24 Merge pull request #102 from Hatchibombotar/patch-1
  • 057faf6 Merge pull request #103 from Bedrock-OSS/code-cleanup
  • 65bc3e6 Merge pull request #107 from MajestikButter/patch-2
  • fde5e5a Merge pull request #108 from MajestikButter/patch-3
  • a08ee49 Merge pull request #110 from retr0cube/main
  • 80a3257 Merge pull request #111 from retr0cube/main
  • 1fa38a4 Merge pull request #113 from evilguy50/patch-2
  • 3267753 Merge pull request #114 from evilguy50/patch-3
  • c274cc0 Merge pull request #116 from Bedrock-OSS/feature/config-cleanup
  • 94a7648 Merge pull request #118 from retr0cube/patch-1
  • 09b5446 Merge pull request #127 from Bedrock-OSS/debt/code-cleanup-p1
  • d100c0a Merge pull request #96 from Bedrock-OSS/featre/rce
  • 8fbe58f Merge pull request #98 from Bedrock-OSS/feature/test-folder
  • e3663f1 Merge pull request #99 from Hatchibombotar/main
  • 75e0fc6 Move filter definition validation to be per filter type, add default filter definition validation and fix filter validation for shell type filter
  • 042b3cb Move update notice to the end of the logs. Fixes #95
  • df7459d Remove unsafe
  • 4ad776d Removed Profile.Unsafe for good.
  • 97326ca Reorganised the project so it follows the rules: - All methods use pointer receivers - All constructor functions are defined directly under the struct defnition that they create - All methods are defined under the constructor function of the struct or under the struct defnition
  • a6fd7a1 Switch to log
  • b0f3d05 The edited_files.json can now keep track of multiple export directories
  • 2a2ed2a The filter dependencies are Downloaded inside filter.Download method. This commit changes slightly where you can put requirements.txt, package.json etc. The file with list of dependencies should be in the same directory as the script instead of the same directory as the profile file (config.json or filter.json)
  • 6a3bdb1 Update LICENSE.rtf
  • 3e05dea Update README.md
  • 80d752b Update README.md
  • 06ef74f Update README.md
  • 97df704 Update README.md
  • 4328779 Update README.md
  • cc5aac0 Update README.md
  • 9ca1a74 Update nim-filters.md
  • 83df05d Update nodejs-filters.md
  • 252fbd5 Updated 'regolith init' test
  • b7136e9 Updated config.json in the test project 'fresh_project' to make it match the new default config.json content.
  • dcd642e add filter repo link to readme
  • 1897660 fix swapped links

0.0.6

25 Oct 21:36
Compare
Choose a tag to compare

Changelog

6205ebb Added Language Field to all standard filters
a2b3bc9 Added Language field to all community filters
d7dcb4c Fix critical installation issue
e8be94a Update safety.md

0.0.5

24 Oct 09:49
88f6f12
Compare
Choose a tag to compare

Changelog

1b77708 Add URL validation of dependency installation
0c8ead2 Add new image paths
142d2b7 Added links
81c0493 Added nim filter
3e44de4 Added nim filter type
50b9ef8 Fixed issue that caused Regolith create files with wrong user permissions that couldn't be accessed by Minecraft. Close #85
7111188 Fixed issues with Regolith Install command
4eb6f8c Fixed the file protection system. Regolith won't export files to the target directories if they contain files that weren't created by Regolith. Close #82
e517e72 Merge pull request #72 from evilguy50/main
f6ec853 Merge pull request #83 from evilguy50/main
88f6f12 Merge pull request #89 from Bedrock-OSS/bug/remote-filter-data
4cdedff Merge pull request #90 from Bedrock-OSS/bug/bad-url-crash
b4bc365 Read Only Export Target (#81)
1ee184e Throw an error, if a filter is missing 'script' field
fdd6006 Update community-filters.md
ac9728c Update custom-filters.md
c119f7a Update image path to be non relative
e9323a0 Update navigation.yml
42846e9 Update navigation.yml
03b070a added nim filter docs

0.0.4

13 Oct 22:08
Compare
Choose a tag to compare

Changelog

c744f2d Add Java filter type and add user arguments after filter definition arguments
76e7bde Add data path handling for regolith
e70da7c Add force mode, allowing install to overwrite met dep
d33fcf8 Add new doc
e80dad9 Add update checker
ec25e4b Allow disabling filters via the 'disabled' key
7a7ef8a Change URL for Java download
16dcfc4 Clean up unused code
857b404 Debug print executed command
327100b Docs
3a1823d Don't init logging, if it's already initialized
112f361 Fix coloring output in windows command line
c48b18a Fix getting default branch and allow for specifying Url and Filter fields at the same time
e3721e5 Fix issue where installation could clear data folder
89610f4 Fixed CheckUpdate function crashing Regolith on failed attempt of checking for updates. Regolith prints a warning when the update fails.
10c8c3a Merge branch 'main' of https://github.com/Bedrock-OSS/regolith
f1b793f Merge branch 'main' of https://github.com/Bedrock-OSS/regolith
534a22e Merge branch 'main' of https://github.com/Bedrock-OSS/regolith
f9bf450 Merge branch 'main' of https://github.com/Bedrock-OSS/regolith into main
2f9be9f Merge branch 'main' of https://github.com/Bedrock-OSS/regolith into main
141afce Merge branch 'main' of https://github.com/Bedrock-OSS/regolith into main
d2fb350 Merge remote-tracking branch 'origin/main'
95df313 Prevent installed filters from reinstalling
23d7e90 Regolith doesn't print error messages after running with no argumetns. Close #44
4d71b63 Regolith uses the 'build' path only if the export target is 'local'
c304e51 Renamed 'none' export target to 'local'. Updated the test files.
1e4da3f The 'DEV' build doesn't enforce the debug mode for logging anymore (use --debug flag instead).
a0ad904 Trying to fix website
ce67c3f Update filter-types.md
61cde15 Update getting-started.md
9a746e2 Update introduction.md
214563c Update introduction.md
e376cb7 Update readme.md
685722d Update regolith.scss
004a71c Update regolith.scss
41c6aaf docs
23e98f6 docs
e32cf51 docs
bc37d88 docs
c60adec docs
03822be docs
50492f7 docs
34b10bd docs
b73acb2 docs
0675556 docs
40cd50b docs
d7f41f3 docs
418c09c docs
b2bdfd3 docs
03c0787 docs
24aabf2 docs
a12d05a docs
7b2100b docs
0eb4898 docs
8a854e6 docs

0.0.3

04 Oct 19:52
Compare
Choose a tag to compare

Changelog

072536b 'let's just remove all \r and worry about potential errors later xd' ~stirante (fixed TestRegolithInit giving false positive results on some OSes)
928a2a2 :docs Add docs
1bedd8e Add .gitignore file when initializing project and change perms of created files to 0666
fc20cb1 Add FILTER_DIR environment variable to all filters and refactor project a bit
f7689b4 Add clean command
9bbbe8f Add debug flag and disable stack traces in production mode
c3a4102 Add filter downloader, that doesn't require git
85ead08 Added 'exact' export target mode for issue #14
58d2dab Added 'world' and 'none' export targets for issue #14
d5fce2a Added custom dataPath property to profile. Close #41
769a15b Added test for InitializeRegolithProject function.
26ebc58 Adjust logging
cecc431 Don't stop when only git-getter fails
e157d50 Fixed a bug which caused Regolith crashes when executing remote filters with settings property where settings are defined localy but not in the remote filter.json file
2ae3de5 Fixed bug that caused Regolith crushes when trying to run 'regolith init' in a directory without a 'config.json' file (regolith tried to delete unexisting file).
84f8f43 Fixed the colour for inline code-blocks.
a03c9a9 Implemented venvSlot feature for issue #28. Implemented recursive regolith install for issue #32. Both features require some testing.
eded92c Improve how filter execution is being logged
30968b3 Merge remote-tracking branch 'origin/main'
e26b237 Merge remote-tracking branch 'origin/main'
c02eb4e Move tests to separate package and fix grammar a bit
2af18d3 Refactor error reporting part 1
9f84867 Refactor error reporting part 2
85d9a44 Regolith creates edited_files.jsonafter exporting files. The file contains lists of rp and bp files created by Regolith. Regolith will clear the export paths before exporting unless they contain some files which aren't listed in edited_files.json. Missing files stop the process of exporting.
9fd00ba Removed unused code.
866acd9 Rename src package to regolith
5a33d13 Send filter output through logs
e19dabb filters.go cleanup.
64730f9 git_getter returns false on failed download attempt when fetchTree fails instead of ending with fatal error.
f4b62f4 remote_filters.go documentation

0.0.2

31 Aug 08:12
Compare
Choose a tag to compare

Changelog

75820c2 Add docs
eee381f Add shell filter and adjust filter types to changed filter path
ad68289 Add support for new config type
6f9634c Added venv_path property to Profile.
cd426fb Improve regolith init command
ba2bb46 Merge branch 'main' of https://github.com/Bedrock-OSS/regolith
841871d Merge branch 'main' of https://github.com/Bedrock-OSS/regolith into main
a1e53eb Merge pull request #27 from Bedrock-OSS/venv_path_property
cf2b40f Merge remote-tracking branch 'origin/main'
0bc63ca Rebrand
ab17688 Removed always true condition from InstallDependency. RunProfile checks the requirements only once per filter type. Close #24. needsVenv additionally checks if requirements.txt is not a directory.
587c3b6 Renamed venv_path to venvPath. Removed debug messages about venv_path.
157ec36 RunProfile fix.
da44ac8 Updated config format to use camelCase. Close #26

0.0.1

22 Aug 19:55
Compare
Choose a tag to compare

Changelog

d045930 .regolith/tmp and .regolith/cache are now created with MkdirAll instead of Mkdir (with parent path). Close #4
47e7d7b Add Id field to list of the worlds and add a debug functions for minecraft utils
246abb7 Add URLs for downloading runtimes
9fbbe9a Add a way to install dependencies for filters and implement installing dependencies for python filter
34914d6 Add basic project manifest structure and loader
766f62b Add custom help format and add some colors
f8cd556 Add filter requirements check
835f685 Add functionality for running a profile
4cf9d32 Add goreleaser config, move code and add placeholder commands
d3863db Add init and IsConfigExists
17573dd Add link to standard library repo
a8c0d16 Add msi file to release
61ad1a9 Add python utils
21b33ee Add settings to filters
e724db9 Add skeleton for project exporting
080ce3e Add skeleton for remote filters
bb1b6af Add test action and windows installer
ca2e50b Add to gitignore
ede7629 Add utils for getting mojang dir and list of worlds
16f8c63 Add zap logging and measure times
090ab10 Added [FATAL] label to fatal messages. Added error handling for Setup(). Close #11
a96a41e Added further skeleton for remote-filter handling
d15c28b Added the start of filter proccessing
cc30f58 Attempt adding combined-io std:err and std:out
6d5c656 Attempt to fix action
f2c18a4 Attempt to fix action part 2/?
7489d3d Attempt to fix action part 3/?
90d275f Attempt to fix action part 4/?
1f3861d Attempt to fix action part 5/?
7f9a83d Bring back mod vendor and improve gitignore vendor directory
0acde8d Change RunFilter function to Filter struct method
b7beed2 Change get to install for go-msi
a91473d Change log to Logger and add some error handling
eb8ad5b Change system log to Logger
ec36a65 Childprocess example, readme update
a974298 Clean up some debug logs
51a3aab Delete vender
0255715 Disable MSI generation
d936350 Don't create build folder and remove it right before renaming .tmp folder. Fix #2
7226ad4 Don't download zip to working directory and skip go mod vendor
8f5ef3b Finish implementation of remote filters
10c0f6c Fix curl in GitHub Action
7223c5a Fix format string not formatter
5432441 Fix real time logging standard output and error and properly run python scripts
0b28345 Fix typo in README
8cbb3b1 Fixed the permission codes from Mkdir to use octal numbers (starting with 0) instead of decimal (777 -> 0777)
5f7dc01 Hide fund info and vulnerability check
84c3d73 Implement NodeJS filter type
5b7f73f Implement getting dependencies for NodeJS filters
8ad810e Initial commit
a90902f Keep colors consistent
5f2ae40 ListWorlds checks for missing levelname.txt and duplicated world names
d2226e4 Making Regolith worse
27a0189 Merge branch 'main' of https://github.com/Bedrock-OSS/regolith into main
f2439bb Merge pull request #1 from Nusiq/patch-1
5485c4a Move .tmp into .regolith/tmp. Add skeleton for installs
23159b9 Push example regolith.json
14eb8f3 Push with subprocess running
669982d Refactor local filters
3c5af46 Regolith init creates a file with indentation
4a621b5 Remove debugging minecraft utils
429f661 Remove temp, moved to regolith-project
ba52c3f Remove test files
8410e89 Rename const to match naming convention
e5a20f1 RunProfile function speed improved (it doesn't create unnecessary copy of the .tmp folder anymore)
0b5d342 Setup profile running
fdafe40 Support colored output in cmd.exe
8e5995f Support colors also for error output
4b3ffb6 Tidy mod
c5dec56 Try changing path to msi file
5d77081 Try changing path to msi file
56664d4 Update readme
efee21a go fmt whole project
ef6dc32 get the basic CLI lib in place
1799486 initialize go module