The primary focus of the 0.5.3 release is getting the Controller program and its dependencies working.
Significant portions of the Controller program is now complete and working.
That said, there are still things not yet completed in the Controller program with the most notable being:
- The control process and its related communication.
- Code needs structural cleanup.
- The start, stop, and kill timeout settings may or may not be going away (I need to consider the original plans vs the current design).
- Reload rules during runtime, which will require delicate handling.
- IKI support needs to be fully implemented.
- Variable based rule execution (so that a single rule may be used for multiple different processes, such as getty/1, getty/2, etc..).
This brings in a lot of fixes and improvements.
- Add custom time support and improvements including f_time structure.
- Significant improvements to the pthread support, fixing problems and adding missing functionality.
- Redesign project to install headers under 'fll' directory.
- Memory function improvements and fixes.
- Get UTF-8 string functions more in sync with normal string functions.
- Test compilation unde LLVM's Clang compiler, fixing problems exposed.
- Fix capability issues.
- Major improvements in the execute projects.
- Featureless Make and bootstrap script now properly creating parent directories for path_headers if parent paths do not exist.
- Add additional status codes.
- All projects now use legacy-only capability by default.
- Use 'char' instead of 'int8_t' and 'uint8_t' for character related codes except when dealing with Unicode byte sequences (in certain cases).
Remaining planned changes for preparing 0.5.x branch for 0.6.x:
- Finish writing UTF-8 support for existing functionality.
- Finish the "controller" program, which is another part of the non-systemd init design.
- Write the "control" program, which is intended to interact with the "controller" program.
- Review FSS and IKI standards for consistency in both specification and implementation.
- Bring "firewall" up to date.
- Cleanup existing code, getting the style back in sync for a stable release.
- Review and fix some inconsistencies in the design that would influence the API.
- Update Featureless Make to fully handle creating parent paths.
- Update Featureless Make to support overriding settings using program parameters.
- Update documentation.