Releases: vascocosta/bargo
v1.1.0
v1.0.0
- Add support for remote dependencies
- Add remove command
- Add support for labels
This is a milestone release which adds significant new features and marks the code as stable.
Bargo now supports remote dependencies in addition to the regular local dependencies. Just specify your dependencies in Bargo.toml
under the [dependencies]
section but after the name of the dependency, include a valid URL from where to download the BASIC file. You can use any HTTP URL and Bargo will attempt to fetch the code from there, including a GitHub URL. Notice that the use of version numbers in your dependencies is now deprecated. That placeholder is now used for the remote dependencies.
The remove command allows to easily remove a dependency from Bargo.toml
. As previously, you can manually edit Bargo.toml
and update your dependencies, but now you can also simply run bargo remove my_dep
.
Although the GOTO/GOSUB commands shouldn't be overused, at the expense of spaghetti code, as long as you keep them in check, it's perfectly fine. However, since bargo abstracts you from line numbers, it now supports text labels to easily allow you to use these commands. First define a text label with LABEL my_label
just above the code you want to jump to and then use that same text label with GOTO/GOSUB like for instance GOTO my_label
or GOSUB my_label
. These labels are case sensitive. Behind the scenes bargo replaces your labels with the appropriate line numbers when you do bargo build
.
v0.3.0
Changes:
- Add emulator command
- Add add command
- Refactor into a library crate
This is an important release which adds significant new features and marks a major refactoring of the code.
The emulator command allows to easily run an instance of the fab-agon-emulator to test the current code in your project. After generating the final BASIC file with bargo build
, you can now run bargo emu
. Behind the scenes bargo will copy your BASIC program into the emulator folder (set in Bargo.toml
), generate a special autoexec.txt
in the emulator and spawn an instance of the emulator that runs your code.
The add command allows to easily add a dependency to Bargo.toml
. As previously, you can manually edit Bargo.toml
and update your dependencies, but now you can also simply run bargo add my_dep.bas
. Obviously don't forget to actually create src/my_dep.bas
.
At last, but definitely not the least, I've made some considerable refactoring work, to move most of the code into a library crate alongside bargo's binary crate. This one concerns only Rust users out there who might consider using this crate in their own projects. This library crate provides the BargoCommand
trait, defining common behaviour for all the commands I'm creating. Anyone wishing to extend bargo with new commands can implement this trait. Additionally there's a Config
type to handle Bargo.toml
.
v0.2.0
- Add clean command
- Add init command
- Bail out if package already exists
- Create git repo when creating package
v0.1.0
First release