Closed jc00ke closed 8 years ago
I think it is a great idea to change the name. I have two additional name suggestions which will need permission but I think both are worth looking into:
I am in favor of a name change. This is obviously a hot potato.
I'm kinda down on the idea of ruby/spec. The tests are rspec-like, true...and they kinda-sorta output a specification, but I never bought into the idea that this actually was a specification. It's a test suite with very nice text output to indicate what's broken. Specifications aren't just lists of features, and they're almost never exhaustive, repetitive lists of the same minor feature over and over with slight differences:
Array#[] with a subclass of Array
- returns a subclass instance with [n, m]
- returns a subclass instance with [-n, m]
- returns a subclass instance with [n..m]
- returns a subclass instance with [n...m]
- returns a subclass instance with [-n..-m]
- returns a subclass instance with [-n...-m]
I like @enebo's suggestions. Rubicon is a great name...it means a boundary or line that, when crossed, represents a decisive, irrevocable step. Crossing the Rubicon for a Ruby implementation would be passing the test suite.
Rubric is also a good name...meaning a set of rules, or an authoritative rule. I still like Rubicon better. YOU MUST PASS THE RUBICON.
Funny thing, my imagination sees the crossing of the Rubicon as something negative, likely when the specs a red. …ok, checked wikipedia, here's why:
The phrase "crossing the Rubicon" has survived to refer to any individual or group committing itself irrevocably to a risky or revolutionary course of action, similar to the modern phrase "passing the point of no return".
– https://en.wikipedia.org/wiki/Rubicon#Julius_Caesar
Said that I have no problem with either name (but I must confess that I like how ruby/spec sounds and looks).
@elia I read through that section just now, thanks for the link! It says crossing the Rubicon is "risky or revolutionary" which isn't necessarily negative. And for Caesar, it was a good decision...this was the beginning of the end for the Roman Senate and he went on to win his war and bring about the end of the Roman Republic (in favor of the Roman Empire).
Of course, killing a republic to make it into an empire isn't exactly positive, so perhaps that's why it seems negative to you :-)
I'd also say that passing the Rubicon suite (our Crossing the Rubicon) is pretty revolutionary...and it indicates we've committed to a risky endeavor: attempting to make a Ruby implementation.
There is another Ruby test suite called Rubicon which was started by Dave Thomas…
@drbrain Indeed, but it has been dead for a long time. We removed it from JRuby when it became apparent that it did not cover any more than the remaining suites (JRuby's, MRI's, RubySpec).
I'm not sure it even has a repository out there anymore, and I'm pretty sure Dave would let us use the name.
This page is still out there, but all links -- including RubyForge itself -- appear to be dead: http://rubytests.rubyforge.org/
This is the only place Rubicon existed, as far as I know.
@headius hahaha, I like this interpretation! :game_die: alea iacta est?
Tempted to just toss Gandalf
out there as a tongue-in-cheek test suite name.
Otherwise my vote goes down for Rubicon
or ruby/spec
.
IDK, Rubicon
is cute and all, but I'd rather see ruby/spec
, as in: it's nothing "special", it's just Ruby's official spec suite ¯(ツ)/¯
Also, I'd hate to see "politics" flare up again around RubySpec - I feel like it finally enjoyed a period of productive tranquility.
For those in favor of ruby/spec
...what's the actual name in that case?
I read it as Ruby Spec... which is the name we're trying to replace.
Ruby's Spec? As opposed to the ISO specification?
Ruby Slash Spec? Really?
Spec? Seems way too generic. "JRuby runs spec". Really?
The repository probably should move to ruby/spec
but I'm not actually hearing any name suggestions.
FWIW, this is the problem with someone strongarming a very generic name. RubySpec is hard to replace because it's the simplest and most logical name for a spec-based suite of tests for Ruby.
How about "the specs" I'm not sure this project really needs some clever name. They are Ruby's specs, not RubySpec (anymore)
@headius are you saying someone is "strongarming"? I'd caution you to watch the words you pick. Let's keep it civil.
@jc00ke Well, it occurred to me...how does using the name "RubySpec" hurt someone? What's the actual gain in changing it other than someone wants us to change it?
I'm being totally civil...but it does feel a bit like a strongarm to me. We can't use the name because...why? Because it's trademarked? No. Because it's specific to a different project? No...it was abandoned, and this is the code that was in the original project. So why?
FWIW, I'm fine with changing it, but I finally realized that we're changing solely because someone doesn't like us using it. No legal reason, no disambiguation reason. It's the specs that used to be RubySpec, now called RubySpec.
Also, you're right...strongarm is probably the wrong word, since no force other than a request has been used. I'm not sure what to call it. @brixen doesn't want us to use the name...but why?
@headius I view it as respecting someone's wishes, someone who put in a ton of work and then decided not to give the project away, but to retire it. I choose to respect @brixen's wishes. You may not, and that's your choice. I think the easiest thing to do here, and the right thing to do, is rename it.
It's less about asking "why" and more about just doing it and moving on. It's not worth debating why, it's worth changing it and getting back to writing code.
I choose to respect @brixen's wishes. You may not, and that's your choice.
We're keeping this civil, right? I never said I didn't support changing the name. I'm asking why it's necessary. Please don't put words in my mouth.
It's less about asking "why" and more about just doing it and moving on.
I like to ask "why". Everything that we do is worth asking "why".
You may, or you may not, I don't know, hence my statement. I didn't mean to imply you don't, I meant you may or may not (I don't know your specific position) I didn't mean it as a dig. You clearly do support changing the name, I've seen that on Twitter and here.
I don't think asking "why" helps here. If it is indeed academic, then it has little value to the community. IMO it's best to agree on a name, change the name, and move on. We're not gaining anything by debating "why".
I don't understand. Does @brixen himself want to change the name? Or @jc00ke guesses? If he really wants, I am for changing the name, of course.
@matz
OK, that's what I wanted. Let's change the name.
@headius I apologize for my use of "may not" above.
The trend seems to be toward a repository of ruby/spec
and a name of "Ruby's Specs". If everyone likes that I'm fine with it.
Ruby's specs, the specs, the spec suite... I think not having a name and just referring to it would work as well.
@headius I see what you mean - it must have some kind of name if it is to be a stand-alone repo on GitHub. Pardon my ignorance, but are repos on GitHub name-spaced to the organization? I.e. https://github.com/ruby/spec is available obviously, but https://github.com/spec is not, and, of course, makes no sense.
@matz Any opinion on the name? I want something that clearly avoids the confusion of this project being a "specification of the Ruby language". I would describe it as a common test suite for the Ruby programming language (which happens to be written in "spec" style).
I sort of like "Ruby spec suite" but not sure how to make that space-less.
I'm not "strong-arming" anyone about the name. I created the RubySpec project with a specific vision and philosophy, and wrote tens of thousands of lines of specs. I was writing "an executable specification of the Ruby programming language". That is text that, to this day, is retained in the README (and without attribution anywhere that I see).
The https://github.com/ruby/rubyspec is a hostile fork of a project based on members of the Ruby community disagreeing with the principles I established for RubySpec. I did not give permission to use the name, and continuing to use the name for something that doesn't respect the vision and principles that I established is not being civil.
When I retired RubySpec as a project because Ruby wasn't using it, there were many people loudly claiming that Ruby's "test suite" was fine. People have continued claiming that the "specs" are not a specification, but rather just "tests". Now Ruby has "tests" and "specs", whatever the latter are (except they are not "specifications" apparently). To me, that's just confusing for everyone. Why do some people write "specs"? Why do other people write "tests"? When should a contributor write one or the other?
If they are tests, then call them tests; "the Ruby tests". Problem solved. Now the real problem to solve is why there are two separate sets of things that are both some sort of "tests". That's the problem people should be trying to solve.
So looks like everyone is ok with the name change and we just got a concrete answer to the "why". Seems like it is now just a matter of the new name.
I've come around on ruby/spec
as the repository and referring to them as "Ruby's Spec Suite" or "The Spec Suite". Every project in the Ruby world that has rspec specs uses a /spec
dir, so that seems to fit well. And if ruby-core ever decides to have these specs copied into ruby/ruby
for CI runs, it will be /spec
there too I imagine.
Any other thoughts?
@headius :+1:
OK, let's settle on ruby/spec
!
Thanks for all your comments and name suggestions!
It's fairly obvious from the current name, it sorts of "DRY" it and existing forks will have a decent root repo name.
Thank you everyone, I'm glad we could come to an agreement on this as quickly as we did.
One year ago the canonical RubySpec project was retired. It was suggested to @matz by me in a private email discussion that the name be changed from RubySpec to something else. I thought this was a good idea because the name RubySpec carried a bit of baggage, and changing the name would also respect the original author's wishes for its retirement.
That plea was never addressed, and I never posted to an issue tracker or mailing list. Mea culpa. One year later, the issue of the project's name has come up again. There have been conversations on Twitter about the possibility in changing the name. I'm not going to link to them, but suffice it to say there is support for opening this issue as well as changing the name.
This is a formal request to change the name. I recommend
Spec
. I think it lives nicely under the namespaceruby/spec
and is close enough to the original w/o being too close. I've heardRbSpec
thrown out there, which isn't bad. Other options are welcome, but I think it's important at this point to seriously consider a departure from the nameRubySpec
and let that project be laid to rest in name.