jess 0.3.0 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
- SHA1:
3
- metadata.gz: 48fd46f06e9a6c2d58d0de2f67688181dfc76fde
4
- data.tar.gz: 5e470a373b74bc80c61798bb4a0bf34410324fdf
2
+ SHA256:
3
+ metadata.gz: 36a2ecd8c27f51eb1cad14d0cf14b18d54ec301eb160ae5dec87668e5c44bb75
4
+ data.tar.gz: fbf618a240b264e884511d5b77f6799b487eab72210fdcee30a2dbcef1693b83
5
5
  SHA512:
6
- metadata.gz: '098a0a6c1dd81cdcfcd866ca02b46848d36801b94c96a19b193e61a3a4797c6429fda18e044d452c94c7ef1aa3843302504adb2e047d68a32504dfa9d551feb9'
7
- data.tar.gz: 03f400c779bd32cfc2f4822bface0f65be71f2c0324b7ea5958b15767b2b14562b66c6e0973e28e8e3d0c68bdb58d3df88cfa9975d5f6eb5b6799b7631ee00f6
6
+ metadata.gz: 72efc59c335fc190672a20a35503c12b231fda070d6a0c4649d8e4a4c80160ceb603090433b1b808784fa5c8c88f89284669df3a191762654ddba1f1bc1a457f
7
+ data.tar.gz: 6086728baabc85e915e6b36b8204739cfc3126088bc2dc392053313d0f1e8d564861e5137e94a288dc5d56abc23aedaab1d013f2868b7a7c325b739f1616394c
data/.travis.yml CHANGED
@@ -1,8 +1,13 @@
1
1
  sudo: false
2
2
  language: ruby
3
+ cache: bundler
3
4
  rvm:
4
5
  - 2.1.10
5
- - 2.2.6
6
- - 2.3.3
7
- - 2.4.0
8
- before_install: gem install bundler -v '~> 1.14' --conservative
6
+ - 2.2.9
7
+ - 2.3.6
8
+ - 2.4.3
9
+ - 2.5.0
10
+ - ruby-head
11
+ before_install:
12
+ - gem update --system
13
+ - gem install bundler --no-document
data/CHANGELOG.md CHANGED
@@ -8,6 +8,10 @@ Jess is in a pre-1.0 state. This means that its APIs and behavior are subject to
8
8
 
9
9
  * Your contribution here!
10
10
 
11
+ ## [0.4.0][] (2018-01-03)
12
+
13
+ * `extension_attributes` now responds to `_json` like other objects
14
+
11
15
  ## [0.3.0][] (2017-03-17)
12
16
 
13
17
  * Add `computers.all_ids` and `mobile_devices.all_ids`
@@ -21,6 +25,7 @@ Jess is in a pre-1.0 state. This means that its APIs and behavior are subject to
21
25
  * Initial release
22
26
 
23
27
  [Semver]: http://semver.org
24
- [Unreleased]: https://github.com/mattbrictson/jess/compare/v0.3.0...HEAD
28
+ [Unreleased]: https://github.com/mattbrictson/jess/compare/v0.4.0...HEAD
29
+ [0.4.0]: https://github.com/mattbrictson/jess/compare/v0.3.0...v0.4.0
25
30
  [0.3.0]: https://github.com/mattbrictson/jess/compare/v0.2.0...v0.3.0
26
31
  [0.2.0]: https://github.com/mattbrictson/jess/compare/v0.1.0...v0.2.0
data/LICENSE.txt CHANGED
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2016 Matt Brictson
3
+ Copyright (c) 2018 Matt Brictson
4
4
 
5
5
  Permission is hereby granted, free of charge, to any person obtaining a copy
6
6
  of this software and associated documentation files (the "Software"), to deal
data/README.md CHANGED
@@ -88,7 +88,7 @@ computer.extension_attributes["My Ext Attr Name"] # => "value"
88
88
  If you ever need access to the raw JSON data of any object, use the `_json` method:
89
89
 
90
90
  ```ruby
91
- computer._json["extension_attributes"] # => [{ ... }]
91
+ computer.extension_attributes._json # => [{ ... }]
92
92
  ```
93
93
 
94
94
  ## Gotchas
data/Rakefile CHANGED
@@ -12,4 +12,4 @@ end
12
12
  RuboCop::RakeTask.new
13
13
 
14
14
  task "release:rubygem_push" => "chandler:push"
15
- task default: [:test, :rubocop]
15
+ task default: %i[test rubocop]
data/jess.gemspec CHANGED
@@ -1,4 +1,3 @@
1
- # coding: utf-8
2
1
  lib = File.expand_path("../lib", __FILE__)
3
2
  $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
3
  require "jess/version"
@@ -27,10 +26,9 @@ Gem::Specification.new do |spec|
27
26
  spec.add_development_dependency "bundler", "~> 1.13"
28
27
  spec.add_development_dependency "chandler", "~> 0.3"
29
28
  spec.add_development_dependency "coveralls", "~> 0.8.15"
30
- spec.add_development_dependency "rake", "~> 11.0"
31
29
  spec.add_development_dependency "minitest", "~> 5.0"
32
30
  spec.add_development_dependency "minitest-reporters", "~>1.1"
