Skip to content

Conversation

@agagniere
Copy link
Member

This is a breaking change, preventing compatibility with 0.15.2 and below.

Users shall refer to the table to find the tag suitable to their zig version.

It would seem we could just hard-code the list of headers, just like list of source files are hard-coded, removing the need for opening a dir outside a make phase. Anyway it works as it is.

@agagniere agagniere self-assigned this Jan 3, 2026
Comment on lines -583 to +584
const full = b.pathJoin(&.{ base, child.path });
self.installHeader(upstream.path(full), child.path);
self.installHeader(upstream.path(base).path(b, child.path), child.path);
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't really have a problem with this change, but is there a specific reason for it? IIRC pathJoin was used because 0.14 or possibly an older version was missing the path method on one of the intermediates. Since this change breaks all backward compatibility anyway, that doesn't apply any more, but I'm curious if you know if there is an actual practical difference between the two implementations?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There was no good reason for me to change this, it was the result of some back and forth, and I kept it because it looked simpler / more obvious to me, however I have no string opinion about it.

I checked the std docs and LazyPath.path was introduced in 0.13 (missing in 0.12), so either way is fine for 0.14

@torque
Copy link
Contributor

torque commented Jan 5, 2026

This seems fine to me, thanks for updating it and generally maintaining this. I can't remember why I implemented the header handling as a loop instead of hardcoded lists like the source files, but this approach keeps the diff small, so I think it's the right call for now. Since the underlying version of libressl hasn't been updated, I don't think tossing backward compat is a huge issue. If the build script gets updated for libressl 4.2.1 or newer, it might be worth considering replacing the directory walker with static paths.

@agagniere agagniere mentioned this pull request Jan 5, 2026
@agagniere agagniere closed this Jan 6, 2026
@agagniere agagniere deleted the zig-0.16 branch January 6, 2026 09:56
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.

3 participants