Skip to content

Release 8.0.0

Compare
Choose a tag to compare
@nharrand nharrand released this 06 Nov 15:07

New features

  • Add new variable refactoring class. (PR: #3162)
  • Add role EMODIFIER for extended modifier. (PR: #3098)
  • CtImportVisitor#visitUnresolvedImport. (PR: #3086)
  • DecompiledResource: Add a SpoonResource that can be used in any launcher. (PR: #3124)
  • SpoonifierVisitor: A visitor that generates the spoon code to recreate a spoon model. (PR: #3105)
  • decompiler: Add support for procyon. (PR: #3123)
  • visualisation
    • Panel added to show Spoon objects' properties. (PR: #3107)
    • Spoon visualiser improvement for accessing JavaDoc. (PR: #3101)
  • spoon-visualisation: Spoon AST visualisation tool. (PR: #3072)

Bug Fixes

  • CreateVariableAssignment now creates a CtVariableWrite. (PR: #3157)
  • Fixes the toString() call on an array. (PR: #3134)
  • CtCompilationUnitImpl: Fix regression after auto-import refactoring. (PR: #3131)
  • Fix regression when rewriting static field access. (PR: #3115)
  • The type of string concatenation is not null. (PR: #3075)
  • (ParentExiter.java): set position for implicit loop body block. (PR: #3084)
  • Fix regression in field accesses of static fields. (PR: #3139)
  • Improve backward compatibility of toString and add toDebugString. (PR: #3099)
  • Don't check modifiers in CtVariable#getDeclaringType. (PR: #3066)
  • Fix regression in pretty printer (default DJPP is fully qualified). (PR: #3132)
  • Fix incorrect model for empty for loop. (PR: #3108)
  • Fix more regressions after auto-import refactoring. (PR: #3127)
  • ToStringWithImports works even with no position. (PR: #3110)
  • Fix regression in auto-import. (PR: #3125)
  • Indeed call the preprocessors in toString/autoimports. (PR: #3103)
  • CtElementImpl#toString: Fix toString for SniperPrinter. (PR: #3147)
  • DefaultJavaPrettyPrinter: Support for inline else if. (PR: #3088)
  • ImportCleaner: Import must be kept when they are used in Javadoc. (PR: #3160)
  • Iterators: Next() first checks hasNext and throws the correct error. (PR: #3164)
  • PositionBuilder: Fix lambda parameters position. (PR: #3137)
  • SourceFragmentContext: Visit field reference in import as well. (PR: #3161)
  • SourceOptions: Close the output stream in SourceOptions. (PR: #3089)
  • TypeNameScope: Order of processing LexicalScope elements of Type. (PR: #3085)
  • core: Parsing a one-line class produces correct line numbers. (PR: #3069)
  • import: Fix regression after import refactoring. (PR: #3149)
  • pom: Update/add license header in poms. (PR: #3143)

Documentation

  • Add API documentation to public methods. (PR: #3152)
  • Add archunit to related work in architecture enforcement. (PR: #3146)
  • Improve documentation while preparing the MadridJUG meetup. (PR: #3141)
  • Improve landing page. (PR: #3128)
  • Minor improvement to example page. (PR: #3100)
  • Add example for snippet filtering. (PR: #3062)
  • ROADMAP.md: Roadmap 100% points to issues. (PR: #3119)
  • launcher.md: Improve decompilation doc. (PR: #3130)
  • visualisation: Mention the visualisation tool on the website. (PR: #3102)

Refactoring

  • Use .equals() when comparing Strings and Boxed types. (PR: #3165)
  • Rename internal method with particularly confusing name. (PR: #3109)
  • Handling of imports in pretty printer. (PR: #2683)
  • Decompiler: Update interface (in preparation for DecompiledResource). (PR: #3122)
  • NoSourcePosition: Applies the null design pattern to compilation units. (PR: #3151)

Authors

Name Nb Commit
Martin Monperrus 30
Nicolas Harrand 14
arno 5
Haris Adzemovic 3
Pavel Vojtechovsky 3
Egor Bredikhin 2
Rhys Compton 1
Muhammet Ali AKBAY 1
Simon Urli 1
Thomas Durieux 1
HectorSM 1
Lionel Seinturier 1