Skip to content

ruby: 2.6.7 -> 2.7.3#120058

Merged
marsam merged 1 commit intoNixOS:stagingfrom
marsam:update-ruby
May 2, 2021
Merged

ruby: 2.6.7 -> 2.7.3#120058
marsam merged 1 commit intoNixOS:stagingfrom
marsam:update-ruby

Conversation

@marsam
Copy link
Copy Markdown
Contributor

@marsam marsam commented Apr 21, 2021

Motivation for this change

I tested this a bit and doesn't seem to be any major breakage, so I'd like this be merged for the 21.05 release

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
  • Built on platform(s)
    • NixOS
    • macOS
    • other Linux distributions
  • Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
  • Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Determined the impact on package closure size (by running nix path-info -S before and after)
  • Ensured that relevant documentation is up to date
  • Fits CONTRIBUTING.md.

@ofborg ofborg Bot added 10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 2501-5000 This PR causes many rebuilds on Darwin and should target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches. labels Apr 21, 2021
@r-rmcgibbo
Copy link
Copy Markdown

Result of nixpkgs-review pr 120058 at 9171829 run on x86_64-linux 1

473 packages marked as broken and skipped:
  • agdaPackages.iowa-stdlib
  • aldor
  • aqemu
  • atom-beta
  • autotrace
  • bareos
  • bonfire
  • cassandra_2_1
  • cassandra_2_2
  • dockbarx
  • ...
5367 packages skipped due to time constraints:
  • AusweisApp2
  • DisnixWebService
  • Fabric (python38Packages.Fabric)
  • MIDIVisualizer
  • R
  • Sylk
  • _1password-gui
  • _3llo
  • abcl
  • abiword
  • ...
195 packages built successfully:
  • bcat
  • bundler
  • bundler-audit
  • colorls
  • drake
  • gist
  • git-fame
  • h
  • homesick
  • maphosts
  • matter-compiler
  • nix-top
  • nix-universal-prefetch
  • ocl-icd
  • one_gadget
  • overcommit
  • papertrail
  • puppet-lint
  • rake
  • reckon
  • redis-dump
  • ruby
  • ruby-zoom
  • rubyPackages.CFPropertyList
  • rubyPackages.RubyInline
  • rubyPackages.ZenTest
  • rubyPackages.actionmailbox
  • rubyPackages.actionmailer
  • rubyPackages.actionpack
  • rubyPackages.actiontext
  • rubyPackages.actionview
  • rubyPackages.activejob
  • rubyPackages.activemodel
  • rubyPackages.activerecord
  • rubyPackages.activestorage
  • rubyPackages.activesupport
  • rubyPackages.addressable
  • rubyPackages.ast
  • rubyPackages.atomos
  • rubyPackages.awesome_print
  • rubyPackages.bacon
  • rubyPackages.builder
  • rubyPackages.certified
  • rubyPackages.claide
  • rubyPackages.clamp
  • rubyPackages.cocoapods
  • rubyPackages.cocoapods-art
  • rubyPackages.cocoapods-clean
  • rubyPackages.cocoapods-clean_build_phases_scripts
  • rubyPackages.cocoapods-core
  • rubyPackages.cocoapods-coverage
  • rubyPackages.cocoapods-deintegrate
  • rubyPackages.cocoapods-disable-podfile-validations
  • rubyPackages.cocoapods-downloader
  • rubyPackages.cocoapods-expert-difficulty
  • rubyPackages.cocoapods-fix-react-native
  • rubyPackages.cocoapods-generate
  • rubyPackages.cocoapods-open
  • rubyPackages.cocoapods-plugins
  • rubyPackages.cocoapods-search
  • rubyPackages.cocoapods-stats
  • rubyPackages.cocoapods-testing
  • rubyPackages.cocoapods-trunk
  • rubyPackages.cocoapods-try
  • rubyPackages.cocoapods-wholemodule
  • rubyPackages.coderay
  • rubyPackages.colorator
  • rubyPackages.colored
  • rubyPackages.colored2
  • rubyPackages.concurrent-ruby
  • rubyPackages.crass
  • rubyPackages.daemons
  • rubyPackages.data_objects
  • rubyPackages.diff-lcs
  • rubyPackages.docile
  • rubyPackages.domain_name
  • rubyPackages.dotenv
  • rubyPackages.erubi
  • rubyPackages.escape
  • rubyPackages.excon
  • rubyPackages.faraday
  • rubyPackages.faraday-excon
  • rubyPackages.faraday-net_http
  • rubyPackages.faraday-net_http_persistent
  • rubyPackages.ffi
  • rubyPackages.ffi-compiler
  • rubyPackages.fog-core
  • rubyPackages.fog-json
  • rubyPackages.formatador
  • rubyPackages.forwardable-extended
  • rubyPackages.fourflusher
  • rubyPackages.fuzzy_match
  • rubyPackages.gitlab-markup
  • rubyPackages.globalid
  • rubyPackages.hashie
  • rubyPackages.highline
  • rubyPackages.hike
  • rubyPackages.hitimes
  • rubyPackages.http-accept
  • rubyPackages.http-cookie
  • rubyPackages.httpclient
  • rubyPackages.i18n
  • rubyPackages.jekyll-watch
  • rubyPackages.jmespath
  • rubyPackages.json
  • rubyPackages.json_pure
  • rubyPackages.jwt
  • rubyPackages.kramdown
  • rubyPackages.kramdown-parser-gfm
  • rubyPackages.kramdown-rfc2629
  • rubyPackages.liquid
  • rubyPackages.listen
  • rubyPackages.loofah
  • rubyPackages.mab
  • rubyPackages.magic
  • rubyPackages.mail
  • rubyPackages.marcel
  • rubyPackages.mercenary
  • rubyPackages.method_source
  • rubyPackages.mime-types
  • rubyPackages.mime-types-data
  • rubyPackages.mini_mime
  • rubyPackages.mini_portile2
  • rubyPackages.minitest
  • rubyPackages.molinillo
  • rubyPackages.multi_json
  • rubyPackages.multipart-post
  • rubyPackages.mustermann
  • rubyPackages.nanaimo
  • rubyPackages.nap
  • rubyPackages.native-package-installer
  • rubyPackages.net-scp
  • rubyPackages.net-ssh
  • rubyPackages.netrc
  • rubyPackages.nokogiri
  • rubyPackages.osx_keychain
  • rubyPackages.parallel
  • rubyPackages.parser
  • rubyPackages.pathutil
  • rubyPackages.pkg-config
  • rubyPackages.polyglot
  • rubyPackages.pry
  • rubyPackages.public_suffix
  • rubyPackages.racc
  • rubyPackages.rack
  • rubyPackages.rack-protection
  • rubyPackages.rack-test
  • rubyPackages.rails-dom-testing
  • rubyPackages.rails-html-sanitizer
  • rubyPackages.rainbow (rubyPackages_2_7.rainbow)
  • rubyPackages.rake
  • rubyPackages.rb-fsevent
  • rubyPackages.rb-inotify
  • rubyPackages.rb-readline
  • rubyPackages.red-colors
  • rubyPackages.redis
  • rubyPackages.regexp_parser
  • rubyPackages.rexml
  • rubyPackages.rouge
  • rubyPackages.rspec-core
  • rubyPackages.rspec-expectations
  • rubyPackages.rspec-mocks
  • rubyPackages.rspec-support
  • rubyPackages.rubocop-ast
  • rubyPackages.ruby-progressbar
  • rubyPackages.ruby2_keywords
  • rubyPackages.rubyzip
  • rubyPackages.safe_yaml
  • rubyPackages.simplecov
  • rubyPackages.simplecov-html
  • rubyPackages.simplecov_json_formatter
  • rubyPackages.sinatra
  • rubyPackages.slather
  • rubyPackages.slop
  • rubyPackages.sprockets
  • rubyPackages.sprockets-rails
  • rubyPackages.terminal-table
  • rubyPackages.thor
  • rubyPackages.tilt
  • rubyPackages.treetop
  • rubyPackages.tzinfo
  • rubyPackages.unf
  • rubyPackages.unf_ext
  • rubyPackages.unicode-display_width
  • rubyPackages.websocket-driver
  • rubyPackages.websocket-extensions
  • rubyPackages.xcodeproj
  • rubyPackages.xctasks
  • rubyPackages.yard
  • rubyPackages.zeitwerk
  • rubyPackages_2_6.rainbow
  • rufo
  • terraforming
  • tmuxPlugins.jump
  • wayback_machine_downloader

