Skip to content

feat(workspace): add config, error, fs crates - #26

Merged
mroczect merged 20 commits into
refactor/new-designfrom
workspace/feat/add-config-error-fs-crates
Sep 7, 2026
Merged

mroczect merged 20 commits into
refactor/new-designfrom
workspace/feat/add-config-error-fs-crates

Conversation

@mroczect

@mroczect mroczect commented Sep 7, 2026

Copy link
Copy Markdown
Owner

Summary

This PR expands the Cargo workspace by adding three new crates: librawssg_config, librawssg_error, and librawssg_fs. It also updates existing crates to version 1.0.0 and adds descriptive metadata and READMEs.

Motivation & Context

The workspace previously contained only compiler, handler, and templates crates. Adding dedicated config, error, and filesystem crates improves modularity and separation of concerns. Version bumps to 1.0.0 mark a stable API baseline. Metadata and READMEs document each crate's purpose.

Detailed Changes

  • Cargo.lock: Updated to include new crates and thiserror dependencies.
  • Cargo.toml: Added librawssg_config, librawssg_error, librawssg_fs to workspace members.
  • librawssg_compiler/Cargo.toml: Bumped version to 1.0.0 and added metadata.
  • librawssg_compiler/README.md: Added README.
  • librawssg_config/Cargo.toml: New manifest for config crate.
  • librawssg_config/README.md: Added README.
  • librawssg_config/src/lib.rs: Placeholder library file.
  • librawssg_error/Cargo.toml: New manifest with thiserror dependency.
  • librawssg_error/README.md: Added README.
  • librawssg_error/src/lib.rs: Defined Error enum and Result alias.
  • librawssg_error/tests/: Added three empty test files.
  • librawssg_fs/Cargo.toml: New manifest for fs crate.
  • librawssg_fs/README.md: Added README.
  • librawssg_fs/src/lib.rs: Placeholder library file.
  • librawssg_handler/Cargo.toml: Bumped version and added metadata.
  • librawssg_handler/README.md: Added README.
  • librawssg_templates/Cargo.toml: Bumped version and added metadata.
  • librawssg_templates/README.md: Added README.

Impact & Breaking Changes

No breaking changes identified. The new crates are additive and the version bumps do not alter existing APIs.

Testing Recommendations

Run cargo test to verify the workspace builds and placeholder tests pass. No additional tests are required for the empty test files.

Related Issues

None.

Add entries for librawssg_config, librawssg_error, librawssg_fs and adjust existing crate versions to 1.0.0. Include thiserror and its transitive dependencies.
Expand workspace members to include librawssg_config, librawssg_error, and librawssg_fs. Keep existing members.
Set version to 1.0.0 and add description, license, repository, readme, keywords, and categories.
Add a short description of the build pipeline orchestration role.
Create Cargo.toml for librawssg_config with description, license, repository, readme, keywords, and categories. Include workspace lints.
Describe the purpose of the config crate.
Add a simple placeholder lib.rs with add function and test to bootstrap the crate.
Create Cargo.toml for librawssg_error with thiserror dependency and metadata. Use workspace lints.
Describe the unified error type and Result alias.
Add a non-exhaustive Error enum with variants for common SSG failures. Export Result type using thiserror.
Create empty integration_tests.rs for future tests.
Create empty property_tests.rs for future tests.
Create empty unit_tests.rs for future tests.
Create Cargo.toml for librawssg_fs with description, license, repository, readme, keywords, and categories. Use workspace lints.
Describe the filesystem abstraction layer.
Add a simple placeholder lib.rs with add function and test.
Set version to 1.0.0 and add description, license, repository, readme, keywords, and categories.
Describe the content processing contracts.
Set version to 1.0.0 and add description, license, repository, readme, keywords, and categories.
Describe the template rendering contracts.
@mroczect
mroczect merged commit f17e65a into refactor/new-design Sep 7, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant