jess 0.9.0 → 0.10.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: 0fe57a74d1ff37c5e48c21dd905ebef337717948d1f505cb827efbbf74e41c0d
4
- data.tar.gz: f87f8e0e7e079cb737fbe8fbe9db3227a5851a282efd22df5b58be906dc47149
3
+ metadata.gz: 9d580d4a7a9308dd1a36bb61195b99e302e3dfba31e4bc3a7f3f8dc5cb65b97f
4
+ data.tar.gz: 0b3e3df95af91a65d3d3146fd88a990401c3b155b42adeb779522cdc6e5ac018
5
5
  SHA512:
6
- metadata.gz: 80a39ad9aa312c90aa53b483c83ff1847d99e11c3dfbfa821dac4fcadc27dca3823b2a4783c0ccaf9ba00de295d41c69df30fa5673d2fa2803047c7181c6a94e
7
- data.tar.gz: 19bdfdd31377b3e8b6cf7e5c7b68ef91d378f3aa2ebe7556bee94eb25828b39b22f02f27ab2deb675c4e49942ece7589b562eb208bb697433cc41f129c4bd2fa
6
+ metadata.gz: df658d4cfc4e4745e37649bc96156756789833373b60efcc86be448df5e7e70c0204df34d2c2b6781abb6528651f36d29a445859f20d0c26b142234112047885
7
+ data.tar.gz: 964f7e054c7bb6d0b7f2e118dd8656448a3f54123e786e861c1f4e3ff1efec4ec70f1f860fe7c76761937e74977f1aabd4c93f4ab1fba9ba21e95a87c2b0f27f
@@ -0,0 +1,9 @@
1
+ workflow "Push" {
2
+ on = "push"
3
+ resolves = ["Draft Release"]
4
+ }
5
+
6
+ action "Draft Release" {
7
+ uses = "toolmantim/release-drafter@v5.1.1"
8
+ secrets = ["GITHUB_TOKEN"]
9
+ }
@@ -4,4 +4,3 @@ Describe what you changed and why you changed it, and then review the checklist
4
4
 
5
5
  - [ ] All tests and RuboCop checks pass (`bundle exec rake`)
6
6
  - [ ] Test(s) included
7
- - [ ] CHANGELOG entry included
@@ -0,0 +1,17 @@
1
+ name-template: "$NEXT_PATCH_VERSION"
2
+ tag-template: "v$NEXT_PATCH_VERSION"
3
+ categories:
4
+ - title: "⚠️ Breaking Changes"
5
+ label: "⚠️ Breaking"
6
+ - title: "✨ New Features"
7
+ label: "✨ Feature"
8
+ - title: "🐛 Bug Fixes"
9
+ label: "🐛 Bug Fix"
10
+ - title: "📚 Documentation"
11
+ label: "📚 Docs"
12
+ - title: "🏠 Housekeeping"
13
+ label: "🏠 Housekeeping"
14
+ change-template: "- $TITLE (#$NUMBER) @$AUTHOR"
15
+ no-changes-template: "- No changes"
16
+ template: |
17
+ $CHANGES
@@ -0,0 +1,2 @@
1
+ /.travis.yml
2
+ /CODE_OF_CONDUCT.md
@@ -1,7 +1,13 @@
1
+ require:
2
+ - rubocop-performance
3
+
1
4
  AllCops:
2
5
  DisplayCopNames: true
3
6
  DisplayStyleGuide: true
4
- TargetRubyVersion: 2.3
7
+ TargetRubyVersion: 2.4
8
+
9
+ Layout/SpaceAroundEqualsInParameterDefault:
10
+ EnforcedStyle: no_space
5
11
 
6
12
  Metrics/AbcSize:
7
13
  Exclude:
@@ -10,6 +16,7 @@ Metrics/AbcSize:
10
16
  Metrics/BlockLength:
11
17
  Exclude:
12
18
  - "*.gemspec"
19
+ - "Rakefile"
13
20
 
14
21
  Metrics/ClassLength:
15
22
  Exclude:
@@ -34,6 +41,7 @@ Style/ClassAndModuleChildren:
34
41
 
35
42
  Style/Documentation:
36
43
  Exclude:
44
+ - "Rakefile"
37
45
  - 'test/**/*'
38
46
 
39
47
  Style/DoubleNegation:
@@ -42,9 +50,6 @@ Style/DoubleNegation:
42
50
  Style/FrozenStringLiteralComment:
43
51
  Enabled: false
44
52
 
45
- Style/SpaceAroundEqualsInParameterDefault:
46
- EnforcedStyle: no_space
47
-
48
53
  Style/StringLiterals:
49
54
  EnforcedStyle: double_quotes
50
55
 
@@ -1,12 +1,13 @@
1
+ ---
1
2
  sudo: false
2
3
  language: ruby
3
4
  cache: bundler
4
5
  rvm:
5
- - 2.3.8
6
- - 2.4.5
7
- - 2.5.3
8
- - 2.6.0
9
- - ruby-head
6
+ - 2.4.6
7
+ - 2.5.5
8
+ - 2.6.3
9
+ - ruby-head
10
10
  before_install:
11
- - gem update --system
12
- - gem install bundler --no-document
11
+ - gem update --system
12
+ - gem install bundler -v 2.0.2 --conservative --no-document
13
+ - gem install executable-hooks --conservative --no-document
@@ -1,56 +1 @@
1
- # Jess Change Log
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- Jess is in a pre-1.0 state. This means that its APIs and behavior are subject to breaking changes without deprecation notices. Until 1.0, version numbers will follow a [Semver][]-ish `0.y.z` format, where `y` is incremented when new features or breaking changes are introduced, and `z` is incremented for lesser changes or bug fixes.
6
-
7
- ## [Unreleased][]
8
-
9
- * Your contribution here!
10
-
11
- ## [0.9.0][] (2018-12-30)
12
-
13
- * **Drop support for EOL Ruby versions.** Ruby >= 2.3.0 is now required.
14
-
15
- ## [0.8.0][] (2018-08-10)
16
-
17
- * Provide more details in the exception object when an error occurs, including the full response body
18
-
19
- ## [0.7.0][] (2018-04-13)
20
-
21
- * Roll back logging changes introduced in 0.6.0 (sorry)
22
-
23
- ## [0.6.0][] (2018-04-12)
24
-
25
- * Log more detailed stack trace when an HTTP error occurs
26
-
27
- ## [0.5.0][] (2018-03-18)
28
-
29
- * `to_s` now produces the same output as `inspect` for `Computer` and `MobileDevice`
30
-
31
- ## [0.4.0][] (2018-01-03)
32
-
33
- * `extension_attributes` now responds to `_json` like other objects
34
-
35
- ## [0.3.0][] (2017-03-17)
36
-
37
- * Add `computers.all_ids` and `mobile_devices.all_ids`
38
-
39
- ## [0.2.0][] (2017-01-21)
40
-
41
- * Improved support for using jess in irb with `awesome_print` by implementing `to_hash` on resources
42
-
43
- ## 0.1.0 (2016-10-03)
44
-
45
- * Initial release
46
-
47
- [Semver]: http://semver.org
48
- [Unreleased]: https://github.com/mattbrictson/jess/compare/v0.9.0...HEAD
49
- [0.9.0]: https://github.com/mattbrictson/jess/compare/v0.8.0...v0.9.0
50
- [0.8.0]: https://github.com/mattbrictson/jess/compare/v0.7.0...v0.8.0
51
- [0.7.0]: https://github.com/mattbrictson/jess/compare/v0.6.0...v0.7.0
52
- [0.6.0]: https://github.com/mattbrictson/jess/compare/v0.5.0...v0.6.0
53
- [0.5.0]: https://github.com/mattbrictson/jess/compare/v0.4.0...v0.5.0
54
- [0.4.0]: https://github.com/mattbrictson/jess/compare/v0.3.0...v0.4.0
55
- [0.3.0]: https://github.com/mattbrictson/jess/compare/v0.2.0...v0.3.0
56
- [0.2.0]: https://github.com/mattbrictson/jess/compare/v0.1.0...v0.2.0
1
+ Release notes for this project are kept here: https://github.com/mattbrictson/jess/releases
@@ -1,6 +1,6 @@
1
1
  The MIT License (MIT)
2
2
 
3
- Copyright (c) 2018 Matt Brictson
3
+ Copyright (c) 2019 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
@@ -32,7 +32,7 @@ Or install it yourself as:
32
32
 
33
33
  $ gem install jess
34
34
 
35
- *Note that Jess requires Ruby 2.1.0 or newer.*
35
+ *Note that Jess requires Ruby 2.4 or newer.*
36
36
 
37
37
  ## Usage
38
38
 
@@ -123,7 +123,7 @@ The [ruby-jss](http://pixaranimationstudios.github.io/ruby-jss/) gem is the most
123
123
 
124
124
  ## Who uses Jess?
125
125
 
126
- Jess powers [Robot Cloud Dashboard](http://www.robotcloud.net/dashboard/).
126
+ Jess powers [Robot Cloud Vision-Bot](http://www.robotcloud.net/dashboard/).
127
127
 
128
128
  ## Development
129
129
 
data/Rakefile CHANGED
@@ -1,5 +1,4 @@
1
1
  require "bundler/gem_tasks"
2
- require "chandler/tasks"
3
2
  require "rake/testtask"
4
3
  require "rubocop/rake_task"
5
4
 
@@ -11,5 +10,97 @@ end
11
10
 
12
11
  RuboCop::RakeTask.new
13
12
 
14
- task "release:rubygem_push" => "chandler:push"
15
13
  task default: %i[test rubocop]
14
+
15
+ Rake::Task["release"].enhance do
16
+ puts "Don't forget to publish the release on GitHub!"
17
+ system "open https://github.com/mattbrictson/jess/releases"
18
+ end
19
+
20
+ task bump: %w[bump:bundler bump:ruby bump:year]
21
+
22
+ namespace :bump do
23
+ task :bundler do
24
+ version = Gemfile.bundler_version
25
+ replace_in_file ".travis.yml", /bundler -v (\S+)/ => version
26
+ end
27
+
28
+ task :ruby do
29
+ lowest = RubyVersions.lowest_supported
30
+ lowest_minor = RubyVersions.lowest_supported_minor
31
+
32
+ replace_in_file "jess.gemspec", /ruby_version = ">= (.*)"/ => lowest
33
+ replace_in_file ".rubocop.yml", /TargetRubyVersion: (.*)/ => lowest_minor
34
+ replace_in_file "README.md", /requires Ruby (\d\.\d)/i => lowest_minor
35
+
36
+ travis = YAML.safe_load(open(".travis.yml"))
37
+ travis["rvm"] = RubyVersions.latest_supported_patches + ["ruby-head"]
38
+ IO.write(".travis.yml", YAML.dump(travis))
39
+ end
40
+
41
+ task :year do
42
+ replace_in_file "LICENSE.txt", /\(c\) (\d+)/ => Date.today.year.to_s
43
+ end
44
+ end
45
+
46
+ require "date"
47
+ require "open-uri"
48
+ require "yaml"
49
+
50
+ def replace_in_file(path, replacements)
51
+ contents = IO.read(path)
52
+ orig_contents = contents.dup
53
+ replacements.each do |regexp, text|
54
+ contents.gsub!(regexp) do |match|
55
+ match[regexp, 1] = text
56
+ match
57
+ end
58
+ end
59
+ IO.write(path, contents) if contents != orig_contents
60
+ end
61
+
62
+ module Gemfile
63
+ class << self
64
+ def bundler_version
65
+ lock_file[/BUNDLED WITH\n (\S+)$/, 1]
66
+ end
67
+
68
+ private
69
+
70
+ def lock_file
71
+ @_lock_file ||= IO.read("Gemfile.lock")
72
+ end
73
+ end
74
+ end
75
+
76
+ module RubyVersions
77
+ class << self
78
+ def lowest_supported
79
+ "#{lowest_supported_minor}.0"
80
+ end
81
+
82
+ def lowest_supported_minor
83
+ latest_supported_patches.first[/\d+\.\d+/]
84
+ end
85
+
86
+ def latest
87
+ latest_supported_patches.last
88
+ end
89
+
90
+ def latest_supported_patches
91
+ patches = [versions[:stable], versions[:security_maintenance]].flatten
92
+ patches.map(&Gem::Version.method(:new)).sort.map(&:to_s)
93
+ end
94
+
95
+ private
96
+
97
+ def versions
98
+ @_versions ||= begin
99
+ yaml = open(
100
+ "https://raw.githubusercontent.com/ruby/www.ruby-lang.org/master/_data/downloads.yml"
101
+ )
102
+ YAML.safe_load(yaml, symbolize_names: true)
103
+ end
104
+ end
105
+ end
106
+ end
@@ -27,15 +27,15 @@ Gem::Specification.new do |spec|
27
27
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
28
28
  spec.require_paths = ["lib"]
29
29
 
30
- spec.required_ruby_version = ">= 2.3.0"
30
+ spec.required_ruby_version = ">= 2.4.0"
31
31
 
32
32
  spec.add_development_dependency "awesome_print", "~> 1.7"
33
- spec.add_development_dependency "bundler", "~> 1.13"
34
- spec.add_development_dependency "chandler", "~> 0.3"
33
+ spec.add_development_dependency "bundler", "~> 2.0"
35
34
  spec.add_development_dependency "coveralls", "~> 0.8.15"
36
35
  spec.add_development_dependency "minitest", "~> 5.0"
37
36
  spec.add_development_dependency "minitest-reporters", "~>1.1"
38
37
  spec.add_development_dependency "rake", "~> 12.0"
39
- spec.add_development_dependency "rubocop", "= 0.61.1"
38
+ spec.add_development_dependency "rubocop", "= 0.71.0"
39
+ spec.add_development_dependency "rubocop-performance", "= 1.4.0"
40
40
  spec.add_development_dependency "webmock", "~> 3.1"
41
41
  end
@@ -1,3 +1,3 @@
1
1
  module Jess
2
- VERSION = "0.9.0".freeze
2
+ VERSION = "0.10.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.9.0
4
+ version: 0.10.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: 2018-12-30 00:00:00.000000000 Z
11
+ date: 2019-06-22 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: awesome_print
@@ -30,28 +30,14 @@ dependencies:
30
30
  requirements:
31
31
  - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '1.13'
33
+ version: '2.0'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
38
  - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '1.13'
41
- - !ruby/object:Gem::Dependency
42
- name: chandler
43
- requirement: !ruby/object:Gem::Requirement
44
- requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '0.3'
48
- type: :development
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '0.3'
40
+ version: '2.0'
55
41
  - !ruby/object:Gem::Dependency
56
42
  name: coveralls
57
43
  requirement: !ruby/object:Gem::Requirement
@@ -114,14 +100,28 @@ dependencies:
114
100
  requirements:
115
101
  - - '='
116
102
  - !ruby/object:Gem::Version
117
- version: 0.61.1
103
+ version: 0.71.0
104
+ type: :development
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - '='
109
+ - !ruby/object:Gem::Version
110
+ version: 0.71.0
111
+ - !ruby/object:Gem::Dependency
112
+ name: rubocop-performance
113
+ requirement: !ruby/object:Gem::Requirement
114
+ requirements:
115
+ - - '='
116
+ - !ruby/object:Gem::Version
117
+ version: 1.4.0
118
118
  type: :development
119
119
  prerelease: false
120
120
  version_requirements: !ruby/object:Gem::Requirement
121
121
  requirements:
122
122
  - - '='
123
123
  - !ruby/object:Gem::Version
124
- version: 0.61.1
124
+ version: 1.4.0
125
125
  - !ruby/object:Gem::Dependency
126
126
  name: webmock
127
127
  requirement: !ruby/object:Gem::Requirement
@@ -143,8 +143,11 @@ executables: []
143
143
  extensions: []
144
144
  extra_rdoc_files: []
145
145
  files:
146
+ - ".github/main.workflow"
146
147
  - ".github/pull_request_template.md"
148
+ - ".github/release-drafter.yml"
147
149
  - ".gitignore"
150
+ - ".prettierignore"
148
151
  - ".rubocop.yml"
149
152
  - ".travis.yml"
150
153
  - CHANGELOG.md
@@ -186,14 +189,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
186
189
  requirements:
187
190
  - - ">="
188
191
  - !ruby/object:Gem::Version
189
- version: 2.3.0
192
+ version: 2.4.0
190
193
  required_rubygems_version: !ruby/object:Gem::Requirement
191
194
  requirements:
192
195
  - - ">="
193
196
  - !ruby/object:Gem::Version
194
197
  version: '0'
195
198
  requirements: []
196
- rubygems_version: 3.0.1
199
+ rubygems_version: 3.0.4
197
200
  signing_key:
198
201
  specification_version: 4
199
202
  summary: Lightweight, unofficial client for the JAMF Software Server (JSS) API