Conversation
Housekeeping
Co-authored-by: JosunLP <[email protected]>
Co-authored-by: JosunLP <[email protected]>
…e für nicht unterstützte macOS-Architekturen hinzu
* ✨ Füge Unterstützung für die Rotation von Objekten hinzu: Ermöglicht alternative Ausrichtungen während des Verpackungsprozesses und aktualisiert die Benutzeroberfläche zur Konfiguration. * Optimize rotation deduplication and standardize epsilon handling (#14) * Initial plan * Address PR review comments: optimize orientation deduplication and standardize epsilon values Co-authored-by: JosunLP <[email protected]> * Extract dimension hash scale factor to named constant and reduce overflow risk Co-authored-by: JosunLP <[email protected]> * Fix misleading comment about dimension hash scale factor Co-authored-by: JosunLP <[email protected]> * Remove unused dims_almost_equal function after optimization Co-authored-by: JosunLP <[email protected]> * Remove unnecessary blank line for code consistency Co-authored-by: JosunLP <[email protected]> * Add test coverage for orientation deduplication with equal dimensions Co-authored-by: JosunLP <[email protected]> * Add clarifying comments for O(n²) uniqueness checks in tests Co-authored-by: JosunLP <[email protected]> * Fix trailing whitespace and align frontend epsilon to backend precision Co-authored-by: JosunLP <[email protected]> * Update src/optimizer.rs Co-authored-by: Copilot <[email protected]> Signed-off-by: Jonas Pfalzgraf <[email protected]> --------- Signed-off-by: Jonas Pfalzgraf <[email protected]> Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: JosunLP <[email protected]> Co-authored-by: Jonas Pfalzgraf <[email protected]> Co-authored-by: Copilot <[email protected]> * Update README.md Co-authored-by: Copilot <[email protected]> Signed-off-by: Jonas Pfalzgraf <[email protected]> * Move allow_rotations documentation to API endpoints section (#15) * Initial plan * Move allow_rotations documentation to API endpoints section Co-authored-by: JosunLP <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: JosunLP <[email protected]> --------- Signed-off-by: Jonas Pfalzgraf <[email protected]> Co-authored-by: Copilot <[email protected]> Co-authored-by: Copilot <[email protected]>
* Initial plan * Add Docker deployment support with GitHub Actions workflow Co-authored-by: JosunLP <[email protected]> * Add Docker setup documentation and update Dockerfile to use latest Rust Co-authored-by: JosunLP <[email protected]> * Address code review feedback: pin Rust version and improve placeholders Co-authored-by: JosunLP <[email protected]> * Apply PR review feedback: security, caching, and documentation improvements Co-authored-by: JosunLP <[email protected]> * Apply second round of PR review feedback Co-authored-by: JosunLP <[email protected]> * Apply third round of PR review feedback Co-authored-by: JosunLP <[email protected]> * Apply fourth round of PR review feedback Co-authored-by: JosunLP <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: JosunLP <[email protected]>
…n permissions (#16) Signed-off-by: Jonas Pfalzgraf <[email protected]> Co-authored-by: Copilot Autofix powered by AI <62310815+github-advanced-security[bot]@users.noreply.github.com>
There was a problem hiding this comment.
Pull request overview
This pull request introduces comprehensive Docker support and configurable object rotations to the 3D packing algorithm, along with expanded platform support for macOS and enhanced documentation. The changes enable per-request rotation control, streamline deployment through Docker, and extend the release pipeline to cover both Apple Silicon and Intel Macs.
- Added configurable 90° object rotations via API field
allow_rotationsand environment variableSORT_IT_NOW_PACKING_ALLOW_ROTATIONS - Implemented production-ready Docker support with multi-architecture images (linux/amd64, linux/arm64) and automated Docker Hub deployment
- Extended release builds to include macOS ARM64 and x86_64 targets with proper auto-update support
Reviewed changes
Copilot reviewed 13 out of 13 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
Dockerfile |
Multi-stage build configuration with non-root user execution and security best practices |
.dockerignore |
Optimizes Docker build context by excluding unnecessary files |
.github/workflows/docker.yml |
Automated Docker image building and pushing to Docker Hub on releases |
DOCKER_SETUP.md |
Comprehensive German guide for Docker Hub deployment setup and troubleshooting |
.github/workflows/release.yml |
Extended to build and package macOS ARM64 and x86_64 binaries with proper SHA256 checksums |
.github/workflows/rust.yml |
Added explicit contents: read permissions for improved security |
src/optimizer.rs |
Implemented rotation logic with efficient deduplication, comprehensive tests, and orientation-aware placement |
src/config.rs |
Added boolean parser for SORT_IT_NOW_PACKING_ALLOW_ROTATIONS environment variable |
src/api.rs |
Added optional allow_rotations field to PackRequest with per-request override capability |
src/update.rs |
Extended auto-update system to support macOS (both ARM64 and x86_64 architectures) |
web/script.js |
Implemented frontend rotation logic with epsilon-based deduplication matching backend behavior |
web/index.html |
Added checkbox UI for rotation toggle with explanatory hint text |
README.md |
Updated documentation to describe Docker usage, macOS releases, rotation features, and configuration options |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <[email protected]> Signed-off-by: Jonas Pfalzgraf <[email protected]>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 13 out of 13 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
* Initial plan * Add conditional checks to Docker workflow to skip when secrets are not configured Co-authored-by: JosunLP <[email protected]> * Remove redundant ${{ }} wrappers from if conditionals in Docker workflow Co-authored-by: JosunLP <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: JosunLP <[email protected]>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 13 out of 13 changed files in this pull request and generated no new comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Updated dependencies in Cargo.toml for axum, tokio, tower-http, rust-embed, tempfile, flate2, and zip.
- Changed API route pattern from "/*path" to "{*path}" for better path matching.
- Added #[allow(dead_code)] annotations to several functions in model.rs, geometry.rs, optimizer.rs to suppress warnings for unused code.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 17 out of 17 changed files in this pull request and generated 4 comments.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
|
@copilot open a new pull request to apply changes based on the comments in this thread |
* Initial plan * Address Docker review feedback - improve .dockerignore, add dev tag, clarify Dockerfile Co-authored-by: JosunLP <[email protected]> * Update .dockerignore Co-authored-by: Copilot <[email protected]> Signed-off-by: Jonas Pfalzgraf <[email protected]> --------- Signed-off-by: Jonas Pfalzgraf <[email protected]> Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: JosunLP <[email protected]> Co-authored-by: Jonas Pfalzgraf <[email protected]> Co-authored-by: Copilot <[email protected]>
…vior (#21) * Initial plan * Add comprehensive test coverage for allow_rotations field Co-authored-by: JosunLP <[email protected]> --------- Co-authored-by: copilot-swe-agent[bot] <[email protected]> Co-authored-by: JosunLP <[email protected]>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 17 out of 17 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <[email protected]> Signed-off-by: Jonas Pfalzgraf <[email protected]>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 17 out of 17 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <[email protected]> Signed-off-by: Jonas Pfalzgraf <[email protected]>
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 17 out of 17 changed files in this pull request and generated 1 comment.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This pull request adds comprehensive Docker support and introduces configurable object rotations to the packing algorithm, along with related documentation and CI improvements. The most significant changes include a new Docker build pipeline, support for per-request and environment-based object rotations, expanded release packaging for macOS, and updates to the documentation to reflect these new features.
Docker Support and CI/CD Integration:
Dockerfilefor multi-stage builds, ensuring a minimal runtime image with non-root execution and environment variable configuration. (Dockerfile, DockerfileR1-R54).dockerignoreto optimize Docker builds by excluding unnecessary files and directories. (.dockerignore, .dockerignoreR1-R23)docker.yml) to automatically build and push multi-architecture Docker images to Docker Hub on new releases or manual triggers. (.github/workflows/docker.yml, .github/workflows/docker.ymlR1-R51)DOCKER_SETUP.md, DOCKER_SETUP.mdR1-R120)Release Packaging Improvements:
.github/workflows/release.yml, [1] [2].github/workflows/release.yml, .github/workflows/release.ymlR73-R77)README.md, [1] [2]Configurable Object Rotations:
allow_rotationsfield to the packing API request, allowing clients to enable or disable 90° object rotations per request. (src/api.rs, [1] [2] [3] [4] [5]SORT_IT_NOW_PACKING_ALLOW_ROTATIONSenvironment variable, with logic to override per request. (src/config.rs, [1] [2]README.md, [1] [2] [3] [4]Documentation Updates:
README.mdto include object rotation controls (UI and API), Docker usage, and new release artifacts. (README.md, [1] [2] [3]README.md, README.mdL288-R330)Miscellaneous Improvements:
contents: readpermissions in GitHub workflows for improved security. (.github/workflows/rust.yml, .github/workflows/rust.ymlR2-R3)These changes collectively make the project easier to deploy, more flexible for users, and better documented for both end users and maintainers.