- Updated the database migration logic to handle missing tables gracefully, ensuring that migrations for existing installations do not block the process.
- Added checks for the existence of specific columns in the `repeater_contacts`, `complete_contact_tracking`, and `mesh_connections` tables, allowing for more robust schema updates.
- Introduced logging for migration errors to improve visibility and troubleshooting during the migration process.
- Ensured that the migration runs seamlessly for users accessing the web viewer without prior bot startup, enhancing user experience.
- Enhanced docker-setup.sh to ensure device mappings are correctly moved from the volumes section to the devices section in Docker Compose files.
- Added checks for serial device permissions and provided detailed instructions in DOCKER.md for resolving permission issues.
- Updated Dockerfile to add the meshcore user to the dialout group for serial port access, improving compatibility with serial devices.
- Improved logging functionality in core.py to handle log file paths more robustly, ensuring directories are created as needed and handling errors gracefully.
- Revised DOCKER.md to recommend building directly with `docker build` for improved compatibility on ARM devices and clarified the use of host network mode.
- Enhanced Dockerfile to utilize cache mounts for apt and pip installations, improving build efficiency and reducing redundant downloads.
- Updated GitHub Actions workflow to support multi-platform builds for both amd64 and arm64 architectures, ensuring broader compatibility.
- Removed unnecessary version declaration from docker-compose.yml.
- Added detailed troubleshooting steps for build failures on ARM devices in DOCKER.md, including network mode adjustments and Docker daemon checks.
- Updated Dockerfile to maintain consistent casing in the build stage declaration.
- Added Docker deployment instructions to the README, including steps for creating data directories, updating configuration paths, and starting the application with Docker Compose.
- Updated .gitignore to include a new data directory structure, ensuring user-specific configurations, databases, and logs are ignored while maintaining the directory structure.