Releases: sageserpent-open/kineticMerge
Release 1.3.0
** Release Candidate! **
Features:
- #32 Resolve divergent moves when one is intra-file and the other inter-file.
Bugs:
- #48 Assertion failure when running Kinetic Merge in MoveDestinations.isDegenerate.
- #49 Spurious merge conflicts involving small sections.
Notes:
Consider #32 to be an experimental feature. There are tests for the new functionality and they pass, but this should be considered a first attempt at addressing a quite involved problem space. Try it out and share your feedback - see: #21.
Kinetic Merge is now built using Java 17, so if you want to embed it as a library, you will need a JVM >= 17.
Release 1.2.4
Release 1.2.2
** Release Candidate! **
Minor tidying up of internal APIs since release 1.2.1 plus a speculative optimisation that may occasionally kick in, no changes in functionality for the end-user.
Release 1.2.1
** Release Candidate! **
Minor tidying up of internal APIs since release 1.2.0, no changes in functionality for the end-user.
Release 1.2.0
Release Candidate!
Edits, deletions and now insertions are migrated through code motion!
Features:
#30 - Migrate insertions through code motion via anchors.
#38 - Issue a diagnostic for moves, especially for diverging moves.
Bugfixes:
#39 - Misleading log messages regarding match window sizes plus some quick-win performance optimisations.
#40 - MatchError faults Kinetic Merge when merging a file deleted on one side and modified on another.
#42 - Fix poor merge due to trailing shared context being treated as an extended insertion.
#43 - Filling gaps with one-token sections makes for odd-looking merges.
Release 1.1.2
Fourth Beta release of Kinetic Merge.
No longer propagates deletions or edits through divergent code motion, as per the discussion on this ticket: #37.
Release 1.1.1
Third Beta release of Kinetic Merge.
Adds a progress bar when computing matches, to avoid embarrassing dead air in demonstration videos. 😄
Features:
- #36 Show progress while running.
Release 1.1.0
Second Beta release of Kinetic Merge.
Code motion is now supported across files!
Features:
- #26 Clean Merging (including code motion across files)
- #34 Improve performance for inter-file code motion analysis.
Notes:
- There is now a new command line option,
--minimum-ambiguous-match-size
that specifies a threshold at which ambiguous matches may be considered. It defaults to 10, and may be set higher or lower, even down to zero to permit all ambiguous matches to be considered. Setting it lower or disabling ambiguous matches altogether with--minimum-ambiguous-match-size=0
can incur a considerable performance hit, as well as leading to some imperfect merges due to the lack of #30. - Only edits are propagated through code motion for now. If new code is inserted within a block of code that has been moved on the other side of the merge without otherwise editing the rest of the moved code, then the insertion will not propagate - that has to wait until #30 is delivered.
- Tiny edits are not always propagated through code motion. Handling tiny edits has to wait until #29 is delivered.
Release 1.0.0
First Beta release of Kinetic Merge.
Code motion is now supported intra-file!
Features:
- #13 Clean Merging (including code motion inside files).
Release 0.2.6
Minor release since 0.2.3
Work done to address question: #27