·
82 commits
to master
since this release
Fcp has moved on to the next stage of its life. We've started development on
the affectionately named "fcp v2".
There's a couple main goals for the new fcp version:
- Develop an IDL (interface description language) to replace the old json configuration.
- Allow fcp to generate code that works for protocols other than CAN bus.
- Extend the information that fcp is capable of encoding.
Documentation can be found in: https://fcp-core.readthedocs.io/en/latest/.
Closed issues
- CI
- Create pyproject.toml
- Remove all related to fcp_v1
- Add type annotations
- Remove fpi
- Allow type composition
- Update README
- Remove the result type
- Implement code generator for cpp
- DBC generator
- Support types smaller than 1 byte
- Rethink
extends
syntax - Add description of files and directory structure
- Readd default schema validation rules
- Add rpc mechanism
- Add arrays to IDL
- Support multiple buses in fcp
- Create treesitter grammar for syntax highlighting in editors
- Add API docs as python docstrings
- Properly support comments
- Implement cpp code gen
- Create CAN C generator
- Add support for arrays in fcp cpp
- Implement to string convertions for cpp code
- Support for enums in CAN C gen
- Support for period/frequency
- Test builtin types in cpp gen
- Add support for strings as a signal datatype
- Implement python decoding library
- Add support for dynamic arrays as signal datatypes
Changes
- Configure github CI @joajfreitas
- Prepare fcp development. Including adding a pyproject.toml @joajfreitas
- Change license to MIT @joajfreitas
- Parser tests @joajfreitas
- Type annotation + Type checking @ItsNotSoftware
- Update readme @joajfreitas
- Serialization tests @joajfreitas
- config for pre commit hooks @joajfreitas
- Type composition @joajfreitas
- Deleted fpi @ItsNotSoftware
- Dbc support @joajfreitas
- Struct extension @joajfreitas
- Remove semicolons @joajfreitas
- Prototype for sphinx docs @joajfreitas
- Redo imports @joajfreitas
- Test fcp parsing errors @joajfreitas
- Add Maybe type for error handling @joajfreitas
- Upgrade result type @joajfreitas
- Support python 3.8 @joajfreitas
- Test for fcp_dbc_generator @joajfreitas
- Fcp dbc readme @joajfreitas
- Generate dbc with composed types @joajfreitas
- Add test for fcp nop @joajfreitas
- Support for small types @joajfreitas
- Check that code examples in markdown files are correct @joajfreitas
- Add packed encoder @joajfreitas
- Fix v2_parser @ItsNotSoftware
- Change the extension syntax @joajfreitas
- Document directory structure @joajfreitas
- Add test for example in fcp dbc @joajfreitas
- Fix/dbc generator @joajfreitas
- Poc for rpc service @joajfreitas
- Rename Signal to StructField @joajfreitas
- Support for arrays @joajfreitas
- Implement array support in fcp dbc @joajfreitas
- Throw exception if message is too big @joajfreitas
- Add units to tests @joajfreitas
- Support multiple buses in one config @joajfreitas
- Docstrings @joajfreitas
- Fcp cpp gen @joajfreitas
- CAN C generator @ItsNotSoftware
- Properly support comments @joajfreitas
- Supported features docs @joajfreitas
- Cpp arrays @joajfreitas
- First implementation of period (needs generated code checks) @c4stelo
- Add missing builtin types @joajfreitas
- Implement support for string builtin types @joajfreitas
- Implement support for dynamic array builtin types @joajfreitas
- Python decoding lib @joajfreitas
- Fcp schema schema @joajfreitas
- Setup release @joajfreitas
Cleanups
- fixed v2 tests @ItsNotSoftware
- Remove all related to v1 @ItsNotSoftware
- Move changelog to single file @joajfreitas
- Cleanup @joajfreitas
- Cleanup @joajfreitas
- Enable colors in makefile @joajfreitas
- Cleanup @joajfreitas
- Fix example syntax @joajfreitas
- Better printing for fcp @joajfreitas
- Fix README example code @joajfreitas