diff --git a/build.gradle b/build.gradle index 5f679d20821..95ff093ac20 100644 --- a/build.gradle +++ b/build.gradle @@ -124,12 +124,6 @@ ext { names : ['grails-async', 'grails-events'], modules: ['gpars', 'rxjava', 'rxjava2'] ], - snakeyaml: [ - version: snakeyamlVersion, - group : 'org.yaml', - names: ['snakeyaml'], - modules: [''] - ], spock: [ version: spockVersion, group : 'org.spockframework', @@ -239,8 +233,8 @@ allprojects { maven { url "https://oss.sonatype.org/content/repositories/snapshots/" } if(groovyVersion.endsWith('-SNAPSHOT')) { maven { - name 'JFrog OSS snapshot repo' - url 'https://oss.jfrog.org/oss-snapshot-local/' + name 'Groovy artifactory snapshots repository' + url 'https://groovy.jfrog.io/artifactory/libs-snapshot-local/' } } } diff --git a/gradle.properties b/gradle.properties index 093aa22f702..01fbce72b62 100644 --- a/gradle.properties +++ b/gradle.properties @@ -31,17 +31,16 @@ methvinDirectoryWatcherVersion=0.18.0 micronautCacheVersion=3.5.0 micronautRuntimeGroovyVersion=3.0.0 micronautSpringVersion=4.5.0 -micronautVersion=3.8.8 +micronautVersion=3.8.5 mongodbJavaDriverVersion=4.5.0 objenesisVersion=3.3 scaffoldingCoreVersion=2.1.0 servletApiVersion=4.0.1 slf4jVersion=1.7.36 -snakeyamlVersion=2.2 spockVersion=2.1-groovy-3.0 -springBootVersion=2.7.10 +springBootVersion=2.7.9 springLoadedVersion=1.2.8.RELEASE -springVersion=5.3.26 +springVersion=5.3.25 testingSupportVersion=2.4.1 testingSupportVersionForTests=2.6.1 tomcatLog4jVersion=8.5.2 diff --git a/grails-bootstrap/build.gradle b/grails-bootstrap/build.gradle index 1b57e9f8453..6d9220c2b6f 100644 --- a/grails-bootstrap/build.gradle +++ b/grails-bootstrap/build.gradle @@ -3,7 +3,7 @@ import org.apache.tools.ant.filters.ReplaceTokens dependencies { api ( "org.codehaus.groovy:groovy-xml:$groovyVersion" ) api ( "org.codehaus.groovy:groovy-templates:$groovyVersion" ) - api "org.yaml:snakeyaml" + api "org.yaml:snakeyaml:1.33" api "io.micronaut:micronaut-inject:$micronautVersion" compileOnly("io.methvin:directory-watcher:$methvinDirectoryWatcherVersion") diff --git a/grails-bootstrap/src/main/groovy/org/grails/config/CodeGenConfig.groovy b/grails-bootstrap/src/main/groovy/org/grails/config/CodeGenConfig.groovy index 12ae8210a5c..6eb21bc4e37 100644 --- a/grails-bootstrap/src/main/groovy/org/grails/config/CodeGenConfig.groovy +++ b/grails-bootstrap/src/main/groovy/org/grails/config/CodeGenConfig.groovy @@ -22,7 +22,6 @@ import groovy.transform.CompileDynamic import groovy.transform.CompileStatic import org.codehaus.groovy.runtime.DefaultGroovyMethods import org.codehaus.groovy.runtime.typehandling.GroovyCastException -import org.yaml.snakeyaml.LoaderOptions import org.yaml.snakeyaml.Yaml import org.yaml.snakeyaml.constructor.SafeConstructor @@ -155,7 +154,7 @@ class CodeGenConfig implements Cloneable, ConfigMap { @CompileDynamic // fails with CompileStatic! void loadYml(InputStream input) { - Yaml yaml = new Yaml(new SafeConstructor(new LoaderOptions())) + Yaml yaml = new Yaml(new SafeConstructor()) for(Object yamlObject : yaml.loadAll(input)) { if(yamlObject instanceof Map) { // problem here with CompileStatic mergeMap((Map)yamlObject) diff --git a/grails-docs/build.gradle b/grails-docs/build.gradle index 72c70ebad4e..1eaaf4aab89 100644 --- a/grails-docs/build.gradle +++ b/grails-docs/build.gradle @@ -9,7 +9,7 @@ dependencies { "org.slf4j:jcl-over-slf4j:$slf4jVersion", "org.apache.ant:ant:$antVersion", 'org.grails:grails-gdoc-engine:1.0.1', - 'org.yaml:snakeyaml:2.2', + 'org.yaml:snakeyaml:1.33', "org.codehaus.groovy:groovy-ant:$groovyVersion" api 'org.asciidoctor:asciidoctorj:2.5.7' diff --git a/grails-docs/src/main/groovy/grails/doc/DocPublisher.groovy b/grails-docs/src/main/groovy/grails/doc/DocPublisher.groovy index e8faf7fe023..1a4fa3b6b52 100644 --- a/grails-docs/src/main/groovy/grails/doc/DocPublisher.groovy +++ b/grails-docs/src/main/groovy/grails/doc/DocPublisher.groovy @@ -24,7 +24,6 @@ import org.apache.commons.logging.LogFactory import org.radeox.api.engine.WikiRenderEngine import org.radeox.engine.context.BaseInitialRenderContext import org.radeox.engine.context.BaseRenderContext -import org.yaml.snakeyaml.LoaderOptions import org.yaml.snakeyaml.Yaml import org.yaml.snakeyaml.constructor.SafeConstructor @@ -266,7 +265,7 @@ class DocPublisher { def legacyLinks = [:] if (legacyLinksFile.exists()) { legacyLinksFile.withInputStream { input -> - legacyLinks = new Yaml(new SafeConstructor(new LoaderOptions())).load(input) + legacyLinks = new Yaml(new SafeConstructor()).load(input) } } @@ -538,7 +537,7 @@ class DocPublisher { } else if(propertiesFile.name.endsWith('.yml')) { propertiesFile.withInputStream { input -> - def ymls = new Yaml(new SafeConstructor(new LoaderOptions())).loadAll(input) + def ymls = new Yaml(new SafeConstructor()).loadAll(input) for(yml in ymls) { if(yml instanceof Map) { def config = yml.grails?.doc diff --git a/grails-docs/src/main/groovy/grails/doc/internal/YamlTocStrategy.groovy b/grails-docs/src/main/groovy/grails/doc/internal/YamlTocStrategy.groovy index 07689b58c4c..fec54559155 100644 --- a/grails-docs/src/main/groovy/grails/doc/internal/YamlTocStrategy.groovy +++ b/grails-docs/src/main/groovy/grails/doc/internal/YamlTocStrategy.groovy @@ -1,6 +1,5 @@ package grails.doc.internal -import org.yaml.snakeyaml.LoaderOptions import org.yaml.snakeyaml.Yaml import org.yaml.snakeyaml.constructor.SafeConstructor @@ -8,7 +7,7 @@ import org.yaml.snakeyaml.constructor.SafeConstructor * Class representing a Grails user guide table of contents defined in YAML. */ class YamlTocStrategy { - private final parser = new Yaml(new SafeConstructor(new LoaderOptions())) + private final parser = new Yaml(new SafeConstructor()) private resourceChecker private String ext = ".gdoc" diff --git a/grails-shell/src/main/groovy/org/grails/cli/gradle/cache/MapReadingCachedGradleOperation.groovy b/grails-shell/src/main/groovy/org/grails/cli/gradle/cache/MapReadingCachedGradleOperation.groovy index fa0adaef5cc..b1460c97847 100644 --- a/grails-shell/src/main/groovy/org/grails/cli/gradle/cache/MapReadingCachedGradleOperation.groovy +++ b/grails-shell/src/main/groovy/org/grails/cli/gradle/cache/MapReadingCachedGradleOperation.groovy @@ -20,7 +20,6 @@ import groovy.transform.CompileStatic import groovy.transform.InheritConstructors import org.gradle.tooling.ProjectConnection import org.yaml.snakeyaml.DumperOptions -import org.yaml.snakeyaml.LoaderOptions import org.yaml.snakeyaml.Yaml import org.yaml.snakeyaml.constructor.SafeConstructor import org.yaml.snakeyaml.representer.Representer @@ -38,7 +37,7 @@ abstract class MapReadingCachedGradleOperation extends CachedGradleOperation @Override Map readFromCached(File f) { def map = (Map) f.withReader { BufferedReader r -> - new Yaml(new SafeConstructor(new LoaderOptions())).load(r) + new Yaml(new SafeConstructor()).load(r) } Map newMap = [:] @@ -62,7 +61,7 @@ abstract class MapReadingCachedGradleOperation extends CachedGradleOperation return [(key):val.toString()] } } - new Yaml(new SafeConstructor(new LoaderOptions()), new Representer(options), options).dump(toWrite, writer) + new Yaml(new SafeConstructor(), new Representer(), options).dump(toWrite, writer) } } diff --git a/grails-shell/src/main/groovy/org/grails/cli/profile/AbstractProfile.groovy b/grails-shell/src/main/groovy/org/grails/cli/profile/AbstractProfile.groovy index d3c1f1994b6..f47c9cb1fd6 100644 --- a/grails-shell/src/main/groovy/org/grails/cli/profile/AbstractProfile.groovy +++ b/grails-shell/src/main/groovy/org/grails/cli/profile/AbstractProfile.groovy @@ -33,7 +33,6 @@ import org.grails.cli.profile.commands.DefaultMultiStepCommand import org.grails.cli.profile.commands.script.GroovyScriptCommand import org.grails.config.NavigableMap import org.grails.io.support.Resource -import org.yaml.snakeyaml.LoaderOptions import org.yaml.snakeyaml.Yaml import org.yaml.snakeyaml.constructor.SafeConstructor @@ -111,7 +110,7 @@ abstract class AbstractProfile implements Profile { protected void initialize() { def profileYml = profileDir.createRelative("profile.yml") - Map profileConfig = new Yaml(new SafeConstructor(new LoaderOptions())).> load(profileYml.getInputStream()) + Map profileConfig = new Yaml(new SafeConstructor()).> load(profileYml.getInputStream()) name = profileConfig.get("name")?.toString() description = profileConfig.get("description")?.toString() ?: '' @@ -141,7 +140,7 @@ abstract class AbstractProfile implements Profile { else if(fileName.endsWith('.yml')) { def yamlCommand = profileDir.createRelative("commands/$fileName") if(yamlCommand.exists()) { - Map data = new Yaml(new SafeConstructor(new LoaderOptions())).load(yamlCommand.getInputStream()) + Map data = new Yaml(new SafeConstructor()).load(yamlCommand.getInputStream()) Command cmd = new DefaultMultiStepCommand(clsName.toString(), this, data) Object minArguments = data?.minArguments cmd.minArguments = minArguments instanceof Integer ? (Integer)minArguments : 1 diff --git a/grails-shell/src/main/groovy/org/grails/cli/profile/DefaultFeature.groovy b/grails-shell/src/main/groovy/org/grails/cli/profile/DefaultFeature.groovy index b5e14277d84..59fba494508 100644 --- a/grails-shell/src/main/groovy/org/grails/cli/profile/DefaultFeature.groovy +++ b/grails-shell/src/main/groovy/org/grails/cli/profile/DefaultFeature.groovy @@ -22,7 +22,6 @@ import groovy.transform.ToString import org.eclipse.aether.graph.Dependency import org.grails.config.NavigableMap import org.grails.io.support.Resource -import org.yaml.snakeyaml.LoaderOptions import org.yaml.snakeyaml.Yaml import org.yaml.snakeyaml.constructor.SafeConstructor @@ -51,7 +50,7 @@ class DefaultFeature implements Feature { this.name = name this.location = location def featureYml = location.createRelative("feature.yml") - Map featureConfig = new Yaml(new SafeConstructor(new LoaderOptions())).>load(featureYml.getInputStream()) + Map featureConfig = new Yaml(new SafeConstructor()).>load(featureYml.getInputStream()) configuration.merge(featureConfig) def dependenciesConfig = configuration.get("dependencies") diff --git a/grails-shell/src/main/groovy/org/grails/cli/profile/commands/factory/YamlCommandFactory.groovy b/grails-shell/src/main/groovy/org/grails/cli/profile/commands/factory/YamlCommandFactory.groovy index 02a71a73e20..15c37483c2c 100644 --- a/grails-shell/src/main/groovy/org/grails/cli/profile/commands/factory/YamlCommandFactory.groovy +++ b/grails-shell/src/main/groovy/org/grails/cli/profile/commands/factory/YamlCommandFactory.groovy @@ -22,7 +22,6 @@ import org.grails.cli.profile.Command import org.grails.cli.profile.Profile import org.grails.cli.profile.commands.DefaultMultiStepCommand import org.grails.io.support.Resource -import org.yaml.snakeyaml.LoaderOptions import org.yaml.snakeyaml.Yaml import org.yaml.snakeyaml.constructor.SafeConstructor @@ -37,7 +36,7 @@ import java.util.regex.Pattern */ @CompileStatic class YamlCommandFactory extends ResourceResolvingCommandFactory { - protected Yaml yamlParser=new Yaml(new SafeConstructor(new LoaderOptions())) + protected Yaml yamlParser=new Yaml(new SafeConstructor()) // LAX parser for JSON: http://mrhaki.blogspot.ie/2014/08/groovy-goodness-relax-groovy-will-parse.html protected JsonSlurper jsonSlurper = new JsonSlurper().setType(JsonParserType.LAX)