ruby-debug / debase

BSD 2-Clause "Simplified" License
209 stars 32 forks source link

Use better approximation of semver #71

Closed luke-hill closed 5 years ago

luke-hill commented 5 years ago

Hi All,

I'm aware this is a tricky gem to maintain and that it has a lot of usages. But it is very tricky to have all of the automated tools (RubyMine / bundler), auto-install this gem because it nearly is always (At least in the last 2-3 years), pointing at a beta version.

Realistically we shouldn't be moving through 4-5-6 beta versions inbetween each patch version. We should just release a 0.2.3 version and if it's broken then you release a 0.2.4 version.

Keeping things in beta makes it so tricky to diagnose whats going wrong when you don't have the ability to dig into the gem structure and realise bundler prefers 0.2.2 over 0.2.3.beta10000

Thoughts?

valich commented 5 years ago

@luke-hill Thanks for pointing this out. The main reason we did not consider this as an important issue is that RubyMine handles installation betas automatically, so we did not have much problems related to this "tradition".

Could you please elaborate on the particular cases when using semver properly in this repo could lead to a better results? Thank you.

luke-hill commented 5 years ago

@valich - RubyMine when prompted to install the gem, doesn't always install the latest beta.

Dependent on your version of RubyMine depends on what beta installs, which causes issues when you deliberately downgrade RubyMine because of functionality issues.

If you ever want to write installation instructions, a simple bundle or gem install debase wouldn't work as it would pull in 0.2.2. I also "imagine" that when a 0.2.3 version is released, RubyMine will auto install the latest version i.e. 0.2.3 succinctly.

TLDR: I'm not sure what logic RubyMine uses to install betas, but it's not flawless and prone to issues. (For both this and ruby-debug-ide)

luke-hill commented 5 years ago

Any thoughts on this? Could we just cut the latest version as stable so it is auto-pulled in, I can't think of a negative to this...

ViugiNick commented 5 years ago

cc @valich :pray:

luke-hill commented 5 years ago

This seems fixed :) Keep the system as it is now, makes it so much easier!

texpert commented 5 years ago

@luke-hill , you've closed the issue too early :)

I am experiencing this weird behavior for a few months. Thought it would be fixed with a new debase version, but 0.2.4 has just been released (which I hope will fix the debugger doesn't stop when stepping), and still no luck.

RubyMine is constantly telling me "The gem debase required by the debugger is not currently installed. Would you like to install it?"

And after pushing 'Yes', the debase-0.3.0.beta3 is installed.

I have tried to uninstall everything and then installing debase 0.2.4, even requiring it in the Gemfile - all the same. RubyMine wants debase and installs debase-0.3.0.beta3.

So, @valich , @ViugiNick , please, fix this!

luke-hill commented 5 years ago

The issue wasn't that a version was broken. The issue was they stayed in beta way too long and didn't allow me to auto-install it.

If a version is broken then a separate issue needs raising. And an appropriate bug fix patch should be released

ViugiNick commented 5 years ago

@luke-hill @texpert now you can switch between using debase 0.3.0*(with a number of cool features from https://www.jetbrains.com/ruby/whatsnew/) and debase 0.2.* by turning on/off the Experinteal Features -> ruby.use.experimental.debugger in go to action popup

texpert commented 5 years ago

Thank you, @ViugiNick for explication!

Though, the 0.2.4 version is still not being used - the 0.2.3.beta is loaded.