nvaccess / nvda

NVDA, the free and open source Screen Reader for Microsoft Windows
Other
2.09k stars 629 forks source link

User request: Add last updated date to add-on store as column #15278

Open Qchristensen opened 1 year ago

Qchristensen commented 1 year ago

Is your feature request related to a problem? Please describe.

The add-on store (as in NVDA 2023.2 Beta 2), does not give information about when an add-on was last updated. It gives the version number in a column in the list of add-ons, however as add-ons do not have a consistent version numbering system, this information of itself, is not as useful unless you are already familiar with that add-on.

Describe the solution you'd like

It would be useful to have the last updated date as this may be useful for a number of situations:

Describe alternatives you've considered

Additional context

This was originally reported on Twitter: https://twitter.com/kool_turk/status/1688782747203227648 I added the request to be able to sort columns as #15277. With both issues implemented, it would be possible to sort add-ons to see the most recent as per the request.

seanbudd commented 1 year ago

Instead would showing the last tested version of NVDA suffice? This is something we already record and is more relevant to the question of "how long since this is known to work with NVDA"

Adriani90 commented 1 year ago

I second this request, as already pointed out in the discussion for the addon store. However, the question is how to implement it consistently. Does Github show the exact release date of an update? Every different addon source has its own way of subversioning. At least for Github, Bitbucket and other common sources I think it is not a problem. Last updated date gives not only a vague impression of how active the addon is being maintained, but also it would increase security. Last NVDA tested version is useful but currently missleading since the author can enter something even if he or she didn't really test the addon with nVDA. Unless I am not wrong, There is no entity or automated unit testing for addons in NVDA source code.

Last updated date should be automatically retrieved from the addon publishing source. So actually when an author submits a new version of an addon to the addon store, fetching automatically the last updated date should not be that hard. Moreover, fetching the last updated date would open an easy way for implementing update notifications to the addon store. We would just have to store all the last updated dates and when the last updated date of the available addon is greater than the last updated date of the installed addon, then send an update notification. This would mean we compare just two lists and date formats: available addons and installed addons. In this case it doesn't matter which version format the author is using.

cc: @josephsl, @nvdaes, @CyrilleB79 your thoughts are very appreciated as well.

Qchristensen commented 1 year ago

The last updated date would probably be the most accurate (assuming we can get that accurately). Failing that, (or maybe as an extra column as well as), last tested NVDA version is also useful to know.

CyrilleB79 commented 12 months ago

Just answering now to this request:

I fully support the request of a new column with the date of the last update, as well as having this information in other details. I can see at least three use cases for it:

  1. As described before by @Adriani90, it allows to know if an add-on is actively maintained. When 2024.1 is released, I may look at last update of incompatible add-ons. If the last update is dated 2023, I will surely ask the add-on author if they plan to release a compatible release; maybe I have already tested to override the compatibility without any drawback. If it is dated 2019, I'd rather search for an alternative solution.
    • know if an add-on is actively maintained
    • know if there is a new update after an update being ignored
  2. It allows to easily opt-out a specific release. Let's imagine that add-on CoolAddon 1.0 is working well on my system. Now, CoolAddon 2.0 embeds a new feature that is known to breaks the add-on on my specific version of Windows (e.g. Windows 8.1 or Windows 12++). According to the mailing lists, the author of the add-on has been notified of the issue and is working on a fix. Then I can just look regularly to Updatable add-ons tab and check if the last submission date is recent enough to indicate that a new version has been released. It's easier to look at a date and check that it is only few day old then remembering that version 2.0 should not be used and wait for 2.1.
  3. As an add-on developer, it's an easy check to see if the last update has appeared in the store. Since there is no "Update" button to update the available add-on list, it's not obvious to know when the list is updated (each NVDA start, each time the store is opened?)

Regarding the information to be provided: The date of submission to the add-on store may be a good candidate. A better candidate may be the date of the .nvda-addon file, either the date when it was created, or last modified, or the date when it was uploaded at the target URL. But I do not know if and which of this information is easily available.

Regarding the last tested NVDA version information: For the two last use cases (2 and 3), last tested NVDA version does not help. Moreover, add-on author do not always bother to update last tested NVDA version if there is no API change.

Last tested NVDA version (as well as first compatible version) may be interesting information, especially for developers. Having it in "Other details" field may definitely be interesting (at least for developers), but there is no need to add a column for this. It would just cluter the add-on list.