Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

BUG-FIX 1.6.45 does not build #642

Merged
merged 1 commit into from
Jan 22, 2025

Conversation

jbowler
Copy link
Contributor

@jbowler jbowler commented Jan 20, 2025

This removes use of non-ANSI features in 1.6.45 and 1.6.46.

Signed-off-by: John Bowler [email protected]

This removes use of non-ANSI features in 1.6.45 and 1.6.46.

Signed-off-by: John Bowler <[email protected]>
@jbowler
Copy link
Contributor Author

jbowler commented Jan 20, 2025

Changes: corrects extent of "int error" in png_XYZ_from_xy and, thereby, corrects the incorrect "declaration after statement" bug that I introduced. Also corrects the indentation and line-width errors that introduction of the new extent generates; stupid GIT.

Corrects seven spurious semicolons. For not-so-good reasons PNG_FIXED_EXPORT and FP_FP_EXPORT provide their own semicolons. I forgot. My bad. Fixed.

Introduces: spurious end-of-line spaces in aclocal.m4. I blame autoreconf, well, I blame git too - git commit -s -a. I don't much care about this latter.

@ctruta
Copy link
Member

ctruta commented Jan 21, 2025

FYI, I wanted to integrate this today, along with build and CI changes of the kind that you suggested, but some other task popped up. I want to finish it tomorrow, though, and to release libpng-1.6.46 with that.

@jbowler
Copy link
Contributor Author

jbowler commented Jan 22, 2025

I can't see any updates to 1.6.45 yet so a quick release of .46 will help distribution maintainers. Here's my count:

Ubuntu ARM64: libpng16-16t64 1.6.43-5
This was upgraded very recently from 1.6.37 so I assume their upgrades take a while...
Ubuntu ARM32: libpng16-16 1.6.37-3build5
This is an RPi with an ARMv7a and they've pretty much dropped support for those.
Gentoo ~amd64: libpng-1.6.44
There is an upgrade "notice" on the maintainer page, so if you release 1.6.46 now it will probably go in rather than 1.6.45. It's taking longer than I expected but I see no public record of any issues the maintainers have.

I also have more PNGv3 conformance stuff connected to the breakage caused by the new mandatory colourspace chunk precedence rules. That's a bigger issue because the current non-conformance in libpng stops apps implementing the new rule. libpng zaps chunks it shouldn't zap under the v3 rules and also introduces chunks in a way that may break app handling.

The good news is that it's what you like; a vast simplification and much removed code. The bad news is that's it's also a bigger change so .46 shouldn't be delayed.

@ctruta
Copy link
Member

ctruta commented Jan 22, 2025

Changes: corrects extent of "int error" in png_XYZ_from_xy and, thereby, corrects the incorrect "declaration after statement" bug that I introduced. Also corrects the indentation and line-width errors that introduction of the new extent generates; stupid GIT.

Reviewed, approved, integrated, thank you.

Corrects seven spurious semicolons.

Reviewed, approved, integrated, thank you. Just so you know, this is a failure with all C language levels, not just C89. I added the option -pedantic-errors in a bunch of makefiles that we are already running on the CI.

For not-so-good reasons PNG_FIXED_EXPORT and FP_FP_EXPORT provide their own semicolons. I forgot. My bad. Fixed.

Those reasons no longer apply to libpng18, though... Hint... Hint...

Introduces: spurious end-of-line spaces in aclocal.m4. I blame autoreconf, well, I blame git too - git commit -s -a. I don't much care about this latter.

You are correct not to care, but the tooling that I use for libpng maintenance does care. (For example, linters which I haven't integrated into ci/ci_lint.sh, as well as diffing tools, etc.) I used to strip the trailing whitespaces -- I mean, my tools used to -- but now I pacified them. When I have some spare cycles, I might submit a nit-picking patch to GNU autoreconf.

@ctruta
Copy link
Member

ctruta commented Jan 22, 2025

I also have more PNGv3 conformance stuff connected to the breakage caused by the new mandatory colourspace chunk precedence rules. That's a bigger issue because the current non-conformance in libpng stops apps implementing the new rule. libpng zaps chunks it shouldn't zap under the v3 rules and also introduces chunks in a way that may break app handling.

Acknowledged.

The good news is that it's what you like; a vast simplification and much removed code. The bad news is that's it's also a bigger change so .46 shouldn't be delayed.

Also acknowledged, with the agreement that the good news are indeed good and the disagreement that the bad news are not bad at all.

@ctruta ctruta merged commit deadeea into pnggroup:libpng16 Jan 22, 2025
1 check passed
@jbowler jbowler deleted the fix-1.6.45-build-break branch January 27, 2025 00:47
@jbowler
Copy link
Contributor Author

jbowler commented Jan 27, 2025

OOOH neat; the commit ID is almost "deadsea". Neat, let's work on this; commit ids to attain:

deadsea (of course)
deadant
deasire (hey, that's a good one.)

@ctruta
Copy link
Member

ctruta commented Feb 2, 2025

I haven't had any 0xbadf00d yet.

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.

2 participants