]>
Commit | Line | Data |
---|---|---|
1d09f67e TL |
1 | # Licensed to the Apache Software Foundation (ASF) under one |
2 | # or more contributor license agreements. See the NOTICE file | |
3 | # distributed with this work for additional information | |
4 | # regarding copyright ownership. The ASF licenses this file | |
5 | # to you under the Apache License, Version 2.0 (the | |
6 | # "License"); you may not use this file except in compliance | |
7 | # with the License. You may obtain a copy of the License at | |
8 | # | |
9 | # http://www.apache.org/licenses/LICENSE-2.0 | |
10 | # | |
11 | # Unless required by applicable law or agreed to in writing, | |
12 | # software distributed under the License is distributed on an | |
13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY | |
14 | # KIND, either express or implied. See the License for the | |
15 | # specific language governing permissions and limitations | |
16 | # under the License. | |
17 | ||
18 | ARROW_DIR="${SOURCE_DIR}/../.." | |
19 | ||
20 | update_versions() { | |
21 | local base_version=$1 | |
22 | local next_version=$2 | |
23 | local type=$3 | |
24 | ||
25 | case ${type} in | |
26 | release) | |
27 | local version=${base_version} | |
28 | local r_version=${base_version} | |
29 | ;; | |
30 | snapshot) | |
31 | local version=${next_version}-SNAPSHOT | |
32 | local r_version=${base_version}.9000 | |
33 | ;; | |
34 | esac | |
35 | ||
36 | pushd "${ARROW_DIR}/c_glib" | |
37 | sed -i.bak -E -e \ | |
38 | "s/^version = '.+'/version = '${version}'/" \ | |
39 | meson.build | |
40 | rm -f meson.build.bak | |
41 | git add meson.build | |
42 | popd | |
43 | ||
44 | pushd "${ARROW_DIR}/ci/scripts" | |
45 | sed -i.bak -E -e \ | |
46 | "s/^pkgver=.+/pkgver=${r_version}/" \ | |
47 | PKGBUILD | |
48 | rm -f PKGBUILD.bak | |
49 | git add PKGBUILD | |
50 | popd | |
51 | ||
52 | pushd "${ARROW_DIR}/cpp" | |
53 | sed -i.bak -E -e \ | |
54 | "s/^set\(ARROW_VERSION \".+\"\)/set(ARROW_VERSION \"${version}\")/" \ | |
55 | CMakeLists.txt | |
56 | rm -f CMakeLists.txt.bak | |
57 | git add CMakeLists.txt | |
58 | ||
59 | sed -i.bak -E -e \ | |
60 | "s/\"version-string\": \".+\"/\"version-string\": \"${version}\"/" \ | |
61 | vcpkg.json | |
62 | rm -f vcpkg.json.bak | |
63 | git add vcpkg.json | |
64 | popd | |
65 | ||
66 | pushd "${ARROW_DIR}/java" | |
67 | mvn versions:set -DnewVersion=${version} | |
68 | find . -type f -name pom.xml.versionsBackup -delete | |
69 | git add "pom.xml" | |
70 | git add "**/pom.xml" | |
71 | popd | |
72 | ||
73 | pushd "${ARROW_DIR}/csharp" | |
74 | sed -i.bak -E -e \ | |
75 | "s/^ <Version>.+<\/Version>/ <Version>${version}<\/Version>/" \ | |
76 | Directory.Build.props | |
77 | rm -f Directory.Build.props.bak | |
78 | git add Directory.Build.props | |
79 | popd | |
80 | ||
81 | pushd "${ARROW_DIR}/dev/tasks/homebrew-formulae" | |
82 | sed -i.bak -E -e \ | |
83 | "s/arrow-[0-9.]+[0-9]+/arrow-${r_version}/g" \ | |
84 | autobrew/apache-arrow.rb | |
85 | rm -f autobrew/apache-arrow.rb.bak | |
86 | git add autobrew/apache-arrow.rb | |
87 | sed -i.bak -E -e \ | |
88 | "s/arrow-[0-9.\-]+[0-9SNAPHOT]+/arrow-${version}/g" \ | |
89 | apache-arrow.rb | |
90 | rm -f apache-arrow.rb.bak | |
91 | git add apache-arrow.rb | |
92 | popd | |
93 | ||
94 | pushd "${ARROW_DIR}/js" | |
95 | sed -i.bak -E -e \ | |
96 | "s/^ \"version\": \".+\"/ \"version\": \"${version}\"/" \ | |
97 | package.json | |
98 | rm -f package.json.bak | |
99 | git add package.json | |
100 | popd | |
101 | ||
102 | pushd "${ARROW_DIR}/matlab" | |
103 | sed -i.bak -E -e \ | |
104 | "s/^set\(MLARROW_VERSION \".+\"\)/set(MLARROW_VERSION \"${version}\")/" \ | |
105 | CMakeLists.txt | |
106 | rm -f CMakeLists.txt.bak | |
107 | git add CMakeLists.txt | |
108 | popd | |
109 | ||
110 | pushd "${ARROW_DIR}/python" | |
111 | sed -i.bak -E -e \ | |
112 | "s/^default_version = '.+'/default_version = '${version}'/" \ | |
113 | setup.py | |
114 | rm -f setup.py.bak | |
115 | git add setup.py | |
116 | popd | |
117 | ||
118 | pushd "${ARROW_DIR}/r" | |
119 | sed -i.bak -E -e \ | |
120 | "s/^Version: .+/Version: ${r_version}/" \ | |
121 | DESCRIPTION | |
122 | rm -f DESCRIPTION.bak | |
123 | git add DESCRIPTION | |
124 | # Replace dev version with release version | |
125 | sed -i.bak -E -e \ | |
126 | "0,/^# arrow /s/^# arrow .+/# arrow ${base_version}/" \ | |
127 | NEWS.md | |
128 | if [ ${type} = "snapshot" ]; then | |
129 | # Add a news entry for the new dev version | |
130 | sed -i.bak -E -e \ | |
131 | "0,/^# arrow /s/^(# arrow .+)/# arrow ${r_version}\n\n\1/" \ | |
132 | NEWS.md | |
133 | fi | |
134 | rm -f NEWS.md.bak | |
135 | git add NEWS.md | |
136 | popd | |
137 | ||
138 | pushd "${ARROW_DIR}/ruby" | |
139 | sed -i.bak -E -e \ | |
140 | "s/^ VERSION = \".+\"/ VERSION = \"${version}\"/g" \ | |
141 | */*/*/version.rb | |
142 | rm -f */*/*/version.rb.bak | |
143 | git add */*/*/version.rb | |
144 | popd | |
145 | } |