termux / termux-api

Termux add-on app which exposes device functionality as API to command line programs.
https://f-droid.org/en/packages/com.termux.api/
2.3k stars 454 forks source link

No new releases for a long time, despite important fixes for broken functionality. #569

Closed navid-zamani closed 1 year ago

navid-zamani commented 1 year ago

Problem description

termux-call-log is still broken in the latest release. (Not github build. Actual release.)
I was told in https://gitlab.com/fdroid/fdroiddata/-/issues/2850#note_1211220409 to wait for the F-Droid release.
But this was almost three months ago.
I asked F-Droid why they did not pick it up yet: https://gitlab.com/fdroid/fdroiddata/-/issues/2850#note_1211220409
But their system is automated, and they pick up any new release from you.
The problem is that there isn’t any new release of Termux:API since almost a year ago.
Even though it is broken and fixed.

Steps to reproduce

(Does not apply. See problem description.)

Expected behavior

A bug should be fixed in release in a timely manner, or the project should get a maintainer with the time to do so, or the project should be considered abandoned. (Mind you: We’re a community. We gladly help out if your priorities do not match our expectations. This is not a demand. We are thankful for your work.)

In this specific case, the delay was so long, that the call log now will likely be cut off, making a complete accumulated call log for my archives impossible. (I used to combine its output with previous output by only appending new entries, to store this in my archives and backup system.)

Additional information

agnostic-apollo commented 1 year ago

I commented about this earlier at https://github.com/termux/termux-api/issues/483#issuecomment-1237492746

I plan on making releases for termux-app and almost all plugin apps in current estimates "possibly" around 2 weeks. There were lot of significant issues on the termux-app side that have been taking lot of time to be fixed and hence the delay on release of other apps as well. I do admit its has been a long time, but it is what it is.

A bug should be fixed in release in a timely manner, or the project should get a maintainer with the time to do so, or the project should be considered abandoned.

There are lot of bugs from old time that have not been fixed. I did fix quite a few but a tonne still exist. I have only limited time, there are other repos to maintain as well, not just this, and significant time is spent on support on various forums. And whether a bug has been fixed in github, does not mean that the app is "release" ready.

And note that all the devs here are working for free in their own free time, other than some relatively negligible donations recently, time spent wise (not that they are not appreciated). The community is welcome to sponsor (more) skilled devs for full time if they want faster updates. Currently, only 1-2 devs are managing all the main apps.

navid-zamani commented 1 year ago

@agnostic-apollo: I did not say

(Mind you: We’re a community. We gladly help out if your priorities do not match our expectations. This is not a demand. We are thankful for your work.)

so you could ignore it, and lecture me about you working for free. ^^

I work for free myself too, btw. There’s just a point where you gotta be honest, and admit that it’s not entitled spoiled people demanding to get things for free, but simply a project that has outgrown oneself and needs a team or foundation or something.
Of course, everyone has their own point for this, but the thing being broken for months is about where mine lies. ;) (E.g. I assume backports of important patches from master to stable branches aren’t a thing here yet?)

Also, I can see that your releases seem to line up with the ends of the years. That is not just a coincidence, is it. ;)

Again, : We’re thankful, and if the barrier to entry is not too high, we can fix things ourselves and in this way help out.

I’m glad this finally gets a new release. And I’m glad you take care to not overwork yourself. :)
Have a nice winter solstice. :)

/leaves

Grimler91 commented 1 year ago

simply a project that has outgrown oneself and needs a team or foundation or something

Problem for the apps has been that there aren't many people with the right skills interested in working on them. Before (2016 - 2020) it was mainly Fornwall doing the work, and now it is mainly @agnostic-apollo. A team would probably form naturally if there were more people interested in doing the work

Note that you can switch to installing from github action builds instead, to get recent fixes etc, for all the apps. The termux-call-log issue should be solved in that case.

Happy solstice/happy holidays (in advance)

agnostic-apollo commented 1 year ago

so you could ignore it, and lecture me about you working for free. ^^

I wasn't just specifically referring to you, that's exactly why I said "community is welcome to sponsor", since other users may have similar expectations.

