It’s practically impossible to remove features from a language. If you keep adding “improvements” to your language you end up with the unholy mess that is modern c++
It’s practically impossible to remove features from a language. If you keep adding “improvements” to your language you end up with the unholy mess that is modern c++
Expect to be building your own environments if you want to run things that are not in your distro.
I will note that most places I have worked professionally with Python code have compiled their own CPython interpreter and not relied on the distro version.
LTS is exactly this pain!
I really don't understand why anybody would use that for development. Your SW won't land anyway in the current "stable" distri release, but at the earliest in the "next" version. So you need to develop against that "next" version anyway. The "next" version is something like Debian Testing…
And if you don't plan to release your SW properly into a distri you need to bring your own environment anyway.
Secondly it's very well possible to remove features from a language. It just needs to be well enough designed that there is a good migration story (ideally though automatic rewrite by the compiler). Just see what Scala 3 did!
https://docs.scala-lang.org/scala3/reference/dropped-feature...
No. Give the same environment as production.
And you don't run your apps directly on the production boxes either these days.
There is just no reason to endure the constant pain of outdated dev environments.
Of course that doesn't mean that you can't develop against a stable environment, in case you plan to deploy directly onto such thing. That's usually independent of your tooling. You just need to look for the right versions of your deps (which is trivial within some "container"; which runs of course on your up to date dev box).
Back when I was heavily involved in blender development I'd sometimes have to pause my hackery while waiting for fedora to catch up with whatever version of python blender was using because I didn't want to bork my system by upgrading python (again!). Well(...) I also wanted to ensure that it would run off libs from the repos and this was a little higher priority than being on the cutting edge so it was a sacrifice I was willing to make. The only time this caused any significant delay also coincided with one of the open movies and they didn't want to merge what I was working on until after production which meant it didn't matter either way.
I don't ruby but it seems like a nice way to do something like:
def apply(callable, ...):
callable(...)