Skip to content

Spoon 10.1.0

Compare
Choose a tag to compare
@monperrus monperrus released this 12 Apr 07:32
· 1119 commits to master since this release
17e000b

Changelog

New features

  • Support shift left and right operation inside VisitorPartialEvaluator. (PR: #4237)
  • Add support for first class resource in try-with-resource. (PR: #4371)
  • Add support for type parameters on method references. (PR: #4343)

Bug fixes

  • ImportCleaner: Resolve imports of parent types. (PR: #4353)
  • Launcher: NPE in Launcher.prettyprint(). (PR: #4303)
  • MavenLauncher: Maximum recovery from missing libraries. (PR: #4336)
  • record: Valid assignments in record compact constructors. (PR: #4389)
  • Backward compatible modeling of try-with-resource. (PR: #4625)
  • Fix incorrect import. (PR: #4610)
  • Fix qodana warning with proper call to Array.toString(). (PR: #4536)
  • No parentheses for single lambda parameters. (PR: #4448)
  • Escape sequences in text-blocks are kept. (PR: #4409)
  • Fix square bracket printing in array field declarations. (PR: #4436)
  • Correct type reference for ClassLiteralAccess. (PR: #4383)
  • Do not strip super class from qualified name. (PR: #4359)
  • Handle spaces in classpath paths. (PR: #4358)
  • Print square brackets in array initalisation. (PR: #4341)
  • Clone metadata for elements created via template. (PR: #4396)
  • Fix testcases for windows CI. (PR: #4385)
  • Add junit extension for line endings. (PR: #4349)
  • Fix pretty-printing ordering for record parameters. (PR: #4366)
  • Prevent stackoverflow when visiting of cyclic annotation/package structures. (PR: #4356)
  • Prevent removal of static field import. (PR: #4331)
  • Prevent importing classes which are already imported via *. (PR: #4320)
  • Print each resource in CtTryWithResource exactly once and retain separator. (PR: #4309)
  • Lookup absolute path to maven executable. (PR: #4298)
  • Ensure sniper pretty-printer prints modifiers and type separated by a space. (PR: #4296)
  • Removed annotation should not appear in sniper mode. (PR: #4284)
  • Add missing space after modifiers in sniper mode. (PR: #4279)
  • Fix flaky test TestModule.testModuleNames(). (PR: #4286)
  • Correctly print type parameters of generic records. (PR: #4283)

Migration to JUnit5

  • Migrate SMPL tests to JUnit5. (PR: #4598)
  • Migrate dataflow to Junit 5. (PR: #4618)
  • Migrate spoon-control-flow tests to JUnit 5. (PR: #4615)
  • Migrate decompiler to JUnit 5. (PR: #4599)
  • Migrate OneCanCallSetterWithNullParameterizedTest to JUnit 5. (PR: #4555)
  • Migrate InterfaceTest to JUnit 5. (PR: #4556)
  • Migrate TestInterfaceWithoutSetup to JUnit 5. (PR: #4557)
  • Migrate ImportBuilderTest to JUnit 5. (PR: #4562)
  • Migrate TestLabels to JUnit 5. (PR: #4563)
  • Migrate AnonymousInLambdaTest to JUnit 5. (PR: #4564)
  • Migrate SetParentTest to JUnit 5. (PR: #4567)
  • Migrate Maintest to JUnit 5. (PR: #4570)
  • Migrate ContractOnSettersParametrizedTest to JUnit 5. (PR: #4569)
  • Migrate InvocationTest to JUnit 5. (PR: #4558)
  • Migrate AnnotationPositionTest to JUnit 5. (PR: #4559)
  • Migrate SniperPrettyPrinterJavaxTest to JUnit 5. (PR: #4560)
  • Migrate JarTest to JUnit 5. (PR: #4561)
  • Migrate LambdaTest to JUnit 5. (PR: #4565)
  • Migrate InternalTest to JUnit 5. (PR: #4566)
  • Move test Java source to ./src/test/resources/. (PR: #4568)
  • Migrate MethodOverriddingTest to JUnit 5. (PR: #4550)
  • Migrate MethodTest to JUnit 5. (PR: #4551)
  • Migrate LoopTest to JUnit 5. (PR: #4552)
  • Migrate UnicodeBugTest to JUnit 5. (PR: #4553)
  • Migrate LiteralTest to JUnit 5. (PR: #4554)
  • Migrate ReplaceParametrizedTest. (PR: #4542)
  • Migrate ParallelProcessorTest to JUnit 5. (PR: #4543)
  • Migrate TestModule to JUnit 5. (PR: #4544)
  • Migrate ModifiersTest to JUnit 5. (PR: #4545)
  • Migrate TypeTest to JUnit 5. (PR: #4546)
  • Migrate BlockTest to JUnit 5. (PR: #4547)
  • Migrate MethodReferenceTest to JUnit 5. (PR: #4549)
  • Migrate FactoryTest to JUnit 5. (PR: #4530)
  • Migrate CUFilterTest to JUnit 5. (PR: #4531)
  • Migrate TypeFactoryTest to JUnit 5. (PR: #4532)
  • Migrate NameScopeTest to JUnit 5. (PR: #4533)
  • Migrate IntercessionTest to JUnit 5. (PR: #4534)
  • Migrate InsertMethodsTest to JUnit 5. (PR: #4535)
  • Migrate InitializerTest to JUnit 5. (PR: #4527)
  • Migrate ConstructorFactoryTest to JUnit 5. (PR: #4513)
  • Migrate CodeFactoryTest to JUnit 5. (PR: #4514)
  • Migrate ClassFactoryTest to JUnit 5. (PR: #4515)
  • Migrate AnnotationFactoryTest to JUnit 5. (PR: #4516)
  • Migrate to ExecutableTest to JUnit 5. (PR: #4517)
  • Migrate ExecutableRefTest to JUnit 5. (PR: #4518)
  • Migrate to ExceptionTest to JUnit 5. (PR: #4519)
  • Migrate EnumsTypeTest to JUnit 5. (PR: #4520)
  • Migrate FluentLauncherTest to JUnit 5. (PR: #4521)
  • Migrate ExecutableFactoryTest to JUnit 5. (PR: #4522)
  • Migrate FieldFactoryTest to JUnit 5. (PR: #4523)
  • Migrate FieldAccessTest to JUnit 5. (PR: #4524)
  • Migrate GenericsTest to JUnit 5. (PR: #4525)
  • Migrate StaticNoOrdered to JUnit 5. (PR: #4526)
  • Migrate RemoveTest to JUnit 5. (PR: #4528)
  • Migrate TopLevelTypeTest to JUnit 5. (PR: #4505)
  • Migrate PackageTest JUnit 5. (PR: #4504)
  • Migrate PositionTest to JUnit 5. (PR: #4503)
  • Migrate TestSourceFragment to JUnit 5. (PR: #4502)
  • Migrate LinesTest to JUnit 5. (PR: #4501)
  • Migrate LoopSniperJavaPrettyPrinterTest to JUnit 5. (PR: #4500)
  • Migrate PrinterTest JUnit 5. (PR: #4499)
  • Migrate VariableReferencesTest to JUnit 5. (PR: #4497)
  • Migrate TestCtBlock to JUnit 5. (PR: #4491)
  • Migrate QualifiedThisRefTest. (PR: #4498)
  • Migrate EvalTest to JUnit 5. (PR: #4495)
  • Migrate DeleteTest to JUnit 5. (PR: #4494)
  • Migrate CtBodyHolderTest to JUnit 5. (PR: #4493)
  • Migrate CtClassTest to JUnit 5. (PR: #4492)
  • Migrate GetBinaryFilesTest to JUnit 5. (PR: #4486)
  • Migrate NewClassTest to JUnit 5. (PR: #4490)
  • Migrate ControlTest to JUnit 5. (PR: #4489)
  • Migrate ConstructorCallTest to JUnit 5. (PR: #4488)
  • Migrate ConditionalTest to JUnit 5. (PR: #4487)
  • Migrate EqualTest to JUnit 5. (PR: #4485)
  • Migrate ParentTest to JUnit 5. (PR: #4506)
  • Migrate NullParentTest to JUnit 5. (PR: #4507)
  • Migrate ParameterTest to JUnit 5. (PR: #4508)
  • Migrate ClassesTest to JUnit 5. (PR: #4465)
  • Migrate ModelStreamerTest to JUnit 5. (PR: #4464)
  • Migrate SerializableTest to JUnit 5. (PR: #4463)
  • Migrate SignatureTest to Junit 5. (PR: #4462)
  • Migrate SnippetTest to JUnit 5. (PR: #4461)
  • Migrate TypeTest to Junit 5. (PR: #4460)
  • Migrate TestCtRole to JUnit 5. (PR: #4466)
  • Migrate VariableAccessTest to Junit 5. (PR: #4469)
  • Migrate ExecutableReferenceTest to Junit 5. (PR: #4471)
  • Migrate CtInheritanceScannerTest to JUnit 5. (PR: #4482)
  • Migrate PathTest to JUnit 5. (PR: #4479)
  • Migrate VariableReferencesModelTest to JUnit 5. (PR: #4476)
  • Migrate TypeReferenceTest to Junit 5. (PR: #4470)
  • Migrate ReferenceQueryTest to Junit 5. (PR: #4468)
  • Migrate ReplaceTest to Junit 5. (PR: #4467)
  • Migrate ProcessingTest to JUnit 5. (PR: #4478)
  • Migrate PropertiesTest to JUnit 5. (PR: #4477)
  • Migrate AnnotationFieldReferenceTest to JUnit 5. (PR: #4475)
  • Migrate CloneReferenceTest to JUnit 5. (PR: #4474)
  • Migrate ElasticsearchStackoverflowTest to JUnit 5. (PR: #4473)
  • Migrate ExecutableReferenceGenericTest to JUnit 5. (PR: #4472)
  • Migrate AnnotationTest to junit 5. (PR: #4415)
  • Migrate AccessTest to Junit 5. (PR: #4438)
  • Migrate AccessFullyQualifiedFieldTest to JUnit 5. (PR: #4439)
  • Migrate SourcePositionTest to JUnit 5. (PR: #4447)
  • Migrate VarArgsTest to JUnit 5. (PR: #4440)
  • Migrate TryCatchTest to JUnit 5. (PR: #4441)
  • Migrate TargetedExpressionTest to JUnit 5. (PR: #4442)
  • Migrate ResourceTest to JUnit 5. (PR: #4443)
  • Migrate ImplicitStaticFieldReferenceTest to JUnit 5. (PR: #4444)
  • Migrate StaticAccessTest to JUnit 5. (PR: #4445)
  • Migrate SpoonifierTest to JUnit 5. (PR: #4446)
  • Migrate AssignmentsEqualsTest to junit 5. (PR: #4424)
  • Migrate ToStringBugTest to Junit 5. (PR: #4422)
  • Migrate VisitorTest to Junit 5. (PR: #4423)
  • Migrate VisibilityTest to Junit 5. (PR: #4425)
  • Migrate ChangeCollectorTest to Junit 5. (PR: #4432)
  • Migrate CompilationTest to Junit 5. (PR: #4433)
  • Migrate TestCompilationUnit to Junit 5. (PR: #4434)
  • Migrate SpoonArchitectureEnforcerTest to Junit 5. (PR: #4430)
  • Migrate NoClasspathTest to Junit 5. (PR: #4431)
  • Migrate LauncherTest to Junit 5. (PR: #4428)
  • Migrate MetamodelTest to Junit 5. (PR: #4429)
  • Migrate ConstructorTest to JUnit 5. (PR: #4435)
  • Migrate CtScannerTest to junit 5. (PR: #4411)
  • Migrate MavenLauncherTest to Junit 5. (PR: #4416)
  • Migrate AnnotationValuesTest to Junit 5. (PR: #4418)
  • Migrate APITest to Junit 5. (PR: #4420)
  • Migrate FileSystemFolderTest to junit 5. (PR: #4419)
  • Migrate OutputTypeTest to Junit 5. (PR: #4417)
  • Migrate AnnotationLoopTest to junit 5. (PR: #4414)
  • Migrate TreeBuilderCompilerTest to junit 5. (PR: #4413)
  • Migrate CtVisitorTest to junit 5. (PR: #4412)
  • Migrate CloneTest to Junit 5. (PR: #4401)
  • Migrate CtTypeInformationTest to Junit 5. (PR: #4402)
  • Migrate GenerateParentlessPackageTest to junit 5. (PR: #4403)
  • Migrate CtBFSIteratorTest to junit 5. (PR: #4404)
  • Migrate CtInheritanceScannerMethodsTest to junit 5. (PR: #4405)
  • Migrate CtIteratorTest to junit 5. (PR: #4406)
  • Migrate to junit 5. (PR: #4398)
  • Migrate CompilationUnitPrintTest to junit 5. (PR: #4400)
  • Refactor StringLiteralTest to Junit 5. (PR: #4390)
  • Migrate UnknownDeclarationTest to junit 5. (PR: #4392)

Dependencies

  • Update dependency com.fasterxml.jackson.core:jackson-databind to v2.13.2. (PR: #4632)
  • Update dependency org.bitbucket.mstrobel:procyon-compilertools to v0.6.0. (PR: #4620)
  • Update dependency org.slf4j:slf4j-api to v1.7.36. (PR: #4592)
  • Update dependency through2 to v4. (PR: #4459)
  • Update dependency org.slf4j:slf4j-api to v1.7.35. (PR: #4574)
  • Update dependency org.apache.maven.plugins:maven-dependency-plugin to v3.3.0. (PR: #4639)
  • Update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.10.1. (PR: #4638)
  • Update dependency gradle to v7.4.1. (PR: #4635)
  • Update dependency ch.qos.logback:logback-classic to v1.2.11. (PR: #4631)
  • Update mockito monorepo to v4.4.0. (PR: #4634)
  • Update actions/checkout action to v3. (PR: #4630)
  • Update dependency com.google.guava:guava to v31.1-jre. (PR: #4629)
  • Update actions/setup-python action to v3. (PR: #4628)
  • Update actions/setup-java action to v3. (PR: #4627)
  • Update dependency org.junit.jupiter:junit-jupiter to v5.8.2. (PR: #4622)
  • Delete junit 4 dependency. (PR: #4619)
  • Update dependency org.sonatype.plugins:nexus-staging-maven-plugin to v1.6.11. (PR: #4609)
  • Update dependency org.sonatype.plugins:nexus-staging-maven-plugin to v1.6.10. (PR: #4597)
  • Update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.10.0. (PR: #4602)
  • Update dependency org.apache.maven.plugins:maven-javadoc-plugin to v3.3.2. (PR: #4596)
  • Update dependency gradle to v7.4. (PR: #4590)
  • Update actions/setup-python action to v2.3.2. (PR: #4586)
  • Update jetbrains/qodana-action action to v4.2.5. (PR: #4583)
  • Update jetbrains/qodana-action action to v4.2.4. (PR: #4580)
  • Update mockito monorepo to v4.3.1. (PR: #4578)
  • Update mockito monorepo to v4.3.0. (PR: #4572)
  • Update dependency org.slf4j:slf4j-api to v1.7.33. (PR: #4496)
  • Update jetbrains/qodana-action action to v4.2.3. (PR: #4511)
  • Update dependency com.mysema.querydsl:querydsl-core to v3.7.4. (PR: #4450)
  • Update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.9.0. (PR: #4481)
  • Update dependency org.apache.maven.plugins:maven-jar-plugin to v3.2.2. (PR: #4483)
  • Update actions/checkout action to v2.4.0. (PR: #4449)
  • Update dependency org.apache.maven.plugins:maven-compiler-plugin to v3.8.1. (PR: #4453)
  • Update dependency junit:junit to v4.13.2. (PR: #4452)
  • Update dependency org.apache.maven.plugins:maven-jar-plugin to v3.2.1. (PR: #4426)
  • Update plugin com.github.ben-manes.versions to v0.41.0. (PR: #4399)
  • Update jetbrains/qodana-action action to v4.2.2. (PR: #4397)
  • Update plugin com.github.ben-manes.versions to v0.40.0. (PR: #4391)
  • Update plugin com.github.johnrengelman.shadow to v7.1.2. (PR: #4388)
  • Update jetbrains/qodana-action action to v4.2.1. (PR: #4375)
  • Update dependency org.apache.maven.wagon:wagon-ssh to v3.5.1. (PR: #4386)
  • Update dependency ch.qos.logback:logback-classic to v1.2.10. (PR: #4379)
  • Update dependency org.apache.maven.wagon:wagon-ssh to v3.5.0. (PR: #4378)
  • Update dependency gradle to v7.3.3. (PR: #4376)
  • Update actions/setup-java action to v2.5.0. (PR: #4372)
  • Update mockito monorepo to v4.2.0. (PR: #4360)
  • Update dependency ch.qos.logback:logback-classic to v1.2.9. (PR: #4364)
  • Update dependency gradle to v7.3.2. (PR: #4355)
  • Update dependency ch.qos.logback:logback-classic to v1.2.8. (PR: #4352)
  • Update plugin com.github.johnrengelman.shadow to v7.1.1. (PR: #4354)
  • Update dependency org.benf:cfr to v0.152. (PR: #4347)
  • Update dependency org.eclipse.jdt:org.eclipse.jdt.core to v3.28.0. (PR: #4338)
  • Update dependency gradle to v7.3.1. (PR: #4321)
  • Update junit5 monorepo to v5.8.2. (PR: #4314)
  • Update actions/setup-java action to v2.4.0. (PR: #4316)
  • Update actions/setup-python action to v2.3.1. (PR: #4317)
  • Update mockito monorepo to v4.1.0. (PR: #4299)
  • Update actions/cache action to v2.1.7. (PR: #4304)
  • Update actions/setup-python action to v2.3.0. (PR: #4293)
  • Update dependency org.jetbrains:annotations to v23. (PR: #4276)
  • Update dependency ch.qos.logback:logback-classic to v1.2.7. (PR: #4280)
  • Update dependency gradle to v7.3. (PR: #4273)
  • Update actions/checkout commit hash to ec3a7ce. (PR: #4266)
  • Update actions/checkout action to v2.4.0. (PR: #4267)
  • Update plugin se.patrikerdes.use-latest-versions to v0.2.18. (PR: #4261)
  • Update dependency com.google.code.gson:gson to v2.8.9. (PR: #4260)
  • Update dependency fr.inria.gforge.spoon:spoon-core to v10. (PR: #4257)
  • Update dependency commons-cli:commons-cli to v1.5.0. (PR: #4258)
  • Use range for dependency maven-model. (PR: #4252)

Authors

Name Nb Commit
MartinWitt 180
renovate[bot] 68
Aman Sharma 15
Axel Howind 8
Martin Monperrus 8
Hannes Greule 4
Simon Larsén 4
Henry Chu 2
Nicolas Harrand 2
Thimo Seitz 1
Ceki Gülcü 1
Anton Lyxell 1
intrigus-lgtm 1
César Soto Valero 1
I-Al-Istannen 1
Rijnard van Tonder 1
Viktor 1