Skip to content

Spork v0.2.0

Compare
Choose a tag to compare
@slarse slarse released this 29 Mar 16:59
· 252 commits to master since this release

Spork v0.2.0 release notes

This is a pretty massive release for Spork. It's now fairly stable and should work almost without fail. There are still corner cases that don't quite work, mostly involving certain forms of move conflicts (i.e. where the same AST node has been moved to conflicting locations).

Features

  • 4234225 Allow root conflicts #87
  • 8c0f5d4 Exit non-zero on conflict, fix #85
    • For Git compatibility
  • f76420c Add Git compatibility mode, fix #84
    • This allows Spork to merge files that don't end in .java
  • 4a58cc7 Throw exception when a conflict is not handled in preproccessing
  • fa13683 Improve printing of conflicts, fix #66
  • e8d41dc Deal with conflicts in comments #35
  • c8e693d Automatically resolve ordering conflicts #5
  • 552ae18 Add --output option to merge command, fix #46
  • 07e1c5a Compare with gumtree-spoon, ignoring comments, fix #45
  • 23dfa51 Use picocli to create separate merge and compare commands, fix #44
    • The CLI is now much more pretty!
  • ca5a740 Compare to expected with ordering-aware comparison and exit non-zero on mismatch, fix #33

Bugfixes

  • e88f2c3 Resolve name of anonymous class to empty string #86
  • d96702c Properly merge use of "var" keyword, fix #92
  • efbb59d Prevent matchings between primitive and non-primitive type refs, fix #91
  • 871c026 Check for content equality in mapping inference, fix #90
  • 44a7e55 Resolve IS_VARARGS content of parameters, fix #88
  • 0a8828c Always add virtual nodes in class rep map, fix #83
  • 1bebf1f Fix broken isRootConflict method
  • 69b5816 Merge content of both pred and succ, fix #82
  • d316fd7 Use line-based merge if merge has no types, fix #78
  • c804c3c Avoid mapping annotation values to non-annotation values, fix #79
  • 884d590 Never force wildcard generics, fix #77
  • cb356a3 Fix indexing bug in textual merge
  • cbb7d7d Fix merging of annotation values, fix #74
  • b562729 Only map nodes of the exact same type #57
  • 1092688 Throw exception on move conflict #57
  • 9484de2 Don't unset source position twice
  • ee79bb2 Process comments explicitly in PrinterPreprocessor, fix #72
  • 48728a2 Print operator conflicts #69
  • 4707766 Revert " Add "magic fix" for caching issue #65"
  • 6c3b710 Don't skip PCSes already in conflicts, fix #65
  • 211383c Properly handle modifier merge conflict #43
  • 412d688 Resolve content for default method #43
  • 12f3a9d Properly pretty-print merge conflict on super/extends of wildcard #43
  • c0aebe4 Properly merge implicitness of values #43
  • 39b6887 Add "magic fix" for caching issue #65
  • 9505e8a Re-add setting ignore implicit and add a note saying why it is important
  • 5ab6209 Properly resolve the content of comments #35
  • 29990ca Redesign structural conflict handling #55
  • 434eea4 Correctly deal with wildcard bounds, fix #37
  • 2d99e26 Reparse modules in compare after sorting elements to avoid strangeness
  • 609004c Remove named annotation value from test case #49
  • 8699dd7 Don't print implicit values, fix #48
  • 400b1a2 Search for non-empty packages when finding active package, fix #47
  • 9180a14 Also unset source position when sorting type members, fix #40
  • 6cdbf47 Deal with merging of modifiers #36
  • d41d50b Resolve and attach modifiers as "secondary values" #36
  • 00bb5ec Resolve operator kinds in merge, fix #31
  • d966241 Prevent SpoonMapping inferring matches on nodes of different type, fix #32

Documentation

  • bc97538 Add instructions on merge driver configuration
  • 3c8e6df Update link to pre-compiled jar in README