apadmi_grout 2.8.0 → 2.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 75c06e02304d0547ca158b319c9c88e895753233fd06da8d864c402ae89946e1
4
- data.tar.gz: 6fda7788c5401a14481f715f4007dec869219438304b0206dfce5eb3735c3e07
3
+ metadata.gz: 38b855b9ef4ad0a1eef926a35eba5617026fdd30492c3ea276322292bbc50908
4
+ data.tar.gz: faef8331a80aec884df2c46f0e6825b9f34cc8d3f40dc4ba0475ef7eae6b552f
5
5
  SHA512:
6
- metadata.gz: b34320096c5d746f833c48ab31d00933188fdfe86c607a5529f58f03f15b8fb2636ba752b8d5a2743bf4b0d98563c39d21a64b950fb8706b278cc4ddca2500fb
7
- data.tar.gz: 38c1b2705c12d5fb8480270a26022f1266f0bb9b15da84ffde2447ada05e7de497356a46ae759a1fc3a91fefb1aa50524a30bf52094e0da6fec31ebcdc9f763c
6
+ metadata.gz: d27a7df171ba6bc2c2cd556eb4daec3622a24182a65def0105e8d2359026ad46fffc8256897e1311f9ef8e21fd7af1414ba7ddb0f9e135634322cf30b9f98ab1
7
+ data.tar.gz: 51175e4daa39722ce76dabdede628f51a0a3d3114cc9baa14d516772e409e6213e3938eab73b36fbdeb1c8caae167347331dfabc4fb1c59f718e4c2f7afd86b6
data/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Core Changelog
2
2
 
3
+ ## [2.10.0] - 2025-09-11
4
+ * Temporarily point jira-ruby active pull request to point to JIRA apis that haven't been removed.
5
+
6
+ ## [2.9.0] - 2025-05-28
7
+ * Add git util for getting the last tag of a given pattern which is on an ancestor commit of HEAD
8
+
3
9
  ## [2.8.0] - 2025-05-22
4
10
  * Add ability to disable use of the undocumented JIRA apis
5
11
 
@@ -31,7 +31,7 @@ module Apadmi
31
31
  return [] if keys.length <= 0
32
32
 
33
33
  jql_search = "project = '#{@project}' AND issue IN (#{keys.join(", ")})"
34
- issues = @jira_client.Issue.jql(jql_search, { max_results: 1000 }).uniq
34
+ issues = @jira_client.Issue.jql(jql_search, { max_results: 1000, fields: ["*navigable"] }).uniq
35
35
  convert(issues)
36
36
  end
37
37
 
@@ -54,7 +54,7 @@ module Apadmi
54
54
  AND Flagged is EMPTY
55
55
  }
56
56
 
57
- issues = @jira_client.Issue.jql(jql_search, { max_results: 1000 }).uniq
57
+ issues = @jira_client.Issue.jql(jql_search, { max_results: 1000, fields: ["*navigable"] }).uniq
58
58
  convert(issues)
59
59
  end
60
60
 
@@ -73,19 +73,21 @@ module Apadmi
73
73
  def flag_ticket(key, comment)
74
74
  payload = "{\"flag\":true,\"issueKeys\":[\"#{key}\"],\"commentVisibility\":\"\",\"comment\":\"#{comment}\"}"
75
75
  @network_service.do_post("/rest/greenhopper/1.0/xboard/issue/flag/flag.json", payload)
76
+ sleep 2 # Seems to take a while for flagging and unflagging to register
76
77
  end
77
78
 
78
79
  # @param [String] key
79
80
  def un_flag_ticket(key)
80
81
  payload = "{\"flag\":false,\"issueKeys\":[\"#{key}\"],\"commentVisibility\":\"\",\"comment\":\"Unflagged by CI\"}"
81
82
  @network_service.do_post("/rest/greenhopper/1.0/xboard/issue/flag/flag.json", payload)
83
+ sleep 2 # Seems to take a while for flagging and unflagging to register
82
84
  end
83
85
 
84
86
  # @param [String] key
85
87
  # @return bool
86
88
  def flagged?(key)
87
89
  jql_search = "project = '#{@project}' AND issue IN (#{key}) AND Flagged is not EMPTY"
88
- response = @jira_client.Issue.jql(jql_search, { max_results: 1 }).uniq
90
+ response = @jira_client.Issue.jql(jql_search, { max_results: 1000, fields: ["*navigable"] }).uniq
89
91
  response != []
90
92
  end
91
93
 
@@ -115,7 +117,7 @@ module Apadmi
115
117
  # @return [Array<Apadmi::Grout::Issue>]
116
118
  def get_tickets_by_component(component_key)
117
119
  jql_search = "project = '#{@project}' AND component IN ('#{component_key}')"
118
- convert(@jira_client.Issue.jql(jql_search, { max_results: 1000 }).uniq)
120
+ convert(@jira_client.Issue.jql(jql_search, { max_results: 1000, fields: ["*navigable"] }).uniq)
119
121
  end
120
122
 
121
123
  # @param [String] key
@@ -153,7 +155,7 @@ module Apadmi
153
155
  def get_ticket_subtask(keys, component = nil)
154
156
  jql_search = "project = '#{@project}' AND parent IN #{keys.to_s.gsub("[", "(").gsub("]", ")")}"\
155
157
  + (component.nil? ? "" : " AND component IN ('#{component}')")
156
- convert(@jira_client.Issue.jql(jql_search, { max_results: 1000 }).uniq)
158
+ convert(@jira_client.Issue.jql(jql_search, { max_results: 1000, fields: ["*navigable"] }).uniq)
157
159
  end
158
160
 
159
161
  # @param [String] release_date
@@ -68,6 +68,29 @@ module Apadmi
68
68
  @@default.commit_hash
69
69
  end
70
70
 
71
+ # Returns the hash of the last git tag which is an ancestor commit of the current HEAD and matches the given pattern
72
+ # @param pattern [String]
73
+ def self.last_ancestor_tag_hash(pattern)
74
+ @@default.last_ancestor_tag_hash(pattern)
75
+ end
76
+
77
+ def last_ancestor_tag_hash(pattern)
78
+ tag_name = last_ancestor_tag(pattern)
79
+ stdout, stderr, status = Open3.capture3("git #{@repo_path_arg} rev-list -n 1 #{tag_name}")
80
+ raise "Failed to find a tag: #{tag_name}: #{stderr}" unless status.success?
81
+
82
+ stdout.strip
83
+ end
84
+
85
+ # Returns the name of the last git tag which is an ancestor commit of the current HEAD and matches the given pattern
86
+ # @param pattern [String]
87
+ def last_ancestor_tag(pattern)
88
+ stdout, stderr, status = Open3.capture3("git #{@repo_path_arg} describe --tags --match '#{pattern}' --abbrev=0")
89
+ raise "Failed to find a tag matching pattern: #{pattern}: #{stderr}" unless status.success?
90
+
91
+ stdout.strip
92
+ end
93
+
71
94
  # Gets the number of commits accessible from HEAD treating the history as a graph.
72
95
  # See more details here: https://git-scm.com/docs/git-rev-list
73
96
  # @return [String] The number of commits
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Apadmi
4
4
  module Grout
5
- VERSION = "2.8.0"
5
+ VERSION = "2.10.0"
6
6
  end
7
7
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: apadmi_grout
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.8.0
4
+ version: 2.10.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Apadmi
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2025-05-22 00:00:00.000000000 Z
11
+ date: 2025-09-11 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: faraday
@@ -28,16 +28,16 @@ dependencies:
28
28
  name: jira-ruby
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - "~>"
31
+ - - ">="
32
32
  - !ruby/object:Gem::Version
33
- version: 2.2.0
33
+ version: '0'
34
34
  type: :runtime
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - "~>"
38
+ - - ">="
39
39
  - !ruby/object:Gem::Version
40
- version: 2.2.0
40
+ version: '0'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: mustache
43
43
  requirement: !ruby/object:Gem::Requirement
@@ -112,7 +112,7 @@ metadata:
112
112
  documentation_uri: https://apadmi-grout.web.app/
113
113
  source_code_uri: https://bitbucket.org/apadmi/apadmi-grout-ruby/
114
114
  changelog_uri: https://bitbucket.org/apadmi/apadmi-grout-ruby/
115
- post_install_message:
115
+ post_install_message:
116
116
  rdoc_options: []
117
117
  require_paths:
118
118
  - lib
@@ -127,8 +127,8 @@ required_rubygems_version: !ruby/object:Gem::Requirement
127
127
  - !ruby/object:Gem::Version
128
128
  version: '0'
129
129
  requirements: []
130
- rubygems_version: 3.2.3
131
- signing_key:
130
+ rubygems_version: 3.5.22
131
+ signing_key:
132
132
  specification_version: 4
133
133
  summary: Apadmi build tool utils for use through Fastlane on Android and iOS.
134
134
  test_files: []