summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Always pass the `--all` flag when neededremove_bundle_update_deprecationsDavid Rodríguez2019-03-3017-54/+50
|
* Merge #7079Bundlerbot2019-03-3030-82/+82
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | 7079: Remove `bundle config` deprecations from specs r=hsbt a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that some specs still use the deprecated `bundle config interface` ### What is your fix for the problem, implemented in this PR? My fix is to use the newer interface. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * Remove `bundle config` deprecations from specsremove_bundle_config_deprecationsDavid Rodríguez2019-03-2930-82/+82
|/
* Merge #7070Bundlerbot2019-03-295-42/+29
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7070: Improve cross repo integration r=deivid-rodriguez a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that we had on `rubygems`, we're not testing bundler against the rubygems checkout of each PR, but against master. That is confusing because developers assume that the PRs tests will run against the PRs code, but this is currently not true. ### What was your diagnosis of the problem? My diagnosis was that on rubygems we are [specifying `RGV=master`](https://github.com/rubygems/rubygems/blob/fa6e547330e97b417ed11f262d68d03c57abeeda/.travis.yml#L12) in our TravisCI matrix. And what `bundler` does with that is to clone rubygems master under `tmp/rubygems` and use that. Thus your rubygems PR is not really tested. ### What is your fix for the problem, implemented in this PR? My fix is to rework the setup to accept an `RGV` environment variable when it contains. In that case, no git operations will be performed, and that path will be used directly and assumed to contain a rubygems checkout. I also refactored a few things about the setup while at it. ### Why did you choose this fix out of the possible options? There were existing tasks to test bundler against a rubygems checkout, but they were unused and they expected a `RG` environment variable instead. I decided to reuse these tasks, but make them pick up the `RGV` as long as it contains a valid path. I chose this fix because it works and it doesn't make the existing setup too different. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * Rename task to not be redundantimprove_cross_repo_integrationDavid Rodríguez2019-03-281-2/+2
| |
| * Make "co" tasks family use RGV env variable tooDavid Rodríguez2019-03-282-15/+17
| |
| * Remove a couple of unnecessary RGV usagesDavid Rodríguez2019-03-282-3/+2
| |
| * Add sudo and realworld task to the "co" namespaceDavid Rodríguez2019-03-281-0/+5
| |
| * Expand path from current folderDavid Rodríguez2019-03-281-1/+1
| | | | | | | | | | I don't plan to support running this binstub from outside of the root folder.
| * Use progress in the "co" task tooDavid Rodríguez2019-03-281-1/+1
| | | | | | | | Since it's meant for CI.
| * Remove clone rubygems taskDavid Rodríguez2019-03-283-23/+5
| | | | | | | | Delegate everything to `bin/with_rubygems` instead.
| * Remove option already set by defaultDavid Rodríguez2019-03-281-1/+1
| |
| * Remove NULL_DEVICEDavid Rodríguez2019-03-281-2/+1
| |
* | Merge #7073Bundlerbot2019-03-291-2/+0
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7073: Unskip passing spec r=colby-swandale a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that I discovered by chance that one of the skipped specs seems to be passing. ### What was your diagnosis of the problem? My diagnosis was that something has changed for the better that made this spec green. ### What is your fix for the problem, implemented in this PR? My fix is to remove the skip. ### Why did you choose this fix out of the possible options? I chose this fix because it's good :) Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | This spec is now passing, it seemsunskip_not_failing_specDavid Rodríguez2019-03-281-2/+0
| |/
* | Merge #7074Bundlerbot2019-03-292-5/+1
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7074: Remove unnecessary test stuff r=colby-swandale a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that our test setup could be simpler. ### What was your diagnosis of the problem? My diagnosis was that some lines installing test gem dependencies could be removed from the Rakefile, because the tests already detect this situation and auto-install test gems appropriately. ### What is your fix for the problem, implemented in this PR? My fix is to remove the lines. However, removing the lines led to a single test failure that can be explained becase `FileUtils` ends up being required too late, thus skipping one call to `Gem.clear_paths` done in the tests setup so that stuff memoized by `rubygems` is cleared and tests can assume is not loaded yet. The situation is very intricate but I tried to explain it in the commit message. ### Why did you choose this fix out of the possible options? I chose this fix because it fixes the test failure, but I also plan to propose to eliminate the `autoload` calls in rubygems that also contributed to this issue. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Remove unnecessary stuffsimplify_gems_used_by_tests_installationDavid Rodríguez2019-03-282-5/+1
| |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Tests automatically download and install the test gems they need if not installed, so this should be unnecessary. However, removing it create a single spec failure only reproducible on a fresh clone (where the path where the test gems are installed, `tmp/gems`, has not yet been populated. The problem was that the code branch that installs the gems uses the `FileUtils` constant. Accessing that constant makes [this autoload] trigger the custom rubygems `require` behavior which will end up setting and memoizing `gem_home` to the value it has at that point (when calling `to_spec` on the selected default gem). But at that point, `Gem.clear_paths` call has already happened, that means `gem_home` won't be changed during the duration of the test because it's memoized. This situation makes a specific test that updates `ENV["HOME"]` and expects he path to the configuration file rubygems uses to be updated fail. This could be fixed by removing the `FileUtils` autoload, or stop memoizing `Gem.home`, but the simplest fix seemed to require `fileutils` early, so that `Gem.home` is not memoized again after calling `Gem.clear_paths`. [this autoload]: https://github.com/rubygems/rubygems/blob/511a0f5105ca95b8e389bf477b6c7cf3e90be7d1/lib/rubygems/source.rb#L3
* | Merge #7078Bundlerbot2019-03-292-1/+15
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7078: Allow `update` to install when `--no-install` used r=colby-swandale a=deivid-rodriguez Fixes #7077. ### What was the end-user problem that led to this PR? The problem was #7077. When the `no_install` configuration is activated, this prevents `bundle update` from installing gems, but `no_install` is only meant to affect `bundle package`. ### What was your diagnosis of the problem? My diagnosis was that `bundle update` needs to ignore this setting. ### What is your fix for the problem, implemented in this PR? My fix is to the same `bundle install` does to fix this problem. ### Why did you choose this fix out of the possible options? I chose this fix because it's the most straightforward solution, although the handling of this flag could probably use some refactoring. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Allow `update` to install when `--no-install` usedno_install_allows_update_to_installDavid Rodríguez2019-03-282-1/+15
| |/ | | | | | | The `--no-install` flag flag is only meant for `bundle package`.
* | Merge #7035Bundlerbot2019-03-2810-303/+3
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7035: Unify the certificates for rubygems.org to rubygems store. r=deivid-rodriguez a=hsbt ### What was the end-user problem that led to this PR? The problem was the users have duplicated certificates in their boxes. ### What was your diagnosis of the problem? I wonder why bundler has a certificates copy from rubygems. It raised up in the tracker of ruby core. https://bugs.ruby-lang.org/issues/15384 ### What is your fix for the problem, implemented in this PR? I removed the duplicated certificates from bundler, and fallback to rubygems's one. ### Why did you choose this fix out of the possible options? Co-authored-by: SHIBATA Hiroshi <hsbt@ruby-lang.org>
| * Use Gem::Request.get_cert_files instead of hard-coded paths.unify-certificationSHIBATA Hiroshi2019-03-181-2/+2
| |
| * Use Gem::RUBYGEMS_DIR instead of RbConfig::CONFIGSHIBATA Hiroshi2019-03-141-8/+1
| |
| * rubocop -aSHIBATA Hiroshi2019-03-141-1/+1
| |
| * Unify the certificates for rubygems.org to rubygems store.SHIBATA Hiroshi2019-03-1410-302/+9
| | | | | | | | | | * Removed CertificateManager and related rake tasks. * Removed the certificates from bundler internal.
* | Merge #7068Bundlerbot2019-03-282-24/+38
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7068: Bump vendored fileutils to 1.2.0 r=hsbt a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was we manually updated some code in the vendored fileutils instead of using a released version. ### What was your diagnosis of the problem? My diagnosis was that we should use the recently released fileutils 1.2.0. ### What is your fix for the problem, implemented in this PR? My fix is to vendor it through `bin/rake vendor:fileutils[v1.2.0]`. ### Why did you choose this fix out of the possible options? I chose this fix because it properly upgrades the vendored code to match what's last released. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Bump vendored fileutils to 1.2.0vendor_last_fileutilsDavid Rodríguez2019-03-272-24/+38
|/ /
* | Merge #7036Bundlerbot2019-03-274-18/+7
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7036: Bump travis rubies r=hsbt a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that hacks create confusion, even if they include TODO notes. ### What was your diagnosis of the problem? My diagnosis was that we can should upgrade to the latest ruby releases to reduce the number of hacks we need to maintain. ### What is your fix for the problem, implemented in this PR? My fix is to upgrade rubies and remove hacks. ### Why did you choose this fix out of the possible options? I chose this fix because it's a good change. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Lazily require rubygems config filebump_travis_rubiesDavid Rodríguez2019-03-261-1/+0
| | | | | | | | | | | | To avoid activation of the `etc` gem.
| * | Try removing hacksDavid Rodríguez2019-03-261-5/+0
| | |
| * | Patch vendored fileutils to not activate `etc` gemDavid Rodríguez2019-03-261-5/+2
| | |
| * | Bump to MRI 2.5.5David Rodríguez2019-03-261-2/+2
| | |
| * | Bump to MRI 2.5.4David Rodríguez2019-03-262-4/+4
| | | | | | | | | | | | MRI 2.5.4 now regressed and suffers from the same issue as 2.6.2 :S
| * | Bump to MRI 2.6.2David Rodríguez2019-03-262-7/+5
| | |
* | | Merge #7059Bundlerbot2019-03-272-1/+40
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7059: Make `bundle clean` clean git extension directories r=hsbt a=dylanahsmith Fixes #7058 This PR fixes it by adding the native extension directories for git gems to the ones for non-git gems. This is used to get the unused extension directories (`stale_extension_dirs = extension_dirs - spec_extension_paths`) which was already excluding extension directories for git gems. Co-authored-by: Dylan Thacker-Smith <dylan.smith@shopify.com>
| * | | Make `bundle clean` clean git extension directoriesDylan Thacker-Smith2019-03-212-1/+40
| | | |
* | | | Merge #7052Bundlerbot2019-03-272-11/+115
|\ \ \ \ | |_|/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7052: Introduce `original_system`, `original_exec`, `unbundled_system`, and `unbundled_exec` r=indirect a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that the `clean_system` and `clean_exec` would print deprecation messages, but there was not alternative for them. ### What was your diagnosis of the problem? My diagnosis was that the helpers are using deprecated behavior and that we should provide non deprecated alternatives. ### What is your fix for the problem, implemented in this PR? My fix is to introduce `original_system`, `original_exec`, `unbundled_system`, and `unbundled_exec` for consistency with the rest of the helpers, and deprecate `clean_system` and `clean_exec`. ### Why did you choose this fix out of the possible options? I chose this fix because while maybe not super pretty names, they offer an alternative consistent with the other helpers. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | | Introduce `{original,unbundled}_{system,exec}` helpersclean_env_passDavid Rodríguez2019-03-202-11/+115
| | | | | | | | | | | | | | | | | | | | Because the previous helpers, `clean_exec` and `clean_system`, use deprecated behavior and thus should be deprecated too.
* | | | Merge #7067Bundlerbot2019-03-2612-62/+328
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7067: Tweaking vendoring r=hsbt a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that we were not using the latest versions of some of our vendored dependencies. ### What was your diagnosis of the problem? My diagnosis was that we should upgrade them. ### What is your fix for the problem, implemented in this PR? My fix is to upgrade them using `automatiek`, and add a few tweaks to our vendoring setup. ### Why did you choose this fix out of the possible options? I chose this fix because.... I didn't really considered other options. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | | | Bump thor to 0.20.3tweaking_vendoringDavid Rodríguez2019-03-2510-25/+175
| | | | |
| * | | | Bump fileutils to 1.1.0David Rodríguez2019-03-251-26/+123
| | | | |
| * | | | Describe automatiek tasksDavid Rodríguez2019-03-251-0/+11
| | | | |
| * | | | Improve automatiek activationDavid Rodríguez2019-03-251-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | | Make it consistent with how we do it for `ronn`, and give better messages for installing `automatiek` if missing.
| * | | | Little refactorDavid Rodríguez2019-03-251-4/+4
|/ / / /
* | | | Merge pull request #7061 from bundler/fix_circular_requiresDavid Rodríguez2019-03-233-3/+0
|\ \ \ \ | |_|/ / |/| | | Fix circular require warnings
| * | | Fix circular require warningsDavid Rodríguez2019-03-233-3/+0
|/ / /
* | | Merge #7055Bundlerbot2019-03-211-1/+1
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7055: Revert the RSpec format in CI back to dots r=colby-swandale a=colby-swandale ### What was the end-user problem that led to this PR? #7017 introduced made a change that sets the RSpec format to `documentation` in CI. I'm against this change because it now takes _a lot_ more time to scroll to the build errors, and makes the build log have too much information. Maintainers care much more about the failing specs and their errors than the test descriptions in CI. ### What is your fix for the problem, implemented in this PR? Explicitly set the RSpec format to `progress` in CI. Co-authored-by: Colby Swandale <me@colby.fyi>
| * | | revert the RSpec format in CI back to dotsColby Swandale2019-03-211-1/+1
|/ / /
* | | Merge #7017Bundlerbot2019-03-205-172/+154
|\ \ \ | |/ / |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7017: Development environment cleanup r=deivid-rodriguez a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was making changes in the development setup was brittle and led to hard to debug errors. For example, the ones in #6980. Also, it was hard to reproduce exactly what's going on in the current CI environment. Which is useful to setup other CI, or run the specs under a docker image. ### What was your diagnosis of the problem? My diagnosis was that we can simplify a lot of this stuff. ### What is your fix for the problem, implemented in this PR? My fix is... a lot of simplifications, but the most important ones being: * Now each binstub activates only its own dependency, not every development dependency. That means a contributor can perfectly work on manual pages installing only `rake` and `ronn` without having to install all development dependencies. Same with styling (`rubocop`), or with specs (`rspec`). * Error messages are better now. * The rake tasks for each main `Rakefile` section (man / spec / vendor) have been extracted to their own files. * Rake tasks now shell out to the proper binstub, so gem activation is only needed there. ### Why did you choose this fix out of the possible options? I chose this fix because it simplifies a lot the development environment in my opinion. Also, specs now pass under a docker image! Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | `finish_resolve` is not actually neededDavid Rodríguez2019-03-203-6/+0
| | |
| * | Abort when building man pages without ronnDavid Rodríguez2019-03-201-1/+1
| | |