hackmac 1.8.4 → 1.8.6

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: 6e69904de91d7678019da3453c16e8553cd3de264dce2ff1fcfbc441569927f2
4
- data.tar.gz: c265c3472238619b334ff42d77cfdd2e21c5255731fa0dedc4d26510269d1c5b
3
+ metadata.gz: 8b2bc51ab6d94300e535af30fc3931de7572b80a29411ec75849ce06867bb4b1
4
+ data.tar.gz: 12acf28c6d64f4a4217c66d768be78478575cf8bb179a5daa8714fbc5e687304
5
5
  SHA512:
6
- metadata.gz: 39fe60b3de2e092ef2ce8a9ded9b2af554e25d30232072a8d04efd96908a573b924e27b5a2b324ea31849ec8849ef9ddbff7acfb847c8e7549084d78346fe9d5
7
- data.tar.gz: 13cb1c8da6b8aba179beae4fee69dc49c3dd69ed8bdea5542ffaa1acd99c19fc10155245a193105b419a7ce1f767b3c821cfaac61ce73d0ccdfc3682df51a98d
6
+ metadata.gz: 27e4ed6aba122141f9dccb26d43bd21255cb1f93826b5b53e4b292640ab4916335a748ece4705ecda54a9e6e1e7dc747f32117532823af9cfc03b4f099db1c21
7
+ data.tar.gz: 9157385cfdcf3b9c697b5b33d19a0babddbbf680f144d7d48a96a114690d7b732e95572cbf78c735db57e78c0abf9972669bea949f832f14355d393cca21457e
data/CHANGES.md CHANGED
@@ -1,5 +1,20 @@
1
1
  # Changes
2
2
 
3
+ ## 2025-10-14 v1.8.6
4
+
5
+ - Added support for consistent parsing of both **v1.2.3** and **1.2.3** tag
6
+ formats
7
+
8
+ ## 2025-10-14 v1.8.5
9
+
10
+ - Improved version parsing in `github_source.rb` by adding regex validation
11
+ `/\A\d+\.\d+\.\d+\z/` before creating `Version` objects
12
+ - Enhanced version parsing in `kext.rb` with regex validation
13
+ `/\A\d+\.\d+\.\d+\z/` before parsing `CFBundleShortVersionString()` as a
14
+ version
15
+ - Both changes ensure only valid semantic version strings are processed by the
16
+ `Version` class, preventing errors from malformed version identifiers
17
+
3
18
  ## 2025-09-20 v1.8.4
4
19
 
5
20
  - Added a new section titled "Documentation" to the README with a link to the
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.8.4
1
+ 1.8.6
data/hackmac.gemspec CHANGED
@@ -1,9 +1,9 @@
1
1
  # -*- encoding: utf-8 -*-
2
- # stub: hackmac 1.8.4 ruby lib
2
+ # stub: hackmac 1.8.6 ruby lib
3
3
 
4
4
  Gem::Specification.new do |s|
5
5
  s.name = "hackmac".freeze
6
- s.version = "1.8.4".freeze
6
+ s.version = "1.8.6".freeze
7
7
 
8
8
  s.required_rubygems_version = Gem::Requirement.new(">= 0".freeze) if s.respond_to? :required_rubygems_version=
9
9
  s.require_paths = ["lib".freeze]
@@ -22,7 +22,7 @@ Gem::Specification.new do |s|
22
22
 
23
23
  s.specification_version = 4
24
24
 
25
- s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 2.6".freeze])
25
+ s.add_development_dependency(%q<gem_hadar>.freeze, ["~> 2.8".freeze])
26
26
  s.add_development_dependency(%q<debug>.freeze, [">= 0".freeze])
27
27
  s.add_runtime_dependency(%q<tins>.freeze, ["~> 1.14".freeze])
28
28
  s.add_runtime_dependency(%q<term-ansicolor>.freeze, ["~> 1.10".freeze])
@@ -47,13 +47,14 @@ module Hackmac
47
47
  JSON.parse(o.read, object_class: JSON::GenericObject)
48
48
  }
49
49
  if max_version = releases.map { |r|
50
- next unless r.tag_name.include?(?.)
51
- tag = r.tag_name.delete '^.0-9'
50
+ tag = r.tag_name
51
+ if tag =~ /\Av?(\d+\.\d+\.\d+)\z/
52
52
  begin
53
- [ Version.new(tag), r ]
53
+ [ Version.new($1), r ]
54
54
  rescue ArgumentError
55
55
  end
56
- }.compact.max_by(&:first)
56
+ end
57
+ }.compact.max_by(&:first)
57
58
  then
58
59
  @version, @release = max_version
59
60
  end
data/lib/hackmac/kext.rb CHANGED
@@ -83,10 +83,12 @@ module Hackmac
83
83
  def version
84
84
  unless @version
85
85
  if version = CFBundleShortVersionString()
86
- begin
87
- @version = Version.new(version)
88
- rescue ArgumentError
89
- @version = version
86
+ if version =~ /\A\d+\.\d+\.\d+\z/
87
+ begin
88
+ @version = Version.new(version)
89
+ rescue ArgumentError
90
+ @version = version
91
+ end
90
92
  end
91
93
  end
92
94
  end
@@ -1,6 +1,6 @@
1
1
  module Hackmac
2
2
  # Hackmac version
3
- VERSION = '1.8.4'
3
+ VERSION = '1.8.6'
4
4
  VERSION_ARRAY = VERSION.split('.').map(&:to_i) # :nodoc:
5
5
  VERSION_MAJOR = VERSION_ARRAY[0] # :nodoc:
6
6
  VERSION_MINOR = VERSION_ARRAY[1] # :nodoc:
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: hackmac
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.8.4
4
+ version: 1.8.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - Florian Frank
@@ -15,14 +15,14 @@ dependencies:
15
15
  requirements:
16
16
  - - "~>"
17
17
  - !ruby/object:Gem::Version
18
- version: '2.6'
18
+ version: '2.8'
19
19
  type: :development
20
20
  prerelease: false
21
21
  version_requirements: !ruby/object:Gem::Requirement
22
22
  requirements:
23
23
  - - "~>"
24
24
  - !ruby/object:Gem::Version
25
- version: '2.6'
25
+ version: '2.8'
26
26
  - !ruby/object:Gem::Dependency
27
27
  name: debug
28
28
  requirement: !ruby/object:Gem::Requirement