Code Monkey home page Code Monkey logo

Comments (45)

Fryguy avatar Fryguy commented on August 29, 2024 10

Just bumping this issue to let everyone know that optimist has been released as v3.0.0 and trollop is now deprecated (via a v2.9.9 release). Thanks everyone for your patience, and all the great naming ideas!

from optimist.

PragTob avatar PragTob commented on August 29, 2024 9

Hi,

I just came here after this started showing up in our Gemfile.lock. I also wanna thank you for your work maintaining this but also ecnourage you to change the name. @mckern drew up a good blueprint on how to do that.

I'd really appreciate the effort to do that and would also volunteer some of my time to help with the name migration. Also, in hopes for a ruby community without offensive gem names :)

Cheers,
Tobi

from optimist.

kbrock avatar kbrock commented on August 29, 2024 5

Being clever shouldn’t be favored at the expense of others feeling marginalized.
-- https://robots.thoughtbot.com/factory_bot

from optimist.

kbrock avatar kbrock commented on August 29, 2024 4

again, apologies for taking so long on this one. Especially for something I feel is so important.

Thank you all for pushing us to fix this

from optimist.

Karunamon avatar Karunamon commented on August 29, 2024 2

The nice thing is that the entire library is represented by a single .rb file - changing the name if you don't like it is a single sed command away - actually looking just now, it's even easier. Change line 8 of trollop.rb and the filename and you're done aside from docstrings.

I am very much against renaming projects for political reasons - developer efficiency, muscle memory, all the code this will break, etc, are much more important.

Just another POV~

from optimist.

mckern avatar mckern commented on August 29, 2024 2

But how can one just rename a gem that is downloaded 10's of millions of times and been out for over 10 years?

It's happened before: cut a new X release under the new name, and a new Z release under the old name with clear documentation that a project is dead/old/deprecated and new work will be happening under the new name/new repo. What I think would really matter is what folks might encounter on the Rubygems page and what information they received when they run gem install trollop.

I concede that it's not easy and that folks will continue to point at the old name/install the old gem (maybe forever) but it's work worth doing. Since Trollop is an open source project, I don't think it's out of line for users to expect/encounter some small degree of friction. Of course, I also say this without the onus of maintainership so my opinions are just 🙈 🙉 at best.

from optimist.

djberg96 avatar djberg96 commented on August 29, 2024 2

Trollipop. It's similar, but different, and you can sing to it to the Chordettes song. :)

from optimist.

kbrock avatar kbrock commented on August 29, 2024 2

@Fryguy optane is out - copyright by intel. Optimist?

from optimist.

Fryguy avatar Fryguy commented on August 29, 2024 1

I'm not a fan of the name myself, FWIW, but we inherited it and it's being used by many projects. I use the argument from the FAQ that it's "troll option parser", but I readily admit that is pretty weak.

Any ideas on new names? Would troll_op work for everyone, or should we just pick a completely new name? I'm curious what others think.

from optimist.

kbrock avatar kbrock commented on August 29, 2024 1

@Fryguy I leave this in your court.

Back when this was written, so many gems had "clever" (read: offensive) names.
Fast forward to today and people are just plain fed up with the names. They are juvenile, offensive, and a liability.

But how can one just rename a gem that is downloaded 10's of millions of times and been out for over 10 years?

from optimist.

mckern avatar mckern commented on August 29, 2024 1

