Releases: AliSajid/BrainFoamKit
Releases · AliSajid/BrainFoamKit
v1.1.0
1.1.0 (2024-07-19)
Features
- guide: add the complete EBNF grammar for brainfuck (fa3beae)
- guide: add the complete EBNF grammar for brainfuck (cc5c98d)
Bug Fixes
- add additional logging to the publish step (0b6b5ba)
- add dist/ to gitignore (da9ccf0)
- clear out clippy warnings for incorrect formatting (f7f09ce)
- deps: update rust crate anyhow to v1.0.86 (534d936)
- deps: update rust crate ratatui to 0.27.0 (7f0f47a)
- ensure the build script is part of the repo (2950d0d)
- ignore other files (12efda7)
- ignore package.json (7df57eb)
- modify the EBNF grammar for completion (d15a2e0)
- modify the EBNF grammar for completion (bd067e6)
- uniquely identify the uploaded artifacts (8ee0991)
- update semantic-release-cargo version (59a1a59)
- update the build script for correct directories (abda8cf)
v1.1.0-next.7
v1.1.0-next.6
v1.1.0-next.5
v1.1.0-next.4
v1.1.0-next.3
v1.1.0-next.2
v1.1.0-next.1
1.1.0-next.1 (2024-07-18)
Features
- guide: add the complete EBNF grammar for brainfuck (cc5c98d)
Bug Fixes
- clear out clippy warnings for incorrect formatting (f7f09ce)
- deps: update rust crate anyhow to v1.0.86 (534d936)
- deps: update rust crate ratatui to 0.27.0 (7f0f47a)
- ensure the build script is part of the repo (2950d0d)
- modify the EBNF grammar for completion (d15a2e0)
- modify the EBNF grammar for completion (bd067e6)
- uniquely identify the uploaded artifacts (8ee0991)
- update the build script for correct directories (abda8cf)
v1.0.0
1.0.0 (2024-01-05)
⚠ BREAKING CHANGES
Features
- add an ASCII Table struct (dd2a6e6)
- add placeholder main() (36b6a70)
- add pretty table for the ascii table output (c0a5aae)
- bfkrun: change the interpreter to use the brainfoamkit_lib (3979b11)
- bfkrun: use vm-native byte implementation for the table (6702eed)
- binary: add placeholder TUI for the interpreter (de30d66)
- bit: add a bit struct and associated functions (e44dffd)
- Bit: impl the Bit*Assign traits (8dba984)
- bit: implement BitOr, BitAnd and BitXor traits for Bit (7b0d39a)
- BrainFoamKitMachine: add a rudimentary BrainFoamKitMachine (1d333bd)
- Byte: add a byte struct and associated implementation (2a9c7be)
- byte: add abyte struct and associated functions (5ee80c4)
- Byte: add an iterable type for byte (b0f08a8)
- Byte: implement
IntoIterator
for&Byte
(a814022) - Byte: implement basic Byte functionality (6e51f2c)
- expose
Program
andBrainFoamKitMachine
from the library (ce3790e) - implement Not for Bit (afe5066)
- instruction: add an instruction enum to manage and read instructions (8b3bd89)
- Instruction: add instruction generation from chars (f938c88)
- Instruction: change the representation of instructions (cf0de0a)
- lib: add the basic bit, byte and tape structs (ab9458d)
- nybble: add a nybble and associated functions (e3e959e)
- Nybble: add increment and decrement functions (a66d4a8)
- nybble: add individual bit getter (e7557f0)
- Nybble: add iterator implementation for Nybble (16b0e73)
- nybble: add nybble functionality (43edddf)
- Nybble: add stubs for increment() and decrement() for Nybble (d137203)
- nybble: immplement Not trait for Nybble (5be421a)
- Nybble: implement
IntoIterator
forNybble
(043b687) - Nybble: refactor to iterable nybble (fdc440e)
- Program: add an index method (0910507)
- Program: add the
Program
struct (dbcb33d) - redo the bfkrun binary for alpha-testing (314391c)
- testing new run (f534933)
- use ratatui for TUI building (9177748)
- VMBuilder: add a
Builder
interface to the Virtual Machine (c83d8cb) - VMReader: add the
VMReader
trait for input for the VM (a0031c2) - VM: refactor both
VirtualMachine
andVirtualMachineBuilder
to be generic over type R (5657213)
Bug Fixes
- fix several failing tests due to inconsistent documentation (557e2a4)
- interpreter: change the upperlimit of the ASCII sequence (6cf17ec)
- interpreter: spell check (39aeec6)
- remove generic type parameter (5270bf2)
- update the doctest to pass (ded4ad1)
- update the pacakge list for the gitpod dockerfile (cd9bd25)
- VirtualMachine: update
increment_value()
anddecrement_value()
to do in-place mutation (822b8cb)
Code Refactoring
- Machine: basic refactor of the Machine struct before doing an overhaul (86649c5)
- Program: change
Program
to be an immutable container of instructions (91c6187)
Tests
- test_get_bit: fix the bit location for the test (ec656ae)