- Update README.md to provide a clearer structure and improved
installation instructions. This makes it easier for users to
understand and use the library.
- Remove outdated and unnecessary sections like the workspace
structure details, publishing status, and detailed features
lists. The information is either not relevant anymore or can be
found elsewhere.
- Simplify installation instructions to focus on the core aspects
of installing individual packages or the meta-package with
features.
- Add a dedicated section for building and running tests,
improving developer experience and making the process more
transparent.
- Modernize the overall layout and formatting for better
readability.
- Renamed examples directory to `_archive` to reflect legacy status.
- Updated README.md to reflect current status of vault module,
including migration from Sameh's implementation to Lee's.
- Temporarily disabled Rhai scripting integration for the vault.
- Added notes regarding current and future development steps.
- Upgrade `zinit-client` dependency to version 0.4.0 across all
relevant crates. This resolves potential compatibility issues
and incorporates bug fixes and improvements from the latest
release.
- Improve error handling and logging in `zinit-client` and
`service_manager` to provide more informative feedback and
prevent potential hangs during log retrieval. Add timeout to
prevent indefinite blocking on log retrieval.
- Update `publish-all.sh` script to correctly handle the
`service_manager` crate during publishing. Improves handling of
special cases in the publishing script.
- Add `zinit-client.workspace = true` to `Cargo.toml` to ensure
consistent dependency management across the workspace. This
ensures the correct version of `zinit-client` is used everywhere.
- Add Kubernetes examples demonstrating deployment of various
applications (PostgreSQL, Redis, generic). This improves the
documentation and provides practical usage examples.
- Add `tokio` dependency for async examples. This enables the use
of asynchronous operations in the examples.
- Add `once_cell` dependency for improved resource management in
Kubernetes module. This allows efficient management of
singletons and other resources.
- Improve Linux support by automatically discovering zinit sockets
using environment variables and common paths.
- Add fallback to systemd if no zinit server is detected.
- Enhance README with detailed instructions for zinit usage,
including custom socket path configuration.
- Add example demonstrating zinit socket discovery.
- Add logging to show socket discovery process.
- Add unit tests for service manager creation and socket discovery.
- Handle arguments and working directory correctly in Zinit: The
Zinit service manager now correctly handles arguments and
working directories passed to services, ensuring consistent
behavior across different service managers. This fixes issues
where commands would fail due to incorrect argument parsing or
missing working directory settings.
- Simplify Zinit service configuration: The Zinit service
configuration is now simplified, using a more concise and
readable format. This improves maintainability and reduces the
complexity of the service configuration process.
- Refactor Zinit service start: This refactors the Zinit service
start functionality for better readability and maintainability.
The changes improve the code structure and reduce the complexity
of the code.
- Correctly handle the `zinit_client` crate name in package
publication checks and messages. The script previously
failed to account for the difference between the directory
name and the package name.
- Improve the clarity of published crate names in output messages
for better user understanding. This makes the output more
consistent and user friendly.
- Add comprehensive testing instructions to README.
- Improve error handling in examples to prevent crashes.
- Enhance launchctl error handling for production safety.
- Improve zinit error handling for production safety.
- Remove obsolete plan_to_fix.md file.
- Update Rhai integration tests for improved robustness.
- Improve service manager creation on Linux with systemd fallback.
- Updated simple_service.rs to use start(config) instead of create() + start(name)
- Updated service_spaghetti.rs to use the same unified API
- Fixed factory function calls to use create_service_manager() without parameters
- All examples now compile and work with the production-ready synchronous API
- Maintains backward compatibility while providing cleaner interface
- Resolved conflicts in service_manager/src/lib.rs
- Resolved conflicts in service_manager/src/launchctl.rs
- Resolved conflicts in service_manager/src/zinit.rs
- Resolved conflicts in service_manager/README.md
- Kept our production-ready synchronous API design
- Maintained comprehensive service lifecycle management
- Preserved cross-platform compatibility (macOS/Linux)
- All tests passing and ready for production use
- Add a new service manager crate for dynamic service management
- Integrate service manager with Rhai for scripting
- Provide examples for circle worker management and basic usage
- Add comprehensive tests for service lifecycle and error handling
- Implement cross-platform support for macOS and Linux (zinit/systemd)
- Reduced the number of SAL crates from 16 to 15.
- Removed redundant core modules from README examples.
- Updated README to reflect the current state of published crates.
- Added `Cargo.toml.bak` to `.gitignore` to prevent accidental commits.
- Improved the clarity and accuracy of the README's installation instructions.
- Updated `publish-all.sh` script to handle existing crate versions and improve dependency management.