JavaParser v3.19.0 Release Notes

  • ๐Ÿ“œ issues resolved

    โž• Added

    • โž• Adding test case on PrettyPrinter indentation (PR #2950, by @jlerbsc)
    • โž• Adding interface Printable for printer (PR #2971, by @jlerbsc)
    • โšก๏ธ Major update for pretty print, adding interfaces for printer configuration, printer, ... and deprecated old PrettyPrinter API (PR #2974, by @jlerbsc)
    • โž• Adding method descriptor resolution closes #2059 (PR #2976, by @jlerbsc)
    • โž• Adding management of the poly and standalone expression (PR #2994, by @jlerbsc)
    • โž• Add test case for issue #1770 UnaryExpr failing to resolve BITWISE_COMPLEMENT operator
      (PR #3005, by @jlerbsc)
    • Created additional validators to differentiate between enabling standard and preview features
      (PR #3015, by @MysterAitch)
    • โž• Added additional tests to TypeSolvers
      (PR #3046, by @4everTheOne)
    • ๐Ÿ‘Œ Improved JavaParserTypeVariableDeclaration tests
      (PR #3059, by @4everTheOne)
    • ๐Ÿ‘Œ Improved coverage for resolved declarations and fixed inconsistencies between them
      (PR #3062, by @4everTheOne)
    • โž• Additional GenericVisitorWithDefaults and VoidVisitorWithDefaults tests
      (PR #3067, by @4everTheOne)
    • โž• Additional tests for hash code visitors
      (PR #3068, by @4everTheOne)
    • โž• Add unit tests to issue #3074 Unable to delete .jar files after parsing and using symbol solver (re: #3074)
      (PR #3076, by @jlerbsc) ### ๐Ÿ”„ Changed
    • ๐Ÿ”จ Minor refactoring regarding indentation management (PR #2969, by @jlerbsc)
    • ๐Ÿ”จ Minor refactoring regarding indentation management (part2) (PR #2970, by @jlerbsc)
    • ๐Ÿ”จ Minor refactoring moving Indentation class to configuration package - preparation for other refactoring on Printer (PR #2972, by @jlerbsc)
    • โฌ†๏ธ Bump guava from 30.0-jre to 30.1-jre (PR #2977, by @dependabot)
    • ๐Ÿ”จ Refactoring: relocation of boxing/unboxing methods (PR #2983, by @jlerbsc)
    • ๐Ÿ‘Œ Improve boxing/unboxing unit tests and remove useless code in isUnbox... (PR #2984, by @jlerbsc)
    • โฌ†๏ธ Bump jbehave-core from 4.7 to 4.8.1 (PR #2989, by @dependabot)
    • โž• Add JVM memory settings for surefire (seems that forked mode is the default running mode) (PR #2999, by @jlerbsc)
    • ๐Ÿšš Move unit test Issue2592Test because it's not related to symbol solver (PR #3000, by @jlerbsc)
    • ๐Ÿš€ Manage memory on test suite (clear internal cache to release memory) (PR #3001, by @jlerbsc)
    • โœ‚ Remove the PhantomNodeLogic that generates memory issues when LexicalPreservingPrinter is used. Phantom node is now an attribut of each node. This is an optimization of the JP memory usage. (PR #3002, by @jlerbsc)
    • ๐Ÿ‘‰ Make the visit order of ModifierVisitor more consistent. (PR #3011, by @mernst)
    • ๐Ÿ”— Link to the specification, not to a random blog. (PR #3013, by @mernst)
    • ๐Ÿ”จ Minor refactoring change call to getScope().isPresent() to hasScope() (PR #3026, by @jlerbsc)
    • Issue #3050 - Minor improvement to thread safety (PR #3052, by @jlerbsc) ### ๐Ÿ—„ Deprecated
    • ๐Ÿ—„ PhantomNodeLogic is now deprecated, with the logic now being handled by the node itself. (PR #3002, by @jlerbsc) ### ๐Ÿ›  Fixed
    • ๐Ÿ›  Fix issue on pretty configuration change (PR #2979, by @jlerbsc)
    • ๐Ÿ›  Fix trivial poly expression lambda, method reference, and parenthesized expressions (PR #2981, by @jlerbsc)
    • Partially fix the issue #1743 ConditionalExpr resolves to wrong type (PR #2982, by @jlerbsc)
    • Partially fix issue #1743 ConditionalExpr resolves to wrong type - trying to manage reference condition expression but lub (least upper bound) function is not yet implemented (PR #3004, by @jlerbsc)
    • Issue #2987 StackOverflow error (PR #3006, by @jlerbsc)
    • Issue #1774 Ensure the correct type is calculated for all binary expressions and add unary primitive promotion
      (PR #3007, by @jlerbsc)
    • Issue #2995 Cannot resolve ClassOrInterfaceType of nested ObjectCreationExpr
      (PR #3019, by @jlerbsc)
    • Issue #1634 Missing EOL when add imports if the class not exist imports before (PR #3020, by @jlerbsc)
    • Issue #3024 methodCallExpr.resolve() StackOverflowError (PR #3025, by @jlerbsc)
    • ๐Ÿ“œ Issue #3027 Unable to parse class with generic parameter using JavaParserTypeSolver (PR #3029, by @jlerbsc)
    • Issue #3030 NoSuchElementException when solving type (PR #3031, by @4everTheOne)
    • Issue 3028 -- Changed MethodResolutionLogic to deal with multiple candidates with varargs when varargs have not been specified in the call. (PR #3032, by @greggers123)
    • 0๏ธโƒฃ Issue #1834 Improving annotation support: Implement ResolvedAnnotationDeclaration#getDefaultValue() (PR #3055, by @jlerbsc)
    • ๐Ÿšš Issue #3057 Removed redundant definition of method to inherit from super (PR #3058, by @4everTheOne)
    • ๐Ÿ“œ Issue #3074 Unable to delete .jar files after parsing (PR #3075, by @jlerbsc)
    • Issue #3083 Fix choosing the most specific method in case of java.lang.Object argument type (PR #3084, by @jlerbsc)