Skip to content
Commits on Jun 22, 2016
  1. @segiddins
  2. @homu

    Auto merge of #1601 - rubygems:fix_install_latest, r=segiddins

    sort installed versions to make sure we install the latest version
    
    This will fix the problem where the previous version is installed when you try to upgrade RubyGems.
    
    @segiddins @drbrain
    
    If you have previous versions installed, the `installed_gems` returns an array:
    `[#<Gem::Specification:0x3fc1595adde0 rubygems-update-2.6.4>, #<Gem::Specification:0x3fc1595a477c rubygems-update-2.6.3>]`
    
    We want to sort this so we get the latest version last.
    homu committed Jun 22, 2016
  3. @segiddins
  4. @segiddins
  5. @homu

    Auto merge of #1652 - rubygems:seg-remove-gauntlet, r=drbrain

    Remove lib/gauntlet_rubygems.rb
    
    This hasn't been used for years, @drbrain gave the 👍
    homu committed Jun 22, 2016
  6. @segiddins
Commits on Jun 21, 2016
  1. @homu

    Auto merge of #1645 - rubygems:fix-test-for-ruby-trunk, r=segiddins

    Fix gem installer test for ruby trunk
    
    # Description:
    
    I'm going to prepare to release Ruby 2.4.0preview1. ref. ruby/www.ruby-lang.org#1409
    
    I try to merge current master of rubygems into ruby core repository. but I found a test fail with `test_find_lib_file_after_install`. It caused by following reason.
    
    1. Extension on Ruby core needs to `depend` file. Current test case is not build target on ruby core repository.
    2. `#include <ruby.h>` is not found on ruby core repository. It needs to some configurations like `test_install_extension_flat`
    
    @segiddins Can you review this? I hope to merge this until next monday.
    ______________
    
    # Tasks:
    
    - [x] Describe the problem / feature
    - [x] Write tests
    - [x] Write code to solve the problem
    - [ ] Get code review from coworkers / friends
    - [ ] [Squash commits](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html)
    
    I will abide by the [code of conduct](https://github.com/rubygems/rubygems/blob/master/CODE_OF_CONDUCT.md).
    homu committed Jun 22, 2016
  2. @hsbt

    fix syntax and indent

    hsbt committed Jun 22, 2016
  3. @homu

    Auto merge of #1648 - rhenium:topic/do-not-set-priv-key-for-test-dh, …

    …r=segiddins
    
    Fix test for OpenSSL 1.1.0
    
    # Description:
    
    OpenSSL::PKey::DH#priv_key= is not defined when ext/openssl is built with OpenSSL 1.1.0 because of the new restriction of it[1].
    
    We actually don't need to set a fixed value because the DH object is only used in OpenSSL::SSL::SSLContext#tmp_dh_callback, that is for an ephemeral DH key exchange. So just remove it.
    
    [1] ruby/openssl@7ea72f1
    
    I will abide by the [code of conduct](https://github.com/rubygems/rubygems/blob/master/CODE_OF_CONDUCT.md).
    homu committed Jun 22, 2016
  4. @homu

    Auto merge of #1644 - headius:platform_defaults, r=segiddins

    Add Gem.platform_defaults to allow impls to override defaults.
    
    # Description:
    
    In order for implementations like JRuby to provide custom defaults for `gem` commands, we have to load `rubygems/config_file.rb` in order to patch the default value for `Gem::ConfigFile::PLATFORM_DEFAULTS. This file is not normally loaded at runtime, since it is not needed to activate gems, and the load in JRuby adds a few hundred milliseconds to our base startup. With this change, the override of `PLATFORM_DEFAULTS` is done lazily, without loading additional files or overwriting a constant.
    
    # Tasks:
    
    - [x] Describe the problem / feature
    - [x] Write tests
    - [x] Write code to solve the problem
    - [x] Get code review from coworkers / friends
    - [x] [Squash commits](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html)
    
    I will abide by the [code of conduct](https://github.com/rubygems/rubygems/blob/master/CODE_OF_CONDUCT.md).
    homu committed Jun 22, 2016
  5. @hsbt
  6. @homu

    Auto merge of #1651 - rubygems:seg-bundler-submodule-ref, r=segiddins

    Update bundler submodule to an existing ref
    homu committed Jun 22, 2016
  7. @segiddins
  8. @segiddins

    [UpdateCommand] Install the first version instead of re-sorting

    Accounting for 0e3c58e changing the sort order
    segiddins committed Jun 21, 2016
  9. @dwradcliffe @segiddins
Commits on Jun 20, 2016
  1. @homu

    Auto merge of #1650 - rubygems:seg-run-bundler-tests, r=indirect

    Run Bundler tests on TravisCI
    
    @indirect @evanphx this is the very first step of the merger 
    homu committed Jun 21, 2016
  2. @segiddins

    Run bundler tests on TravisCI

    segiddins committed Jun 14, 2016
  3. @hsbt
  4. @headius

    Add Gem.platform_defaults to allow impls to override defaults.

    On JRuby, the "install" and "update" commands are modified to,
    among other things, always use /usr/bin/env shebangs, since our
    'jruby' command is often just a bash script. Previously, we had
    to force config_file.rb to load in order to patch the default
    value for Gem::ConfigFile::PLATFORM_DEFAULTS, which added a few
    hundred ms to our base startup time. This change allows us to let
    the JRuby-specific defaults be lazily queried.
    headius committed Jun 16, 2016
Commits on Jun 19, 2016
  1. @hsbt
  2. @hsbt
  3. @segiddins

    Merge pull request #1647 from rubygems/seg-fix-ci

    [Rakefile] Fix CI
    segiddins committed on GitHub Jun 19, 2016
  4. @segiddins

    [Rakefile] Fix CI

    segiddins committed Jun 19, 2016
  5. @rhenium

    Fix test for OpenSSL 1.1.0

    OpenSSL::PKey::DH#priv_key= is not defined when ext/openssl is built
    with OpenSSL 1.1.0 because of the new restriction of it[1].
    
    We actually don't need to set a fixed value because the DH object is
    only used in OpenSSL::SSL::SSLContext#tmp_dh_callback, that is for an
    ephemeral DH key exchange. So just remove it.
    
    [1] ruby/openssl@7ea72f1
    rhenium committed Jun 18, 2016
Commits on Jun 17, 2016
  1. @segiddins

    Merge pull request #1638 from rubygems/seg-molinillo-0.5.0

    Update vendored Molinillo to 0.5.0
    segiddins committed on GitHub Jun 16, 2016
Commits on Jun 14, 2016
  1. @segiddins
Commits on Jun 8, 2016
  1. @LynnCo

    Merge pull request #1632 from matk0/master

    Fixes #1503 link from CoC to project maintainers list.
    LynnCo committed Jun 7, 2016
Commits on Jun 7, 2016
Commits on Jun 5, 2016
  1. @segiddins

    Merge pull request #1612 from ptomulik/fix-1608

    Fix tar headers with a 101 character name
    segiddins committed Jun 5, 2016
Commits on May 30, 2016
  1. @homu

    Auto merge of #1582 - duckinator:fix-issue-1535, r=segiddins

    Rubygems does not terminate on failed file lock when not superuser
    
    # Description:
    
    Supersedes PR #1536.
    
    Fixes issue #1535.
    
    # Tasks:
    
    - [x] Describe the problem / feature
    - [ ] Write tests
    - [x] Write code to solve the problem
    - [ ] Get code review from coworkers / friends
    - [ ] [Squash commits](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html)
    
    I will abide by the [code of conduct](https://github.com/rubygems/rubygems/blob/master/CODE_OF_CONDUCT.md).
    homu committed May 31, 2016
Commits on May 25, 2016
  1. @homu

    Auto merge of #1611 - rhenium:topic/regenerate-test-certificates, r=s…

    …egiddins
    
    Regenerate test CA certificates with appropriate extensions
    
    # Description:
    
    The upcoming OpenSSL 1.1.0 release[1] will break rubygems tests. Ruby trunk doesn't yet include OpenSSL 1.1.0 support, but it will be merged soon[2].
    
    [1] https://www.openssl.org/policies/releasestrat.html
    [2] https://bugs.ruby-lang.org/issues/12324
    
    ---
    
    Fix util/create_certs.rb and regenerate test certificates located under test/rubygems with it.
    
    According to RFC 5280[1], a CA certificate must include the basic constraints extension with cA bit set to TRUE. However the test certificates in test/rubygems, generated by util/create_certs.rb script, don't include the extension. The current versions (<= 1.0.2) of OpenSSL allow the error for trusted certificates, but OpenSSL 1.1.0 no longer allows it[2].
    
    This patch also adds other extensions, such as key usage, subject key identifier and authority key identifier. It looks like OpenSSL doesn't actually require them, but the RFC[1] says they must be included, and adding them shouldn't be harm.
    
    [1] https://tools.ietf.org/html/rfc5280
    [2] https://git.openssl.org/?p=openssl.git;a=commit;h=0daccd4dc1f1ac62181738a91714f35472e50f3c
    
    Note: The script also regenerates the private keys. To regenerate only certificates, I used this tweak:
    
    ~~~
    diff --git a/util/create_certs.rb b/util/create_certs.rb
    index 516924f..313a724 100644
    --- a/util/create_certs.rb
    +++ b/util/create_certs.rb
    @@ -83,7 +83,7 @@ class CertificateBuilder
         keys = {}
    
         names.each do |name|
    -      keys[name] = create_key
    +      keys[name] = OpenSSL::PKey::RSA.new File.read("test/rubygems/#{name}_key.pem")
         end
    
         keys
    ~~~
    
    ---
    
    I will abide by the [code of conduct](https://github.com/rubygems/rubygems/blob/master/CODE_OF_CONDUCT.md).
    homu committed May 25, 2016
  2. @homu

    Auto merge of #1625 - zhenglaizhang:contributing_doc_update, r=segiddins

    Fix one typo in CONTRIBUTING.rdoc
    
    # Description:
    Fix one typo in the CONTRIBUTING.rdoc:
    
      `clarifiying => clarifying`
    ______________
    
    # Tasks:
    
    - [x] Describe the problem / feature
    - [ ] Write tests
    - [ ] Write code to solve the problem
    - [ ] Get code review from coworkers / friends
    - [ ] [Squash commits](http://gitready.com/advanced/2009/02/10/squashing-commits-with-rebase.html)
    
    I will abide by the [code of conduct](https://github.com/rubygems/rubygems/blob/master/CODE_OF_CONDUCT.md).
    homu committed May 25, 2016
  3. @duckinator

    Call the correct method.

    duckinator committed May 25, 2016
  4. @zhenglaizhang
  5. @duckinator
Something went wrong with that request. Please try again.