Closed GuillaumeGomez closed 4 years ago
:+1:
Updated!
Shouldn't we deprecate them with a message hinting to use the glib
variants?
The docs already mention that, and it's a trivial change that can be automated with sed
And it'll be mentionned in the release notes because we're nice people. :)
I don't mind, but my point was to use a language feature that makes it automatic to point users in the right direction when they upgrade their dependencies, without the need to look in any doc.
We can still do it C-old-school style though ;)
We can do that but it means that'll have to track them...
We can do that but it means that'll have to track them...
And we did that in gstreamer-rs once and only today I noticed that the deprecated functions were not removed yet, more than a month after release. It's additional maintenance burden.
We can still do it C-old-school style though ;)
You can also do that in C. Maybe we should do a bugfix release that deprecates the functions now on crates.io already?
That or just launch a [rip]grep every now and then to remove previously deprecated items.
I find it very nice to get a warning for such a thing when I upgrade my dependencies in mass. I don't necessarily browse all the release notes for all crates.
And we did that in gstreamer-rs once and only today I noticed that the deprecated functions were not removed yet, more than a month after release. It's additional maintenance burden.
Sorry, that was my idea. I should have checked with you how long we would keep them deprecated before removing them and created an issue to track their removal.
I still believe this is nice to users though.
How do you differentiate between the not-yet deprecated items (meaning, not released as such yet) and the others?
I agree there's some tracking involved at one point. You can indicate the release from which deprecation occurs. I think deprecated items can stay for a couple of releases. It might help people still get the hint should they skip one or two releases. Then we can follow a principle such as: after n releases after deprecation, the item is removed, which tracking is obvious thank to the depreciation release attribute.
While it seems like the right thing to do and is possible in this case, it's much harder or even impossible to add deprecations in other cases as the old API can't really be kept.
Two things: first I opened a PR to examples to fix the CI issue. Second, I propose to make a small release with the deprecation notice (which will be in a commit only in the corresponding branch) so that everyone is satisfied: no need for us to keep track of anything and users who are up-to-date will have the deprecation notice.
Reminder: still needs to add the deprecation marker on the current release and make a small release with it.
Usual mac failures so let's finally move on.
cc @sdroege @EPashkin