puppet_forge 6.0.0 → 6.1.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: 2aa6e1bc1ae0b853f727a72ea5dd4f5bb971be49cbae5da1c1a2e2ec170f0d4e
4
- data.tar.gz: baa47d4cc612aa468ba51860a3d206e946bd3b85335efa2ecc402107187e3cd2
3
+ metadata.gz: 4643cefde481f4704b66647650391f737608c7b78dff4db49abba8ee77168d1c
4
+ data.tar.gz: e020f190a88702791c677a2c82e807dce0b1a754389498002a75cb6a8e67ff9c
5
5
  SHA512:
6
- metadata.gz: 28bba9b23c15cc68d8b892253e29d4399426ebd3cddc542fd0f7afdd996cb1c8bb9778c0dc10fc443f6a75ebe77fb1467c3bde4ae81b7555f67700752cb74bea
7
- data.tar.gz: 753c20bede9fa4db5248386ba9746ccab0c4d839ce08828b5b7a547e180ee5a554997e4b8f35cf45cec2a3dbe954c53dc9bd4d4f61e3d183e5f0e8a533fe4d59
6
+ metadata.gz: f14fcacfb852f6aefb7ec8b8105e254915e301d22faae606e2e592a504728b261d56142d86c4633b10ffca69f1605ed8e48846aa83b84eff4e91351b04cc5eff
7
+ data.tar.gz: 379360682acb7c360f41ef1faf1408c63fd98359c3737e5382d4141cd2244d75e39110b3c0da3ef478c40099f80286e901c307d68016632d9c547fde5f505006
@@ -1,4 +1,4 @@
1
- name: "release"
1
+ name: "Release"
2
2
 
3
3
  on:
4
4
  workflow_dispatch:
@@ -7,15 +7,10 @@ on:
7
7
  description: "The target for the release. This can be a commit sha or a branch."
8
8
  required: false
9
9
  default: "main"
10
- ruby-version:
11
- description: "Ruby version to use."
12
- required: false
13
- default: "3.1"
14
10
 
15
11
  jobs:
16
12
  release:
17
13
  uses: "puppetlabs/cat-github-actions/.github/workflows/gem_release.yml@main"
18
14
  with:
19
15
  target: "${{ github.event.inputs.target }}"
20
- ruby-version: "${{ github.event.inputs.ruby-version }}"
21
16
  secrets: "inherit"
@@ -10,16 +10,10 @@ on:
10
10
  version:
11
11
  description: "Version of gem to be released."
12
12
  required: true
13
- ruby-version:
14
- description: "Ruby version to use."
15
- required: false
16
- default: "3.1"
17
-
18
13
  jobs:
19
14
  release_prep:
20
15
  uses: "puppetlabs/cat-github-actions/.github/workflows/gem_release_prep.yml@main"
21
16
  with:
22
17
  target: "${{ github.event.inputs.target }}"
23
18
  version: "${{ github.event.inputs.version }}"
24
- ruby-version: "${{ github.event.inputs.ruby-version }}"
25
19
  secrets: "inherit"
@@ -15,6 +15,8 @@ jobs:
15
15
  strategy:
16
16
  matrix:
17
17
  ruby:
18
+ - '3.4'
19
+ - '3.3'
18
20
  - '3.2'
19
21
  - '3.1'
20
22
 
data/CHANGELOG.md CHANGED
@@ -5,6 +5,23 @@ All notable changes to this project will be documented in this file.
5
5
 
