dependency-management.gradle 6.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163
  1. if (!project.hasProperty("reactorVersion")) {
  2. ext.reactorVersion = "Dysprosium-SR+"
  3. }
  4. if (!project.hasProperty("springVersion")) {
  5. ext.springVersion = "5.2.+"
  6. }
  7. if (!project.hasProperty("springDataVersion")) {
  8. ext.springDataVersion = "Neumann-SR+"
  9. }
  10. if (!project.hasProperty("kotlinVersion")) {
  11. ext.kotlinVersion = "1.4.+"
  12. }
  13. if (!project.hasProperty("rsocketVersion")) {
  14. ext.rsocketVersion = "1.0.+"
  15. }
  16. if (!project.hasProperty("locksDisabled")) {
  17. dependencyLocking {
  18. lockAllConfigurations()
  19. }
  20. }
  21. ext.openSamlVersion = "3.4.+"
  22. ext.nimbusJoseJwtVersion = '8.+'
  23. dependencies {
  24. management platform("org.springframework:spring-framework-bom:$springVersion")
  25. management platform("io.projectreactor:reactor-bom:$reactorVersion")
  26. management platform("org.springframework.data:spring-data-releasetrain:$springDataVersion")
  27. management platform("org.jetbrains.kotlin:kotlin-bom:$kotlinVersion")
  28. constraints {
  29. management "ch.qos.logback:logback-classic:1.2.+"
  30. management "com.fasterxml.jackson.core:jackson-databind:2.11.+"
  31. management 'com.fasterxml.jackson.datatype:jackson-datatype-jsr310:2.11.+'
  32. management "com.google.appengine:appengine-api-1.0-sdk:$gaeVersion"
  33. management "com.google.appengine:appengine-api-labs:$gaeVersion"
  34. management "com.google.appengine:appengine-api-stubs:$gaeVersion"
  35. management "com.google.appengine:appengine-testing:$gaeVersion"
  36. management "com.google.appengine:appengine:$gaeVersion"
  37. management "com.google.inject:guice:3.0"
  38. management "com.nimbusds:nimbus-jose-jwt:$nimbusJoseJwtVersion"
  39. management "com.nimbusds:oauth2-oidc-sdk:8.+"
  40. management "com.squareup.okhttp3:mockwebserver:3.14.+"
  41. management "com.squareup.okhttp3:okhttp:3.14.+"
  42. management "com.sun.xml.bind:jaxb-core:2.3.+"
  43. management "com.sun.xml.bind:jaxb-impl:2.3.+"
  44. management "com.unboundid:unboundid-ldapsdk:4.0.+"
  45. management "commons-codec:commons-codec:1.14"
  46. management "commons-collections:commons-collections:3.2.+"
  47. management "commons-httpclient:commons-httpclient:3.1.+"
  48. management "commons-logging:commons-logging:1.2"
  49. management "io.projectreactor.tools:blockhound:1.0.+"
  50. management "io.rsocket:rsocket-core:${rsocketVersion}"
  51. management "io.rsocket:rsocket-transport-netty:${rsocketVersion}"
  52. management "javax.annotation:jsr250-api:1.0"
  53. management "javax.servlet.jsp.jstl:javax.servlet.jsp.jstl-api:1.2.+"
  54. management "javax.servlet.jsp:javax.servlet.jsp-api:2.3.+"
  55. management "javax.servlet:javax.servlet-api:4.0.+"
  56. management "javax.validation:validation-api:2.0.+"
  57. management "javax.xml.bind:jaxb-api:2.3.+"
  58. management "junit:junit:4.12"
  59. management "ldapsdk:ldapsdk:4.1"
  60. management "net.sf.ehcache:ehcache:2.10.+"
  61. management "net.sourceforge.htmlunit:htmlunit:2.37.0"
  62. management "net.sourceforge.nekohtml:nekohtml:1.9.+"
  63. management "nz.net.ultraq.thymeleaf:thymeleaf-layout-dialect:2.5.+"
  64. management "opensymphony:sitemesh:2.4.+"
  65. management "org.apache.directory.server:apacheds-core-entry:1.5.5"
  66. management "org.apache.directory.server:apacheds-core:1.5.5"
  67. management "org.apache.directory.server:apacheds-protocol-ldap:1.5.5"
  68. management "org.apache.directory.server:apacheds-protocol-shared:1.5.5"
  69. management "org.apache.directory.server:apacheds-server-jndi:1.5.5"
  70. management "org.apache.directory.shared:shared-ldap:0.9.15"
  71. management "org.apache.httpcomponents:httpclient:4.5.+"
  72. management "org.apache.taglibs:taglibs-standard-jstlel:1.2.+"
  73. management "org.aspectj:aspectjrt:$aspectjVersion"
  74. management "org.aspectj:aspectjtools:$aspectjVersion"
  75. management "org.aspectj:aspectjweaver:$aspectjVersion"
  76. management "org.assertj:assertj-core:3.17.+"
  77. management "org.bouncycastle:bcpkix-jdk15on:1.66"
  78. management "org.bouncycastle:bcprov-jdk15on:1.66"
  79. management "org.eclipse.jetty:jetty-server:9.4.+"
  80. management "org.eclipse.jetty:jetty-servlet:9.4.+"
  81. management "org.eclipse.persistence:javax.persistence:2.2.+"
  82. management "org.hibernate:hibernate-entitymanager:5.4.+"
  83. management "org.hibernate:hibernate-validator:6.1.+"
  84. management "org.hsqldb:hsqldb:2.5.+"
  85. management "org.jasig.cas.client:cas-client-core:3.6.+"
  86. management "org.jasig.cas:cas-server-webapp:4.0.7@war"
  87. management "org.mockito:mockito-core:3.5.+"
  88. management "org.openid4java:openid4java-nodeps:0.9.+"
  89. management "org.opensaml:opensaml-core:$openSamlVersion"
  90. management "org.opensaml:opensaml-saml-api:$openSamlVersion"
  91. management "org.opensaml:opensaml-saml-impl:$openSamlVersion"
  92. management "org.powermock:powermock-api-mockito2:2.0.+"
  93. management "org.powermock:powermock-api-support:2.0.+"
  94. management "org.powermock:powermock-core:2.0.+"
  95. management "org.powermock:powermock-module-junit4-common:2.0.+"
  96. management "org.powermock:powermock-module-junit4:2.0.+"
  97. management "org.powermock:powermock-reflect:2.0.+"
  98. management "org.python:jython:2.5.+"
  99. management "org.seleniumhq.selenium:htmlunit-driver:2.37.0"
  100. management "org.seleniumhq.selenium:selenium-java:3.141.+"
  101. management "org.seleniumhq.selenium:selenium-support:3.141.+"
  102. management "org.skyscreamer:jsonassert:1.5.+"
  103. management "org.slf4j:jcl-over-slf4j:1.7.+"
  104. management "org.slf4j:log4j-over-slf4j:1.7.+"
  105. management "org.slf4j:slf4j-api:1.7.+"
  106. management "org.springframework.ldap:spring-ldap-core:2.3.+"
  107. management "org.synchronoss.cloud:nio-multipart-parser:1.1.+"
  108. management "org.thymeleaf:thymeleaf-spring5:3.0.+"
  109. }
  110. }
  111. configurations {
  112. all {
  113. resolutionStrategy {
  114. componentSelection {
  115. all { ComponentSelection selection ->
  116. def candidate = selection.getCandidate()
  117. def version = candidate.getVersion().toLowerCase()
  118. if (version.contains("alpha") || version.contains("beta")) {
  119. selection.reject("Rejecting $selection with version $version as alpha/beta")
  120. }
  121. if (candidate.getModule().equals("jsr250-api") && version.equals("1.0-20050927.133100")) {
  122. selection.reject("Rejecting $selection with version $version as invalid version")
  123. }
  124. }
  125. }
  126. }
  127. }
  128. }
  129. /*
  130. NOTE:
  131. The latest `reactor-netty` dependency was split into `reactor-netty-core` and `reactor-netty-http`,
  132. which resulted in the snapshot build to fail. The below configuration fixes it.
  133. Reference:
  134. - https://github.com/spring-projects/spring-security/issues/8909
  135. - https://github.com/reactor/reactor-netty/issues/739#issuecomment-667047117
  136. */
  137. if (reactorVersion.startsWith('20')) {
  138. if (reactorVersion.endsWith('SNAPSHOT') || reactorVersion.endsWith('+')) {
  139. ext.reactorLatestVersion = "latest.integration"
  140. } else {
  141. ext.reactorLatestVersion = "latest.release"
  142. }
  143. configurations {
  144. all {
  145. resolutionStrategy {
  146. eachDependency { DependencyResolveDetails details ->
  147. if (details.requested.name == 'reactor-netty') {
  148. details.useTarget("${details.requested.group}:reactor-netty-http:${reactorLatestVersion}")
  149. details.because("reactor-netty is now split into reactor-netty-core and reactor-netty-http")
  150. }
  151. }
  152. }
  153. }
  154. }
  155. }