Server: New in apps changelog display

Created on 12 Apr 2018  Â·  25Comments  Â·  Source: nextcloud/server

Users and admins should have a brief info on what's new in an available app release, and the possibility to have a direct link to a Changelog.

  • [ ] in an additional changes.xml the app developer will be able to optionally specify "What's new" info consisting of up to 3 bullet points with up to 100 characters each. (Provided this can be read from the appstore with the new update info).
  • [ ] in the changes.xml the app developer will be able to optionally specify a link to a changelog page.
  • [ ] when an app update is available, below the "Update to x.y" button a "What's new?" text is shown. On click a popup is shown with that info (if given, a placeholder text otherwise), and a link to the changelog (if provided). If neither are provided, the "What's new?" label is not shown.
  • [ ] the information is provided by the app store along the other meta information, in the user's language
  • [ ] A "What's new" popover on corresponding app shows the same short info after update, until dismissed (like for the Server what's new).

Appeareance on the apps management:

20180412_141046

Mockups by @jancborchardt

1. to develop enhancement apps management

Most helpful comment

Was just about to add this feature request :) It would be great to have a short changelog directly in the app list/details.

All 25 comments

It should also be visible in the actual place of the app.
I guess no one looks for new features in the personal section.

When a talk update was done, the info should be displayed as soon as the user visits index.php/apps/spreed the first time.

Of course this needs to be done by the app itself, I would say we should just provide a frame work how to do this, for displaying something like the first-run-wizzard is something I could imagine.

The idea, as discssed with @jancborchardt, was to have as little interruption to the user as possible. That's why we did not go for notifications, for instance. Some apps may have not a page of their own (e.g. impersonate, e2ee, checksum), for others a common approach is not really feasible (richdocuments, various viewers).

As ^ was discussed further on IRC, the takeaways: personally I am not convinced, anyhow opinions on this matter drift to different directions. Imho, we should go with this approach. Later, still something like a reusable Vue component can be offered to display an indicator on an app about news (not a popup). The risk of misuse for unimportant changes is there, but apps could do this already by their own implementations either way.

A user-facing thing we could do is something in the left #app-navigation. Like a container which can be closed via an x icon in the top right. Similar to what https://github.com shows in the top right when you are logged in (will do a screenshot when they show news again).

(will do a screenshot when they show news again).

bildschirmfoto 2018-05-16 um 11 11 47

 in the info.xml the app developer will be able to optionally specify a link to a changelog page.

We could also just used the changelog from the app store for that, since the store parses CHANGELOG.md files in the release bundles if they are available.

when an app update is available, below the "Update to x.y" button a "What's new?" text is shown. On click a popup is shown with that info (if given, a placeholder text otherwise), and a link to the changelog (if provided). If neither are provided, the "What's new?" label is not shown.

A "What's new" section on the personal settings shows the same short info (with version and date) after update. Entries only younger than 3(?) months will be shown there, older ones are expunged.

I would probably break this into two parts, admin related changelog (in the apps management) and a user related changelog as @jancborchardt suggested (in the app itself)

We could also just used the changelog from the app store for that, since the store parses CHANGELOG.md files in the release bundles if they are available.

Interesting aspect. However, sometimes the md file is not present, or worse outdated.

The advantage would be that we can show it inline and do not require the user to open another website. The mock would need to be extended to reflect that @jancborchardt

I would probably break this into two parts, admin related changelog (in the apps management) and a user related changelog as @jancborchardt suggested (in the app itself)

@jancborchardt would be two sorts of "what's new" notification, same discussion for the server part. Especially for later I need a decision sooner than later. Makes sense imho. Your call.

For sure a good idea to break it into two parts. The first part to implement is the admin side of course. But having it on the user side is also needed further down the line.

@blizzz what do you mean by that it needs to be extended to reflect that? Even if a changelog.md is present, I would say we cut it max to the first 3 lines, and encourage people to summarize it in max 3 points (more can be below of course).

@blizzz what do you mean by that it needs to be extended to reflect that? Even if a changelog.md is present, I would say we cut it max to the first 3 lines, and encourage people to summarize it in max 3 points (more can be below of course).

@jancborchardt it's about the link for the changelog, not for the shown 3-line content. The changelog would not to be suited for this.

For sure a good idea to break it into two parts. The first part to implement is the admin side of course. But having it on the user side is also needed further down the line.

So: separate content for end users and for admins.

@blizzz oh sorry, that was a misunderstanding: By splitting into two parts I meant only the code, not the content. I don’t necessarily think we need separate 3 changelog points for admins and users. That will double the workload of app developers, and I don’t see the reason why the messages should be any different. Admins are users too?

The thought behind is that for admins it makes sense if some behaviour changed, setting was added, manual operation is necessary, while this is all irrelevant for end users.

We had a discussion today with @jancborchardt and @MorrisJobke

  • the change info should be written into a new file inside appinfo, e.g. changes.xml
  • on app update the appstore parses this file and stores the data
  • the app server provides the whats new information with the other meta data (translated)
  • vue component for presenting the info in a box absolutely positioned in the lower left corner

    • the server info goes into file app

vue component for presenting the info in a box absolutely positioned in the lower left corner

I thought lower right, but in the end it shouldn’t matter that much 😅

that's were in most cases the sidebar is, and the first idea was to put it into it.

Another question that comes to my mind, what to do with it on mobile view? Not showing at all? Would tend to it, unless, i guess in some places / for some people it might not be so uncommon to operate with mobile devices only.

It seems that this one will not make it to 14, right? Move to 15?

Yes, no way to get it done in time, sadly.

So in the end, is this done?

This one is for apps - #10050 is the changelog of the server for users. ;)

Arf, sorry :)

Updated description according to https://github.com/nextcloud/server/issues/9165#issuecomment-395445072

@blizzz It seems this didn't made it -> moving to 16.

Let's move it to 17.

Was just about to add this feature request :) It would be great to have a short changelog directly in the app list/details.

any news about this? i see it's added to version 17.0.3 will it be included in that version or do you expect to have it in a later version?

Was this page helpful?
0 / 5 - 0 ratings