I have been part of android community for like a decade and it was never considered a good etiquette to ask devs for release dates or more specifically faster updates, unless you were a significant contributor or donor. You would see this being discouraged at xda forums a lot and don't think I ever did that myself either. Different people and communities would have different way of viewing things.

I work for free myself too

Ah, that's great.

There’s just a point where you gotta be honest, and admit that it’s not entitled spoiled people demanding to get things for free,

There are different types of people we see, including entitled ones. We have seen users complain why plugin apps were paid apps for $1 on playstore but free on F-Droid and why they had to pay and they wouldn't have if they knew.

I am not saying you are one of the entitled people, but saying that a "A bug should be fixed in release in a timely manner, or the project should get a maintainer with the time to do so, or the project should be considered abandoned" if a release wasn't made for an year would likely not be well received in many FOSS projects, specially with commits pushed just a few months ago and ongoing work being done. A better way would have been to just ask why a release hasn't been made and if any rough plans for it. And projects usually prioritize updates for security vulnerabilities, not for normal bugs. Like check android os, even with google's "infinite" budget, bugs may take months and years to get fixed. Not to mention, many projects only have yearly releases.

but simply a project that has outgrown oneself and needs a team or foundation or something.

I definitely agree that we need more experienced devs, devs who write good quality code, who take care of security practices and think about future maintainability and follow conventions instead of just blindly adding features, specially ones received on pull requests. Like @Grimler91 says, we don't have interested devs, hence the issues. Community sponsorship would be a good way to attract devs. With the expenses these days, its unlikely to attract lot of devs who would be willing to work for free for the amount of time it takes to maintain termux.

Also, I can see that your releases seem to line up with the ends of the years. That is not just a coincidence, is it. ;)

Lolz, no, I don't have a deliberate end of year release cycles, I just go with the flow, but it usually takes months to makes releases since that's how long it takes to write big stuff. The termux-app releases were made quickly last year, but last release and this release had lot more work, hence longer delays.

https://github.com/termux/termux-app/releases

We’re thankful, and if the barrier to entry is not too high, we can fix things ourselves and in this way help out.

You are welcome. If you can write android code, then you are welcome to send pull requests, and can ask help as well for problems and I will try to provide it. However, it is best that an issue/discussion is opened before working on a pull for what you are planning to add/fix and if that will be accepted and how you should implement it, since getting rejected later would just waste everyone's time.

I’m glad this finally gets a new release.

Hopefully, soon.

And I’m glad you take care to not overwork yourself. :)

Bit too late for that, if I didn't, releases would get even more delayed ;)

navid-zamani commented 1 year ago

@agnostic-apollo: Sooo… termux-call-log is still broken with the current F-Droid release (of Termux and Termux API).
Didn’t really work out with releasing in two weeks at the end of the last year, like you said, did it? ^^
(Sorry, I had to. :D)


I didn’t ask for a release date btw. The problem was simply that the thing was broken, for a very long time, and nobody bothered with it. It’s a matter of reputation. At least in the case that the project is supposed to be for others too.

I also really would disagree that there aren’t many people interested in this project btw. It’s probably on almost every admin and developer’s phone in the whole world, if(f) they know it exists. (They should be told! :) And they have much more money than me and corporate teams. I would think about getting funding and hiring somebody to get Termux to shine again. It truly deserves it.

Regarding writing Android code: I used to be a webdev until 2007, when Google’s WhatWG basically ruined everything. I was actually one of the very first doing XMLHttpRequest, before the interface even existed. I also coded Java back then. …
I looked into Android, and quickly backed out again, as it’s a right mess. The kind of over-engineered enterprisey Java stuff that reminds me of IBM consultants in the jokes on TheDailyWTF.com. ;) … So I avoid both web and app development like the plague, for sanity reasons. (Hats off to you for diving into the warm digestion tank for us. ;) … I code Haskell and GDScript (Godot) nowadays, and may use some “legacy adapters” to run Haskell inside an app or web app with a GL/SDL interface … but that’s it. ;)


Btw: Am I the only one who thinks that this Github actions thing is a convoluted mess too? XD I suppose this “artifact” is the latest release of the API?… https://github.com/termux/termux-api/actions/runs/5947876837 But it just says it didn’t install when I try to install the APK on my new phone… weird.