mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-11-10 20:07:04 +01:00
billsplit was a standalone Flutter app in ~/Downloads with one commit and no git remote — that directory was the only copy of its history. Three things the move needed beyond copying the tree: - The root .gitignore silently swallowed 32 of its files (*.png, *.ico, *.manifest). Ignored files do not error on `git add`, they just vanish, so this would have committed an app that cannot build. Added a trailing block of ! overrides plus .binary-allowlist (which did not exist yet) — the documented in-repo exception for binaries a build genuinely needs. The ../testsAndMisc_binaries/ symlink scheme does not apply: those directories are gone, and a symlinked PNG breaks a fresh clone. - billsplit/.github/workflows/ci.yaml was inert once nested; GitHub only reads workflows at the repository root. Relocated with a working-directory and a billsplit/** path filter. - The app's coverage gate moved to python_pkg/billsplit_coverage/ so every Python file stays under python_pkg/, and gained a test suite at 100% branch coverage as that location requires. billsplit/ now holds only Dart. Also replaces the stock Flutter icon with a family icon from the shared generator. The glyph is a filled silhouette because the family's 72px stroke cannot carry a fine torn edge, and the split is an evenodd-cut perforation so the holes stay transparent on the foreground and monochrome layers. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
31 lines
1.1 KiB
Bash
Executable File
31 lines
1.1 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# Run prettier --check inside its own systemd-run scope so its memory
|
|
# budget is independent of the outer pre-push cgroup (which has already
|
|
# accumulated page-cache footprint from pytest/mypy/pylint/bandit).
|
|
#
|
|
# Falls back to a direct invocation when systemd-run is unavailable
|
|
# (CI / containers without systemd user instance).
|
|
set -euo pipefail
|
|
|
|
if [ $# -eq 0 ]; then
|
|
exit 0
|
|
fi
|
|
|
|
# Cap Node heap on top of the cgroup limit for belt-and-braces safety.
|
|
export NODE_OPTIONS="${NODE_OPTIONS:-} --max-old-space-size=384"
|
|
|
|
# Measured peak RSS checking the 14 yaml/json/markdown files of a large commit
|
|
# is ~0.10 GiB, so 512M is ample. The cap must also stay small enough to be
|
|
# satisfiable inside a tighter outer scope: a request larger than the caller's
|
|
# budget gets this OOM-killed from the inside rather than merely throttled.
|
|
if command -v systemd-run >/dev/null 2>&1 &&
|
|
systemctl --user is-active --quiet default.target 2>/dev/null ||
|
|
command -v systemd-run >/dev/null 2>&1; then
|
|
exec systemd-run --user --scope --quiet --collect \
|
|
-p MemoryMax=512M \
|
|
-p MemorySwapMax=0 \
|
|
-- prettier --check "$@"
|
|
fi
|
|
|
|
exec prettier --check "$@"
|