summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Start testing it out in CIparallelize_againlolwut2020-01-122-0/+2
|
* Remove global directory switching from specsDavid Rodríguez2020-01-1254-676/+554
|
* Make warnings spec independent of LOAD_PATHDavid Rodríguez2020-01-121-3/+3
|
* Don't load default URI gem during specsDavid Rodríguez2020-01-122-2/+2
|
* Extract `man_tracked_files` path helperDavid Rodríguez2020-01-123-2/+8
|
* Pass a generic options hash to `sys_exec`David Rodríguez2020-01-125-9/+9
| | | | For consistency with the rest of helpers.
* Simplify `gem_command` to pass full args to `gem` togetherDavid Rodríguez2020-01-122-6/+6
|
* Extract `bundled_app_gemfile` path helperDavid Rodríguez2020-01-1211-40/+44
|
* Extract `bundled_app_lock` path helperDavid Rodríguez2020-01-1219-81/+85
|
* Merge #7565Bundlerbot2020-01-111-1/+1
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7565: Lock rack to 2.0.8 for tests r=deivid-rodriguez a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was CI is failing due to a rack warning. ### What was your diagnosis of the problem? My diagnosis was that our CI shouldn't break because of third party changes. ### What is your fix for the problem, implemented in this PR? My fix is to lock the rack version our tests use. ### Why did you choose this fix out of the possible options? I chose this fix because it gives us a more deterministic test environment, which is good. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * Lock rack to 2.0.8 for teststests/lock_rackDavid Rodríguez2020-01-111-1/+1
|/
* Merge #5521Bundlerbot2020-01-0811-31/+113
|\ | | | | | | | | | | | | | | 5521: bundler gem: Support test-unit as a testing framework r=hsbt a=kou Co-authored-by: Kouhei Sutou <kou@clear-code.com>
| * bundler gem: Support test-unit as a testing frameworkKouhei Sutou2019-12-1111-31/+113
| |
* | Merge #7545Bundlerbot2020-01-0730-52/+395
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7545: Enforce Windows CI r=deivid-rodriguez a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that, although we have a Windows CI, errors are ignored, so whenever we break something on Windows, we don't notice, and having a CI become useless. ### What was your diagnosis of the problem? My diagnosis was that we should make the Windows CI required. ### What is your fix for the problem, implemented in this PR? My fix is to actually go ahead and fix some issues, and skip the rest. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Add Windows to bors checksDavid Rodríguez2020-01-071-1/+4
| | |
| * | Disallow failuresDavid Rodríguez2020-01-071-1/+0
| | |
| * | Skip the rest of the failures on WindowsDavid Rodríguez2020-01-0728-33/+372
| | |
| * | Add missing assertion to one specDavid Rodríguez2020-01-071-0/+2
| | |
| * | Exclude another permissions spec from Windows buildDavid Rodríguez2020-01-071-1/+1
| | |
| * | Add fiddle to default gem exemptionsDavid Rodríguez2020-01-071-1/+3
| | | | | | | | | | | | | | | Since it doesn't seem to work, I guess Windows ruby loads it at some point?
| * | Remove redundant installs and raise if they failDavid Rodríguez2020-01-071-4/+2
| | |
| * | Make sure to pass URI's to `:git`David Rodríguez2020-01-071-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Passing paths should work in most cases, but on Windows the driver letter is interpreted as the scheme and causes some case mismatches because ``` irb> URI.parse("E:").to_s => "e:" ``` We fix this by passing file URI's instead.
| * | Use OS-independent path separatorDavid Rodríguez2020-01-072-5/+5
| | |
| * | Try fix some specsDavid Rodríguez2020-01-071-1/+1
|/ / | | | | | | Github actions has lowercase drive letters.
* | Merge #7550Bundlerbot2020-01-075-71/+46
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7550: Enable parallel specs again r=deivid-rodriguez a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that specs are slow. ### What is your fix for the problem, implemented in this PR? My fix is to run them in parallel. We enabled this a while ago, but run into some issues. I want to try again. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Remove unused rake taskenable_parallel_specs_againDavid Rodríguez2020-01-071-4/+0
| | |
| * | Use `bin/rake` for sudo specs tooDavid Rodríguez2020-01-071-1/+1
| | |
| * | Run in parallel on Travis tooDavid Rodríguez2020-01-071-2/+2
| | |
| * | Run `rspec` directlyDavid Rodríguez2020-01-071-1/+1
| | | | | | | | | | | | No need for an extra subprocess.
| * | Kill `spec:travis`David Rodríguez2020-01-072-43/+6
| | | | | | | | | | | | It overcomplicates things.
| * | Use the same value to activate all test env variablesDavid Rodríguez2020-01-071-2/+2
| | |
| * | Split test gem installation to a separate taskDavid Rodríguez2020-01-073-9/+38
| | | | | | | | | | | | | | | | | | | | | We run into a race condition when testing in parallel when all processors install test gems to their test folder (due to shared gem cache). So I figure we can instead run this setup sequentially beforehand.
| * | Remove unneeded LOAD_PATH modificationDavid Rodríguez2020-01-071-1/+0
| | |
| * | Simplify `install_gems` methodDavid Rodríguez2020-01-071-4/+1
| | |
| * | We don't need a manifestDavid Rodríguez2020-01-071-10/+1
| | | | | | | | | | | | This is precisely what the `--conservative` flag to `gem install` does.
| * | Run specs in parallel to speed things upDavid Rodríguez2020-01-071-1/+1
|/ /
* | Merge #7548Bundlerbot2020-01-053-20/+9
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7548: Fix escaping of some subprocesses during specs r=deivid-rodriguez a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that some specs are failing on Windows due to commands like the following failing: ``` $ C:/hostedtoolcache/windows/Ruby/2.6.3/x64/bin/ruby.exe -Id:/a/bundler/bundler/lib -w -e \ <<EOS begin $:.unshift File.expand_path("bundle") require "bundler/setup" require "actionpack" puts ACTIONPACK require "spec" rescue LoadError => e $stderr.puts "ZOMG LOAD ERROR"# if e.message.include?("-- spec") end EOS -e:2: syntax error, unexpected backslash \$:.unshift File.expand_path("... ^ -e:10: syntax error, unexpected backslash \$stderr.puts "ZOMG LOAD ERROR... ^ # $? => 1 ``` ### What was your diagnosis of the problem? My diagnosis was that if the code being run via `ruby -e` in a subprocess include "$", it was not being properly escaped under Windows. ### What is your fix for the problem, implemented in this PR? My fix is to use `shellsplit` and `shellescape`. ### Why did you choose this fix out of the possible options? I chose this fix because after a bit of testing it seemed to do the trick. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Use shellescape instead of manually escapingspecs/fix_subprocess_escapingDavid Rodríguez2020-01-051-2/+1
| | |
| * | Avoid spawning a new shell with Open3.popen3David Rodríguez2020-01-051-2/+3
| | | | | | | | | | | | | | | So that we don't need to manually escape `$`, that seems to give trouble on Windows.
| * | Prefer `warn` to `$stderr.puts`David Rodríguez2020-01-052-5/+5
| | |
| * | Remove stuff making errors harder to figure outDavid Rodríguez2020-01-051-12/+1
| | |
| * | Uncomment working codeDavid Rodríguez2020-01-051-1/+1
|/ /
* | Merge #7546Bundlerbot2020-01-0513-39/+43
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 7546: Don't rename folders while being inside r=deivid-rodriguez a=deivid-rodriguez ### What was the end-user problem that led to this PR? The problem was that some specs were failing under Windows, with error messages like the following: ``` Permission denied @ rb_file_s_rename - (D:/a/1/s/tmp/1/bundled_app, D:/a/1/s/tmp/1/bundled_app2) Failure/Error: FileUtils.mv(bundled_app, "#{bundled_app}2") Errno::EACCES: Permission denied @ rb_file_s_rename - (D:/a/1/s/tmp/1/bundled_app, D:/a/1/s/tmp/1/bundled_app2) Commands: $ C:/hostedtoolcache/windows/Ruby/2.6.3/x64/bin/ruby.exe -ID:/a/1/s/lib\;D:/a/1/s/spec -rsupport/hax \ -rsupport/artifice/fail D:/a/1/s/exe/bundle install --path D:/a/1/s/tmp/1/bundled_app/bundle \ --standalone Fetching d:/a/1/s/tmp/1/libs/devise-1.0 Fetching source index from file:///D:/a/1/s/tmp/1/gems/remote1/ Resolving dependencies... Fetching rake 12.3.2 Installing rake 12.3.2 Fetching activesupport 2.3.2 Installing activesupport 2.3.2 Fetching actionmailer 2.3.2 Installing actionmailer 2.3.2 Fetching actionpack 2.3.2 Installing actionpack 2.3.2 Fetching activerecord 2.3.2 Installing activerecord 2.3.2 Fetching activeresource 2.3.2 Installing activeresource 2.3.2 Using bundler 2.2.0.dev Using devise 1.0 from d:/a/1/s/tmp/1/libs/devise-1.0 (at master@1cdf130) Fetching rails 2.3.2 Installing rails 2.3.2 Bundle complete! 2 Gemfile dependencies, 9 gems now installed. Bundled gems are installed into `./bundle` [DEPRECATED] The `--path` flag is deprecated because it relies on being remembered across bundler invocations, which bundler will no longer do in future versions. Instead please use `bundle config set path 'D:/a/1/s/tmp/1/bundled_app/bundle'`, and stop using this flag # $? => 0 Shared Example Group: "common functionality" called from ./spec/install/gems/standalone_spec.rb:136 Shared Example Group: "bundle install --standalone" called from ./spec/install/gems/standalone_spec.rb:328 ./spec/install/gems/standalone_spec.rb:32:in `block (3 levels) in <top (required)>' ./spec/spec_helper.rb:111:in `block (3 levels) in <top (required)>' ./spec/spec_helper.rb:111:in `block (2 levels) in <top (required)>' ./spec/spec_helper.rb:78:in `block (2 levels) in <top (required)>' ./spec/support/rubygems_ext.rb:87:in `load' ./spec/support/rubygems_ext.rb:87:in `gem_load_and_activate' ./spec/support/rubygems_ext.rb:45:in `gem_load' ``` ### What was your diagnosis of the problem? My diagnosis was that Windows doesn't like renaming folders while being inside them. ### What is your fix for the problem, implemented in this PR? My fix is to move away from the folder to the root of the repo before renaming it. ### Why did you choose this fix out of the possible options? I chose this fix because it fixes the failures under Windows while still achieving the same thing. Co-authored-by: David Rodríguez <deivid.rodriguez@riseup.net>
| * | Don't rename folders while being insideDavid Rodríguez2020-01-053-0/+6
| | | | | | | | | | | | Since Windows doesn't like that.
| * | Disallow folder changing helpers without a blockDavid Rodríguez2020-01-052-7/+9
| | | | | | | | | | | | Since their naming leads to code that reads a bit weird without a block.
| * | Extract `in_repo_root`David Rodríguez2020-01-054-15/+19
| | |
| * | Move path helpers to a better placeDavid Rodríguez2020-01-052-8/+8
| | |
| * | Remove unnecessary setupDavid Rodríguez2020-01-051-4/+0
| | |
| * | Remove unnecessary `in_app_root_custom` helperDavid Rodríguez2020-01-053-6/+2
| | |
| * | Reuse `in_app_root2` where possibleDavid Rodríguez2020-01-053-5/+5
|/ /