Release v0.2.6 - 2024-05-15
LibMake v0.2.6 π¦
A code generator to reduce repetitive tasks and build high-quality Rust libraries.
Part of the Mini Functions family of libraries.
β’ Website β’ Documentation β’ Report Bug β’ Request Feature β’ Contributing Guidelines
Overview π
LibMake
is a tool designed to quickly help creating high-quality Rust libraries by generating a set of pre-filled and pre-defined templated files. This opinionated boilerplate scaffolding tool aims to greatly reduces development time and minimizes repetitive tasks, allowing you to focus on your business logic while enforcing standards, best practices, consistency, and providing style guides for your library.
With LibMake
, you can easily generate a new Rust library code base structure with all the necessary files, layouts, build configurations, code, tests, benchmarks, documentation, and much more in a matter of seconds.
The library is designed to be used as a command-line tool. It is available on Crates.io and Lib.rs.
Features β¨
LibMake
offers the following features and benefits:
- Create your Rust library with ease using the command line interface or by providing a configuration file in CSV, JSON, TOML, or YAML format.
- Rapidly generate new library projects with a pre-defined structure and boilerplate code that you can customize with your own template.
- Generate a library pre-defined GitHub Actions workflow to help you automate your library development and testing.
- Automatically generate basic functions, methods, and macros to get you started with your Rust library.
- Enforce best practices and standards with starter documentation, test suites, and benchmark suites that are designed to help you get up and running quickly.
Changelog π
Bug Fixes
- fix(libmake): π Addressed various Clippy issues to improve code quality and consistency.
- fix(libmake): π Fixed an initializer issue for
thread_local
value that can be madeconst
.
Refactoring
- refactor(libmake): π¨ Optimized templates and upgraded dependencies for better performance and maintainability.
Tests
- test(libmake): β
Added new tests and refactored existing ones to improve test coverage and reliability.
- Added new tests for
test_directory.rs
. - Added new test for
ascii_macros.rs
. - Added new test for
directory_macros.rs
. - Added new test for
file_macros.rs
. - Added new test for
yaml.rs
. - Added new tests for
ascii_art.rs
andinterface.rs
. - Added new tests for
json.rs
. - Added new tests for
log_macros.rs
. - Added new tests for
test_uuid.rs
. - Added new tests for
toml.rs
. - Added new tests for
utility_macros.rs
. - Added tests for
csv.rs
. - Added tests for
init.rs
. - Added unit tests for models.
- Added new tests for
Summary
This release includes various bug fixes, template optimizations, dependency upgrades, and a comprehensive suite of new and refactored tests to ensure code reliability and quality. The improvements address several issues identified by Clippy, fix initialization issues for thread_local
values, and significantly enhance test coverage across multiple modules.
Details
Bug Fixes:
- Addressed Clippy issues to align with Rust coding standards.
- Fixed the initializer for
thread_local
value to beconst
, ensuring better performance and adherence to best practices.
Refactoring:
- Improved template efficiency and updated dependencies to the latest versions for enhanced performance and maintainability.
Testing:
- Comprehensive testing improvements across the library, including new tests for key modules and refactoring existing tests for better structure and coverage. This includes modules like
ascii_macros
,directory_macros
,file_macros
,yaml.rs
,ascii_art
,interface.rs
,json.rs
,log_macros
,test_uuid
,toml.rs
,utility_macros
,csv.rs
,init.rs
, and various models.
Thank you for using LibMake. Your feedback and contributions are always appreciated.
What's Changed
- Merge pull request #38 from sebastienrousseau/feat/libmake
- v0.2.6 by @sebastienrousseau in #38
Full Changelog: v0.2.5...v0.2.6