hackmac 1.8.4 → 1.8.5

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: 4e6a5eddb6a8534ec0ab25e387690e533805343b7531b380bf0916ac4f181d72
4
+ data.tar.gz: 6906f6c55a4d2dd6f46b70cd44cb3bcfff16283e14871992d19cb22dc8a71ecf
5
5
  SHA512:
6
- metadata.gz: 39fe60b3de2e092ef2ce8a9ded9b2af554e25d30232072a8d04efd96908a573b924e27b5a2b324ea31849ec8849ef9ddbff7acfb847c8e7549084d78346fe9d5
7
- data.tar.gz: 13cb1c8da6b8aba179beae4fee69dc49c3dd69ed8bdea5542ffaa1acd99c19fc10155245a193105b419a7ce1f767b3c821cfaac61ce73d0ccdfc3682df51a98d
6
+ metadata.gz: f45158ccc125e01999b97272f89e3257a1d36b5a32546f3438af5cd99a2a5a1192004d62e9346eb28b12eafbbc28404f16ff2d310aaa95b93737d8a9a3fe5033
7
+ data.tar.gz: 98b0c59693b5f94146d12a49c7d2ace14f37bec4d9548ad1ca851d4ab1b1cd3777208fbe9cc7fa5003d4ae44c4f662335eb86cc2794242857c1fa56a55beb526
data/CHANGES.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changes
2
2
 
3
+ ## 2025-10-14 v1.8.5
4
+
5
+ - Improved version parsing in `github_source.rb` by adding regex validation
6
+ `/\A\d+\.\d+\.\d+\z/` before creating `Version` objects
7
+ - Enhanced version parsing in `kext.rb` with regex validation
8
+ `/\A\d+\.\d+\.\d+\z/` before parsing `CFBundleShortVersionString()` as a
9
+ version
10
+ - Both changes ensure only valid semantic version strings are processed by the
11
+ `Version` class, preventing errors from malformed version identifiers
12
+
3
13
  ## 2025-09-20 v1.8.4
4
14
 
5
15
  - 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.5
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.5 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.5".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 =~ /\A\d+\.\d+\.\d+\z/
52
52
  begin
53
53
  [ Version.new(tag), 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.5'
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.5
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