Skip to content

Spike/rewrite maven parser cleanup #850

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 57 commits into from
Aug 3, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
57 commits
Select commit Hold shift + click to select a range
594e734
Add junit-pioneer to assert failing test
fabapp2 Jul 25, 2023
daa19d8
Remove unused member from BuildFileParser
fabapp2 Jul 25, 2023
241595d
Enable test and assert it to fail
fabapp2 Jul 25, 2023
3c6a37d
Migrated members to constants
fabapp2 Jul 25, 2023
835cddd
Add javadoc
fabapp2 Jul 25, 2023
3bb7799
Remove dead code
fabapp2 Jul 25, 2023
adae2cd
Fix parameter name
fabapp2 Jul 25, 2023
3370512
Cleanup and verify parameters in BuildFileParser
fabapp2 Jul 25, 2023
93127a7
Organize imports and tweak javadoc
fabapp2 Jul 25, 2023
a00eb00
Cleaned up MavenExecutor
fabapp2 Jul 25, 2023
bab3fb4
Removed unused method parameter
fabapp2 Jul 25, 2023
4fbcf41
wip: Refactor and cleanup MavenProjectFactory
fabapp2 Jul 25, 2023
2f93bf8
Provide more constructor options for HasAnyTypeReference
fabapp2 Jul 28, 2023
9d95209
Moved DependencyVersionHelper to test-utils and use it in integration…
fabapp2 Jul 28, 2023
618c9c5
Fix local Maven repo path by overwriting in MavenProjectParser
fabapp2 Jul 28, 2023
ae02a68
Add builder to OpenRewriteRecipeAdapterAction
fabapp2 Aug 1, 2023
2bd0593
Refactor and cleanup MavenProjectFactory
fabapp2 Jul 25, 2023
ea0b431
Add link to repo code was taken from
fabapp2 Jul 26, 2023
100198a
Change executed goal
fabapp2 Aug 2, 2023
59bb831
Add local repo to ExecutionContext
fabapp2 Aug 2, 2023
98d579e
Add FIXME
fabapp2 Aug 2, 2023
e520298
Fix method call
fabapp2 Aug 2, 2023
8cc838d
Add FIXME
fabapp2 Aug 2, 2023
80a7a84
Replace PlexusContainerFactory with Provider
fabapp2 Aug 2, 2023
826b4ed
Dependency version as properties
fabapp2 Aug 2, 2023
3069a30
Add Model class for sorted Maven projects
fabapp2 Aug 2, 2023
7348664
WIP: Uae one MavenSession everywhere
fabapp2 Aug 2, 2023
87a2606
cleanup
fabapp2 Aug 3, 2023
20b9abe
Remove MavenProjectFactory it should be taken from sessison
fabapp2 Aug 3, 2023
4c90caa
Replace PlexusContainerFactory with Provider
fabapp2 Aug 3, 2023
06c8588
Run Maven only once
fabapp2 Aug 3, 2023
4f35148
Remove BuildFileGraph
fabapp2 Aug 3, 2023
707416b
Incorporated sbm-utils
fabapp2 Aug 3, 2023
2e8e763
removed comments
fabapp2 Aug 3, 2023
e4fd618
Removed FIXME
fabapp2 Aug 3, 2023
95bdfa4
Removed FIXME
fabapp2 Aug 3, 2023
c260374
Use existing factory
fabapp2 Aug 3, 2023
1ad6c68
RewriteMavenProjectParser uses ParserSettings
fabapp2 Aug 3, 2023
1d94b61
Add GH action
fabapp2 Aug 3, 2023
1967edb
Add testcode
fabapp2 Aug 3, 2023
f78b0ca
Provide more information on failing assertion
fabapp2 Aug 3, 2023
c9cfb2c
Removed parent reference
fabapp2 Aug 3, 2023
0dde77d
Adjust test to assert markers for CI when in GH
fabapp2 Aug 3, 2023
34ce2d6
Add ticks
fabapp2 Aug 3, 2023
d40c539
Fiddle with GH action
fabapp2 Aug 3, 2023
8379dc9
Blank line to trigger build
fabapp2 Aug 3, 2023
46c8b13
Add repositories
fabapp2 Aug 3, 2023
40b8221
Adjust test to assert markers for CI when in GH
fabapp2 Aug 3, 2023
18122cf
Adjust test to assert markers for CI when in GH
fabapp2 Aug 3, 2023
6146663
Adjust test to assert markers for CI when in GH
fabapp2 Aug 3, 2023
db19a1e
Loosen assertion depending on env
fabapp2 Aug 3, 2023
60fcdbd
cleanup
fabapp2 Aug 3, 2023
473b7c5
Adjust test to assert markers for CI when in GH
fabapp2 Aug 3, 2023
8c7291a
Fixing test
fabapp2 Aug 3, 2023
b865daa
Disabling test until they run in container in CI
fabapp2 Aug 3, 2023
75d0880
Disabling test until they run in container in CI
fabapp2 Aug 3, 2023
bc57143
batch mode to avoid download indication
fabapp2 Aug 3, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 24 additions & 0 deletions .github/workflows/build-sbm-support-rewrite.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Build sbm-utils
on:
push:
branches:
- "**"
paths:
- "sbm-support-rewrite/**"
jobs:
build:
runs-on: ubuntu-latest
defaults:
run:
working-directory: sbm-support-rewrite
steps:
- name: build-sbm-support-rewrite
uses: actions/checkout@v3
- name: setup-java
uses: actions/setup-java@v2
with:
distribution: zulu
java-version: 17
cache: maven
- name: build-project
run: mvn --batch-mode clean install
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,7 @@
import org.openrewrite.maven.tree.Dependency;
import org.openrewrite.maven.tree.MavenResolutionResult;
import org.openrewrite.xml.tree.Xml;
import org.springframework.sbm.helpers.DependencyVersionHelper;

