Skip to content

Commit

Permalink
misc fixes and cleanup (#1186)
Browse files Browse the repository at this point in the history
  • Loading branch information
burtbeckwith authored Jan 5, 2023
1 parent 3e6d351 commit c797010
Show file tree
Hide file tree
Showing 50 changed files with 177 additions and 191 deletions.
14 changes: 7 additions & 7 deletions buildSrc/src/main/groovy/io/micronaut/guides/GitDiffUtils.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -23,13 +23,13 @@ class GitDiffUtils {
static boolean onlyImagesOrMarkdownOrAsciidocChanged(List<String> filesChanged) {
filesChanged.every { String filename ->
filename.endsWith('adoc') ||
filename.endsWith('markdown') ||
filename.endsWith('md') ||
filename.endsWith('png') ||
filename.endsWith('jpeg') ||
filename.endsWith('jpg') ||
filename.endsWith('svg') ||
filename.endsWith('gif')
filename.endsWith('markdown') ||
filename.endsWith('md') ||
filename.endsWith('png') ||
filename.endsWith('jpeg') ||
filename.endsWith('jpg') ||
filename.endsWith('svg') ||
filename.endsWith('gif')
}
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -27,20 +27,21 @@ import static io.micronaut.starter.options.Language.GROOVY

@CompileStatic
class GuideAsciidocGenerator {

private static final String INCLUDE_COMMONDIR = 'common:'
private static final String CALLOUT = 'callout:'
private static final String EXTERNAL = 'external:'
private static final Pattern GUIDE_LINK_REGEX = ~/(.*)guideLink:(.*)\[(.*)](.*)/

public static final int DEFAULT_MIN_JDK = 8
public static final String EXCLUDE_FOR_LANGUAGES = ':exclude-for-languages:'
public static final String EXCLUDE_FOR_JDK_LOWER_THAN = ':exclude-for-jdk-lower-than:'
public static final String EXCLUDE_FOR_BUILD = ':exclude-for-build:'
private static final String CLI_MESSAGING = 'create-messaging-app'
private static final String CLI_DEFAULT = 'create-app'
private static final String CLI_GRPC = 'create-grpc-app'
private static final String CLI_FUNCTION = 'create-function-app'
private static final String CLI_CLI = 'create-cli-app'

public static final int DEFAULT_MIN_JDK = 8
public static final String EXCLUDE_FOR_LANGUAGES = ':exclude-for-languages:'
public static final String EXCLUDE_FOR_JDK_LOWER_THAN = ':exclude-for-jdk-lower-than:'
public static final String EXCLUDE_FOR_BUILD = ':exclude-for-build:'
public static final String DEFAULT_APP_NAME = "default"

static void generate(GuideMetadata metadata, File inputDir,
Expand Down Expand Up @@ -399,7 +400,7 @@ class GuideAsciidocGenerator {
String indent = extractIndent(line)

String sourcePath = testFramework ? testPath(appName, name, testFramework) : mainPath(appName, name)
String normalizedSourcePath = (Paths.get(sourcePath)).normalize().toString();
String normalizedSourcePath = (Paths.get(sourcePath)).normalize()
List<String> lines = [
'[source,@lang@]',
'.' + normalizedSourcePath,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
package io.micronaut.guides

import groovy.io.FileType
import groovy.json.JsonSlurper
import groovy.transform.CompileDynamic
import groovy.transform.CompileStatic
Expand All @@ -24,11 +23,11 @@ import java.nio.file.Paths
import java.time.LocalDate
import java.util.regex.Pattern

import static groovy.io.FileType.FILES
import static io.micronaut.core.util.StringUtils.EMPTY_STRING
import static io.micronaut.starter.api.TestFramework.JUNIT
import static io.micronaut.starter.api.TestFramework.SPOCK
import static io.micronaut.starter.options.JdkVersion.JDK_11
import static io.micronaut.starter.options.JdkVersion.JDK_8
import static io.micronaut.starter.options.Language.GROOVY
import static java.nio.file.StandardCopyOption.REPLACE_EXISTING

Expand All @@ -41,7 +40,7 @@ class GuideProjectGenerator implements AutoCloseable {
private static final Logger LOG = LoggerFactory.getLogger(this)
private static final String APP_NAME = 'micronautguide'
private static final String BASE_PACKAGE = 'example.micronaut'
private static final List<JdkVersion> JDK_VERSIONS_SUPPORTED_BY_GRAALVM = [JDK_8, JDK_11]
private static final List<JdkVersion> JDK_VERSIONS_SUPPORTED_BY_GRAALVM = [JDK_11]

private final ApplicationContext applicationContext
private final GuidesGenerator guidesGenerator
Expand Down Expand Up @@ -83,9 +82,9 @@ class GuideProjectGenerator implements AutoCloseable {

List<Category> categories = []
for (String c : config.categories) {
Category cat = Category.values().find {it.toString() == c }
Category cat = Category.values().find { it.toString() == c }
if (cat) {
categories.add(cat)
categories << cat
} else if (publish && !cat) {
throw new GradleException("$configFile.parentFile.name metadata.category=$config.category does not exist in Category enum")
}
Expand All @@ -110,19 +109,20 @@ class GuideProjectGenerator implements AutoCloseable {
minimumJavaVersion: config.minimumJavaVersion,
maximumJavaVersion: config.maximumJavaVersion,
zipIncludes: config.zipIncludes ?: [],
apps: config.apps.collect { it -> new App(
name: it.name,
visibleFeatures: it.features ?: [],
invisibleFeatures: it.invisibleFeatures ?: [],
applicationType: it.applicationType ? ApplicationType.valueOf(it.applicationType.toUpperCase()) : ApplicationType.DEFAULT,
excludeSource: it.excludeSource,
excludeTest: it.excludeTest,
openAPIGeneratorConfig: it.openAPIGeneratorConfig ? new OpenAPIGeneratorConfig(
definitionFile: it.openAPIGeneratorConfig.definitionFile,
generatorName: it.openAPIGeneratorConfig.generatorName ?: OpenAPIGeneratorConfig.GENERATOR_JAVA_MICRONAUT_SERVER,
properties: it.openAPIGeneratorConfig.properties ?: [:],
globalProperties: it.openAPIGeneratorConfig.globalProperties ?: [:]
) : null)
apps: config.apps.collect { it ->
new App(
name: it.name,
visibleFeatures: it.features ?: [],
invisibleFeatures: it.invisibleFeatures ?: [],
applicationType: it.applicationType ? ApplicationType.valueOf(it.applicationType.toUpperCase()) : ApplicationType.DEFAULT,
excludeSource: it.excludeSource,
excludeTest: it.excludeTest,
openAPIGeneratorConfig: it.openAPIGeneratorConfig ? new OpenAPIGeneratorConfig(
definitionFile: it.openAPIGeneratorConfig.definitionFile,
generatorName: it.openAPIGeneratorConfig.generatorName ?: OpenAPIGeneratorConfig.GENERATOR_JAVA_MICRONAUT_SERVER,
properties: it.openAPIGeneratorConfig.properties ?: [:],
globalProperties: it.openAPIGeneratorConfig.globalProperties ?: [:]
) : null)
}
))
}
Expand Down Expand Up @@ -187,7 +187,7 @@ class GuideProjectGenerator implements AutoCloseable {
TestFramework testFramework = guidesOption.testFramework
Language lang = guidesOption.language

for (App app: metadata.apps) {
for (App app : metadata.apps) {
List<String> appFeatures = [] + app.features

if (guidesOption.language == GROOVY ||
Expand Down Expand Up @@ -230,7 +230,7 @@ class GuideProjectGenerator implements AutoCloseable {

if (app.excludeTest) {
for (String testSource : app.excludeTest) {
deleteFile(destination, GuideAsciidocGenerator.testPath(appName, testSource, testFramework), guidesOption)
deleteFile(destination, GuideAsciidocGenerator.testPath(appName, testSource, testFramework), guidesOption)
}
}

Expand Down Expand Up @@ -407,7 +407,7 @@ class GuideProjectGenerator implements AutoCloseable {
}

static void deleteEveryFileButSources(File dir) {
dir.eachFileRecurse(FileType.FILES) { file ->
dir.eachFileRecurse(FILES) { file ->
if (!(file ==~ GROOVY_JAVA_OR_KOTLIN)) {
file.delete()
}
Expand All @@ -416,19 +416,20 @@ class GuideProjectGenerator implements AutoCloseable {
}

static void deleteEmptySubDirectories(File dir) {
for (;;) {
for (; ;) {
if (deleteSubDirectories(dir) == 0) {
break
}
}
}

static int deleteSubDirectories(File dir) {
int deleted = 0

List<File> emptyDirs = []
dir.eachDirRecurse { f ->
if (f.listFiles().length == 0) {
emptyDirs.add(f)
emptyDirs << f
}
}
emptyDirs.each { f ->
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,6 @@ import org.gradle.api.tasks.Copy
import org.gradle.api.tasks.TaskProvider
import org.gradle.api.tasks.bundling.Zip

import java.util.concurrent.atomic.AtomicBoolean
import java.util.function.Predicate
import java.util.stream.Collectors

Expand Down
Original file line number Diff line number Diff line change
@@ -1,11 +1,9 @@
package io.micronaut.guides;
package io.micronaut.guides

import groovy.transform.CompileStatic;

import java.util.List;
import groovy.transform.CompileStatic

@CompileStatic
public class GuidesSection {
class GuidesSection {
Object category
List<GuideMetadata> metadatas
}
Original file line number Diff line number Diff line change
Expand Up @@ -384,15 +384,14 @@ class IndexGenerator {
return 'https://micronaut.io/wp-content/uploads/2020/11/Misc.svg'
}

private static String category(Object cat) {
String html = "<div class='category'>"
html += '<div class="inner">'
html += '<img width="100" style="margin-bottom: 30px" src="' + imageForCategory(cat) + '"/>'
html += '<h1 class="title title_large first-word-bold first-word-break">' + cat + '</h1>'
html += '<div class="underline"></div>'
html += "</div>"
html += "</div>"
html
private static String category(cat) {
"<div class='category'>" +
'<div class="inner">' +
'<img width="100" style="margin-bottom: 30px" src="' + imageForCategory(cat) + '"/>' +
'<h1 class="title title_large first-word-bold first-word-break">' + cat + '</h1>' +
'<div class="underline"></div>' +
"</div>" +
"</div>"
}

static String generateGuidesJsonIndex(File guidesFolder, String metadataConfigName) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -51,12 +51,11 @@ class OpenAPIGenerator {
generator.opts(clientOptInput)
generator.generate()
} catch (GeneratorNotFoundException e) {
throw new GradleException("OpenAPI couldn't find specified generator: \"" +
e.message + "\". Check 'generatorName' property. ")
throw new GradleException("""OpenAPI couldn't find specified generator: "$e.message". Check 'generatorName' property. """)
} catch(NoSuchMethodError e) {
throw new GradleException("OpenAPI generator failed with \"" + e.message + "\"")
throw new GradleException("""OpenAPI generator failed with "$e.message" """)
} catch (Exception e) {
throw new GradleException("OpenAPI generator failed with \"" + e.message + "\"")
throw new GradleException("""OpenAPI generator failed with "$e.message" """)
}
}

Expand All @@ -67,9 +66,9 @@ class OpenAPIGenerator {
BuildTool buildTool,
String destinationPackage) {
CodegenConfigurator configurator = new CodegenConfigurator()
configurator.setInputSpec(definitionFilePath.getPath())
configurator.setGeneratorName(config.generatorName)
configurator.setOutputDir(destination.getPath())
configurator.inputSpec = definitionFilePath.path
configurator.generatorName = config.generatorName
configurator.outputDir = destination.path
config.globalProperties?.each { k, v -> configurator.addGlobalProperty(k, v) }
configurationAdditionalProperties(config, testFramework, buildTool, destinationPackage).each { k, v ->
configurator.addAdditionalProperty(k, v)
Expand All @@ -88,17 +87,16 @@ class OpenAPIGenerator {
additionalProperties.put(PROPERTY_CONTROLLER_PACKAGE, destinationPackage + PACKAGE_CONTROLLER)
additionalProperties.put(PROPERTY_API_PACKAGE, destinationPackage + PACKAGE_API)
additionalProperties.put(PROPERTY_MODEL_PACKAGE, destinationPackage + PACKAGE_MODEL)
config.properties?.each {k, v ->
additionalProperties.put(k, v)
}
config.properties?.each {k, v -> additionalProperties.put(k, v)}
additionalProperties
}

@NonNull
private static Optional<String> buildProperty(@NonNull BuildTool buildTool) {
if (buildTool.isGradle()) {
return Optional.of(GRADLE.toString())
} else if (buildTool == MAVEN) {
}
if (buildTool == MAVEN) {
return Optional.of(MAVEN.toString())
}
Optional.empty()
Expand Down
19 changes: 7 additions & 12 deletions buildSrc/src/main/groovy/io/micronaut/guides/Tag.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ import groovy.transform.Sortable
@Sortable(includes = ['title'])
@CompileStatic
class Tag {

String title
int ocurrence

Expand All @@ -16,24 +17,18 @@ class Tag {
}

String getSlug() {
if ( !title ) {
if (!title) {
return null
}
String str = title
str = str.toLowerCase()
for ( String regex : [' ', '\\[', ']', '\''] ) {
String str = title.toLowerCase()
for (String regex : [' ', '\\[', ']', '\'']) {
str = str.replaceAll(regex, '')
}
str = str.trim()
URLEncoder.encode(str, 'UTF-8')
URLEncoder.encode(str.trim(), 'UTF-8')
}


@Override
public String toString() {
return "Tag{" +
"title='" + title + '\'' +
", ocurrence=" + ocurrence +
'}';
String toString() {
"Tag{title='$title', ocurrence=$ocurrence"
}
}
12 changes: 5 additions & 7 deletions buildSrc/src/main/groovy/io/micronaut/guides/Utils.groovy
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,14 @@ import io.micronaut.starter.options.JdkVersion
import org.gradle.api.GradleException
import org.gradle.api.JavaVersion

import static io.micronaut.starter.options.JdkVersion.JDK_11

@CompileStatic
class Utils {

private static final String SYS_PROP_MICRONAUT_GUIDE = 'micronaut.guide'
private static final String ENV_JDK_VERSION = 'JDK_VERSION'
private static final JdkVersion DEFAULT_JAVA_VERSION = JdkVersion.JDK_11
private static final JdkVersion DEFAULT_JAVA_VERSION = JDK_11

static String singleGuide() {
System.getProperty(SYS_PROP_MICRONAUT_GUIDE)
Expand All @@ -37,12 +39,8 @@ class Utils {

static boolean skipBecauseOfJavaVersion(GuideMetadata metadata) {
int jdkVersion = parseJdkVersion().majorVersion()
if ((metadata.minimumJavaVersion != null && jdkVersion < metadata.minimumJavaVersion) ||
(metadata.maximumJavaVersion != null && jdkVersion > metadata.maximumJavaVersion)) {
return true
} else {
return false
}
return (metadata.minimumJavaVersion != null && jdkVersion < metadata.minimumJavaVersion) ||
(metadata.maximumJavaVersion != null && jdkVersion > metadata.maximumJavaVersion)
}

static JdkVersion parseJdkVersion() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,9 +12,10 @@ import org.gradle.api.tasks.InputDirectory
import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.OutputDirectory
import org.gradle.api.tasks.PathSensitive
import org.gradle.api.tasks.PathSensitivity
import org.gradle.api.tasks.TaskAction

import static org.gradle.api.tasks.PathSensitivity.RELATIVE

@CompileStatic
@CacheableTask
abstract class AsciidocGenerationTask extends DefaultTask {
Expand All @@ -26,7 +27,7 @@ abstract class AsciidocGenerationTask extends DefaultTask {
abstract Property<String> getSlug()

@InputDirectory
@PathSensitive(PathSensitivity.RELATIVE)
@PathSensitive(RELATIVE)
abstract DirectoryProperty getInputDirectory()

@OutputDirectory
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,10 @@ import org.gradle.api.tasks.InputFile
import org.gradle.api.tasks.Internal
import org.gradle.api.tasks.OutputDirectory
import org.gradle.api.tasks.PathSensitive
import org.gradle.api.tasks.PathSensitivity
import org.gradle.api.tasks.TaskAction

import static org.gradle.api.tasks.PathSensitivity.RELATIVE

@CompileStatic
@CacheableTask
abstract class GuidesIndexGradleTask extends DefaultTask {
Expand All @@ -22,7 +23,7 @@ abstract class GuidesIndexGradleTask extends DefaultTask {
GuideMetadata metadata

@InputFile
@PathSensitive(PathSensitivity.RELATIVE)
@PathSensitive(RELATIVE)
abstract RegularFileProperty getTemplate()

@OutputDirectory
Expand Down
Loading

0 comments on commit c797010

Please sign in to comment.