compliance_engine 1.0.0 → 1.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: 2b2825442a658e3b82dd5416b52f491b8aaa2ead035a3c47692c9b873fa2c51d
4
- data.tar.gz: 551f20825476674d946d8dfdc2f86c12132ed882616d09bd47704b46df95b359
3
+ metadata.gz: 322eb116109ed08e365e9b94af1fe1b6df7fb56fd6ea30b04eca07db18606ff7
4
+ data.tar.gz: 026e5d8e77d36830b6653cb64e77421086914aadd7e0ce916648a1a26d4cc1c9
5
5
  SHA512:
6
- metadata.gz: 27ccd78087cf686a891954f1f9ee2c2731a6542e432073465c4aaef6697574317ec9370c3df182d8d95abf01b9e7efc906a761b54c8868b15af11e374b9fd8e2
7
- data.tar.gz: 9792d49a21cd6f3929362be5a4b63f7f770438e1658b8a9806caead3e399263ad8918220cca006f74aff7166012f19b8468567ac6e8186ba0a95ea9ea8653ff5
6
+ metadata.gz: 86d647c9d758c8ba92c078c4784a2b70416dbac30f5ea9f5e1b03e0be34ba137111b689566a1376a792d9ab2ab0a9b1f0b9efb00c5e3df48e3fd2d528ad3c21b
7
+ data.tar.gz: 8e6e3c9614648e25146e16a29d730977896c8131ba149143b67cfb236422523e18ef04b25e6370da4009214f9aea920ed100fffce1d8c2c0f6fdc7eebfb611ee
data/CHANGELOG.md CHANGED
@@ -1,3 +1,6 @@
1
+ ### 1.1.0 / 2026-06-11
2
+ * Include `Enumerable` in `ComplianceEngine::Collection` so all collections (`Ces`, `Checks`, `Controls`, `Profiles`) gain the full Enumerable interface (`#each_with_object`, `#map`, `#reduce`, `#find`, ...); they defined `#each` but raised `NoMethodError` on these. The explicit `#select`/`#reject` still return Collections. (#127)
3
+
1
4
  ### 1.0.0 / 2026-06-04
2
5
  * Declare the gem and Puppet module production-ready; no functional changes since 0.6.0
3
6
 
@@ -4,6 +4,13 @@ require_relative '../compliance_engine'
4
4
 
5
5
  # A generic compliance engine data collection
6
6
  class ComplianceEngine::Collection
7
+ # Collections define #each (yielding [name, component] pairs), so mixing in
8
+ # Enumerable gives them the full collection interface: #each_with_object,
9
+ # #map, #reduce, #find, #count, etc. The #select/#reject defined explicitly on
10
+ # this class shadow Enumerable's, so they keep returning Collections rather
11
+ # than Arrays. See #37.
12
+ include Enumerable
13
+
7
14
  # A generic compliance engine data collection
8
15
  #
9
16
  # @param data [ComplianceEngine::Data] the data to initialize the object with
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module ComplianceEngine
4
- VERSION = '1.0.0'
4
+ VERSION = '1.1.0'
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: compliance_engine
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Steven Pritchard
@@ -159,7 +159,7 @@ licenses:
159
159
  metadata:
160
160
  homepage_uri: https://simp-project.com/docs/sce/
161
161
  source_code_uri: https://github.com/simp/rubygem-simp-compliance_engine
162
- changelog_uri: https://github.com/simp/rubygem-simp-compliance_engine/releases/tag/1.0.0
162
+ changelog_uri: https://github.com/simp/rubygem-simp-compliance_engine/releases/tag/1.1.0
163
163
  bug_tracker_uri: https://github.com/simp/rubygem-simp-compliance_engine/issues
164
164
  rdoc_options: []
165
165
  require_paths: