-
Notifications
You must be signed in to change notification settings - Fork 5.4k
Use UnpackedInstaller to install default gems. #2545
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
Conversation
Honestly, I'd be more than happy if the .gemspec files of default gems in repository used similar position and format. For example compare these: https://github.com/ruby/ruby/blob/master/lib/prime.gemspec These files are for no reason placed in different subdirectory. Would it be problem, if I submitted patch shuffling these around? Of course the best location would be the source root directory. That way, the file list would be usable without too much magic. Second and third options are placing all the .gemspec files either directly into the "lib" directory or have the subdirectories for each gem. Both are possible and both should be easily doable. Also, it is pain that the executables are placed in "libexec" directory, but the .gemspec files does not respect the placement. They sometimes specify "bin", other times "exe". Sometimes, the location is even modified comparing to the upstream, such as in Bundler case [1]. Frankly, I consider this case the worst of all, because it cannot be synchronized with upstream and places yet another exception. |
a57a97b
to
c54583e
Compare
c54583e
to
87c715c
Compare
@voxik Can you rebase with the current master branch? |
87c715c
to
b2ead15
Compare
Done. |
b2ead15
to
1eaa68b
Compare
Source root directory sounds like the best place indeed and would allow much easier gemspec syncronization with upstream. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Looking good!
@voxik Ping, I'd really like this PR to go in! |
Sorry, it is still on my todo list, but I am buried under other stuff ATM :/ |
@voxik I plan to work on this at some point too, so if I end up beating you to it, I'll let you know so we don't duplicate work 👍. |
@deivid-rodriguez sure thing 👍 |
@voxik This is just a friendly reminder for you to rebase. Thank you. |
ac4fb4d
to
ae791e6
Compare
ae791e6
to
fc56b96
Compare
Rebase had removed the commits, and closed unintentionally. |
Thx for merging 🔝 I think there was omitted one bit. I was using this hunk for some purpose:
Of course I don't remember anymore without more investigation 🤷♂️ |
Tests failed with overriding def default_spec_file
with_destdir(super)
end |
Ah, ok. Thx. I'll try to get back to this once the situation in Fedora stabilized and I have some free cycles. |
This builds on top of #2515 and uses UnpackedInstaller for installation of default gems similarly it is already used to install bundled gems.
This allows to reuse RubyGems functionality instead of custom code full of exceptions.