[Interface/add-on manager] enable changelogs for add-ons

Brainstorm ideas of possible additions to the game. Read this before posting!

Moderator: Forum Moderators

Forum rules
Before posting a new idea, you must read the following:
Post Reply
User avatar
Paulomat4
Moderator Emeritus
Posts: 730
Joined: October 16th, 2012, 3:32 pm
Location: Wesmere library, probably summoning Zhangor

[Interface/add-on manager] enable changelogs for add-ons

Post by Paulomat4 »

Problem:
I am someone who often has many add-ons. This means I have to look for updates regularly.When choosing which add-ons to update I'd like to see what has changed since the previous update. Of course I can go though my Userdata folder and look into each changelog.txt file, but that is quite some work and also not all users know where the folder is located.

Suggestion:
Include a [changelog] wml-tag for the server.pbl file of add-ons. Here, authors can now include their changelog which is most of the time already included in the changelog.txt file. Your pbl file would then look like this:

Code: Select all

author="Paulomat4"
title="The Rising"
icon="data/core/images/attacks/lightning.png"
version="0.1.2"
passphrase="********"
translate="false"
description="It is 1171 YW. Wesnoth rises in power and evil turns upon other targets. Follow the story of Fiannon in his desperate tries to protect the forests of his birth. 8 scenarios, 1 talking only, unfinished. I recommend the latest development version of wesnoth, other versions may have bugs."
type="campaign"
email="*********"
#ifver WESNOTH >=1.11.8
[feedback]
	topic_id=39512
[/feedback]
#endif
[changelog]
0.0.5
-worked on scenario 6, you might need to restart it to be able to play scenario 7 correctly
-cleared a few bugs in the micro ai's, which I set up wrong

0.0.4:
-modified some existing micro Ai's, added some others when needed
-replaced a non-working filter in scenario 6
-gave the player another warning about the bandits
-modified the bandit spawning event in scenario 6
-fixed a few typos in scenario 6
-modified some critical wml, which was likely to cause errors
-fixed a bug in treewalk ability

0.0.3:
Minor corrections to the writing, false variables and heavily reduced the orcs gold in the first scenario. 

0.0.2:
fixed a missing macro who made it impossible to start

0.0.1
Yay, first upload! Scenarios 1-6
[/changelog]
The add-on authors would only need to enter their changelog. Optionally you could also have sub-tags like

Code: Select all

[version]
name=
text=
release_date=
etc...[/version]
Of course the version with plain text would be sufficient.
In the add-on manger it would be displayed like this (or similar)
badly made sketch:
You would have some changelog button at the bottom of the add-on dialogue which, once you click on it opens a text field with a fixed width and height. If the text is too much to be displayed directly, then there is a scrollbar. Clicking on the button changelog again would reduce the displayed window back to normal.

Advantages: This would allow players to see what was updated. A case where this could be needed is when you have a big add-on (like 30Mib) and you're waiting for a wml-error to get fixed. Instead, the author not knowing about the error uploads new images every day and you have to redownload the whole thing every day.
This would give the player more clarity about what they download and would probably even save server bandwidth.


I would like to hear what you think about this. The new add-on manager has had huge improvements and I think this would be nice to have.
Creator of Dawn of Thunder and Global Unitmarkers

"I thought Naga's used semi-automatic crossbows with incendiary thermite arrows . . . my beliefs that this race is awesome are now shattered." - Evil Earl
User avatar
Iris
Site Administrator
Posts: 6797
Joined: November 14th, 2006, 5:54 pm
Location: Chile
Contact:

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Iris »

Code: Select all

#ifver [...]
Just FYI, preprocessor directives do not work in .pbl files at this time because they are directly run through the parser and not the preprocessor. An #ifver line would simply be dropped like any other WML #comment line. It’s also worth noting that unrecognized tags and attributes in the .pbl are simply ignored by the add-ons server, so there is no need to use #ifver if your intention is to share the .pbl between the 1.10.x, 1.11.x, and 1.12.x instances.

I for one don’t think we should impose a specific changelog format upon authors and just a plain text block (and an optional flag specifying whether to use Pango markup or not?) would suffice:

Code: Select all

[changelog]
    text="Blah blah blah"
    # Alternatively, tell it to use the contents of an changelog file existing within the add-on
    from_file="changelog.txt"
    markup=yes
[/changelog]
(Your first [changelog] example is not valid WML because the text is directly in the tag instead of an attribute, hence this proposal.)

<technical rant>For some add-ons this could considerably increase the size of their description WML from the main add-ons server listing, though, so it’d probably be desirable to have the client send a separate request for the changelog of a single add-on as required by the user.</technical rant>

I’m not too comfortable with adding more information to the Description dialog right now using visibility toggles or yet another subdialog, though, so I would prefer to see if we can get true paging widgets implemented in 1.13.x before implementing this.
Author of the unofficial UtBS sequels Invasion from the Unknown and After the Storm.
User avatar
Paulomat4
Moderator Emeritus
Posts: 730
Joined: October 16th, 2012, 3:32 pm
Location: Wesmere library, probably summoning Zhangor

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Paulomat4 »

Just FYI, preprocessor directives do not work in .pbl files at this time because they are directly run through the parser and not the preprocessor. An #ifver line would simply be dropped like any other WML #comment line. It’s also worth noting that unrecognized tags and attributes in the .pbl are simply ignored by the add-ons server, so there is no need to use #ifver if your intention is to share the .pbl between the 1.10.x, 1.11.x, and 1.12.x instances.
Thanks for that information. This is a relict from the 1.11 server(when the feedback tag was introduced), but I do only continue to develop for 1.12. As such I have already removed it. But nice to know, that preprocessors don't work in the pbl-file.
I for one don’t think we should impose a specific changelog format upon authors and just a plain text block (and an optional flag specifying whether to use Pango markup or not?) would suffice:
I don't really have a specific position on this (hence the two propositions).
# Alternatively, tell it to use the contents of an changelog file existing within the add-on
from_file="changelog.txt"
This is actually a good idea to keep the .pbl file clean. Would be nice to have.
I’m not too comfortable with adding more information to the Description dialog right now using visibility toggles or yet another subdialog
I think as long as there is only a button when it is invisible it wouldn't be too disturbing. It's not like there would not be enough space next to the close button.
, though, so I would prefer to see if we can get true paging widgets implemented in 1.13.x before implementing this.
I don't really get what a "paging widget" would look like. Some kind of switching between tabs?
Creator of Dawn of Thunder and Global Unitmarkers

"I thought Naga's used semi-automatic crossbows with incendiary thermite arrows . . . my beliefs that this race is awesome are now shattered." - Evil Earl
User avatar
Iris
Site Administrator
Posts: 6797
Joined: November 14th, 2006, 5:54 pm
Location: Chile
Contact:

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Iris »

Paulomat4 wrote:I don't really get what a "paging widget" would look like. Some kind of switching between tabs?
Yeah.
Longer, more technical response:
Author of the unofficial UtBS sequels Invasion from the Unknown and After the Storm.
User avatar
Paulomat4
Moderator Emeritus
Posts: 730
Joined: October 16th, 2012, 3:32 pm
Location: Wesmere library, probably summoning Zhangor

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Paulomat4 »

Should I submit a feature request then, to keep that in mind?
Creator of Dawn of Thunder and Global Unitmarkers

"I thought Naga's used semi-automatic crossbows with incendiary thermite arrows . . . my beliefs that this race is awesome are now shattered." - Evil Earl
User avatar
Paulomat4
Moderator Emeritus
Posts: 730
Joined: October 16th, 2012, 3:32 pm
Location: Wesmere library, probably summoning Zhangor

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Paulomat4 »

Yeah, thread necromancy :D


now that the add-on manager is getting a redesign, I reminded myself of that Idea.
I still think it is good, so I'd like to repropose it. Instead of using a paging widget, I could also imagine it just beeing a tooltip that pops up when you hover with the mouse over the verion number. :)
Creator of Dawn of Thunder and Global Unitmarkers

"I thought Naga's used semi-automatic crossbows with incendiary thermite arrows . . . my beliefs that this race is awesome are now shattered." - Evil Earl
User avatar
Celtic_Minstrel
Developer
Posts: 2166
Joined: August 3rd, 2012, 11:26 pm
Location: Canada
Contact:

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Celtic_Minstrel »

A tooltip is really not a good place to show large chunks of information such as a changelog.

I do like this overall idea and think it should be included with the addons _manifest.cfg once (if?) that's implemented. At this rate it's not likely that that'll be ready for 1.14, though.
Author of The Black Cross of Aleron campaign and Default++ era.
Former maintainer of Steelhive.
User avatar
Iris
Site Administrator
Posts: 6797
Joined: November 14th, 2006, 5:54 pm
Location: Chile
Contact:

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Iris »

It’s worth noting that since my last post on this topic, I actually figured out a way to extend and use GUI2’s stacked_widget to implement tabbed dialogs and wrote the version info dialog in 1.13.2 as a proof of concept. The team eventually produced a full-fledged port of Preferences and other stuff using the same principle, so they don’t really need to worry about the technical feasibility of adding more tabbed UIs to the game. (Their usability when translations/text scaling come into play, on the other hand...)
Author of the unofficial UtBS sequels Invasion from the Unknown and After the Storm.
User avatar
Paulomat4
Moderator Emeritus
Posts: 730
Joined: October 16th, 2012, 3:32 pm
Location: Wesmere library, probably summoning Zhangor

Re: [Interface/add-on manager] enable changelogs for add-ons

Post by Paulomat4 »

A tooltip is really not a good place to show large chunks of information such as a changelog.
that might be true. I only wanted to add a fresh idea to the topic :)
I do like this overall idea and think it should be included with the addons _manifest.cfg once (if?) that's implemented. At this rate it's not likely that that'll be ready for 1.14, though.
May I ask what the addons_manifest.cfg is?
Creator of Dawn of Thunder and Global Unitmarkers

"I thought Naga's used semi-automatic crossbows with incendiary thermite arrows . . . my beliefs that this race is awesome are now shattered." - Evil Earl
Post Reply