import java.nio.file.Path;
import java.util.List;
Expand Down Expand Up @@ -126,7 +127,8 @@ private void verifyJohnzonCoreDependencyIsUpgraded() {

assertThat(johnzonDependency.getClassifier()).isEqualTo("jakarta");
assertThat(johnzonDependency.getArtifactId()).isEqualTo("johnzon-core");
assertThat(johnzonDependency.getVersion()).isEqualTo("1.2.20");
Optional<String> expectedJohnzonVersion = DependencyVersionHelper.getLatestReleaseVersion(johnzonDependency.getGroupId(), johnzonDependency.getArtifactId());
assertThat(johnzonDependency.getVersion()).isEqualTo(expectedJohnzonVersion.get());
}

@NotNull
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
*/
package org.springframework.sbm.common.util;

import org.springframework.sbm.utils.LinuxWindowsPathUnifier;
import org.springframework.util.AntPathMatcher;
import org.springframework.util.PathMatcher;

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
package org.springframework.sbm.engine.precondition;

import org.springframework.core.io.Resource;
import org.springframework.sbm.common.util.LinuxWindowsPathUnifier;
import org.springframework.sbm.utils.LinuxWindowsPathUnifier;
import org.springframework.sbm.common.util.OsAgnosticPathMatcher;
import org.springframework.stereotype.Component;
import org.springframework.util.PathMatcher;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,6 @@

import org.springframework.core.annotation.Order;
import org.springframework.core.io.Resource;
import org.springframework.sbm.common.util.LinuxWindowsPathUnifier;
import org.springframework.stereotype.Component;

import java.nio.file.Path;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,8 @@
package org.springframework.sbm.engine.recipe;

import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.AllArgsConstructor;
import lombok.experimental.SuperBuilder;
import lombok.extern.slf4j.Slf4j;
import org.openrewrite.Recipe;
import org.openrewrite.Result;
Expand All @@ -27,6 +29,8 @@
import java.util.List;

