MCPcopy Create free account
hub / github.com/apache/arrow / detect_versions

Method detect_versions

dev/release/test-helper.rb:111–164  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

109 end
110
111 def detect_versions
112 top_dir = Pathname(__dir__).parent.parent
113 cpp_cmake_lists = top_dir + "cpp" + "CMakeLists.txt"
114 @snapshot_version = cpp_cmake_lists.read[/ARROW_VERSION "(.+?)"/, 1]
115 @snapshot_major_version = @snapshot_version.split(".")[0]
116 @snapshot_so_version = compute_so_version(@snapshot_version.split("-")[0])
117 @snapshot_gi_api_version = compute_gi_api_version(@snapshot_version.split("-")[0])
118 release_version = @snapshot_version.gsub(/-SNAPSHOT\z/, "")
119 release_version_components = release_version.split(".")
120 case release_type
121 when nil
122 when :major
123 release_version_components[0].succ!
124 when :minor
125 release_version_components[1].succ!
126 when :patch
127 release_version_components[2].succ!
128 else
129 raise "unknown release type: #{release_type.inspect}"
130 end
131 @release_version = release_version_components.join(".")
132 @release_compatible_version = compute_compatible_version(@release_version)
133 @so_version = compute_so_version(@release_version)
134 @gi_api_version = compute_gi_api_version(@release_version)
135 next_version_components = @release_version.split(".")
136 case next_release_type
137 when :major
138 next_version_components[0].succ!
139 next_version_components[1] = 0
140 next_version_components[2] = 0
141 when :minor
142 next_version_components[1].succ!
143 next_version_components[2] = 0
144 when :patch
145 next_version_components[2].succ!
146 else
147 raise "unknown next release type: #{next_release_type.inspect}"
148 end
149 @next_version = next_version_components.join(".")
150 @next_major_version = @next_version.split(".")[0]
151 @next_compatible_version = compute_compatible_version(@next_version)
152 @next_snapshot_version = "#{@next_version}-SNAPSHOT"
153 @next_so_version = compute_so_version(@next_version)
154 @next_gi_api_version = compute_gi_api_version(@next_version)
155 r_description = top_dir + "r" + "DESCRIPTION"
156 @previous_version = r_description.read[/^Version: (.+?)\.9000$/, 1]
157 if @previous_version
158 @previous_compatible_version = compute_compatible_version(@previous_version)
159 else
160 @previous_compatible_version = nil
161 end
162 r_versions = top_dir + "r" + "pkgdown" + "assets" + "versions.json"
163 @previous_r_version = r_versions.read[/"name": "(.+?) \(release\)"/, 1]
164 end
165
166 def compute_so_version(version)
167 major, minor, _patch = version.split(".")

Callers

nothing calls this directly

Calls 4

parentMethod · 0.45
readMethod · 0.45
inspectMethod · 0.45
joinMethod · 0.45

Tested by

no test coverage detected