Repository navigation
Fail atlas generation on missing, empty, or invalid inputs - #98
Conversation
|
Hi, I have resolved the conflict in this PR just now. It's ready to be reviewed. |
PR 99 replaced the C# MinecraftRenderer with the in-process asset-renderer, so the renderer pinning half of this branch (--renderer-commit, --no-update-renderer, the .NET check and the ItemRenderer changes) has nothing left to apply to and is dropped here. On master the render step already ends the run when it fails. What survives is the rule that an atlas build never reports success without its output. A missing or unreadable render directory, a file that is not an image and an input with nothing to pack now end the run, using the UncheckedIOException convention master already has for write failures. The tests move to the new constructors, and the two tests on master that asserted the old silent behaviour now assert the error instead.
|
Thanks for this, and sorry about the timing. I merged #99 after you opened it and that one pulled the ground out from under half of your branch, which is on me. It swapped the C# MinecraftRenderer for a Java library that renders in-process, so The atlas half is still a real gap though. On master If you merge master yourself, this is roughly what you'll run into. The renderer side all goes: The constructors changed too, to I did the merge myself while working out what was still live. It's on |
|
Thanks for preparing the merge branch! I've incorporated it into this PR and updated the title and description to reflect the atlas-only scope. Tooling verification passes locally: all 135 tests, packaging, and EditorConfig checks passed. The full build hit 16 golden-image comparison failures, but I reproduced the exact same failures on the latest master and documented them in the PR description. The conflicts are resolved, and it's ready for another review. Thanks again for helping adapt this to the new renderer! Error Report
|
|
Will have a look at that later today! |
|
Thanks :) |
Atlas generation can currently report success without producing a usable atlas: missing input directories, unreadable PNGs, and inputs with nothing to pack are logged or skipped. This change makes those conditions fail the run, so build integrations receive a nonzero exit status instead of packaging incomplete or stale assets.
IllegalStateExceptionwhen there is nothing to pack, including input containing only transparent images.UncheckedIOException, consistent with existing output-write failures.This branch incorporates the maintainer's
pr-98-merge-mastermerge. Since #99 replaced the C# renderer with an in-process Java library and already made rendering failures fatal, the obsolete renderer-pinning flags, .NET checks, and renderer-revision tests have been removed from this PR's scope.Validation on JDK 25:
./mvnw -B -pl tooling verify: passed; 135 tests, zero failures/errors/skips, packaging and EditorConfig checks passed.git diff --check upstream/master...HEAD: passed../mvnw -B verify: generator ran 1,568 tests with 16 golden-image comparison failures and 4 skips; the reactor stopped before tooling. All 16 failures were reproduced on an unmodified copy of upstream/master (022a486) by rerunningTooltipPackFontGeneratorTest,TooltipGoldenImageTest, andToolGoldenImageTest, with identical failed test cases and pixel assertion messages. The generator module is unchanged by this PR. These existing local failures remain unresolved.