ruby-jss 3.1.0b1 → 3.1.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/CHANGES.md +45 -12
- data/lib/jamf/api/classic/api_objects/scopable/scope.rb +2 -2
- data/lib/jamf/version.rb +1 -1
- metadata +4 -4
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 779e57b7a7c027827d1254a3e9ac100c648eea4d872c14a2bdd3af1b633613de
|
4
|
+
data.tar.gz: d8f19449e3bbd3c52031aaa4c9cfeeff83ac301be008e682db9cb9eacde2eb43
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 06a7448cf87691f9cf691de5836d43768d678daba0397bc3c21306ddb512c63204596962442be64a5e9a82653cc4446041b87bb0dff6274681c7bda1b81faea3
|
7
|
+
data.tar.gz: c3069994e4d1560b45f349b1d73b41834990c4e924b1dfbd65dcad3610ea3e258c8ce8f027fcf526a9bca47f7d8a2df4af686ca357e2e079d3ba5ea07b05f53b
|
data/CHANGES.md
CHANGED
@@ -15,21 +15,28 @@ __Please update all installations of ruby-jss to at least v1.6.0.__
|
|
15
15
|
Many many thanks to actae0n of Blacksun Hackers Club for reporting this issue and providing examples of how it could be exploited.
|
16
16
|
|
17
17
|
--------
|
18
|
-
## \[3.1.0] 2023-06-
|
18
|
+
## \[3.1.0] 2023-06-06
|
19
19
|
|
20
20
|
### Added
|
21
21
|
- Jamf::Computer.filevault_info and Jamf::Computer#filevault_info can retrieve FileVault info from v1/computer-inventory/filevault and related endpoints
|
22
22
|
- Jamf::Computer.recovery_lock_password and Jamf::Computer#recovery_lock_password can retrieve stored recovery lock passwords
|
23
|
+
- Jamf::Pager#last_fetched_page - Integer, the last page returned by #fetch_next_page
|
23
24
|
- There are now several ways to set scopes to all targets.
|
24
25
|
- The original #include_all has been renamed #set_all_targets, and #include_all is an alias to it
|
25
26
|
- The symbol :all can be passed to the #set_targets, and #add_target methods as they 'key' parameter, and they will just call #set_all_targets
|
26
27
|
- There is now a setter #all_targets=(bool) which calls #set_all_targets, or sets @all_targets to false
|
28
|
+
- So All of these are identical:
|
29
|
+
- `some_scope.set_all_targets`
|
30
|
+
- `some_scope.include_all`
|
31
|
+
- `some_scope.set_targets :all`
|
32
|
+
- `some_scope.add_target :all`
|
33
|
+
- `some_scope.all_targets = true`
|
27
34
|
|
28
35
|
### Fixed
|
29
36
|
- Fixed a bug in Jamf::Pager#initialize when constructing the query-path of the paged resource URL
|
30
37
|
- Fixed a bug in Jamf::Pager#initialize: The instantiate: parameter takes a class, not a boolean
|
31
38
|
- Fixed a bug in Jamf::CollectionResource.pager: The instantiate: parameter takes a boolean, but must pass a class to Jamf::Pager#initialize
|
32
|
-
- Jamf::OAPIObject base-class
|
39
|
+
- Jamf::OAPIObject (base-class) can now instantiate objects that hold a single value
|
33
40
|
|
34
41
|
### Changed
|
35
42
|
- Auto-generated OAPISchemas have been refreshed from Jamf Pro 10.46.0
|
@@ -90,13 +97,38 @@ Version 2.0.0 is a major refactoring of ruby-jss. While attempting to provide as
|
|
90
97
|
|
91
98
|
Here are the high-level changes and there are many many others. For more details, see [CHANGES-2.0.0.md](CHANGES-2.0.0.md)
|
92
99
|
|
93
|
-
|
94
|
-
|
95
|
-
-
|
96
|
-
|
100
|
+
### Added
|
101
|
+
|
102
|
+
- Support for Ruby 3.x
|
103
|
+
- tested in 3.0 and 3.1
|
104
|
+
- Combined access to both the Classic and Jamf Pro APIs
|
105
|
+
- A single namespace module
|
97
106
|
- Connection objects talk to both APIs & automatically handle details like bearer tokens
|
98
|
-
- Auto-generated code for Jamf Pro API objects
|
99
|
-
- Autoloading of code using [Zeitwerk](https://github.com/fxn/zeitwerk)
|
107
|
+
- Auto-generated code for Jamf Pro API objects
|
108
|
+
- Autoloading of code using [Zeitwerk](https://github.com/fxn/zeitwerk)
|
109
|
+
|
110
|
+
### Changed
|
111
|
+
|
112
|
+
These things are notably different in v2.0.0
|
113
|
+
- Paged queries to the Jamf Pro API
|
114
|
+
- API data are no longer cached for the JP API, possibly eventually for the classic
|
115
|
+
- No Attribute aliases for Jamf Pro API objects
|
116
|
+
- Class/Mixin hierarchy for Jamf Pro API objects
|
117
|
+
- Support for 'Sticky Sessions' in Jamf Cloud
|
118
|
+
- The valid_id method for Classic API collection classes
|
119
|
+
|
120
|
+
### Deprecated
|
121
|
+
|
122
|
+
These things will go away in some future version of ruby-jss, please update your code sooner than later.
|
123
|
+
|
124
|
+
- Use of the term 'api'
|
125
|
+
- .map_all_ids_to method for Classic API collection classes
|
126
|
+
- Using .make, #create, and #update for Classic API objects
|
127
|
+
- JSS::CONFIG
|
128
|
+
- Jamf::Connection instance methods #next_refresh, #secs_to_refresh, & #time_to_refresh
|
129
|
+
- Cross-object validation in setters
|
130
|
+
- fetch :random
|
131
|
+
|
100
132
|
|
101
133
|
## \[1.6.7] - 2022-02-22
|
102
134
|
|
@@ -164,10 +196,6 @@ Here are the high-level changes and there are many many others. For more details
|
|
164
196
|
|
165
197
|
### Changed
|
166
198
|
|
167
|
-
- ruby-jss no longer uses the 'plist' gem due to a remote code execution security issue when using `Plist.parse_xml`. Plists are now handled by the CFPropertyList gem. The existing wrapper method `JSS.parse_plist` bas been updated to use the new gem, and a new wrapper method has been added to convert ruby data to XML plist: `JSS.xml_plist_from(data)`. All internal references to methods from the insecure 'plist' gem have been replaced with calls to those wrapper methods.
|
168
|
-
|
169
|
-
Many many thanks to actae0n of Blacksun Hackers Club for reporting this security issue and providing examples of how it could be exploited.
|
170
|
-
|
171
199
|
- In preparation for the removal of the 'runScript' command in the jamf binary, JSS::Script no longer uses it within the 'run' instance method. Instead, it just does what the jamf binary did: It creates a private temp folder, writes the script to disk in that temp folder, executes the script with any given params, then deletes the folder, returning the exit status and output from the script.
|
172
200
|
|
173
201
|
- Jamf::Script#run now takes parameters in the named params `p4:` through `p11:` for consistency with other parts of ruby-jss.
|
@@ -178,6 +206,11 @@ Here are the high-level changes and there are many many others. For more details
|
|
178
206
|
|
179
207
|
- JSS.expand_min_os has been updated to handle Apple's new version numbers for macOS. This method takes a string like '>=10.14.3' and expands it into a large array of greater OS versions and is used by the 'os_limitations' method of Packages and Scripts. For any range of versions that includes Big Sur, both '11.x.x' and '10.16' as included in the output, to catch machines that may have SYSTEM_VERSION_COMPAT set in their env.
|
180
208
|
|
209
|
+
### Security
|
210
|
+
|
211
|
+
- ruby-jss no longer uses the 'plist' gem due to a remote code execution security issue when using `Plist.parse_xml`. Plists are now handled by the CFPropertyList gem. The existing wrapper method `JSS.parse_plist` bas been updated to use the new gem, and a new wrapper method has been added to convert ruby data to XML plist: `JSS.xml_plist_from(data)`. All internal references to methods from the insecure 'plist' gem have been replaced with calls to those wrapper methods.
|
212
|
+
|
213
|
+
Many many thanks to actae0n of Blacksun Hackers Club for reporting this security issue and providing examples of how it could be exploited.
|
181
214
|
|
182
215
|
## \[1.5.3] - 2020-12-28
|
183
216
|
|
@@ -430,7 +430,7 @@ module Jamf
|
|
430
430
|
#
|
431
431
|
# @return [void]
|
432
432
|
#
|
433
|
-
def set_targets(key, list)
|
433
|
+
def set_targets(key, list = nil)
|
434
434
|
if key == :all
|
435
435
|
set_all_targets
|
436
436
|
return
|
@@ -494,7 +494,7 @@ module Jamf
|
|
494
494
|
#
|
495
495
|
# @return [void]
|
496
496
|
#
|
497
|
-
def add_target(key, item)
|
497
|
+
def add_target(key, item = nil)
|
498
498
|
if key == :all
|
499
499
|
set_all_targets
|
500
500
|
return
|
data/lib/jamf/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: ruby-jss
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 3.1.
|
4
|
+
version: 3.1.0
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Chris Lasell
|
@@ -10,7 +10,7 @@ authors:
|
|
10
10
|
autorequire:
|
11
11
|
bindir: bin
|
12
12
|
cert_chain: []
|
13
|
-
date: 2023-06-
|
13
|
+
date: 2023-06-06 00:00:00.000000000 Z
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
16
16
|
name: CFPropertyList
|
@@ -882,9 +882,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
882
882
|
version: 2.6.3
|
883
883
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
884
884
|
requirements:
|
885
|
-
- - "
|
885
|
+
- - ">="
|
886
886
|
- !ruby/object:Gem::Version
|
887
|
-
version:
|
887
|
+
version: '0'
|
888
888
|
requirements: []
|
889
889
|
rubygems_version: 3.0.3.1
|
890
890
|
signing_key:
|