33
- spec.add_development_dependency "rainbow", "~> 2.1.0"
34
- spec.add_development_dependency "rubocop", "~> 0.43"
35
- spec.add_development_dependency "webmock", "~> 2.1"
31
+ spec.add_development_dependency "rake", "~> 12.0"
32
+ spec.add_development_dependency "rubocop", "0.52.1"
33
+ spec.add_development_dependency "webmock", "~> 3.1"
36
34
  end
data/lib/jess/computer.rb CHANGED
@@ -9,7 +9,7 @@ module Jess
9
9
  def_delegators :general, :id, :name
10
10
 
11
11
  def extension_attributes
12
- @ext_attrs ||= ExtensionAttributes.new(super)
12
+ @ext_attrs ||= ExtensionAttributes.new(_json["extension_attributes"])
13
13
  end
14
14
 
15
15
  def inspect
@@ -3,13 +3,14 @@ require "forwardable"
3
3
  module Jess
4
4
  # A Hash-like wrapper around the extension attributes that facilitates easy
5
5
  # key/value access.
6
- class ExtensionAttributes
6
+ class ExtensionAttributes < Resource
7
7
  extend Forwardable
8
8
  def_delegators :@values, :[], :fetch, :key?, :keys, :size, :length, :to_h
9
9
 
10
10
  def initialize(json)
11
+ super
11
12
  @values = json.each_with_object({}) do |attr, hash|
12
- hash[attr.name] = attr.value
13
+ hash[attr["name"]] = attr["value"]
13
14
  end
14
15
  @values.freeze
15
16
  end
@@ -9,7 +9,7 @@ module Jess
9
9
  def_delegators :general, :id, :name
10
10
 
11
11
  def extension_attributes
12
- @ext_attrs ||= ExtensionAttributes.new(super)
12
+ @ext_attrs ||= ExtensionAttributes.new(_json["extension_attributes"])
13
13
  end
14
14
 
15
15
  def inspect
data/lib/jess/version.rb CHANGED
@@ -1,3 +1,3 @@
1
1
  module Jess
2
- VERSION = "0.3.0".freeze
2
+ VERSION = "0.4.0".freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jess
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.3.0
4
+ version: 0.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Brictson
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2017-03-17 00:00:00.000000000 Z
11
+ date: 2018-01-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: awesome_print
@@ -66,20 +66,6 @@ dependencies:
66
66
  - - "~>"
67
67
  - !ruby/object:Gem::Version
68
68
  version: 0.8.15
69
- - !ruby/object:Gem::Dependency
70
- name: rake
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '11.0'
76
- type: :development
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '11.0'
83
69
  - !ruby/object:Gem::Dependency
84
70
  name: minitest
85
71
  requirement: !ruby/object:Gem::Requirement
@@ -109,47 +95,47 @@ dependencies:
109
95
  - !ruby/object:Gem::Version
110
96
  version: '1.1'
111
97
  - !ruby/object:Gem::Dependency
112
- name: rainbow
98
+ name: rake
113
99
  requirement: !ruby/object:Gem::Requirement
114
100
  requirements:
115
101
  - - "~>"
116
102
  - !ruby/object:Gem::Version
117
- version: 2.1.0
103
+ version: '12.0'
118
104
  type: :development
119
105
  prerelease: false
120
106
  version_requirements: !ruby/object:Gem::Requirement
121
107
  requirements:
122
108
  - - "~>"
123
109
  - !ruby/object:Gem::Version
124
- version: 2.1.0
110
+ version: '12.0'
125
111
  - !ruby/object:Gem::Dependency
126
112
  name: rubocop
127
113
  requirement: !ruby/object:Gem::Requirement
128
114
  requirements:
129
- - - "~>"
115
+ - - '='
130
116
  - !ruby/object:Gem::Version
131
- version: '0.43'
117
+ version: 0.52.1
132
118
  type: :development
133
119
  prerelease: false
134
120
  version_requirements: !ruby/object:Gem::Requirement
135
121
  requirements:
136
- - - "~>"
122
+ - - '='
137
123
  - !ruby/object:Gem::Version
138
- version: '0.43'
124
+ version: 0.52.1
139
125
  - !ruby/object:Gem::Dependency
140
126
  name: webmock
141
127
  requirement: !ruby/object:Gem::Requirement
142
128
  requirements:
143
129
  - - "~>"
144
130
  - !ruby/object:Gem::Version
145
- version: '2.1'
131
+ version: '3.1'
146
132
  type: :development
147
133
  prerelease: false
148
134
  version_requirements: !ruby/object:Gem::Requirement
149
135
  requirements:
150
136
  - - "~>"
151
137
  - !ruby/object:Gem::Version
152
- version: '2.1'
138
+ version: '3.1'
153
139
  description:
154
140
  email:
155
141
  - opensource@mattbrictson.com
@@ -204,7 +190,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
204
190
  version: '0'
205
191
  requirements: []
206
192
  rubyforge_project:
207
- rubygems_version: 2.6.10
193
+ rubygems_version: 2.7.4
208
194
  signing_key:
209
195
  specification_version: 4
210
196
  summary: Lightweight, unofficial client for the JAMF Software Server (JSS) API