Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add a last updated/no longer developed field to Casks #663

Closed
fanquake opened this issue Jul 4, 2013 · 5 comments
Closed

Add a last updated/no longer developed field to Casks #663

fanquake opened this issue Jul 4, 2013 · 5 comments

Comments

@fanquake
Copy link
Contributor

fanquake commented Jul 4, 2013

I've noticed some of the Casks in the repo are for apps that are in some cases, are more than a year or two old and that there are also some apps, such as Camino Browser (http://caminobrowser.org/), which are no longer being developed.

I think it would be beneficial if we added a last updated/no longer developed field to Casks. I think we could combine both statuses into a single field, I'm just not exactly sure what it would be called.

Such a field would allow us to notify users who are installing older software, i.e

"This Cask hasn't been updated for xxx number of days, and might not be the latest version!"

or

"This app is no longer being actively developed, and is more than x years old. It may not be compatible with your system. Are you sure you want to install it?"

These are only generic examples, but I think the ability to notify users in this way could be handy.

Another benefit of a having a last updated/no longer developed field is that it can help bots/scripts find casks which could be outdated.

i.e If you have a bot which iterates over the Casks dir, you don't want it checking casks, which are no longer developed, for updates.

Or you could run a script which checks casks that you specify and notifies you when they're last updated date is > 1/2/3 weeks

I could be taking the wrong line of thought here though, maybe we don't even want to maintain Casks which are > a year old or no longer actively developed.

@vitorgalvao
Copy link
Member

For the remainder of the post, a “contributor” is a user that contributes to the project by submitting casks (and/or updating the present ones), and a “user” is someone who just uses homebrew-cask.

I’ve thought briefly about this before (because of Camino), and maybe we should just remove the (officially) no-longer-developed casks, after a period of time when the usage of the app has significantly declined. That, or we let them linger, but adding more options does not strike me as being a good solution.

Git is great at keeping track of files, so if we want to run some script to know how long it has been since a cask has been modified, that’s easy enough to do. That’d be way more useful for contributors than users; apps have distinct release schedules (when they have one at all), so while a few days might mean there were a bunch of changes to one app, to another, months can go by before another version is released, and that does not mean at all that it’s not in active development. This project is also meant to have you not worry about it (and I’d say the same of homebrew) — it’s up to the contributors to keep everything up to date “behind the scenes”.

Basically, how we handle this would be so subjective and hard to track, it might me a good idea to implement some kind of system for contributors, but a bad one to relay it as messages to users, since there is really no way to make sure the information is even remotely accurate, short of making some kind of statistical software to find what the average release cycle of each app is (really not the goal of the project), and even that would b better suited to help contributors, not users.

@phinze
Copy link
Contributor

phinze commented Jul 22, 2013

for file in Casks/*.rb; do echo $file $(git log -1 --format=%ci $file) | awk '{print $2,$1}'; done | sort

https://gist.github.com/phinze/13ea040b666dc86591ca

@vitorgalvao
Copy link
Member

Seeing that gist just made me realise yet another flaw with this system. Knowing how long it has been since a cask was modified is pretty much meaningless, when we're adding today a cask for an app that was last updated four years ago. It simply adds to the point that this is both subjective and hard to track, with the current implementation. Again, it can be somewhat useful for contributors, but even then, not that much; adding an “app last updated in” field to the casks would also be incredibly time-consuming, extremely hard to maintain correctly, and in some cases, useless. One of biggest arguments against this are casks that have version 'latest'.

I’m all for removing Camino (and possibly the flickr uploadr, if it turns out it really was abandoned). The former has strong arguments for removal (the lack of updates can even be a security risk for the user, and there are tons of alternatives still in very active development), while the latter is more on an edge-case (is there a real alternative to it?).

@phinze
Copy link
Contributor

phinze commented Jul 22, 2013

Yeah thinking about it more, I think we can probably lean on the community to help us with this stuff too. Anyone is welcome to open an issue that says "hey i installed FooCask and the software didn't really work on Mavericks" or whatever. Then we can consider stuff for removal on a case-by-case basis as it comes up. Outdated stuff is going to be a problem in any repository. If we find a lot of users are complaining about cruft in the repo we can bring this back up, but for now I say we let the squeaky wheel get the grease. 😀

@fanquake
Copy link
Contributor Author

Fair enough. I'll close this for now. We can come back to it in the future if we ever need to. :)

@Homebrew Homebrew locked and limited conversation to collaborators May 8, 2018
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants