mirror of https://github.com/grpc/grpc-java.git
gradle: Remove version pinning from POMs
The pinning is unreliable in Maven and ignored by Gradle. I'm not at all
convinced that we are pinning/not pinning in appropriate projects. The
pinning also serves less of a purpose since we started encouraging the
BOM and grpc-netty-shaded. Netty's HTTP/2 API has also become somewhat
stable compared to its earlier history. If we notice an up-tick in
version skew, we can reinstate it.
The pinning is annoying in the build.gradle code and causes Maven/Gradle
to download the version list once a day, which can be troublesome to
users unaware of how to tell the tools to work offline.
It also opens our users to platform issues like seen in #10043
and #10086 where Maven Central's version list was incorrectly generated.
Or like #9664 where Gradle Plugin's repository caches packages from
JCenter but the version list is not as cachable so exposed us to JCenter
instability.
This fixes #8357, by way of "we think we won't worry any more." See
90db93b9 when it was originally introduced. And issues
like #8337, #3634.
This commit is contained in:
parent
793fde840a
commit
2cc24a9bda
|
|
@ -95,8 +95,7 @@ publishing {
|
||||||
def dependencyNode = dependenciesNode.appendNode('dependency')
|
def dependencyNode = dependenciesNode.appendNode('dependency')
|
||||||
dependencyNode.appendNode('groupId', dep.group)
|
dependencyNode.appendNode('groupId', dep.group)
|
||||||
dependencyNode.appendNode('artifactId', dep.name)
|
dependencyNode.appendNode('artifactId', dep.name)
|
||||||
def version = (dep.name == 'grpc-netty-shaded') ? '[' + dep.version + ']' : dep.version
|
dependencyNode.appendNode('version', dep.version)
|
||||||
dependencyNode.appendNode('version', version)
|
|
||||||
dependencyNode.appendNode('scope', 'compile')
|
dependencyNode.appendNode('scope', 'compile')
|
||||||
}
|
}
|
||||||
asNode().dependencies[0].replaceNode(dependenciesNode)
|
asNode().dependencies[0].replaceNode(dependenciesNode)
|
||||||
|
|
|
||||||
15
build.gradle
15
build.gradle
|
|
@ -355,21 +355,6 @@ subprojects {
|
||||||
organizationUrl = "https://www.google.com"
|
organizationUrl = "https://www.google.com"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
withXml {
|
|
||||||
if (!(project.name in
|
|
||||||
[
|
|
||||||
"grpc-stub",
|
|
||||||
"grpc-protobuf",
|
|
||||||
"grpc-protobuf-lite",
|
|
||||||
])) {
|
|
||||||
asNode().dependencies.'*'.findAll() { dep ->
|
|
||||||
dep.artifactId.text() in ['grpc-api', 'grpc-core']
|
|
||||||
}.each() { core ->
|
|
||||||
core.version*.value = "[" + core.version.text() + "]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -17,20 +17,3 @@ dependencies {
|
||||||
|
|
||||||
signature libraries.signature.java
|
signature libraries.signature.java
|
||||||
}
|
}
|
||||||
|
|
||||||
publishing {
|
|
||||||
publications {
|
|
||||||
maven(MavenPublication) {
|
|
||||||
pom {
|
|
||||||
withXml {
|
|
||||||
// Since internal APIs are used, pin the version.
|
|
||||||
asNode().dependencies.'*'.findAll() { dep ->
|
|
||||||
dep.artifactId.text() in ['grpc-alts', 'grpc-xds']
|
|
||||||
}.each() { core ->
|
|
||||||
core.version*.value = "[" + core.version.text() + "]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
|
||||||
|
|
@ -111,15 +111,6 @@ publishing {
|
||||||
core.scope*.value = "compile"
|
core.scope*.value = "compile"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// shadow.component() is run after the main build.gradle's withXml
|
|
||||||
pom.withXml {
|
|
||||||
asNode().dependencies.'*'.findAll() { dep ->
|
|
||||||
dep.artifactId.text() in ['grpc-api', 'grpc-core']
|
|
||||||
}.each() { core ->
|
|
||||||
core.version*.value = "[" + core.version.text() + "]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -247,8 +247,7 @@ publishing {
|
||||||
def dependencyNode = dependenciesNode.appendNode('dependency')
|
def dependencyNode = dependenciesNode.appendNode('dependency')
|
||||||
dependencyNode.appendNode('groupId', dep.group)
|
dependencyNode.appendNode('groupId', dep.group)
|
||||||
dependencyNode.appendNode('artifactId', dep.name)
|
dependencyNode.appendNode('artifactId', dep.name)
|
||||||
def version = (dep.name == 'grpc-netty-shaded') ? '[' + dep.version + ']' : dep.version
|
dependencyNode.appendNode('version', dep.version)
|
||||||
dependencyNode.appendNode('version', version)
|
|
||||||
dependencyNode.appendNode('scope', 'compile')
|
dependencyNode.appendNode('scope', 'compile')
|
||||||
}
|
}
|
||||||
asNode().dependencies[0].replaceNode(dependenciesNode)
|
asNode().dependencies[0].replaceNode(dependenciesNode)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue