pindo 5.5.4 → 5.5.7
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 +4 -4
- data/lib/pindo/base/githelper.rb +22 -6
- data/lib/pindo/command/dev/tag.rb +3 -1
- data/lib/pindo/command/unity/upload.rb +148 -31
- data/lib/pindo/module/unity/nugethelper.rb +52 -16
- data/lib/pindo/version.rb +1 -1
- metadata +2 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 7936d0bbe9e0a98b963b3fab910bf6f14181cb42d2747dab85c7081dd13f7bb9
|
4
|
+
data.tar.gz: f0bf9f4c66846fce60e0095969e20acd9d44050e1b608a5437630ab287bed0b6
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 00f7b89309f86b889ef3d4b1ebfcc3e0d6876a24d8587e8335d96c5271da7fa1bb8795183850809cda62d006c1b9af5e960828862c74c8b61d1c0f1652d97679
|
7
|
+
data.tar.gz: 00bb957cb9bc2f926534e5ee4b4c3af62d6170ca8ba78b28416364084abd0ec91e733c2b14b1f8d7a7eacae70fd91f061724ed92fc7b542d6b8670129e213c7e
|
data/lib/pindo/base/githelper.rb
CHANGED
@@ -1,6 +1,7 @@
|
|
1
1
|
require 'fileutils'
|
2
2
|
require 'pindo/base/executable'
|
3
3
|
require 'etc'
|
4
|
+
require 'claide'
|
4
5
|
|
5
6
|
module Pindo
|
6
7
|
module Githelper
|
@@ -487,12 +488,27 @@ module Pindo
|
|
487
488
|
private
|
488
489
|
|
489
490
|
def display_file_status(branch, files)
|
490
|
-
puts "
|
491
|
-
puts "
|
491
|
+
puts "═" * 60
|
492
|
+
puts "⚠️ 警告:检测到未提交的文件".red
|
493
|
+
puts "═" * 60
|
492
494
|
puts
|
493
|
-
puts "
|
495
|
+
puts "当前所在分支: #{branch}".red
|
496
|
+
puts "以下文件尚未提交到 Git:".red
|
494
497
|
puts
|
495
|
-
|
498
|
+
|
499
|
+
# 将文件列表分行并用红色显示
|
500
|
+
if files.is_a?(String)
|
501
|
+
files.split("\n").each do |file|
|
502
|
+
puts " • #{file}".red unless file.empty?
|
503
|
+
end
|
504
|
+
else
|
505
|
+
files.each do |file|
|
506
|
+
puts " • #{file}".red unless file.empty?
|
507
|
+
end
|
508
|
+
end
|
509
|
+
|
510
|
+
puts
|
511
|
+
puts "═" * 60
|
496
512
|
end
|
497
513
|
|
498
514
|
def process_user_choice(project_dir, branch)
|
@@ -501,8 +517,8 @@ module Pindo
|
|
501
517
|
menu_choice = "None"
|
502
518
|
|
503
519
|
cli.choose do |menu|
|
504
|
-
menu.header = "对以上未提交的文件, 有下列处理方式"
|
505
|
-
menu.prompt = "请选择如何处理(1/2/3...):"
|
520
|
+
menu.header = "对以上未提交的文件, 有下列处理方式".red
|
521
|
+
menu.prompt = "请选择如何处理(1/2/3...):".yellow
|
506
522
|
process_types.each do |item|
|
507
523
|
menu.choice(item) { |choice| menu_choice = choice }
|
508
524
|
end
|
@@ -11,7 +11,7 @@ module Pindo
|
|
11
11
|
# 命令的详细说明,包含用法示例
|
12
12
|
self.description = <<-DESC
|
13
13
|
发布代码,添加tag,添加发布信息,并合并到发布分支。
|
14
|
-
|
14
|
+
|
15
15
|
支持功能:
|
16
16
|
|
17
17
|
* 处理未提交的文件
|
@@ -28,6 +28,8 @@ module Pindo
|
|
28
28
|
|
29
29
|
$ pindo dev tag --mode=patch # 使用patch模式创建tag
|
30
30
|
|
31
|
+
$ pindo dev tag --tag=1.1.3 # 直接指定版本号创建tag(会自动添加v前缀)
|
32
|
+
|
31
33
|
$ pindo dev tag --retag # 强制重新打tag
|
32
34
|
DESC
|
33
35
|
|
@@ -2,12 +2,16 @@ require 'highline/import'
|
|
2
2
|
require 'fileutils'
|
3
3
|
require 'json'
|
4
4
|
require 'jpsclient'
|
5
|
+
require 'claide'
|
5
6
|
require 'pindo/module/unity/nugethelper'
|
6
7
|
|
7
8
|
module Pindo
|
8
9
|
class Command
|
9
10
|
class Unity < Command
|
10
11
|
class Upload < Unity
|
12
|
+
include Pindo::Githelper
|
13
|
+
extend Pindo::Executable
|
14
|
+
executable :git
|
11
15
|
|
12
16
|
self.summary = '上传 NuGet 包到 JPS'
|
13
17
|
|
@@ -61,25 +65,16 @@ module Pindo
|
|
61
65
|
def run
|
62
66
|
package_dir = Dir.pwd
|
63
67
|
|
64
|
-
puts "=" * 60
|
65
|
-
puts "🚀 上传到 JPS Nuget 项目"
|
66
|
-
puts "=" * 60
|
67
68
|
puts
|
69
|
+
puts "🚀 上传 Unity Package 到 JPS"
|
70
|
+
puts "━" * 40
|
68
71
|
|
69
72
|
# 如果没有指定文件或文件不存在,则查找
|
70
73
|
if @args_nupkg_file.nil? || !File.exist?(@args_nupkg_file)
|
71
74
|
# 在当前目录查找 .nupkg 文件
|
72
75
|
@args_nupkg_file = Pindo::Unity::NugetHelper.find_nupkg_file(package_dir)
|
73
76
|
|
74
|
-
#
|
75
|
-
if !@args_nupkg_file.nil?
|
76
|
-
answer = agree("需要上传的文件是: #{@args_nupkg_file} ?(Y/n)")
|
77
|
-
if !answer
|
78
|
-
@args_nupkg_file = nil
|
79
|
-
end
|
80
|
-
end
|
81
|
-
|
82
|
-
# 如果还是没有文件,让用户手动输入
|
77
|
+
# 如果没有找到文件,让用户手动输入
|
83
78
|
if @args_nupkg_file.nil? || !File.exist?(@args_nupkg_file)
|
84
79
|
@args_nupkg_file = ask('需要上传的文件:') || nil
|
85
80
|
if @args_nupkg_file
|
@@ -93,19 +88,32 @@ module Pindo
|
|
93
88
|
raise Informative, "未找到 .nupkg 文件"
|
94
89
|
end
|
95
90
|
|
91
|
+
# 从 nuspec 文件或 package.json 获取包信息
|
92
|
+
package_info = get_package_info_for_upload(package_dir)
|
93
|
+
|
94
|
+
# 显示包信息并一次性确认
|
96
95
|
puts
|
97
|
-
puts "
|
98
|
-
puts
|
96
|
+
puts "📦 包信息:"
|
97
|
+
puts
|
98
|
+
puts " 名称: #{package_info['displayName']}"
|
99
|
+
puts " ID: #{package_info['name']}"
|
100
|
+
puts " 版本: #{package_info['version']}"
|
101
|
+
puts " 文件: #{@args_nupkg_file}"
|
99
102
|
puts " 大小: #{sprintf('%.2f', File.size(@args_nupkg_file) / 1024.0 / 1024.0)} MB"
|
100
103
|
puts
|
101
104
|
|
105
|
+
# 一次性确认
|
106
|
+
answer = agree("确认上传?(Y/n)")
|
107
|
+
unless answer
|
108
|
+
puts "已取消上传"
|
109
|
+
return
|
110
|
+
end
|
111
|
+
|
102
112
|
# 上传到 JPS
|
103
|
-
upload_to_jps_nuget(@args_nupkg_file)
|
113
|
+
upload_to_jps_nuget(@args_nupkg_file, package_info)
|
104
114
|
|
105
115
|
puts
|
106
|
-
puts "=" * 60
|
107
116
|
puts "✅ 上传完成!"
|
108
|
-
puts "=" * 60
|
109
117
|
puts
|
110
118
|
|
111
119
|
# 上传成功后自动打 tag
|
@@ -114,7 +122,7 @@ module Pindo
|
|
114
122
|
|
115
123
|
private
|
116
124
|
|
117
|
-
def upload_to_jps_nuget(nupkg_file)
|
125
|
+
def upload_to_jps_nuget(nupkg_file, package_info)
|
118
126
|
# 1. 登录 JPS
|
119
127
|
config_file = File.join(
|
120
128
|
Pindoconfig.instance.pindo_common_configdir,
|
@@ -156,9 +164,6 @@ module Pindo
|
|
156
164
|
# 4. 提交到 JPS 项目
|
157
165
|
puts "📋 提交到 JPS 项目..."
|
158
166
|
|
159
|
-
# 读取 package.json 获取包信息
|
160
|
-
package_info = JSON.parse(File.read(File.join(Dir.pwd, "package.json")))
|
161
|
-
|
162
167
|
result = jps_client.upload_project_package(
|
163
168
|
projectId: nuget_project['id'],
|
164
169
|
params: {
|
@@ -211,24 +216,48 @@ module Pindo
|
|
211
216
|
end
|
212
217
|
|
213
218
|
def print_upload_result(result, package_info)
|
214
|
-
puts
|
215
|
-
puts "━" * 60
|
216
|
-
puts "📦 上传信息"
|
217
|
-
puts "━" * 60
|
218
|
-
puts "包名称: #{package_info['displayName']}"
|
219
|
-
puts "包ID: #{package_info['name']}"
|
220
|
-
puts "版本: #{package_info['version']}"
|
221
|
-
|
222
219
|
if result['data'] && result['data']['id']
|
223
|
-
puts "JPS ID: #{result['data']['id']}"
|
220
|
+
puts " JPS ID: #{result['data']['id']}"
|
224
221
|
end
|
222
|
+
end
|
225
223
|
|
226
|
-
|
224
|
+
def get_package_info_for_upload(package_dir)
|
225
|
+
# 优先尝试从 nuspec 文件读取
|
226
|
+
nuspec_file = Pindo::Unity::NugetHelper.find_nuspec_file(package_dir)
|
227
|
+
|
228
|
+
if nuspec_file && File.exist?(nuspec_file)
|
229
|
+
nuspec_info = Pindo::Unity::NugetHelper.parse_nuspec(nuspec_file)
|
230
|
+
|
231
|
+
# 转换为统一的格式(与 package.json 兼容)
|
232
|
+
# 注意:保持 nuspec 中 ID 的原始格式(驼峰)
|
233
|
+
return {
|
234
|
+
'name' => nuspec_info['id'], # 保持原始的驼峰格式
|
235
|
+
'version' => nuspec_info['version'],
|
236
|
+
'displayName' => nuspec_info['title'] || nuspec_info['id'],
|
237
|
+
'description' => nuspec_info['description']
|
238
|
+
}
|
239
|
+
end
|
240
|
+
|
241
|
+
# 如果没有 nuspec 文件,尝试从 package.json 读取
|
242
|
+
package_json_path = File.join(package_dir, "package.json")
|
243
|
+
|
244
|
+
if File.exist?(package_json_path)
|
245
|
+
return JSON.parse(File.read(package_json_path))
|
246
|
+
end
|
247
|
+
|
248
|
+
# 如果都没有,抛出错误
|
249
|
+
raise Informative, "未找到 .nuspec 或 package.json 文件,无法获取包信息"
|
227
250
|
end
|
228
251
|
|
229
252
|
def create_git_tag_from_nuspec(package_dir)
|
230
253
|
puts "🏷️ 创建 Git Tag..."
|
231
254
|
|
255
|
+
# 检查并更新 .gitignore 文件
|
256
|
+
ensure_build_directory_ignored(package_dir)
|
257
|
+
|
258
|
+
# 检查是否有未提交的文件
|
259
|
+
check_uncommitted_files(package_dir)
|
260
|
+
|
232
261
|
# 获取 .nuspec 文件并解析版本
|
233
262
|
nuspec_file = Pindo::Unity::NugetHelper.find_nuspec_file(package_dir)
|
234
263
|
unless nuspec_file
|
@@ -257,6 +286,94 @@ module Pindo
|
|
257
286
|
end
|
258
287
|
end
|
259
288
|
|
289
|
+
def check_uncommitted_files(package_dir)
|
290
|
+
# 获取未跟踪和已修改的文件
|
291
|
+
untracked_files = git!(%W(-C #{package_dir} ls-files --others --exclude-standard)).strip
|
292
|
+
modified_files = git!(%W(-C #{package_dir} diff --name-only)).strip
|
293
|
+
staged_files = git!(%W(-C #{package_dir} diff --cached --name-only)).strip
|
294
|
+
|
295
|
+
all_uncommitted = []
|
296
|
+
all_uncommitted += untracked_files.split("\n").reject(&:empty?) if !untracked_files.empty?
|
297
|
+
all_uncommitted += modified_files.split("\n").reject(&:empty?) if !modified_files.empty?
|
298
|
+
all_uncommitted += staged_files.split("\n").reject(&:empty?) if !staged_files.empty?
|
299
|
+
|
300
|
+
# 过滤掉 build 相关目录
|
301
|
+
all_uncommitted = all_uncommitted.reject do |file|
|
302
|
+
file.start_with?('build/') || file.start_with?('Build/') ||
|
303
|
+
file.start_with?('/build/') || file.start_with?('/Build/')
|
304
|
+
end
|
305
|
+
|
306
|
+
if all_uncommitted.any?
|
307
|
+
puts
|
308
|
+
puts "═" * 60
|
309
|
+
puts "⚠️ 警告:检测到未提交的文件".red
|
310
|
+
puts "═" * 60
|
311
|
+
puts
|
312
|
+
puts "以下文件尚未提交到 Git:".red
|
313
|
+
puts
|
314
|
+
all_uncommitted.each do |file|
|
315
|
+
puts " • #{file}".red
|
316
|
+
end
|
317
|
+
puts
|
318
|
+
puts "═" * 60
|
319
|
+
puts "建议先提交这些文件,或将它们添加到 .gitignore 中".red
|
320
|
+
puts "═" * 60
|
321
|
+
puts
|
322
|
+
end
|
323
|
+
end
|
324
|
+
|
325
|
+
def ensure_build_directory_ignored(package_dir)
|
326
|
+
gitignore_path = File.join(package_dir, '.gitignore')
|
327
|
+
|
328
|
+
# 要忽略的目录
|
329
|
+
build_patterns = [
|
330
|
+
'build/',
|
331
|
+
'/build/',
|
332
|
+
'Build/',
|
333
|
+
'/Build/'
|
334
|
+
]
|
335
|
+
|
336
|
+
# 读取现有的 .gitignore 内容
|
337
|
+
existing_patterns = []
|
338
|
+
if File.exist?(gitignore_path)
|
339
|
+
existing_patterns = File.readlines(gitignore_path).map(&:strip).reject(&:empty?)
|
340
|
+
end
|
341
|
+
|
342
|
+
# 检查是否已经包含 build 目录的忽略规则
|
343
|
+
has_build_ignore = existing_patterns.any? do |pattern|
|
344
|
+
pattern = pattern.strip
|
345
|
+
# 检查是否匹配 build 目录的各种形式
|
346
|
+
build_patterns.any? { |bp| pattern == bp || pattern == bp.chomp('/') }
|
347
|
+
end
|
348
|
+
|
349
|
+
# 如果没有包含 build 目录,则添加
|
350
|
+
unless has_build_ignore
|
351
|
+
puts "📝 更新 .gitignore 文件,添加 build/ 目录..."
|
352
|
+
|
353
|
+
# 追加 build 目录到 .gitignore
|
354
|
+
File.open(gitignore_path, 'a') do |file|
|
355
|
+
# 如果文件不为空且最后没有换行,添加换行
|
356
|
+
file.puts if existing_patterns.any? && !File.read(gitignore_path).end_with?("\n")
|
357
|
+
file.puts "# Unity build output"
|
358
|
+
file.puts "build/"
|
359
|
+
file.puts "Build/"
|
360
|
+
end
|
361
|
+
|
362
|
+
puts "✅ 已将 build 目录添加到 .gitignore"
|
363
|
+
|
364
|
+
# 提交 .gitignore 的更改
|
365
|
+
begin
|
366
|
+
git!(%W(-C #{package_dir} add .gitignore))
|
367
|
+
git!(%W(-C #{package_dir} commit -m "chore: 添加 build 目录到 .gitignore"))
|
368
|
+
puts "✅ 已提交 .gitignore 更改"
|
369
|
+
rescue => e
|
370
|
+
puts "⚠️ 提交 .gitignore 失败: #{e.message}"
|
371
|
+
end
|
372
|
+
else
|
373
|
+
puts "✅ .gitignore 已包含 build 目录规则"
|
374
|
+
end
|
375
|
+
end
|
376
|
+
|
260
377
|
end
|
261
378
|
end
|
262
379
|
end
|
@@ -76,6 +76,15 @@ module Pindo
|
|
76
76
|
package_info['name'] = to_lowercase_id(package_info['name'])
|
77
77
|
update_package_json_name(package_dir, package_info['name'])
|
78
78
|
|
79
|
+
# 检查 README.md 是否存在
|
80
|
+
readme_path = File.join(package_dir, "README.md")
|
81
|
+
unless File.exist?(readme_path)
|
82
|
+
puts "⚠️ 警告: 未找到 README.md 文件"
|
83
|
+
puts " README.md 是 NuGet 包的必需文件"
|
84
|
+
puts " 请创建 README.md 文件后再运行此命令"
|
85
|
+
puts
|
86
|
+
end
|
87
|
+
|
79
88
|
nuspec_path = File.join(package_dir, "#{package_info['displayName']}.nuspec")
|
80
89
|
|
81
90
|
# 生成 .nuspec,ID 使用驼峰格式
|
@@ -85,6 +94,11 @@ module Pindo
|
|
85
94
|
puts "✅ 根据 package.json 创建了 #{package_info['displayName']}.nuspec"
|
86
95
|
puts " package.json name: #{package_info['name']} (全小写)"
|
87
96
|
puts " .nuspec id: #{nuspec_id} (驼峰)"
|
97
|
+
|
98
|
+
unless File.exist?(readme_path)
|
99
|
+
puts
|
100
|
+
puts "⚠️ 重要提示: 打包前请确保创建 README.md 文件!"
|
101
|
+
end
|
88
102
|
end
|
89
103
|
|
90
104
|
# 情况B:只有 .nuspec,创建 package.json
|
@@ -191,8 +205,8 @@ module Pindo
|
|
191
205
|
conflicts << "版本不一致: package.json(#{package_info['version']}) vs .nuspec(#{nuspec_info['version']})"
|
192
206
|
end
|
193
207
|
|
194
|
-
# displayName/title
|
195
|
-
if package_info['displayName'] != nuspec_info['title']
|
208
|
+
# displayName/title 对比(title 是可选字段)
|
209
|
+
if nuspec_info['title'] && package_info['displayName'] != nuspec_info['title']
|
196
210
|
conflicts << "标题不一致: package.json displayName(#{package_info['displayName']}) vs .nuspec title(#{nuspec_info['title']})"
|
197
211
|
end
|
198
212
|
|
@@ -218,7 +232,7 @@ module Pindo
|
|
218
232
|
|
219
233
|
# 验证 .nuspec
|
220
234
|
def self.validate_nuspec(nuspec_info)
|
221
|
-
required_fields = ['id', 'version', '
|
235
|
+
required_fields = ['id', 'version', 'description', 'releaseNotes', 'readme', 'projectUrl']
|
222
236
|
missing = required_fields.select { |field| nuspec_info[field].nil? || nuspec_info[field].empty? }
|
223
237
|
|
224
238
|
unless missing.empty?
|
@@ -245,23 +259,44 @@ module Pindo
|
|
245
259
|
description = package_info['description'] || package_info['displayName'] || 'Unity Package'
|
246
260
|
release_notes = package_info['releaseNotes'] || package_info['changelogUrl'] || 'No release notes'
|
247
261
|
|
262
|
+
# 构建基础的 metadata 内容
|
263
|
+
metadata_content = []
|
264
|
+
metadata_content << " <id>#{nuspec_id}</id>"
|
265
|
+
metadata_content << " <version>#{package_info['version']}</version>"
|
266
|
+
# title 是可选字段,只有 displayName 存在时才添加
|
267
|
+
if package_info['displayName'] && !package_info['displayName'].empty?
|
268
|
+
metadata_content << " <title>#{package_info['displayName']}</title>"
|
269
|
+
end
|
270
|
+
metadata_content << " <authors>#{package_info['author'] || 'Unity Package'}</authors>"
|
271
|
+
metadata_content << " <requireLicenseAcceptance>false</requireLicenseAcceptance>"
|
272
|
+
metadata_content << " <license type=\"expression\">MIT</license>"
|
273
|
+
metadata_content << " <projectUrl>#{project_url}</projectUrl>"
|
274
|
+
metadata_content << " <description>#{description}</description>"
|
275
|
+
metadata_content << " <releaseNotes>#{release_notes}</releaseNotes>"
|
276
|
+
|
277
|
+
# README.md 是必需的,总是添加 readme 标签
|
278
|
+
metadata_content << " <readme>README.md</readme>"
|
279
|
+
|
280
|
+
# 检查 README.md 是否存在,用于 files 部分的处理
|
281
|
+
readme_path = File.join(File.dirname(nuspec_path), "README.md")
|
282
|
+
|
283
|
+
# 构建 files 部分,如果有 README.md 需要特殊处理
|
284
|
+
files_content = []
|
285
|
+
if File.exist?(readme_path)
|
286
|
+
files_content << ' <file src="README.md" target="" />'
|
287
|
+
files_content << ' <file src="**" exclude="build/**;.git/**;*.nuspec;*.nupkg;README.md" target="content" />'
|
288
|
+
else
|
289
|
+
files_content << ' <file src="**" exclude="build/**;.git/**;*.nuspec;*.nupkg" target="content" />'
|
290
|
+
end
|
291
|
+
|
248
292
|
nuspec_content = <<~XML
|
249
293
|
<?xml version="1.0" encoding="utf-8"?>
|
250
294
|
<package xmlns="http://schemas.microsoft.com/packaging/2013/05/nuspec.xsd">
|
251
295
|
<metadata>
|
252
|
-
|
253
|
-
<version>#{package_info['version']}</version>
|
254
|
-
<title>#{package_info['displayName']}</title>
|
255
|
-
<authors>#{package_info['author'] || 'Unity Package'}</authors>
|
256
|
-
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
257
|
-
<license type="expression">MIT</license>
|
258
|
-
<projectUrl>#{project_url}</projectUrl>
|
259
|
-
<description>#{description}</description>
|
260
|
-
<releaseNotes>#{release_notes}</releaseNotes>
|
261
|
-
<readme>README.md</readme>
|
296
|
+
#{metadata_content.join("\n")}
|
262
297
|
</metadata>
|
263
298
|
<files>
|
264
|
-
|
299
|
+
#{files_content.join("\n")}
|
265
300
|
</files>
|
266
301
|
</package>
|
267
302
|
XML
|
@@ -274,7 +309,7 @@ module Pindo
|
|
274
309
|
package_content = {
|
275
310
|
"name" => package_json_name,
|
276
311
|
"version" => nuspec_info['version'],
|
277
|
-
"displayName" => nuspec_info['title'],
|
312
|
+
"displayName" => nuspec_info['title'] || package_json_name, # 如果没有 title,使用 name 作为 displayName
|
278
313
|
"description" => nuspec_info['description'],
|
279
314
|
"unity" => "2020.3",
|
280
315
|
"releaseNotes" => nuspec_info['releaseNotes']
|
@@ -301,7 +336,8 @@ module Pindo
|
|
301
336
|
# 更新关键字段
|
302
337
|
package_info['name'] = to_lowercase_id(nuspec_info['id'])
|
303
338
|
package_info['version'] = nuspec_info['version']
|
304
|
-
|
339
|
+
# 如果 nuspec 有 title 字段才更新,否则保留原有的 displayName
|
340
|
+
package_info['displayName'] = nuspec_info['title'] if nuspec_info['title']
|
305
341
|
package_info['description'] = nuspec_info['description']
|
306
342
|
package_info['releaseNotes'] = nuspec_info['releaseNotes']
|
307
343
|
|
data/lib/pindo/version.rb
CHANGED
metadata
CHANGED
@@ -1,13 +1,13 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: pindo
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 5.5.
|
4
|
+
version: 5.5.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- wade
|
8
8
|
bindir: bin
|
9
9
|
cert_chain: []
|
10
|
-
date: 2025-09-
|
10
|
+
date: 2025-09-29 00:00:00.000000000 Z
|
11
11
|
dependencies:
|
12
12
|
- !ruby/object:Gem::Dependency
|
13
13
|
name: claide
|