# https://bugs.ruby-lang.org/issues/6875 から投稿しようとす
# るとInternal Server Errorになるのでメールで送ります。
# これでもRedmineに登録されるんですよね。

I'm the test-unit gem maintainer and working on default gem for RubyGems library.
I want to make Ruby users (especially test-unit gem users) life easier.

> Could you please enlighten what this issue solves?

OK. I'll describe it.

Here is a problem that I want to solve by this issue:

test_xxx.rb:

  require "test/unit"

  class TestXXX < Test::Unit::TestCase
    def test_xxx
      assert_equal(3, 1 + 2)
    end
  end

test_xxx_with_explicit_gem_test-unit.rb:

  gem "test-unit"
  require "./test_xxx"

Current:

  % ruby test_xxx.rb                             # -> uses test/unit in StdLib
  % gem install test-unit
  % ruby test_xxx.rb                             # -> still uses test/unit in StdLib
  % ruby test_xxx_with_explicit_gem_test-unit.rb # -> uses test-unit gem


Expected:

  % ruby test_xxx.rb                             # -> uses test/unit in StdLib (same)
  % gem install test-unit
  % ruby test_xxx.rb                             # -> still uses test/unit in StdLib (different)
  % ruby test_xxx_with_explicit_gem_test-unit.rb # -> uses test-unit gem (same)

> Adding .gemspec is not enough to create valid gem.

It is right. There are still some tasks to implement default gem feature.

> 1) The /usr/bin stub allow to load specified version of gem, e.g. calling $ testrb _2.5.2_ should call the latest version of test-unit but your stub does not do so

It is right. But it doesn't cause the problem in testrb case. Because test-unit gem dropped testrb to avoid conflicting testrb that is installed by Ruby.

(It is not needed soon. I will implement the feature later.)

> 2) The gem usually contains code. It does not depend on some code lying somewhere in the StdLib

 It is right. (.gemspec for test/unit StdLib doesn't have any problems for it, doesn't it?)

> 3) The gem could be usually found on rubygems.org. While there is test-unit available on rubygems.org, it is definitely different test-unit then the one shipped with Ruby.

 It is right. (.gemspec for test/unit StdLib doesn't have any problems for it, doesn't it?)

> Could you please stop confusing Ruby users and stop to make life harder to us, packagers?

I don't want to confusing Ruby users and make life harder to packages. If they have problems, I want to resolve them.

> I'd really love to be able to break StdLib into independent rubygems

The "rubygems" means that gem packages on RubyGems.org not RubyGems library itself, doesn't it?
If it is true, the change doesn't depend on additional gem packages.

> can be packaged separately and updated separately, but this is not the way.

You can do both of them.
You just put test-unit.gemspec to Ruby's package. It doesn't add any additional dependencies.
RubyGems library does all other works. (It is work in progress. https://github.com/rubygems/rubygems/pull/377 )

Again, I want to implement default gem feature *without* bothering packagers.
I don't know packagers' tasks well. Could you please tell me your problems? I'll resolve them.

Thanks.