Spoon v7.2.0 Release Notes
Release Date: 2018-12-04 // over 5 years ago-
π New features
- β Add CtImportVisitor. (PR: #2730)
- β Add CtTypeReference#canAccess(CtTypeMember). (PR: #2815)
- AllTypeMembersFunction has new mode SKIP_PRIVATE. (PR: #2803)
- β Add support for javadoc inline tags. (PR: #2802)
- β Add encoding detection callback. (PR: #2788)
- EarlyTerminatingScanner can scan content of compilation units. (PR: #2793)
- β Add assertCtElementEquals. (PR: #2767)
- β Add CtAbstractImportVisitor. (PR: #2764)
- β Add CtTypeReference#implicitParent. (PR: #2805)
- β Add CtComment#getRawContent(). (PR: #2746)
- π New CtTypeMemberWildcardImportReference for
import package.Type.*
. (PR: #2731) - CtScannerListener knows role of scanned element. (PR: #2739)
- β Add CtCompilationUnit for future import and sniper improvements. (PR: #2702)
- π Use Apache Common Compressor API to [de]compress serialized models. (PR: #2165)
- β Add metamodel concept CtPackageDeclaration. (PR: #2707)
- β Add support for Fernflower for decompilation. (PR: #2668)
- β Add support for transformation at load-time in the JVM. (PR: #2645)
π Bug Fixes
- β CtQueryImpl#detectTargetClassFromCCE, FilterTest#testInvalidQueryStep: Adapt parsing of ClassCastException message which has changed in oracle jdk 11. (PR: #2787)
- β FieldAccessTest: Adapt FieldAccessTest to oracle jdk 11/jdt changes. (PR: #2789)
- β MainTest: Quickfix for Travis 10min timeout. (PR: #2667)
- doc: Explain the different kinds of pull-requests. (PR: #2647)
- π documentation: Pattern.md. (PR: #2735)
- π javadoc: Replace deprecated by better javadoc. (PR: #2663)
- π¨ printer: Add space before
else
ofif
statement. (PR: #2679) - β test
- Modifiers of enum members. (PR: #2630)
- One can call getModifiers on ".class" of "Aclass.class". (PR: #2776)
- π Fix incomplete behavior: Javadoc#setContent should parse tags. (PR: #2765)
- π Parsing of java version not starting with "1." in pom.xml. (PR: #2729)
- π¦ CtPackageDeclaration has a valid source position. (PR: #2760)
- π JDT spoon compiler builds imports and then comments. (PR: #2807)
- Broken link in papers.md. (PR: #2749)
- CtImport position includes its comment. (PR: #2810)
- PatternMatcher ignores isImplicit. (PR: #2726)
- CtExecutableReference cannot use CtTypeParameterReference. (PR: #2725)
- β¬οΈ Upgrade insecure commons-compress to latest version. (PR: #2717)
- π Fix comment of CtAnnotation value. (PR: #2587)
- MetamodelProperty#containerKindOf knows Collection. (PR: #2705)
- π² Invalid error log message in ContextBuilder#getVariableDeclaration. (PR: #2677)
- π¦ CtPackageDeclaration position doesn't include top file comment. (PR: #2811)
- π¨ Sniper printer leaves when no more child tokens. (PR: #2808)
- π ChangeCollector detects changes in CtCompilationUnit too. (PR: #2794)
- π Use Environment encoding when writing files on disk. (PR: #2796)
- π Fix invalid if model with empty statements in then/else branch. (PR: #2733)
π Documentation
- π Improve documentation about release process. (PR: #2650)
- β Remove all hard coded version numbers to simplify release. (PR: #2786)
- Spoon-decompiler is not spoon-bytecode. (PR: #2784)
- Getting started for external dependency. (PR: #2752)
- π Fix broken link in doc. (PR: #2743)
- π Fix javadoc in TypeFactory.java. (PR: #2688)
- β Remove link to decommissioned Gforge. (PR: #2792)
- β‘οΈ Updated spelling and formatting of path.md page. (PR: #2696)
- β Add missing javadoc for PatternPrinter. (PR: #2689)
- π Fix @link in javadoc. (PR: #2685)
- π Fix contract sentence. (PR: #2691)
- β Add example in path.md. (PR: #2661)
- website: Document IncrementalLauncher. (PR: #2651)
π¨ Refactoring
- π Fix sonarqube - use Java array syntax (not C-like). (PR: #2686)
- π Better handling of SourceFragment in CompilationUnit. (PR: #2806)
- β Sort modifiers in ModelStreamerTest.java. (PR: #2755)
- Excluding decompiler related features from spoon-core. (PR: #2766)
- π¨ GetDocComment uses the same implementation as pretty-printer. (PR: #2775)
- π Improve error message with Spoon testing fluent API. (PR: #2769)
- π In clone code, builder.copy is called first. (PR: #2768)
- π¨ JavaOutputProcessor uses Environment#createPrinter(). (PR: #2759)
- π Better error handling in CtFieldReference#getActualField. (PR: #2754)
- β
Replace
List<? extends Object>
byList<?>
in PatternTest. (PR: #2753) - β Remove redundant cast. (PR: #2700)
- β Remove useless assignment in JDTTreeBuilderHelper.java. (PR: #2690)
- Simplify negation (fix SonarQube). (PR: #2695)
- CtTypeAccess#implicit is derived now. (PR: #2804)
- π Change assertion from assertSame to assertEquals. (PR: #2687)
- β Remove redundant parentheses in PatternBuilder. (PR: #2653)
- β Use static import for asserts in tests. (PR: #2655)
- β Remove redundant 'super' call from SpoonClassFileTransformerTest.java. (PR: #2678)
- SourcePosition#equals should take into account all information. (PR: #2660)
- Replace by . (PR: #2675)
- Flip order of comparison - put literal first to lower risk of NPE. (PR: #2674)
- β Add missing braces to tests. (PR: #2673)
- β Remove deprecated annotation (for sonarqube). (PR: #2665)
- β Add final modifier. (PR: #2664)
- Stream handling in SerializationModelStreamer#load(InputStream). (PR: #2635)
- Replace
length()==0
byisEmpty()
. (PR: #2658)
π Performance
- π .travis.yml: Merge travis builds to fall under 5 builds. (PR: #2782)
- β MainTest: Parallelize execution of testElementToPathToElementEquivalency. (PR: #2694)
- Cache result of CtTypeReference#findClass(). (PR: #2591)
β Tests
- β Remove long logs fof CtGenerationTest which makes CI log unreadable. (PR: #2750)
- β Minimize logs in FilterTest. (PR: #2756)
- β Generic contracts are run only on .testclasses.. (PR: #2716)
- π Use contains instead of indexOf. (PR: #2715)
- β Relax intercession test to prepare #2615. (PR: #2706)
- β Remove redundant cast. (PR: #2704)
- β Relax intercession test to prepare #2615.
- Constructor with this(xxx) replaced by super(xxx)?. (PR: #2680)
- π In tests also, windows's classpath elements are separated by semi column. (PR: #2692)
- π IncrementalLauncherTest: Attempt to remove flackiness on windows CI. (PR: #2745)
Other
- π Do not execute checkstyle for all jobs. (PR: #2799)
- π Maven-javadoc-plugin now supports the doclint parameter. (PR: #2800)
- π Check style doesn't check left curly on lambda. (PR: #2795)
- β‘οΈ Update build.sh to use the correct snapshot repo in Jenkins. (PR: #2777)
- π Change jenkins/build.sh to allow passing maven parameters. (PR: #2723)
- π Fix security issue in dependency. (PR: #2697)
- π Prepares checkstyle checking for src/test/java. (PR: #2611)
- β Remove deprecated methods after release. (PR: #2649)
- π Bump info after release of 7.1.0. (PR: #2648)
Unknown
- π 7.2.0 released on Central.
- Explicit rule on how integrators are chosen. (PR: #2791)
- β AccessFullyQualifiedFieldTest.java. (PR: #2656)
Authors
Name Nb Commit Pavel Vojtechovsky 38 Martin Monperrus 27 Tomasz ZieliΕski 23 Nicolas Harrand 12 Egor Bredikhin 3 Simon Urli 3 Mehdi Kaytoue 1 lodart 1 raymogg 1