Closed isZumpo closed 1 month ago
The recent updates streamline the Docker build process by enhancing platform specification and caching mechanisms. The .github/workflows/docker-build.yml
file simplifies the multi-platform build strategy, while the Dockerfile reorganization optimizes the build environment setup, particularly for TensorFlow headers.
File | Change Summary |
---|---|
.github/workflows/docker-build.yml |
Removed strategy section for platforms, updated platforms field, modified cache-from and cache-to , added provenance: false . |
Dockerfile |
Reorganized FROM statements, replaced ARG TARGETPLATFORM with --platform=$BUILDPLATFORM , adjusted TensorFlow headers build process. |
🐇
In the world of bytes and code, Docker builds now smoothly flow'd. Platforms set with ease and grace, TensorFlow finds its perfect place. Cache and provenance, all aligned, In this update, brilliance shined.
🐇
[!TIP]
New Features and Improvements
## Review Settings Introduced new personality profiles for code reviews. Users can now select between "Chill" and "Assertive" review tones to tailor feedback styles according to their preferences. The "Assertive" profile posts more comments and nitpicks the code more aggressively, while the "Chill" profile is more relaxed and posts fewer comments. ## AST-based Instructions CodeRabbit offers customizing reviews based on the Abstract Syntax Tree (AST) pattern matching. Read more about AST-based instructions in the [documentation](https://docs.coderabbit.ai/guides/review-instructions#ast-based). ## Community-driven AST-based Rules We are kicking off a community-driven initiative to create and share AST-based rules. Users can now contribute their AST-based rules to detect security vulnerabilities, code smells, and anti-patterns. Please see the [ast-grep-essentials](https://github.com/coderabbitai/ast-grep-essentials) repository for more information. ## New Static Analysis Tools We are continually expanding our support for static analysis tools. We have added support for `biome`, `hadolint`, and `ast-grep`. Update the settings in your `.coderabbit.yaml` file or head over to the settings page to enable or disable the tools you want to use. ## Tone Settings Users can now customize CodeRabbit to review code in the style of their favorite characters or personalities. Here are some of our favorite examples: - Mr. T: "You must talk like Mr. T in all your code reviews. I pity the fool who doesn't!" - Pirate: "Arr, matey! Ye must talk like a pirate in all yer code reviews. Yarrr!" - Snarky: "You must be snarky in all your code reviews. Snark, snark, snark!" ## Revamped Settings Page We have redesigned the settings page for a more intuitive layout, enabling users to find and adjust settings quickly. This change was long overdue; it not only improves the user experience but also allows our development team to add more settings in the future with ease. Going forward, the changes to `.coderabbit.yaml` will be reflected in the settings page, and vice versa. ## Miscellaneous - Turn off free summarization: You can switch off free summarization of PRs opened by users not on a paid plan using the `enable_free_tier` setting. - Knowledge-base scope: You can now set the scope of the knowledge base to either the repository (`local`) or the organization (`global`) level using the `knowledge_base` setting. In addition, you can specify Jira project keys and Linear team keys to limit the knowledge base scope for those integrations. - High-level summary placement: You can now customize the location of the high-level summary in the PR description using the `high_level_summary_placeholder` setting (default `@coderabbitai summary`). - Revamped request changes workflow: You can now configure CodeRabbit to auto-approve or request changes on PRs based on the review feedback using the `request_changes_workflow` setting.
Thank you for using CodeRabbit. We offer it for free to the OSS community and would appreciate your support in helping us grow. If you find it useful, would you consider giving us a shout-out on your favorite social media?
Fixes missing x86 build mentioned in #175
Followed this guide to make improvements to the cross compilation process:
BUILDPLATFORM
in dockerfile to get better docker caching and build speeds, since the platform of the computer used to build the image is used as much as possible, limiting the need for emulation.With the utilization of BUILDPLATFORM, the docker caching works way better for different platforms. Eliminating the need for separate build jobs added in #165. Meaning that only one job will be used again, that builds all the different platforms. Speed is even better now when rebuilding without any changes in github actions, around 20s.
In addition, removes the extra unknown platform by setting
provenance: false
based on answers in: https://github.com/docker/build-push-action/issues/820