Update ssl dependencies#69
Conversation
📝 WalkthroughWalkthroughThe pull request contains two independent changes: the Dockerfile replaces ChangesOpenSSL dev dependency swap
Git ignore update
Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. ✨ Finishing Touches📝 Generate docstrings
🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 1
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In @.gitignore:
- Line 14: The gitignore pattern for bin/act should include a trailing slash to
explicitly indicate it is a directory rather than a file. Update the pattern
from bin/act to bin/act/ (adding a trailing slash) to follow standard gitignore
directory conventions and make the intention clearer to readers.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
change from libressl-dev to openssl-dev for more compatible alpine image
Release Notes
libressl-devwithopenssl-devin the Dockerfileopenssl-dev(avoiding leftover build packages)bin/actto.gitignoreContribution Summary
Greptile Summary
This PR replaces
libressl-devwithopenssl-devin the Alpine build stage and also removesopenssl-devin the cleanup step — an improvement over the original, which never deletedlibressl-devafter building. The.gitignoreis updated to excludebin/act, addressing a pre-existing comment about the committed binary.libressl-dev→openssl-devinapk add, and explicitly removeopenssl-devin theapk delcleanup step to trim image size.bin/actso the locally-installedactbinary is no longer tracked by git.Confidence Score: 5/5
Straightforward, low-risk package swap with no functional side-effects — safe to merge.
The change swaps one Alpine crypto dev package for another (libressl-dev → openssl-dev), which is the correct move for modern Alpine images that ship OpenSSL by default. The runtime openssl library is retained at container start because sqlcipher depends on it, so removing openssl-dev in the cleanup step won't break anything. No logic, scripts, or application code are affected.
No files require special attention.
Important Files Changed
Flowchart
%%{init: {'theme': 'neutral'}}%% flowchart TD A["FROM python:3.13-alpine"] --> B["apk add --no-cache\n+ openssl-dev ✅ (was libressl-dev)"] B --> C["apk upgrade -a"] C --> D["adduser / addgroup"] D --> E["npm install -g @bitwarden/cli"] E --> F["curl supercronic binary + sha1 verify"] F --> G["COPY src, scripts, requirements"] G --> H["pip install -r requirements.txt\n(compiles native extensions against openssl-dev)"] H --> I["apk del build tools\n+ openssl-dev ✅ (newly removed)"] I --> J["Final image\n(openssl runtime kept via sqlcipher dep)"]%%{init: {'theme': 'base', 'themeVariables': {"darkMode": true, "background": "#0d1117", "primaryColor": "#21262d", "primaryTextColor": "#e6edf3", "primaryBorderColor": "#8b949e", "lineColor": "#8b949e", "textColor": "#e6edf3", "edgeLabelBackground": "#161b22", "actorBkg": "#21262d", "actorBorder": "#8b949e", "actorTextColor": "#e6edf3", "actorLineColor": "#8b949e", "signalColor": "#8b949e", "signalTextColor": "#e6edf3", "noteBkgColor": "#373320", "noteBorderColor": "#d4a72c", "noteTextColor": "#f0e6c0", "labelBoxBkgColor": "#21262d", "labelBoxBorderColor": "#8b949e", "labelTextColor": "#e6edf3", "loopTextColor": "#e6edf3", "activationBkgColor": "#30363d", "activationBorderColor": "#8b949e"}}}%% flowchart TD A["FROM python:3.13-alpine"] --> B["apk add --no-cache\n+ openssl-dev ✅ (was libressl-dev)"] B --> C["apk upgrade -a"] C --> D["adduser / addgroup"] D --> E["npm install -g @bitwarden/cli"] E --> F["curl supercronic binary + sha1 verify"] F --> G["COPY src, scripts, requirements"] G --> H["pip install -r requirements.txt\n(compiles native extensions against openssl-dev)"] H --> I["apk del build tools\n+ openssl-dev ✅ (newly removed)"] I --> J["Final image\n(openssl runtime kept via sqlcipher dep)"]Comments Outside Diff (1)
bin/act, line 1 (link)A 21 MB statically-linked ELF x86-64 binary has been added to the repository. Committing compiled binaries directly inflates
git clonesize permanently (git history stores the full blob), makes the binary opaque to code review, and is architecture-specific — it will not work onarm64/armv7hosts even though the Dockerfile'ssupercronicinstall already supports those targets. TheactCLI is installable viabrew install act, its own install script, or a pinned GitHub Release download with checksum verification; it does not need to live in the repo. Addingbin/actto.gitignoreand documenting the install step in the README is the standard approach.Prompt To Fix With AI
Note: If this suggestion doesn't match your team's coding style, reply to this and let me know. I'll remember it for next time!
Reviews (2): Last reviewed commit: "add bin/act to gitignore" | Re-trigger Greptile