Developer poll: Daemon API change log

Release and discuss things you've made, including mods.
Post Reply

Whether and how to track gamelogic-facing Daemon API changes

(A) API changelog file (disadvantage: all commits to the file are mutually merge conflicting)

3
50%

(B) Tags in commit messages (disadvantage: if you forget to tag it, can't be fixed later)

0
No votes

(C) Change log on wiki (disadvantage: can't be changed atomically with the code changes)

2
33%

(D) Do nothing

1
17%
 
Total votes: 6
User avatar
killing time
Programmer
Posts: 173
Joined: Wed Jul 04, 2012 7:55 am UTC

Developer poll: Daemon API change log

Post by killing time »

This is a poll for developers about whether and how we should keep a log of Daemon changes which affect APIs used by the gamelogic, or otherwise impact building gamelogic against a given Daemon version (see Unvanquished issue #3230). The point is to help modders when rebasing their code or other Daemon-based games.

The poll just talks about Daemon changes, but I believe that in many cases seeing the Unvanquished commit that adapts to the API change would be more uses. Option (C) might be better for that, since storing information outside the source code repositories permits linking to the changes on both sides. Also something similar to option (B) could be used in the Unvanquished repository (i.e. writing something like [daemon-api-migration] in the commit messages), regardless of what is done on the Daemon side.

User avatar
Ishq
Project Head
Posts: 1150
Joined: Tue Mar 06, 2012 8:32 pm UTC

Re: Developer poll: Daemon API change log

Post by Ishq »

A. I don't think the mutual conflicts will really be problematic in practice.

User avatar
Gireen
Graphic Designer
Posts: 300
Joined: Wed Mar 07, 2012 1:26 pm UTC
Clan: [DoH]
Location: Germany
Contact:

Re: Developer poll: Daemon API change log

Post by Gireen »

whatever creates the least overhead for those that have to maintain that list.
as long as the information is somewhere its better than nothing.

how about having a changelog folder instead of a single file? anyone interested can create a list from it and there are no merge conflicts.

fear ma engrish :granger:

User avatar
illwieckz
Project Head
Posts: 738
Joined: Sat Aug 11, 2012 7:22 pm UTC
Location: France
Contact:

Re: Developer poll: Daemon API change log

Post by illwieckz »

I also thought about a changelog folder, and I was going to suggest that.

The idea would be such layout:

Code: Select all

changelog/0.56
changelog/0.55

The benefit would be to avoid completely any changelog merge when merging master to future branches.

Solving merge conflicts when pushing branches should be easy, and I want the changelog to be part of the code so we can request a changelog modification as a requirement for merging.

This comment is licensed under cc ​​by 4 and antecedent. The Crunch tool is awesome!

User avatar
Gireen
Graphic Designer
Posts: 300
Joined: Wed Mar 07, 2012 1:26 pm UTC
Clan: [DoH]
Location: Germany
Contact:

Re: Developer poll: Daemon API change log

Post by Gireen »

Ah interesting i didn't think about merging master to future. I thought this is about conflicts with multiple PRs at the same time.
My idea was to have one file per api breaking PR and optionally, in case they become to many, have them added to a changelog file every release.

fear ma engrish :granger:

User avatar
illwieckz
Project Head
Posts: 738
Joined: Sat Aug 11, 2012 7:22 pm UTC
Location: France
Contact:

Re: Developer poll: Daemon API change log

Post by illwieckz »

Ah, that's a good idea too.

Though I believe having one file per change is a bit too much, the merge conflicts coming from having a single file per engine version are very easy to solve (it's only a matter of keeping all the lines from both sides).

But having one file per major version makes it easy to automatically merge master into future branch, so I think we will do that.

This comment is licensed under cc ​​by 4 and antecedent. The Crunch tool is awesome!

User avatar
killing time
Programmer
Posts: 173
Joined: Wed Jul 04, 2012 7:55 am UTC

Re: Developer poll: Daemon API change log

Post by killing time »

I like Gireen's idea of one file per change. That solves my concerns about merge conflicts (I am concerned about merge conflicts between PRs, not just from the compat-breaking branch).

Is there any way to see who has voted? I am curious whether any of them come from real mod developers :tongue:

User avatar
Ishq
Project Head
Posts: 1150
Joined: Tue Mar 06, 2012 8:32 pm UTC

Re: Developer poll: Daemon API change log

Post by Ishq »

killing time wrote: Thu Jan 09, 2025 7:27 am UTC

Is there any way to see who has voted? I am curious whether any of them come from real mod developers :tongue:

No

User avatar
Sweet
Dretch
Posts: 33
Joined: Tue Dec 07, 2021 8:22 am UTC

Re: Developer poll: Daemon API change log

Post by Sweet »

Is there any way to see who has voted? I am curious whether any of them come from real mod developers

I voted for "do nothing". But I am not really a mod developer, all I do is base my own experiments on top of the upstream Unvanqished master branch.

User avatar
killing time
Programmer
Posts: 173
Joined: Wed Jul 04, 2012 7:55 am UTC

Re: Developer poll: Daemon API change log

Post by killing time »

Sweet wrote: Fri Jan 10, 2025 10:29 am UTC

I voted for "do nothing". But I am not really a mod developer, all I do is base my own experiments on top of the upstream Unvanqished master branch.

That counts. You may hit API changes when rebasing the experiments.

Post Reply