-
Notifications
You must be signed in to change notification settings - Fork 46
Description
Currently, 32 commits have been added to master, which are not yet into next (or not with the same commit ids, at least). My understanding is that we need to bring back those changes into next before we can release NeTEx v2.0.
I’m here first listing those commits to create a todo list, then proposing a way to gradually backport those changes safely and in reviewed manner, into next.
Commits from master not yet into next, by chronological order
I generated the list so we can track our work here, using this (+ a bit of manual editing):
git log master ^next --pretty=format:"%h %ad %an|%s" --date=iso-strict --reverse | sed -E 's/^(.*)\|.* \(#([0-9]+)\)$/\1 (#\2)/'
This gives our nice 32-commits todo list so we can follow our progress:
- d847bb7 2024-03-25T17:41:09+01:00 Stefan de Konink (Fix typo psychosensory #690)
- 4bf30d8 2024-04-15T20:20:32+02:00 Stefan de Konink (Change organisation ref abstract #686)
- a3ba1e5 2024-04-17T17:23:30+02:00 Matthias Günter (redid 409 (which also contains 408): Enhancement tMCR Vehicle Equipment profile Member, accepted driver permits #612)
- de9d705 2024-04-17T17:29:22+02:00 Stefan de Konink (Adding unique constraints for the elements that actually exists in our examples #464)
- 56046b2 2024-04-17T17:33:43+02:00 Stefan de Konink (Introduce dataSourceRef checking, so we can see seriously broken examples and implementations #454)
- 7ce0095 2024-04-17T23:50:42+02:00 Matthias Günter (Create FX-PI-01_ParisExample.xml #640)
- af04aa1 2024-05-01T17:33:47+02:00 Stefan de Konink (Remove all abstract elements from constraint validation #462)
- 84c52d1 2024-05-02T13:36:17+02:00 Stefan de Konink (EPIAP to Master #705)
- 64aaec7 2024-05-02T13:37:04+02:00 Julius Tens (Add properties to describe the height of a Lift #696)
- 6eb10a8 2024-05-03T15:58:53+02:00 Stefan de Konink (Fix typo #722)
- 91b24bd 2024-05-03T18:29:24+02:00 Matthias Günter (Update neTactileActuators attribute on Escalators and Travelators #665tex_ifopt_equipmentAccess_version.xsd #720)
- 0c59d9e 2024-05-03T18:30:32+02:00 Matthias Günter (Update netex_facility_support.xsd #724)
- bcdfecb 2024-05-03T18:31:02+02:00 Stefan de Konink (TypeOfEntity is abstract #723)
- 15d7f7a 2024-05-04T12:07:46+02:00 Stefan de Konink (Fixes from #721 #725)
- 1e9458f 2024-05-10T21:24:06+02:00 Matthias Günter (RouteInstructionRef reintroduced #588)
- 8d19e2b 2024-05-15T14:11:15+02:00 Julius Tens (update readme for netex 1.3 #732)
- 01a59b1 2024-05-15T14:14:34+02:00 Stefan de Konink (Propose change for TypeOfFrameRef #727)
- a241e1b 2024-06-03T18:07:30+02:00 Stefan de Konink (Fix Interchangse #737)
- b836e2b 2024-06-10T19:40:40+02:00 Stefan de Konink (TypeOfNotice referential constraint fixes #741)
- fd5444c 2024-07-09T15:46:21+02:00 Stefan de Konink (Update netex_ifopt_equipmentAccess_version.xsd #752)
- 6170432 2024-07-29T13:04:54+02:00 Stefan de Konink (Remove references to non-existent email addresses #758)
- 4a08a15 2024-09-10T15:29:42+02:00 Matthias Günter (Delete Full_PublicationDelivery_109_Oslo_morningbus_example.xml #778)
- 1630b31 2024-10-16T15:43:45+02:00 Matthias Günter (No PR? Removing double description in HeadwayJourneyGroupGroup)
- ec1035d 2024-10-31T12:47:40+01:00 Stefan de Konink (Annotation to version attribute (#794) #797)
- 8ff04e2 2024-12-10T23:18:10+01:00 Stefan de Konink (Prioritize TAP TSI validation #743)
- d151a39 2025-01-14T16:07:46+01:00 Matthias Günter (Update netex_serviceCalendar_version.xsd #820)
- eca532f 2025-02-03T16:58:27+01:00 Tu-Tho Thai (Correct typo in netex_flexibleNetwork_support.xsd #827)
- 9e2d63c 2025-02-15T19:56:35+01:00 Stefan de Konink (Fix OppositeDirectionRef in master #835)
- 74b4cd9 2025-03-17T18:10:32+01:00 Håkon Fjelstad (Added prefix / namespace to references in fields of unique elements #837)
- f1cc229 2025-06-25T08:41:53+02:00 Christophe Duquesne (MandatoryEnumeration comment correction #925)
- b575a69 2025-09-19T13:49:48+02:00 Fabio Giuseppe Di Benedetto (fix LuggageLockerEquipment #955)
- 4f42794 2025-09-22T13:19:49+02:00 Stefan de Konink (Fix VDV examples #957)
Proposed sync technique
I had a look at the changes we’re going to backport, using different techniques. They are quite largish and most of them will create conflicts when merging. I don’t believe at this point we can safely “merge everything in one go” and be right at the end (but if someone has a better idea, please speak).
Hence I’m proposing to do the same as @TuThoThai and I have done on the French NeTEx profile a few weeks ago: work the commits out, one by one in the chronological order, via individual PRs, which give the opportunity to properly review the changes & conflict resolution, in a lower-risk fashion.
The idea is this, for each commit (or group of commits when extremely lucky):
# THE-COMMIT-ID is a placeholder to be replaced by the actual value
# create a local source branch from the source commit
git checkout -b backport-source-THE-COMMIT-ID THE-COMMIT-ID
# create a local target branch from `next`, & switch to it
git checkout -b backport-THE-COMMIT-ID next
# merge the source branch into the target branch
git merge backport-source-THE-COMMIT-ID --no-ff
# then: fix the conflicts in the editor, commit, push, issue a PR, review, and merge (no squash)
(the same work can be expressed with slightly different commands, but that’s the general idea)
A few important notes:
- The PR must be modified to target
next, and we then get proper reviewal process as usual, and traceability. - The merges must be conducted using a
mergecommit (so we keep the ids of the original commits, + add a merge commit, and ultimately we can track the remaining commits in the GitHub view, see screenshot at the top of this issue). No squash, no rebase! - To go through the list, it’s good to have authors involved (poke stefan / matthias mostly), so we can make sure we understand how we handle the conflict resolution collectively!
- And it’s been more efficient to do that synchronously over a videocall
For this specific topic: ping @TuThoThai, @skinkie, @ue71603, @Aurige, @trurlurl at least.
Let me know what you think, and then we'll start moving forward as we can.