(BTW thank you to both @Fryguy and @kbrock for the work you've put into maintaining Trollop and updating it. I know I'm pushing pretty hard for a rename being the right thing to do, but you've both done a ton for this project and your work has been appreciated. I'm happy to defer to what you think is best since you're the ones carrying the onus of maintainership here.)

from optimist.

nanobowers avatar nanobowers commented on August 29, 2024 1

@macosgrove @Fryguy Looks like Optane is trademarked and in a related field. Maybe not such a good idea after all.

For the sake of positive feels, optimist is available and is a word in common use.

from optimist.

philomory avatar philomory commented on August 29, 2024 1

I have to say, Optimist is now my favorite. I wish I'd thought of it myself.

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024 1

I also like optimist the best of the remaining names that:

from optimist.

Karunamon avatar Karunamon commented on August 29, 2024 1

from optimist.

mckern avatar mckern commented on August 29, 2024

I know this has laid dormant for 5 months, but it's still open so I thought I'd chime in since this actually came up at ${DAYJOB} more than once. I'm 👍 👍 👍 on renaming the project to anything that isn't denigrating (so probably not even the proposed troll_op), but I don't think I have enough skin in the game to suggest alternatives.

from optimist.

Fryguy avatar Fryguy commented on August 29, 2024

I don't think the issue is the logistics of renaming the gem, but instead is just coming up with a name.

from optimist.

mckern avatar mckern commented on August 29, 2024

I actually have a local fork that I'd worked through renaming with; I called it argybargy. You're welcome to it if you'd like.

from optimist.

kenpropel avatar kenpropel commented on August 29, 2024

Love this gem, one of the best go-to for me!

Straight forward names are always easy to understand and welcome, but I guess it gets long. Like The Best Option Parser; I'll still use it.

Amazing because it simply is. The name is still available. I say go for it, why not? It's also good to start with the first alphabet.

Unique ones are tricky to adopt because users won't know what it is. Despite, I use lots of Japanese words just like every other tech startup likes to do, LOL. (Granted, mine are private work projects.)

hikisu
Hikisu (say he-key-sue) is a Japanese word for option values, arguments which also hasn't been taken yet. Just throw in a cool logo and it's all fine. You'll also get to enjoy the various pronunciations people will come up with. LOL

from optimist.

nanobowers avatar nanobowers commented on August 29, 2024

I'd prefer to have 'opt' or 'option' as part of the name if possible. it makes it a little easier to deduce what's going on from the require. That's english speaker bias though.

Some cheesy thoughts:

  • optonaut
  • opt-o-matic
  • option-easy
  • optane

too bad optopus was already taken

from optimist.

fleipold avatar fleipold commented on August 29, 2024

Is there a release planned in the immediate future (I would be keen on the new #ignore_invalid_options behaviour)? I guess the rename could just happen then and there.
Is there anything I could do to help?

from optimist.

philomory avatar philomory commented on August 29, 2024

OptionIQ or OptIQ?

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024

I find optane the best and most original pun. Usually, option parsing library names are so boring. Hopefully we get more "options" and can vote on it.

from optimist.

ddarbyson avatar ddarbyson commented on August 29, 2024

@jrafanie how about "Mops" for 'more options'

from optimist.

Fryguy avatar Fryguy commented on August 29, 2024

Trollipop actually made me laugh. 😆

Even so, my vote is for optane so far.

from optimist.

kbrock avatar kbrock commented on August 29, 2024

heh. yes, that is amusing.
Would prefer to go with a name that is completely leaving the legacy of the slang behind though.

from optimist.

macosgrove avatar macosgrove commented on August 29, 2024

I like optane FWIW

from optimist.

ddarbyson avatar ddarbyson commented on August 29, 2024

trollop backwards pollort

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024

Naming is hard. Maybe optionall?

from optimist.

Karunamon avatar Karunamon commented on August 29, 2024

Welp, since it seems everyone is bent on doing this, have acronyms been considered?

ROMAN = Ruby Option MANager
RIOT = Ruby Integrated Option Tracker
SCRAP = Self Contained Ruby Argument Parser

Could even make it sound like an NSA project:

OPTINT = Option Parser That Is Not Trollop

Play around with http://acronymcreator.net/ for ideas

from optimist.

kbrock avatar kbrock commented on August 29, 2024

yay. only took 1 year, 7 months to come up with a name :(

Now let the games begin: https://stackoverflow.com/questions/13440438/how-to-rename-a-gem

from optimist.

Fryguy avatar Fryguy commented on August 29, 2024

Just got caught up with this again, and I love optimist...really enjoying the positive vibes :)

from optimist.

ddarbyson avatar ddarbyson commented on August 29, 2024

+1 for optimist (let's not over think this,,, it's a good name)

Let's release ASAP! I have projects waiting on the next version to be pushed to rubygems

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024

@ddarbyson please help review #99 and make sure we do this right. We need to leave a stable version of trollop up on rubygems.org and make an easy transition to optimist. Gem renames cause headaches for people so we really need to do some collaboration and testing before we complete it.

from optimist.

ddarbyson avatar ddarbyson commented on August 29, 2024

Hi @jrafanie seems a bit complicated... Why not just keep Trollop as is and launch Optimist as a new gem at latest version?

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024

@ddarbyson I think we're saying the same thing. The one caveat that causes people headaches is if Trollop goes away completely in the new gem first version because not only do they have to change their Gemfile/gemspec but they also have to change all of their client code so they can't upgrade right away. See the PR for discussions around this. Other renames have occurred before, where the old class/modules names stuck around for a release or two to allow people to use the renamed gem at one point and then replace the deprecated names before upgrading to the release that drops the deprecated constants.

from optimist.

ddarbyson avatar ddarbyson commented on August 29, 2024

I understand @jrafanie

For the sake of time, can you release the latest set of features which are on master under Trollop and we can work towards renaming for a future release? I'm afraid we might get bogged down and release will take a long time.

Reason being, it's becoming more difficult to manage this gem under Bundler as a :git source as opposed to sourcing directly from rubygems.org

from optimist.

kbrock avatar kbrock commented on August 29, 2024

@ddarbyson That is what we did. The latest Trollop code has been released.

Sorry, the Trollop::VERSION has not been updated but the gemspec has been updated.

The optimist naming changes will be in parallel.

from optimist.

ddarbyson avatar ddarbyson commented on August 29, 2024

This is great.... I must have missed the note somewhere along the lines. I see 2.1.3 - July 11, 2018 (29.5 KB) on rubygems.org now

Looking forward to the new name and will keep an eye on this repository.

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024

Sorry, the Trollop::VERSION has not been updated but the gemspec has been updated.

@kbrock does it make sense to release a new version as trollop with all the latest changes (without renames) + the VERSION change and that will be the last trollop version (hopefully)?

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024

Reason being, it's becoming more difficult to manage this gem under Bundler as a :git source as opposed to sourcing directly from rubygems.org

yeah, @ddarbyson, I totally agree. We should release the latest version as trollop so people don't need to use git references. We can then go forward with the rename work.

from optimist.

kbrock avatar kbrock commented on August 29, 2024

does it make sense to release a new version as trollop with all the latest changes (without renames) + the VERSION change and that will be the last trollop version (hopefully)?

@jrafanie I'm leaning towards no.

Now if we want to merge a few of the PRs (before we bust them so they can't be merged) then I'd be willing to update the internal VERSION number and the external (gemspec) one.

Having a single file probably seemed like a good idea a dozen years ago, but it does have its limitations (aka non dry ramifications)

from optimist.

jrafanie avatar jrafanie commented on August 29, 2024

Now if we want to merge a few of the PRs (before we bust them so they can't be merged) then I'd be willing to update the internal VERSION number and the external (gemspec) one.

Sure, that's what I meant but didn't describe properly. 👍

Having a single file probably seemed like a good idea a dozen years ago, but it does have its limitations (aka non dry ramifications)

We've had people mention the single file before so we should not make that change in this final patch version before the rename.

from optimist.

tetron avatar tetron commented on August 29, 2024

Dropping in to say that even though it's Friday night and I'm fixing a broken build pipeline (because the warning message emitted by v2.9.9 broke tests that were expecting a successful command to have no output), I support this change.

from optimist.

macosgrove avatar macosgrove commented on August 29, 2024

from optimist.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.