6
6
  The format is based on [Keep a Changelog](http://keepachangelog.com/en/1.0.0/) and this project adheres to [Semantic Versioning](http://semver.org).
7
7
 
8
+ ## [v6.1.0](https://github.com/puppetlabs/forge-ruby/tree/v6.1.0) - 2025-12-12
9
+
10
+ [Full Changelog](https://github.com/puppetlabs/forge-ruby/compare/v6.0.0...v6.1.0)
11
+
12
+ ### Added
13
+
14
+ - Add base64 dependency [#129](https://github.com/puppetlabs/forge-ruby/pull/129) ([bastelfreak](https://github.com/bastelfreak))
15
+
16
+ ### Fixed
17
+
18
+ - (BOLT-109) Fix Windows long path support by replacing Dir[] with Find.find [#134](https://github.com/puppetlabs/forge-ruby/pull/134) ([gavindidrichsen](https://github.com/gavindidrichsen))
19
+
20
+ ### Other
21
+
22
+ - base64: Allow 0.3 [#135](https://github.com/puppetlabs/forge-ruby/pull/135) ([bastelfreak](https://github.com/bastelfreak))
23
+ - faraday-follow_redirects: Allow 0.4 [#132](https://github.com/puppetlabs/forge-ruby/pull/132) ([bastelfreak](https://github.com/bastelfreak))
24
+
8
25
  ## [v6.0.0](https://github.com/puppetlabs/forge-ruby/tree/v6.0.0) - 2024-09-20
9
26
 
10
27
  [Full Changelog](https://github.com/puppetlabs/forge-ruby/compare/v5.0.4...v6.0.0)
@@ -1,4 +1,5 @@
1
1
  require 'pathname'
2
+ require 'find'
2
3
  require 'puppet_forge/error'
3
4
  require 'puppet_forge/tar'
4
5
 
@@ -55,8 +56,23 @@ module PuppetForge
55
56
  def root_dir
56
57
  return @root_dir if @root_dir
57
58
 
58
- # Grab the first directory containing a metadata.json file
59
- metadata_file = Dir["#{@tmpdir}/**/metadata.json"].sort_by(&:length)[0]
59
+ # Use Find.find instead of Dir[] for Windows long path support
60
+ metadata_file = nil
61
+ shortest_length = Float::INFINITY
62
+
63
+ begin
64
+ Find.find(@tmpdir) do |path|
65
+ if File.basename(path) == 'metadata.json'
66
+ if path.length < shortest_length
67
+ metadata_file = path
68
+ shortest_length = path.length
69
+ end
70
+ end
71
+ end
72
+ rescue Errno::ENAMETOOLONG => e
73
+ # Even Find.find might fail, need to use Dir.each with manual recursion
74
+ raise "Cannot traverse directory due to long paths: #{e.message}"
75
+ end
60
76
 
61
77
  if metadata_file
62
78
  @root_dir = Pathname.new(metadata_file).dirname
@@ -1,3 +1,3 @@
1
1
  module PuppetForge
2
- VERSION = '6.0.0' # Library version
2
+ VERSION = '6.1.0' # Library version
3
3
  end
data/puppet_forge.gemspec CHANGED
@@ -20,16 +20,17 @@ Gem::Specification.new do |spec|
20
20
 
21
21
  spec.required_ruby_version = '>= 3.1.0'
22
22
 
23
+ spec.add_runtime_dependency "base64", '>= 0.2.0', '< 0.4.0'
23
24
  spec.add_runtime_dependency "faraday", "~> 2.0"
24
- spec.add_runtime_dependency "faraday-follow_redirects", "~> 0.3.0"
25
- spec.add_dependency "semantic_puppet", "~> 1.0"
25
+ spec.add_runtime_dependency "faraday-follow_redirects", ">= 0.3", "< 0.5"
26
26
  spec.add_dependency "minitar", '~> 1.0', '>= 1.0.2'
27
+ spec.add_dependency "semantic_puppet", "~> 1.0"
27
28
 
29
+ spec.add_development_dependency "cane"
30
+ spec.add_development_dependency "pry-byebug"
28
31
  spec.add_development_dependency "rake"
32
+ spec.add_development_dependency "redcarpet"
29
33
  spec.add_development_dependency "rspec", "~> 3.0"
30
34
  spec.add_development_dependency "simplecov"
31
- spec.add_development_dependency "cane"
32
35
  spec.add_development_dependency "yard"
33
- spec.add_development_dependency "redcarpet"
34
- spec.add_development_dependency "pry-byebug"
35
36
  end
@@ -88,7 +88,7 @@ describe PuppetForge::Connection do
88
88
 
89
89
  expect {
90
90
  subject.get('/error')
91
- }.to raise_error(Faraday::ServerError, "the server responded with status 503")
91
+ }.to raise_error(Faraday::ServerError, /the server responded with status 503/)
92
92
  end
93
93
 
94
94
  context 'when an authorization value is provided' do
metadata CHANGED
@@ -1,15 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: puppet_forge
3
3
  version: !ruby/object:Gem::Version
4
- version: 6.0.0
4
+ version: 6.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Puppet Labs
8
- autorequire:
8
+ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2024-09-20 00:00:00.000000000 Z
11
+ date: 2025-12-12 00:00:00.000000000 Z
12
12
  dependencies:
13
+ - !ruby/object:Gem::Dependency
14
+ name: base64
15
+ requirement: !ruby/object:Gem::Requirement
16
+ requirements:
17
+ - - ">="
18
+ - !ruby/object:Gem::Version
19
+ version: 0.2.0
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: 0.4.0
23
+ type: :runtime
24
+ prerelease: false
25
+ version_requirements: !ruby/object:Gem::Requirement
26
+ requirements:
27
+ - - ">="
28
+ - !ruby/object:Gem::Version
29
+ version: 0.2.0
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: 0.4.0
13
33
  - !ruby/object:Gem::Dependency
14
34
  name: faraday
15
35
  requirement: !ruby/object:Gem::Requirement
@@ -28,23 +48,32 @@ dependencies:
28
48
  name: faraday-follow_redirects
29
49
  requirement: !ruby/object:Gem::Requirement
30
50
  requirements:
31
- - - "~>"
51
+ - - ">="
32
52
  - !ruby/object:Gem::Version
33
- version: 0.3.0
53
+ version: '0.3'
54
+ - - "<"
55
+ - !ruby/object:Gem::Version
56
+ version: '0.5'
34
57
  type: :runtime
35
58
  prerelease: false
36
59
  version_requirements: !ruby/object:Gem::Requirement
37
60
  requirements:
38
- - - "~>"
61
+ - - ">="
62
+ - !ruby/object:Gem::Version
63
+ version: '0.3'
64
+ - - "<"
39
65
  - !ruby/object:Gem::Version
40
- version: 0.3.0
66
+ version: '0.5'
41
67
  - !ruby/object:Gem::Dependency
42
- name: semantic_puppet
68
+ name: minitar
43
69
  requirement: !ruby/object:Gem::Requirement
44
70
  requirements:
45
71
  - - "~>"
46
72
  - !ruby/object:Gem::Version
47
73
  version: '1.0'
74
+ - - ">="
75
+ - !ruby/object:Gem::Version
76
+ version: 1.0.2
48
77
  type: :runtime
49
78
  prerelease: false
50
79
  version_requirements: !ruby/object:Gem::Requirement
@@ -52,16 +81,16 @@ dependencies:
52
81
  - - "~>"
53
82
  - !ruby/object:Gem::Version
54
83
  version: '1.0'
84
+ - - ">="
85
+ - !ruby/object:Gem::Version
86
+ version: 1.0.2
55
87
  - !ruby/object:Gem::Dependency
56
- name: minitar
88
+ name: semantic_puppet
57
89
  requirement: !ruby/object:Gem::Requirement
58
90
  requirements:
59
91
  - - "~>"
60
92
  - !ruby/object:Gem::Version
61
93
  version: '1.0'
62
- - - ">="
63
- - !ruby/object:Gem::Version
64
- version: 1.0.2
65
94
  type: :runtime
66
95
  prerelease: false
67
96
  version_requirements: !ruby/object:Gem::Requirement
@@ -69,11 +98,8 @@ dependencies:
69
98
  - - "~>"
70
99
  - !ruby/object:Gem::Version
71
100
  version: '1.0'
72
- - - ">="
73
- - !ruby/object:Gem::Version
74
- version: 1.0.2
75
101
  - !ruby/object:Gem::Dependency
76
- name: rake
102
+ name: cane
77
103
  requirement: !ruby/object:Gem::Requirement
78
104
  requirements:
79
105
  - - ">="
@@ -87,21 +113,21 @@ dependencies:
87
113
  - !ruby/object:Gem::Version
88
114
  version: '0'
89
115
  - !ruby/object:Gem::Dependency
90
- name: rspec
116
+ name: pry-byebug
91
117
  requirement: !ruby/object:Gem::Requirement
92
118
  requirements:
93
- - - "~>"
119
+ - - ">="
94
120
  - !ruby/object:Gem::Version
95
- version: '3.0'
121
+ version: '0'
96
122
  type: :development
97
123
  prerelease: false
98
124
  version_requirements: !ruby/object:Gem::Requirement
99
125
  requirements:
100
- - - "~>"
126
+ - - ">="
101
127
  - !ruby/object:Gem::Version
102
- version: '3.0'
128
+ version: '0'
103
129
  - !ruby/object:Gem::Dependency
104
- name: simplecov
130
+ name: rake
105
131
  requirement: !ruby/object:Gem::Requirement
106
132
  requirements:
107
133
  - - ">="
@@ -115,7 +141,7 @@ dependencies:
115
141
  - !ruby/object:Gem::Version
116
142
  version: '0'
117
143
  - !ruby/object:Gem::Dependency
118
- name: cane
144
+ name: redcarpet
119
145
  requirement: !ruby/object:Gem::Requirement
120
146
  requirements:
121
147
  - - ">="
@@ -129,21 +155,21 @@ dependencies:
129
155
  - !ruby/object:Gem::Version
130
156
  version: '0'
131
157
  - !ruby/object:Gem::Dependency
132
- name: yard
158
+ name: rspec
133
159
  requirement: !ruby/object:Gem::Requirement
134
160
  requirements:
135
- - - ">="
161
+ - - "~>"
136
162
  - !ruby/object:Gem::Version
137
- version: '0'
163
+ version: '3.0'
138
164
  type: :development
139
165
  prerelease: false
140
166
  version_requirements: !ruby/object:Gem::Requirement
141
167
  requirements:
142
- - - ">="
168
+ - - "~>"
143
169
  - !ruby/object:Gem::Version
144
- version: '0'
170
+ version: '3.0'
145
171
  - !ruby/object:Gem::Dependency
146
- name: redcarpet
172
+ name: simplecov
147
173
  requirement: !ruby/object:Gem::Requirement
148
174
  requirements:
149
175
  - - ">="
@@ -157,7 +183,7 @@ dependencies:
157
183
  - !ruby/object:Gem::Version
158
184
  version: '0'
159
185
  - !ruby/object:Gem::Dependency
160
- name: pry-byebug
186
+ name: yard
161
187
  requirement: !ruby/object:Gem::Requirement
162
188
  requirements:
163
189
  - - ">="
@@ -262,7 +288,7 @@ homepage: https://github.com/puppetlabs/forge-ruby
262
288
  licenses:
263
289
  - Apache-2.0
264
290
  metadata: {}
265
- post_install_message:
291
+ post_install_message:
266
292
  rdoc_options: []
267
293
  require_paths:
268
294
  - lib
@@ -278,7 +304,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
278
304
  version: '0'
279
305
  requirements: []
280
306
  rubygems_version: 3.3.27
281
- signing_key:
307
+ signing_key:
282
308
  specification_version: 4
283
309
  summary: Access the Puppet Forge API from Ruby for resource information and to download
284
310
  releases.