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

bundler: 1.14.6 -> 1.16.1 #30881

Closed
wants to merge 1 commit into from
Closed

bundler: 1.14.6 -> 1.16.1 #30881

wants to merge 1 commit into from

Conversation

flokli
Copy link
Contributor

@flokli flokli commented Oct 27, 2017

Followup of #30871.

Things done
  • Tested using sandboxing (nix.useSandbox on NixOS, or option build-use-sandbox in nix.conf on non-NixOS)
  • 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 nox --run "nox-review wip"
  • Tested execution of all binary files (usually in ./result/bin/)
  • Fits CONTRIBUTING.md.

@manveru
Copy link
Contributor

manveru commented Oct 28, 2017

@zimbatm builds fine for me on NixOS too.

@zimbatm
Copy link
Member

zimbatm commented Oct 30, 2017

I'm having issues building nix-build -A mikutter but it's also failing on master. /cc maintainer: @midchildan

@zimbatm
Copy link
Member

zimbatm commented Oct 30, 2017

@flokli to you mind changing the base to master? it's not going to be that much to build, ruby packages are quick to build

@midchildan
Copy link
Member

I'll look into the issue with mikutter. It might take a few days, since I'm kind of busy right now.

@flokli
Copy link
Contributor Author

flokli commented Oct 31, 2017

@zimbatm base is now master again. Feel free to merge :-)

@globin
Copy link
Member

globin commented Oct 31, 2017

This will break gitlab probably due to a bug in bundler or our ruby infrastructure, please don't merge until this has been tested!

@flokli
Copy link
Contributor Author

flokli commented Nov 15, 2017

@globin Is this still valid with the latest gitlab version bumps?

@flokli
Copy link
Contributor Author

flokli commented Nov 17, 2017

@globin Updated PR to bundler-1.16.0. I was able to at least build gitlab. Can you give more information on what might possibly break, so I can have a closer look?

@flokli flokli changed the title bundler: 1.14.6 -> 1.15.4 bundler: 1.14.6 -> 1.16.0 Nov 17, 2017
@flokli
Copy link
Contributor Author

flokli commented Dec 20, 2017

I rebased this to latest nixpkgs-unstable.

The gitlab service module still seems to be broken on current nixpkgs-unstable - at least the corresponding VM test fails, and I'm unable to get a new gitlab set up via the nixos module either.

So I don't really see how merging this breaks gitlab more than it currently already is.

@globin, @fpletz: Could you please elaborate?

@zimbatm
Copy link
Member

zimbatm commented Dec 20, 2017

We should probably remove gitlab from the package set. It's a large piece of software with all sorts of dependencies and ruby omnibus (which is it's own shade of hell). Each dependency change makes the upgrade difficult. Or use the debian package and buildFHS, they already bundle all the dependencies anyways.

Personally I would use the Docker image version since it's shipped by gitlab with timely security updates and has been tested thoroughly.

@FRidh FRidh removed their request for review December 20, 2017 10:31
@FRidh
Copy link
Member

FRidh commented Dec 20, 2017

GitLab is an example of a large project that deserves its own overlay, just like e.g. openstack.

@FRidh FRidh mentioned this pull request Feb 27, 2018
8 tasks
@mkaito
Copy link
Contributor

mkaito commented Mar 3, 2018

The fact that Gitlab can keep an important (for us Ruby coders) program from being updated in an OS repo is quite frankly unacceptable. Gitlab should have to conform to the Ruby world, not the other way around. If Gitlab can't be made to work, it should be split into an overlay.

Gitlab is a pain to run. I don't know anyone that doesn't just run one of the prepackaged distributions they provide.

Might as well bump to 1.16.1 while we're at it.

@manveru
Copy link
Contributor

manveru commented Mar 3, 2018

The alternative is to provide gitlab its own version of bundler?

@mkaito
Copy link
Contributor

mkaito commented Mar 3, 2018

If the Gitlab derivation can somehow handle it internally without affecting the rest of the repo, that'd work, I suppose.

@fpletz
Copy link
Member

fpletz commented Mar 4, 2018

This is not only a problem with Gitlab but something we've seen with other Rails applications like frab, too. Our Ruby/Bundler infrastructure is somehow broken with this new version. Please fix this first before merging this.

Regarding Gitlab: I agree that we should probably drop Gitlab. It's a big maintenance burden.

@zimbatm
Copy link
Member

zimbatm commented Mar 5, 2018

@fpletz @globin do you still use the nixpkgs gitlab?

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Partial log (click to expand)

  Gem home: /nix/store/0rz0s2j24244b05mdl22pcsqh4ij0lik-bundler-1.16.1/lib/ruby/gems/2.4.0
Successfully installed bundler-1.16.1
1 gem installed
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/0rz0s2j24244b05mdl22pcsqh4ij0lik-bundler-1.16.1
checking for references to /build in /nix/store/0rz0s2j24244b05mdl22pcsqh4ij0lik-bundler-1.16.1...
copying path '/nix/store/6xcfw92dg21hapb2x3c494ihpmnfrsh9-ruby2.4.3-compass-1.0.3' from 'https://cache.nixos.org'...
building '/nix/store/vzndai783na2p9hjabb4sqfpjdcrnxg6-compass-1.0.3.drv'...
created 37 symlinks in user environment
/nix/store/wjhcsgw0zrf7dmkxpv74lzd4pcbhjyix-compass-1.0.3

@GrahamcOfBorg
Copy link

Success on x86_64-linux (full log)

Partial log (click to expand)

WARNING:  You build with buildroot.
  Build root: /
  Bin dir: /nix/store/fbbvzgri8gmzq1s5q68f6xh87771rhf4-bundler-1.16.1/lib/ruby/gems/2.4.0/bin
  Gem home: /nix/store/fbbvzgri8gmzq1s5q68f6xh87771rhf4-bundler-1.16.1/lib/ruby/gems/2.4.0
Successfully installed bundler-1.16.1
1 gem installed
post-installation fixup
shrinking RPATHs of ELF executables and libraries in /nix/store/fbbvzgri8gmzq1s5q68f6xh87771rhf4-bundler-1.16.1
checking for references to /tmp/nix-build-bundler-1.16.1.drv-0 in /nix/store/fbbvzgri8gmzq1s5q68f6xh87771rhf4-bundler-1.16.1...
/nix/store/fbbvzgri8gmzq1s5q68f6xh87771rhf4-bundler-1.16.1

@GrahamcOfBorg
Copy link

Success on x86_64-darwin (full log)

Partial log (click to expand)

installing
buildFlags:
WARNING:  You build with buildroot.
  Build root: /
  Bin dir: /nix/store/fclqz0j2qhdn9nbw5s8crr1l8lpz2waq-bundler-1.16.1/lib/ruby/gems/2.4.0/bin
  Gem home: /nix/store/fclqz0j2qhdn9nbw5s8crr1l8lpz2waq-bundler-1.16.1/lib/ruby/gems/2.4.0
Successfully installed bundler-1.16.1
1 gem installed
post-installation fixup
/nix/store/fclqz0j2qhdn9nbw5s8crr1l8lpz2waq-bundler-1.16.1

@GrahamcOfBorg
Copy link

Success on aarch64-linux (full log)

Partial log (click to expand)

/nix/store/0rz0s2j24244b05mdl22pcsqh4ij0lik-bundler-1.16.1

@Mic92
Copy link
Member

Mic92 commented Mar 12, 2018

Having a different bundler in ruby.devEnv and nixpkgs breaks applications that uses bundler such as vagrant. This is unacceptable and should be addressed.

@Mic92 Mic92 added this to the 18.03 milestone Mar 12, 2018
@Mic92 Mic92 mentioned this pull request Mar 12, 2018
8 tasks
@vcunat
Copy link
Member

