@@ -23,46 +23,109 @@ val isReleaseVersion = !version.toString().endsWith("SNAPSHOT")
2323// See https://github.com/gradle/gradle/issues/16708
2424val catalog = libs
2525
26- fun replaceVersionInArtifact (ver : String ) {
27- ant.withGroovyBuilder {
28- " replaceregexp" (
29- " match" to """ (private static final String VERSION = ")[^"]*(")""" ,
30- " replace" to " \\ 1${ver} \\ 2" ,
31- " encoding" to encoding,
32- " flags" to " g"
33- ) {
34- " fileset" (" dir" to " ." ) {
35- " include" (" name" to " **/Artifact.java" )
26+ data class Replacement (
27+ val match : String ,
28+ val replace : String ,
29+ val dir : String = " ." ,
30+ val file : String ,
31+ )
32+
33+ fun replace (replacements : List <Replacement >) {
34+ replacements.forEach { r ->
35+ ant.withGroovyBuilder {
36+ " replaceregexp" (
37+ buildMap {
38+ put(" match" , r.match)
39+ put(" replace" , r.replace)
40+ put(" encoding" , encoding)
41+ put(" flags" , " g" )
42+ }
43+ ) {
44+ " fileset" (" dir" to r.dir) {
45+ " include" (" name" to r.file)
46+ }
3647 }
3748 }
3849 }
3950}
4051
52+ fun replaceVersionInArtifact (ver : String ) {
53+ val replacement = Replacement (
54+ """ (private static final String VERSION = ")[^"]*(")""" ,
55+ " \\ 1${ver} \\ 2" ,
56+ file = " **/Artifact.java" ,
57+ )
58+ replace(listOf (replacement))
59+ }
60+
4161fun replaceVersionInDocs (ver : String ) {
42- ant.withGroovyBuilder {
43- " replaceregexp" (
44- " match" to """ ("org.seasar.doma:doma-(core|kotlin|processor|slf4j|template)?:)[^"]*(")""" ,
45- " replace" to " \\ 1${ver} \\ 3" ,
46- " encoding" to encoding,
47- " flags" to " g"
48- ) {
49- " fileset" (" dir" to " ." ) {
50- " include" (" name" to " README.md" )
51- }
52- }
53- }
54- ant.withGroovyBuilder {
55- " replaceregexp" (
56- " match" to """ (<doma.version>)[^<]*(</doma.version>)""" ,
57- " replace" to " \\ 1${ver} \\ 2" ,
58- " encoding" to encoding,
59- " flags" to " g"
60- ) {
61- " fileset" (" dir" to " ." ) {
62- " include" (" name" to " README.md" )
63- }
64- }
65- }
62+ val replacements = listOf (
63+ // README.md replacements
64+ Replacement (
65+ """ ("org.seasar.doma:doma-(core|kotlin|processor|slf4j|template)?:)[^"]*(")""" ,
66+ " \\ 1${ver} \\ 3" ,
67+ file = " README.md" ,
68+ ),
69+ Replacement (
70+ """ (<doma.version>)[^<]*(</doma.version>)""" ,
71+ " \\ 1${ver} \\ 2" ,
72+ file = " README.md" ,
73+ ),
74+ Replacement (
75+ """ (id\("org.domaframework.doma.compile"\) version ")[^"]*(")""" ,
76+ " \\ 1${catalog.plugins.doma.compile.get().version} \\ 2" ,
77+ file = " README.md" ,
78+ ),
79+ Replacement (
80+ " (\\ |\\ s*H2 Database\\ s*\\ |\\ s*)[^\\ s]*(\\ s*\\ |)" ,
81+ " \\ 1${catalog.jdbc.h2.get().version} \\ 2" ,
82+ file = " README.md" ,
83+ ),
84+ Replacement (
85+ " (\\ |\\ s*SQLite\\ s*\\ |\\ s*)[^\\ s]*(\\ s*\\ |)" ,
86+ " \\ 1${catalog.jdbc.sqlite.get().version} \\ 2" ,
87+ file = " README.md" ,
88+ ),
89+
90+ // conf.py replacements
91+ Replacement (
92+ " ('doma_version'\\ s*:\\ s*')[^']*(')" ,
93+ " \\ 1${ver} \\ 2" ,
94+ dir = " docs" ,
95+ file = " conf.py" ,
96+ ),
97+ Replacement (
98+ " ('doma_compile_version'\\ s*:\\ s*')[^']*(')" ,
99+ " \\ 1${catalog.plugins.doma.compile.get().version} \\ 2" ,
100+ dir = " docs" ,
101+ file = " conf.py" ,
102+ ),
103+ Replacement (
104+ " ('doma_codegen_version'\\ s*:\\ s*')[^']*(')" ,
105+ " \\ 1${catalog.plugins.doma.codegen.get().version} \\ 2" ,
106+ dir = " docs" ,
107+ file = " conf.py" ,
108+ ),
109+ Replacement (
110+ " ('eclipse_apt_version'\\ s*:\\ s*')[^']*(')" ,
111+ " \\ 1${catalog.plugins.eclipse.apt.get().version} \\ 2" ,
112+ dir = " docs" ,
113+ file = " conf.py" ,
114+ ),
115+ Replacement (
116+ " ('logback_classic_version'\\ s*:\\ s*')[^']*(')" ,
117+ " \\ 1${catalog.logback.classic.get().version} \\ 2" ,
118+ dir = " docs" ,
119+ file = " conf.py" ,
120+ ),
121+ Replacement (
122+ " ('quarkus_doma_version'\\ s*:\\ s*')[^']*(')" ,
123+ " \\ 1${catalog.quarkus.doma.get().version} \\ 2" ,
124+ dir = " docs" ,
125+ file = " conf.py" ,
126+ ),
127+ )
128+ replace(replacements)
66129}
67130
68131allprojects {
0 commit comments