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

ncurses: 6.2 -> 6.3 #146685

Merged
merged 1 commit into from
Jan 5, 2022
Merged

ncurses: 6.2 -> 6.3 #146685

merged 1 commit into from
Jan 5, 2022

Conversation

trofi
Copy link
Contributor

@trofi trofi commented Nov 19, 2021

The biggest nixpkgs-specific change is addition of printf()-style
attribute annotations for many ncurses APIs. -Werror=format-security
now flags parameter inconsistencies and fails the build.

The fixes are usually one-liners like adding "%s" format string for
non-literals or just using hardeningDisable [ "format" ]; for software
where backporting or fixing is not practical.

Almost all of build failures are already sorted in nixpkgs/master (~60 changes).

@trofi trofi marked this pull request as draft November 19, 2021 21:46
@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/uncoming-ncurses-6-2-6-3-update/16169/1

@Mic92
Copy link
Member

Mic92 commented Dec 1, 2021

I merged all out-standing PRs linked here.

@trofi
Copy link
Contributor Author

trofi commented Dec 2, 2021

Thank you!

I asked a hydra run against this PR: https://hydra.nixos.org/jobset/nixpkgs/pr-146685 . Current run is against somewhat older staging state.

My immediate plan is:

  1. [done] Rebase against recent master run : https://hydra.nixos.org/eval/1727143?compare=1727080&full=0
  2. [done] Fix failures against master
  3. [done] Promote this PR from draft.

@trofi trofi changed the base branch from staging to master December 2, 2021 08:48
@ofborg ofborg bot requested a review from edolstra December 2, 2021 22:11
@trofi
Copy link
Contributor Author

trofi commented Dec 4, 2021

New failures found by first hydra run (still ongoing, to be extended):

@trofi
Copy link
Contributor Author

trofi commented Dec 8, 2021

Rebasing against https://hydra.nixos.org/eval/1729230 5c96dfa.

@ofborg ofborg bot requested review from prikhi and michalrus December 9, 2021 00:21
@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/uncoming-ncurses-6-2-6-3-update/16169/2

The biggest nixpkgs-specific change is addition of printf()-style
attribute annotations for many ncurses APIs. -Werror=format-security
now flags parameter inconsistencies and fails the build.

The fixes are usually one-liners like adding "%s" format string for
non-literals or just using `hardeningDisable [ "format" ];` for software
where backporting or fixing is not practical.

Drop -DNCURSES_INTERNALS=1 workaround required only for ncurses-6.2
and build-incompatible with ncurses-6.3.
@trofi
Copy link
Contributor Author

trofi commented Dec 16, 2021

All known failures are sorted out. Ready for staging.

The one exception is haskellPackages.ncurses: #148629. We'll give upstream a few days before marking it and it's reverse depends broken.

@trofi trofi marked this pull request as ready for review December 16, 2021 07:58
@nixos-discourse
Copy link

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:

https://discourse.nixos.org/t/prs-ready-for-review/3032/675

@vcunat vcunat changed the base branch from master to staging January 5, 2022 09:32
@vcunat vcunat merged commit 2d3e6f7 into NixOS:staging Jan 5, 2022
@trofi trofi deleted the update-ncurses branch January 5, 2022 21:56
@FliegendeWurst FliegendeWurst added the 1.severity: security Issues which raise a security issue, or PRs that fix one label Jan 19, 2022
@vcunat
Copy link
Member

vcunat commented Jan 24, 2022

Maybe you've seen a similar error already? I see you dropped a flag for this build, but reintroducing it doesn't fix this error.

@trofi
Copy link
Contributor Author

trofi commented Jan 24, 2022

I wonder how I missed it. The other two (rogue and wyrd do build now). The build breakage:

mincurses.c:345:20: error: 'TERMINAL' {aka 'struct term'} has no member named 'Nttyb'
  345 |     term = cur_term->Nttyb;
      |                    ^~

is the result of mirror/ncurses@493e2f7 move internals of TERMINAL structure to new header term.priv.h. which moves TTY Nttyb; field out of public headers completely. I'll try to find an API substitute for it.

@trofi
Copy link
Contributor Author

trofi commented Jan 24, 2022

Filed upstream issue as https://gitlab.xiph.org/xiph/squishyball/-/issues/1

@trofi
Copy link
Contributor Author

trofi commented Jan 25, 2022

Proposed fix for nixpkgs as #156781

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants