Skip to content

enh: --medium-size CLI flag and macro precedence fix#156

Open
mezinster wants to merge 2 commits intospeed47:masterfrom
mezinster:upstream/misc-improvements
Open

enh: --medium-size CLI flag and macro precedence fix#156
mezinster wants to merge 2 commits intospeed47:masterfrom
mezinster:upstream/misc-improvements

Conversation

@mezinster
Copy link
Copy Markdown

Summary

Two unrelated but small src/-only improvements bundled for review economy:

  1. --medium-size CLI flag (src/dvdisaster.c, src/rs03-common.c): explicit medium-size override on the command line. Useful when the auto-detected size needs to be forced (e.g., for testing or for unusual augmented images).
  2. Macro precedence fix (src/dvdisaster.h): corrects parenthesization in a few CRCBUF_UPDATE_* macros that could expand incorrectly when used inside complex expressions. CRCBUF_UPDATE_ALL is also now self-documenting via bitwise OR of components.

Plus one packaging cleanup (debian/control): the Build-Depends list still referenced libgtk2.0-dev even though configure already requires gtk3 3.4.0. Replaced with libgtk-3-dev and libglib2.0-dev to match what the build actually needs.

Independent of the other coordinated PRs

This PR has no test framework dependency and no CI dependency. It can merge any time, in any order relative to PRs #153, #154, #155.

Coordinated PR set

This branch is one of four coordinated PRs from mezinster/dvdisaster. The others are #153 (RS03 recognize fix), #154 (pytest framework), #155 (CI integration). Merge order is flexible for this PR.

Evgeny Mezin and others added 2 commits April 17, 2026 13:38
- add --medium-size CLI flag to explicitly set target medium for RS03
  augmented images (CD, DVD, DVD9, BD, BD2, BDXL3, BDXL4, and NODM
  variants). Addresses upstream issues speed47#69 and speed47#135 where auto-detection
  picks the smallest fitting medium with no obvious override.
- print auto-selected medium name in verbose output with hint to use
  --medium-size to override
- fix -n with medium aliases (e.g. -n BD) in ECC file mode: gracefully
  fall back to default redundancy instead of erroring out
- skip texlive in deb CI build by using dpkg-buildpackage -B (arch-only)
- remove stale duplicate manual copy from make-dist.sh

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix CRCBUF_UPDATE_* macros missing parentheses in dvdisaster.h
- Make CRCBUF_UPDATE_ALL self-documenting via bitwise OR of components
- Run regression tests on push to master (not just PRs)
- Eliminate tag race condition in release workflow: new prepare-tag job
  creates latest/devel tags once before parallel platform builds start
- Cache AppImage tools (linuxdeploy, appimagetool) across runs
- Add linux64-deb job to build and publish .deb packages
- Update debian/control: libgtk2.0-dev -> libgtk-3-dev (GTK3 migration)
- Update CodeQL actions from v2 to v3
- Add explicit contents:write permission for fork compatibility
- Add CLAUDE.md for AI-assisted development context

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant