Changelog tutorial

Place to get help with not working mods / modding interface.
eduran
Filter Inserter
Filter Inserter
Posts: 344
Joined: Fri May 09, 2014 2:52 pm
Contact:

Re: Changelog tutorial

Post by eduran »

If you use a duplicate version, the log file will complain about a duplicate date instead. I just fiddled with the Date: line for 15 minutes until I realized I had accidentally repeated the previous version number.

badtouchatr
Long Handed Inserter
Long Handed Inserter
Posts: 80
Joined: Sat Aug 20, 2016 8:00 pm
Contact:

Re: Changelog tutorial

Post by badtouchatr »

Well, I guess I found another example of "exact formatting required by the changlog system" that I had to discover by trial and error.

When I uploaded the first version of my mod Scrap Library, I used the date format "yyyy-mm-dd" in the changelog. The changelog showed up fine in-game, but there was no Changelog tab on the website portal. So, just a few minutes ago, I uploaded a new version (minor update), changing the date format to "dd. mm. yyyy", and it shows up both places perfectly. So, apparently the Date field is also picky about the format: it must be 2-digit day, period, space, 2-digit month, period, space, 4-digit year.

Although, I see this mod https://mods.factorio.com/mod/ElectricTrain/changelog uses "yyyy-mm-dd" format and gets away with it. Maybe they're just picking on certain users, or the mod portal is moody.


An unrelated issue: I submitted a bug report due to this: viewtopic.php?f=7&t=69341

eduran
Filter Inserter
Filter Inserter
Posts: 344
Joined: Fri May 09, 2014 2:52 pm
Contact:

Re: Changelog tutorial

Post by eduran »

Last time I checked "date" could be any string. It is not parsed at all and displayed as-is. My guess is that by changing the date you fixed another mistake.

badtouchatr
Long Handed Inserter
Long Handed Inserter
Posts: 80
Joined: Sat Aug 20, 2016 8:00 pm
Contact:

Re: Changelog tutorial

Post by badtouchatr »

eduran wrote:
Thu Apr 11, 2019 6:10 am
Last time I checked "date" could be any string. It is not parsed at all and displayed as-is....
Except that, as I mentioned, on my first upload, my changelog was not visible at all. So, no parsing and no displaying. And no errors in factorio-current.log. So either no parsing was done, or the "error" was ignored.
eduran wrote:
Thu Apr 11, 2019 6:10 am
...My guess is that by changing the date you fixed another mistake.
A mistake on the part of the parsing logic for the changelog file? I agree with you.

The changelog has got to be the simplest part of submitting a mod (other than maybe the info.json itself). It shouldn't be this hard. And, IMHO, the devs should either fix the parsing logic, AND/OR provide modders with a complete description of the parsing rules.

eduran
Filter Inserter
Filter Inserter
Posts: 344
Joined: Fri May 09, 2014 2:52 pm
Contact:

Re: Changelog tutorial

Post by eduran »

On re-reading, I think your issue was just with the mod portal taking some time to properly update. If your changelog looks fine in-game, it will also work on the portal. But the two are not always perfectly in sync after uploading a new version.

And I fully agree that it should not be this hard to post a working changelog. By now I force my editor to correct most of the mistakes one can make (replacing tabs with spaces, deleting trailing whitespace characters), but it is still a hassle.

Pi-C
Smart Inserter
Smart Inserter
Posts: 1648
Joined: Sun Oct 14, 2018 8:13 am
Contact:

Re: Changelog tutorial

Post by Pi-C »

eduran wrote:
Thu Apr 11, 2019 6:10 am
Last time I checked "date" could be any string. It is not parsed at all and displayed as-is. My guess is that by changing the date you fixed another mistake.
You're right, it doesn't matter to the game what format the date is in. But the thing is, his changelog was parsed correctly by the game! Although nothing was wrong with it, the working changelog wasn't displayed on the portal.

EDIT: Too late for your reply. :-)
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!

badtouchatr
Long Handed Inserter
Long Handed Inserter
Posts: 80
Joined: Sat Aug 20, 2016 8:00 pm
Contact:

Re: Changelog tutorial

Post by badtouchatr »

Yes, maybe it is just a syncing issue. But there was one full day in between the versions I uploaded. That's a long time to be un-synced.

I notice that you have the "yyyy-mm-dd" format in your changelog for your LTN Tracker mod. This is the same format I used the first time. So, I think on my next update, I will try going back to that format and see what it does with that.

badtouchatr
Long Handed Inserter
Long Handed Inserter
Posts: 80
Joined: Sat Aug 20, 2016 8:00 pm
Contact:

Re: Changelog tutorial

Post by badtouchatr »

OR ...... maybe I should just go ahead and submit a bug report.... ?

eduran
Filter Inserter
Filter Inserter
Posts: 344
Joined: Fri May 09, 2014 2:52 pm
Contact:

Re: Changelog tutorial

Post by eduran »

badtouchatr wrote:
Thu Apr 11, 2019 6:40 am
But there was one full day in between the versions I uploaded. That's a long time to be un-synced.
Ok, that is odd. I never had such a long delay. I wouldn't discount the possibility that the parser is just trying to mess with you ;) At least I had that feeling on some occasions.
badtouchatr wrote:
Thu Apr 11, 2019 6:40 am
I notice that you have the "yyyy-mm-dd" format in your changelog for your LTN Tracker mod. This is the same format I used the first time. So, I think on my next update, I will try going back to that format and see what it does with that.
Never had any trouble with it. To release two versions on the same day and get around the (completely unneeded) "no dupliacte dates allowed" rule it can be extended to yyyy-mm-dd hh:mm

Code: Select all

Version: 0.10.1
Date: 2019-04-07 20:30

[...]              

Version: 0.10.0
Date: 2019-04-07 10:30

badtouchatr
Long Handed Inserter
Long Handed Inserter
Posts: 80
Joined: Sat Aug 20, 2016 8:00 pm
Contact:

Re: Changelog tutorial

Post by badtouchatr »

eduran wrote:
Thu Apr 11, 2019 6:48 am
I wouldn't discount the possibility that the parser is just trying to mess with you ;) At least I had that feeling on some occasions.
LOL, I try not to think that sort of stuff is happening, but you never know.

And, thanks for the tip on the date format (including time) for same-day submissions. I will keep that in mind.

User avatar
darkfrei
Smart Inserter
Smart Inserter
Posts: 2903
Joined: Thu Nov 20, 2014 11:11 pm
Contact:

Re: Changelog tutorial

Post by darkfrei »

badtouchatr wrote:
Thu Apr 11, 2019 6:53 am
And, thanks for the tip on the date format (including time) for same-day submissions. I will keep that in mind.
There is date and time standard:
https://en.wikipedia.org/wiki/ISO_8601

Pi-C
Smart Inserter
Smart Inserter
Posts: 1648
Joined: Sun Oct 14, 2018 8:13 am
Contact:

Re: Changelog tutorial

Post by Pi-C »

darkfrei wrote:
Thu Apr 11, 2019 7:08 am
badtouchatr wrote:
Thu Apr 11, 2019 6:53 am
And, thanks for the tip on the date format (including time) for same-day submissions. I will keep that in mind.
There is date and time standard:
https://en.wikipedia.org/wiki/ISO_8601
Following Blue Templar's suggestion, I added a note recommending the use of UTC in changelogs. Actually, it was the first change to my original text. :-)
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!

Bilka
Factorio Staff
Factorio Staff
Posts: 3129
Joined: Sat Aug 13, 2016 9:20 am
Contact:

Re: Changelog tutorial

Post by Bilka »

Regarding some of the earlier post about the mod portal in this thread: I would say that if a changelog shows in-game but not on the mod portal, that is a bug with the mod portal and should be reported with a mod to reproduce in the mod portal discussion subforum.
I'm an admin over at https://wiki.factorio.com. Feel free to contact me if there's anything wrong (or right) with it.

User avatar
Muppet9010
Filter Inserter
Filter Inserter
Posts: 278
Joined: Sat Dec 09, 2017 6:01 pm
Contact:

Re: Changelog tutorial

Post by Muppet9010 »

Hmm if date can't be duplicate does that mean somehow the "base" mod ignores the parsing?

Code: Select all

---------------------------------------------------------------------------------------------------
Version: 0.17.28
Date: 09. 04. 2019
  Bugfixes:
    - Fixed a crash when hovering over some inventory-like GUI elements.
---------------------------------------------------------------------------------------------------
Version: 0.17.27
Date: 09. 04. 2019

Pi-C
Smart Inserter
Smart Inserter
Posts: 1648
Joined: Sun Oct 14, 2018 8:13 am
Contact:

Re: Changelog tutorial

Post by Pi-C »

Muppet9010 wrote:
Thu Apr 11, 2019 9:25 am
Hmm if date can't be duplicate does that mean somehow the "base" mod ignores the parsing?
Are you sure the Date lines are exactly the same? The value is a string, and white space at the end of the line wouldn't throw an error here, but could make the strings different.
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!

Bilka
Factorio Staff
Factorio Staff
Posts: 3129
Joined: Sat Aug 13, 2016 9:20 am
Contact:

Re: Changelog tutorial

Post by Bilka »

It checks if date is duplicated per version. This is why you would get a false positive for duplicated dates if you had duplicate versions - they are seen as the same version so they have date twice.
I'm an admin over at https://wiki.factorio.com. Feel free to contact me if there's anything wrong (or right) with it.

GrumpyJoe
Filter Inserter
Filter Inserter
Posts: 443
Joined: Fri Apr 06, 2018 7:10 pm
Contact:

Re: Changelog tutorial

Post by GrumpyJoe »

Could you please post an example of a working, non error throwing, changelog file at the top of your initial post, so people could just copy&paste and work from there?

When at work and bored, i have read through all of the thread already, and it was very interesting.
But coming back two days later, searching through that one post alone, finding out in the following text after a code piece if its a bad example or actually working and neat looking piece of code, that has all the functions it can have, is kinda meh, as a go to thing
Its all nice and dandy to read about why soemthing is not working as expected, but afterall, people should come here to find out whats working

I already have that thread bookmarked, if i have further questions, and once i found your actual conclusion i will definatly keep a local copy.
But it would be a much better tutorial if there was a clear "GO HERE AND COPY THAT FOR THE START" button

Thanks for all the work!
Not knowing some of these can be a pain in the butt.
I just added something in a new category of the same version, and the only reason it greyed out the changelog button of the mod manager was, that i had hit Enter one too many times, leaving an empty line between "Features" and "Changes"
Easy to fix, if you read just some of your awesome collection a few days ago.

This is something im missing alot in some of the mods i use
Answers like "its all on Git" is NOT the right answer for the average user
Last edited by GrumpyJoe on Sat Apr 13, 2019 12:20 pm, edited 1 time in total.

Schallfalke
Fast Inserter
Fast Inserter
Posts: 162
Joined: Sun Oct 28, 2018 7:57 am
Contact:

Re: Changelog tutorial

Post by Schallfalke »

GrumpyJoe wrote:
Sat Apr 13, 2019 11:54 am
Could you please post an example of a working, non error throwing, changelog file at the top of your initial post, so people could just copy&paste and work from there?
...
Pi-C used my mod Schall Lamp Contrast as an example. I am posting the changelog.txt here:

Code: Select all

---------------------------------------------------------------------------------------------------
Version: 0.17.0
Date: 2019.03.01
  Features:
    - Updated to 0.17.
---------------------------------------------------------------------------------------------------
Version: 0.16.0
Date: 2019.01.31
  Features:
    - Replaced the vanilla lamp graphics for higher contrast circuit display.
    - Lamps are not colliding with vehicles, allowing walk or drive over.
    - Options on lamp base style, to fit concrete tile or for stronger contrast in signal display.
    - Options on lamp glow size. (Default: 3.  Vanilla: 6.)
    - Options on reorder priority on signal colour. (Default: vanilla settings.)
    - Options on enable colour display on white signal. (Default: off.)
    - Options on enable colour display on grey signal. (Default: off.)
    - Options on enable colour display on black signal. (Default: off.)
    - Options on priority on white signal. (Default: L1.)
    - Options on priority on grey signal. (Default: L2.)
    - Options on priority on black signal. (Default: L3.)
  Locale:
    - English, German, traditional Chinese, simplified Chinese are available.
  License:
    - Using Bob's Copyright License.  Document included.
All my mods have properly formated changelog. You many download some of them if you need the actual file. (For example, to avoid BOM thingy if you are not familiar with settings in your text editor. You can load my files directly, instead of copy and pasting.)
If you want a bigger example, I think my Schall Tank Platoon has the longest changelog.

@Pi-C What GrumpyJoe said is right, your post is long... People may get lost in what to start with.

GrumpyJoe
Filter Inserter
Filter Inserter
Posts: 443
Joined: Fri Apr 06, 2018 7:10 pm
Contact:

Re: Changelog tutorial

Post by GrumpyJoe »

Schallfalke wrote:
Sat Apr 13, 2019 12:19 pm

Pi-C used my mod Schall Lamp Contrast as an example. I am posting the changelog.txt here:
Yeah, i have read that
I also copied the very example you quouted. But both the link and the example code are somewhere "hidden" in the middle. And the code is buried between other code snippets
I knew where to search for it, since i already read it before, so this is not a request for myself
Well, it kinda was, but I did not expect a rework of the OP before I added a changelog to my tiny mod ^^

Pi-C
Smart Inserter
Smart Inserter
Posts: 1648
Joined: Sun Oct 14, 2018 8:13 am
Contact:

Re: Changelog tutorial

Post by Pi-C »

OK, I'll update it over the weekend. :-)
A good mod deserves a good changelog. Here's a tutorial (WIP) about Factorio's way too strict changelog syntax!

Post Reply

Return to “Modding help”