Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
10 changes: 5 additions & 5 deletions gradle.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import { readdirSync } from 'fs';

export const getJSFromFile = async (filename) => {
try {
// const baseGradle = await g2js.parseFile(filename);
const parsedGradleFiles = [];
const files = [];
readdirSync('./', { recursive: true }).forEach((file) => {
Expand Down Expand Up @@ -80,8 +79,8 @@ export const retrieveSimilarGradlePackages = async (parsedGradle, springBootVers

if (defaultVersions.length) {
const declaredPackages = [];
gradleDependenciesWithVersions.forEach((gradleDependency) =>
defaultVersions.forEach((bootPackage) => {
for (const gradleDependency of gradleDependenciesWithVersions) {
for (const bootPackage of defaultVersions) {
if (gradleDependency.group === bootPackage.group && gradleDependency.name === bootPackage.name) {
const existingMatches = declaredPackages.find(
(declaredPackage) => declaredPackage.group === gradleDependency.group && declaredPackage.name === gradleDependency.name,
Expand All @@ -90,10 +89,11 @@ export const retrieveSimilarGradlePackages = async (parsedGradle, springBootVers
declaredPackages.push(
new Package(gradleDependency.group, gradleDependency.name, gradleDependency.version, bootPackage.version),
);
break;
}
}
}),
);
}
}

console.log('Declared Gradle Package Count -', declaredPackages.length);
if (declaredPackages.length) {
Expand Down
30 changes: 19 additions & 11 deletions pom.js
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ export const getPomSpringBootVersion = async (parsedPom) => {
}
}
if (
parsedPom.project?.dependencyManagement?.[0]?.dependencies.dependency.groupId === 'org.springframework.boot' &&
parsedPom.project?.dependencyManagement?.[0]?.dependencies.dependency.artifactId === 'spring-boot-dependencies'
parsedPom.project?.dependencyManagement?.[0]?.dependencies?.dependency?.groupId === 'org.springframework.boot' &&
parsedPom.project?.dependencyManagement?.[0]?.dependencies?.dependency?.artifactId === 'spring-boot-dependencies'
) {
return replaceVariable(parsedPom.project.properties, parsedPom.project.dependencyManagement[0].dependencies.dependency.version);
}
Expand All @@ -120,19 +120,20 @@ export const retrieveSimilarPomPackages = async (parsedPom, springBootVersion) =

if (defaultVersions.length) {
const declaredPackages = [];
pomDependenciesWithVersions.forEach((pomDependency) =>
defaultVersions.forEach((bootPackage) => {
for (const pomDependency of pomDependenciesWithVersions) {
for (const bootPackage of defaultVersions) {
if (pomDependency.groupId === bootPackage.group && pomDependency.artifactId === bootPackage.name) {
const pomVersion = replaceVariable(parsedPom.project.properties, pomDependency.version);
const existingMatches = declaredPackages.find(
(declaredPackage) => declaredPackage.group === pomDependency.groupId && declaredPackage.name === pomDependency.artifactId,
);
if (!existingMatches) {
declaredPackages.push(new Package(pomDependency.groupId, pomDependency.artifactId, pomVersion, bootPackage.version));
break;
}
}
}),
);
}
}

console.log('Declared Pom Package Count -', declaredPackages.length);
if (declaredPackages.length) {
Expand All @@ -154,13 +155,14 @@ export const retrieveSimilarPomProperties = async (parsedPom, springBootVersion)

if (defaultProperties.length) {
const declaredProperties = [];
pomProperties.forEach((pomProperty) =>
defaultProperties.forEach((defaultProperty) => {
for (const pomProperty of pomProperties) {
for (const defaultProperty of defaultProperties) {
if (pomProperty === defaultProperty.property) {
declaredProperties.push(pomProperty);
break;
}
}),
);
}
}

console.log('Declared Pom Properties Count -', declaredProperties.length);
if (declaredProperties.length) {
Expand Down Expand Up @@ -190,8 +192,14 @@ const getSpringDefaultProperties = async (springBootVersion) => {

const replaceVariable = (properties, version) => {
if (String(version).startsWith('${')) {
const flatProperties = {};
properties.forEach((property) => {
for (const [key, value] of Object.entries(property)) {
flatProperties[key] = value;
}
});
const variableName = version.replace('${', '').replace('}', '');
return properties[0][variableName];
return flatProperties[variableName];
}
return version;
};
Expand Down