@Slf4j
@AllArgsConstructor
@SuperBuilder
public class OpenRewriteRecipeAdapterAction extends AbstractAction {

private final Recipe recipe;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,15 +15,17 @@
*/
package org.springframework.sbm.java.migration.conditions;

import lombok.*;
import org.springframework.sbm.engine.context.ProjectContext;
import org.springframework.sbm.engine.recipe.Condition;
import lombok.Getter;
import lombok.Setter;

import java.util.List;

@Getter
@Setter
@Builder
@AllArgsConstructor
@NoArgsConstructor
public class HasAnyTypeReference implements Condition {

private List<String> fqTypeNames;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -73,8 +73,10 @@ public List<SourceFile> parse(Path projectDirectory, List<Resource> resources) {
projectMetadata.setMavenSettings(mavenSettings);
MavenExecutionContextView mavenExecutionContext = MavenExecutionContextView.view(executionContext);
mavenExecutionContext.setMavenSettings(mavenSettings);


// if(mavenExecutionContext.getLocalRepository() == null) {
MavenExecutionContextView.view(executionContext).setLocalRepository(new MavenRepository("local", "file://" + Path.of(System.getProperty("user.home")).resolve(".m2/repository"), null, null, false, null, null, null));
// }
// default local repo provided by MavenExecutionContextView misses two '/' in the path
mavenConfigHandler.injectMavenConfigIntoSystemProperties(resources);

@Nullable BuildEnvironment buildEnvironment = null;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@

import lombok.RequiredArgsConstructor;
import org.springframework.core.io.Resource;
import org.springframework.sbm.common.util.LinuxWindowsPathUnifier;
import org.springframework.sbm.utils.LinuxWindowsPathUnifier;
import org.springframework.sbm.common.util.OsAgnosticPathMatcher;
import org.springframework.sbm.project.resource.SbmApplicationProperties;
import org.springframework.sbm.project.resource.ResourceHelper;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
package org.springframework.sbm.actions.spring.xml.include;

import com.fasterxml.jackson.annotation.JsonIgnore;
import org.springframework.sbm.common.util.LinuxWindowsPathUnifier;
import org.springframework.sbm.utils.LinuxWindowsPathUnifier;
import org.springframework.sbm.engine.recipe.AbstractAction;
import org.springframework.sbm.build.MultiModuleApplicationNotSupportedException;
import org.springframework.sbm.engine.context.ProjectContext;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
*/
package org.springframework.sbm.boot.properties;

import org.springframework.sbm.common.util.LinuxWindowsPathUnifier;
import org.springframework.sbm.utils.LinuxWindowsPathUnifier;
import org.springframework.stereotype.Component;

import java.util.regex.Matcher;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@
* limitations under the License.
*/

package org.springframework.sbm.common.util;
package org.springframework.sbm.utils;

import org.springframework.util.StringUtils;

Expand Down
20 changes: 10 additions & 10 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -88,16 +88,16 @@
<artifactId>lombok</artifactId>
<version>${lombok.version}</version>
</dependency>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-http</artifactId>
<version>3.5.3</version>
</dependency>
<dependency>
<groupId>org.apache.maven.resolver</groupId>
<artifactId>maven-resolver-transport-wagon</artifactId>
<version>${resolverVersion}</version>
</dependency>
<!-- <dependency>-->
<!-- <groupId>org.apache.maven.wagon</groupId>-->
<!-- <artifactId>wagon-http</artifactId>-->
<!-- <version>3.5.3</version>-->
<!-- </dependency>-->
<!-- <dependency>-->
<!-- <groupId>org.apache.maven.resolver</groupId>-->
<!-- <artifactId>maven-resolver-transport-wagon</artifactId>-->
<!-- <version>${resolverVersion}</version>-->
<!-- </dependency>-->
<dependency>
<groupId>org.springframework.sbm</groupId>
<artifactId>test-helper</artifactId>
Expand Down
25 changes: 14 additions & 11 deletions sbm-support-rewrite/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,8 @@
<spring-boot.version>3.1.1</spring-boot.version>
<rewrite.version>8.1.6</rewrite.version>
<rewrite-maven-plugin.version>5.3.2</rewrite-maven-plugin.version>
<rewrite-spring.version>5.0.5</rewrite-spring.version>
<sbm.version>0.15.0-SNAPSHOT</sbm.version>
<maven.version>3.9.1</maven.version>
<maven-resolver.version>1.9.7</maven-resolver.version>
<maven-wagon-http.version>3.5.3</maven-wagon-http.version>
Expand Down Expand Up @@ -51,11 +53,6 @@
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>org.springframework.sbm</groupId>
<artifactId>sbm-utils</artifactId>
<version>0.14.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>com.squareup.okhttp3</groupId>
<artifactId>okhttp</artifactId>
Expand Down Expand Up @@ -93,7 +90,7 @@
<dependency>
<groupId>org.openrewrite.recipe</groupId>
<artifactId>rewrite-spring</artifactId>
<version>5.0.5</version>
<version>${rewrite-spring.version}</version>
</dependency>
<dependency>
<groupId>org.openrewrite</groupId>
Expand All @@ -109,11 +106,6 @@
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
Expand Down Expand Up @@ -187,6 +179,17 @@
<artifactId>jaxb-api</artifactId>
<version>2.3.1</version>
</dependency>
<dependency>
<groupId>org.junit-pioneer</groupId>
<artifactId>junit-pioneer</artifactId>
<version>2.0.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>

<build>
Expand Down
Loading