vcunat commented Mar 12, 2018

This isn't bugfix-only, right? (and it seems risky) Why do you think it's worth rushing it into 18.03?

@Mic92
Copy link
Member

Mic92 commented Mar 12, 2018

@vcunat because currently other applications are broken because of this.

@Mic92
Copy link
Member

Mic92 commented Mar 12, 2018

I am not sure, if the bundler in ruby.devEnv could be downgraded though. This would also fix the problem.

@Mic92
Copy link
Member

Mic92 commented Mar 12, 2018

According to the bundler homepage using rubygems 2.2 requires bundler 1.6.1: https://bundler.io/compatibility#bundler-compatibility-with-rubygems (for c-extensions)
Update maybe not in our setup.

@Mic92
Copy link
Member

Mic92 commented Mar 12, 2018

Workaround for vagrant: #36880

@xeji xeji mentioned this pull request Mar 22, 2018
8 tasks
@polynomial
Copy link
Contributor

I have a team that currently can't use 18.03 because of this. What are the next steps to getting this addressed?

@mkaito
Copy link
Contributor

mkaito commented Mar 22, 2018 via email

@Mic92
Copy link
Member

Mic92 commented Mar 22, 2018

@polynomial see what breaks in our bundler infrastructure, I guess.

@mguentner
Copy link
Contributor

mguentner commented Apr 19, 2018

Any news on this? 💎 😭

My development workflow broke because of that. I am stuck at 17.xx for that reason.

@mkaito
Copy link
Contributor

mkaito commented Apr 20, 2018

I put this in a private overlay, and it was causing recompiles of all kinds of things, down to libgtk. I have no idea how bundler could possibly cause libgtk to recompile, but removing the overlay fixed it.

I think the policy here should be to prefer updating core modules like bundler, and let dependants figure it out. Especially big bad stuff like Gitlab shouldn't cause this to be held back.

I run into constant "you've already activated bundler 1.16.x but are trying to activate 1.14.x" while trying to work, even without that overlay.

@manveru
Copy link
Contributor

manveru commented Apr 20, 2018

Generally, please use the bundlerEnv{}.wrappedRuby and also bundlerEnv{}.bundler instead of the global nixpkgs ones. That should alleviate 99% of the problems.
Edit: also, never run bundler exec, it's evil!

@mkaito
Copy link
Contributor

mkaito commented Apr 20, 2018 via email

@mguentner
Copy link
Contributor

@manveru

Thanks for the hint with wrappedRuby. However this still gives me

/nix/store/l3lbs5jfxg215hxnvi5rlf3ymyxzf2xf-bundler-1.14.6/lib/ruby/gems/2.4.0/gems/bundler-1.14.6/lib/bundler/runtime.rb:40:in `block in setup': You have already activated bundler 1.16.1, but your Gemfile requires bundler 1.14.6. Prepending `bundle exec` to your command may solve this. (Gem::LoadError)

Do you have a working development derivation that works w/ the current master/unstable and bundix?

Also +1 to @mkaito - but priorities tend to shift if you happen to use "big bad stuff" yourself.

@globin 👀

@manveru
Copy link
Contributor

manveru commented Apr 21, 2018 via email

@mguentner
Copy link
Contributor

Frankly, I have no idea what is going on. Even if I remove the version lock, the error stays the same.

@Mic92
Copy link
Member

Mic92 commented Apr 22, 2018

@globin could you just push your local fix to some branch, we worked on for gitlab, so that we can continue with this update?

@globin
Copy link
Member

globin commented Apr 26, 2018

The gitlab changes have been pushed and should work with this PR now

@Mic92
Copy link
Member

Mic92 commented Apr 26, 2018

I will take a look at #37611 instead.

@Mic92 Mic92 closed this Apr 26, 2018
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.

None yet