@marsam marsam requested a review from a user April 21, 2021 14:15
@ghost ghost requested a review from alyssais April 21, 2021 14:58
@shepting
Copy link
Copy Markdown

@marsam Will this update bundler to 2.2.16 as well?

@marsam
Copy link
Copy Markdown
Contributor Author

marsam commented Apr 22, 2021

Will this update bundler to 2.2.16 as well?

nop, this just updates the default ruby. I plan to update bundler in another PR

@marsam marsam requested a review from thefloweringash April 22, 2021 12:39
@marsam marsam merged commit 68f6514 into NixOS:staging May 2, 2021
@marsam marsam deleted the update-ruby branch May 2, 2021 02:55
@vcunat vcunat mentioned this pull request May 7, 2021
@vcunat
Copy link
Copy Markdown
Member

vcunat commented May 10, 2021

It does not build on x86_64-darwin: https://hydra.nixos.org/build/142630631

Also perhaps note that at merge time, mass-rebuild "breaking changes" for 21.05 weren't allowed anymore. (I can't really judge the risks myself, e.g. level of incompatibility between 2.6 and 2.7.)

@thefloweringash
Copy link
Copy Markdown
Member

Looks like something in the cc-wrapper for clang.

configure:8254: checking whether LDFLAGS is valid
configure:8274: clang -o conftest -g -O2    conftest.c  >&5
ld: warning: directory not found for option '-L/nix/store/qi9244lsyk081f00sa2na21qz77xqfnc-clang-7.1.0/lib'
configure:8274: $? = 0
configure: failed program was:
[snipped]
configure:8280: result: no
configure:8282: error: something wrong with LDFLAGS=""

Which comes from cc-ldflags.

$ cd /nix/store/gq4rn1jh66cww2n566znrfmgm182qkvw-clang-wrapper-7.1.0/nix-support
$ grep -e /nix/store/qi9244lsyk081f00sa2na21qz77xqfnc-clang-7.1.0/lib -r .
./cc-cflags:-target x86_64-apple-darwin  -B/nix/store/qi9244lsyk081f00sa2na21qz77xqfnc-clang-7.1.0/lib -arch x86_64 -resource-dir=/nix/store/gq4rn1jh66cww2n566znrfmgm182qkvw-clang-wrapper-7.1.0/resource-root
./cc-ldflags: -L/nix/store/qi9244lsyk081f00sa2na21qz77xqfnc-clang-7.1.0/lib  -L/nix/store/d51irgw2cb1md3yn5xx7snikm8m1zz3f-libc++-7.1.0/lib

Which I think comes from https://github.com/nixos/nixpkgs/blob/f4d69ad1f211b18f93d3b39d20d9d3c5a5b5fb71/pkgs/build-support/cc-wrapper/default.nix#L392-L393

Probably related to #111487. cc @Ericson2314

Perhaps something odd with getLib?

nix-repl> toString stdenv.cc.cc.lib
"/nix/store/qliqicaaqsaqlism5qq4la4wkrbnw3rl-clang-7.1.0-lib"

nix-repl> toString (lib.getLib stdenv.cc.cc)
"/nix/store/qi9244lsyk081f00sa2na21qz77xqfnc-clang-7.1.0"

@vcunat
Copy link
Copy Markdown
Member

vcunat commented May 10, 2021

getLib and similar behave in the way that if you've specified an output once, it won't change. For example, getLib (getBin pkgs.foo) will prefer .bin. I suspect something like that happened here with stdenv.cc.cc (in clang case only, apparently).

EDIT: keyword .outputUnspecified

@vcunat
Copy link
Copy Markdown
Member

vcunat commented May 11, 2021

The getLib discrepancy is solved in PR #122554. (I could only test eval-time locally.)

@vcunat
Copy link
Copy Markdown
Member

vcunat commented May 12, 2021

Ruby build succeeded again on Hydra: https://hydra.nixos.org/build/142889679

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

Labels

10.rebuild-darwin: 501+ This PR causes many rebuilds on Darwin and should normally target the staging branches. 10.rebuild-darwin: 2501-5000 This PR causes many rebuilds on Darwin and should target the staging branches. 10.rebuild-linux: 501+ This PR causes many rebuilds on Linux and should normally target the staging branches. 10.rebuild-linux: 5001+ This PR causes many rebuilds on Linux and must target the staging branches.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants