What's new
- Run multiple frappe sites at once. [85](https://github.com/rtCamp/Frappe-Manager/issues/85)
- Custom queue support. [93](https://github.com/rtCamp/Frappe-Manager/issues/93)
- Integrate Supervisor for Efficient Command Management within Containers feature-request. [92](https://github.com/rtCamp/Frappe-Manager/issues/92)
- fm sub command group `service` which will have restart, start, stop, shell as commands. [85](https://github.com/rtCamp/Frappe-Manager/issues/85)
- Check site in `fm create` execution for successful creation, if not then prompt for rollback. [96](https://github.com/rtCamp/Frappe-Manager/issues/96)
- `fm logs <sitename>` show frappe dev server logs. [26](https://github.com/rtCamp/Frappe-Manager/issues/26)
Enhancements
- Migration module for handling fm version migrations.
- Revamped `fm list` command for improved user experience. [94](https://github.com/rtCamp/Frappe-Manager/issues/94)
- Site services and worker services status in `fm info` command for better site monitoring at on glance. [95](https://github.com/rtCamp/Frappe-Manager/issues/95)
- Alert user when current user is not added to `docker` group. [97](https://github.com/rtCamp/Frappe-Manager/issues/97)
- Better formatting for yaml in all docker compose files.
- Fix port checking implementation, now using python package psutil for Linux and lsof command for osx. [77](https://github.com/rtCamp/Frappe-Manager/issues/77)
- Provides service name hints in help for --service flag in fm logs and fm shell subcommand.
- Add -f short flag for --follow in fm logs <sitename>
Maintenance/Optimizations
- Optimized compose file migration.
- Fix logs command for better Keyboard Interrupt handling.
- Dependency change from pyyaml to ruamel.yaml for better YAML processing
- Optimized ports checking, now ports are checked excluding ports which are published by `fm` itself(like docker binded ports).
- Refactor code for move readability.
- Optimized docker compose site and worker status check.
BUG FIXES
- Fixed docker compose up, restart, and exec commands not working with services argument
- Fixed shell, logs command not working with `--service` flag
- Fixed docker on detection for correct Docker status detection