simple_jsonapi 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
- SHA1:
3
- metadata.gz: f10f16e05e855aeb6e4921d0c99a93fbfddf698b
4
- data.tar.gz: bffd0d8041f0b5d8f4f0258c316391fa53e1cc9a
2
+ SHA256:
3
+ metadata.gz: cbbc2be0986ffd89bb33a180ad8284d51cc80ade159048ca50f8bcf5506351a2
4
+ data.tar.gz: 60d1b758d602e64266359b55580d0f7bd00d270ec4e7a574977a6620a654e562
5
5
  SHA512:
6
- metadata.gz: 8423802544073da058e2f9eec6192b260ed72ad672c8449a9e4dc8690fc4edafe0008e81aa21aa8ffc0169c391dae377aa9c1a57c157aaa8e229b1da4017587c
7
- data.tar.gz: f05181e2762f5069ed60c4b9d6f4bdc2a238d941c524a0888b3d78a4e5942be8a2cbd80eff5377d1dc0fdc8211d901016e68f7745c99df9014fe651fce8502c9
6
+ metadata.gz: 07b5abf147a21fe16c02438cf8e36854733112186127ac406f0687d61ef69d2ff40e5cf28a5d32303c91a85c39c0bb7ca7d822e1dc007236903d68029afa0251
7
+ data.tar.gz: 3ed39704342fb16f57e2e742f00fce6cc7a08f1b2dc8025b2c00b55d2cde74a26000e58996d73165154938104a49ebfc0e2e9ee8f9a4d1c12591c9ec12489fb6
data/CHANGELOG.md CHANGED
@@ -1,2 +1,5 @@
1
+ ## Version 1.1.0 - Sep 9, 2019
2
+ * Adding support for Rails 6
3
+
1
4
  ## Version 1.0.0 - April 19, 2018
2
5
  * Initial public release
data/Jenkinsfile CHANGED
@@ -1,92 +1,3 @@
1
- pipeline {
2
- agent none
3
- options {
4
- timeout(time: 1, unit: 'HOURS')
5
- skipDefaultCheckout()
6
- }
1
+ @Library('plm-global-jenkins')_
7
2
 
8
- stages {
9
- stage("Build Ruby") {
10
- agent {
11
- node {
12
- label 'docker'
13
- }
14
- }
15
-
16
- steps {
17
- script {
18
- with_ruby_build() {
19
- script {
20
- uid = sh(returnStdout: true, script: 'stat -c %g .').trim()
21
- gid = sh(returnStdout: true, script: 'stat -c %u .').trim()
22
- }
23
-
24
- sh "chown -R ${uid}:${gid} vendor/bundle/"
25
- sh "rm -rf vendor/bundle/ruby/2.3.0/cache"
26
- stash name: 'ruby-bundle', includes: 'vendor/bundle/'
27
- }
28
- }
29
- }
30
- }
31
-
32
- stage("Test") {
33
- steps {
34
- script {
35
- node('docker') {
36
- checkout([
37
- $class: 'GitSCM',
38
- branches: scm.branches,
39
- doGenerateSubmoduleConfigurations: scm.doGenerateSubmoduleConfigurations,
40
- extensions: scm.extensions + [[$class: 'CloneOption', noTags: true, reference: '', shallow: true]],
41
- userRemoteConfigs: scm.userRemoteConfigs
42
- ])
43
- try {
44
- docker.image('ruby:2.3.3').inside() {
45
- sh 'rm -rf vendor/bundle'
46
- unstash 'ruby-bundle'
47
- sh 'bundle install --path=vendor/bundle'
48
-
49
- withEnv([
50
- 'DISABLE_SPRING=1',
51
- 'TZ=America/New_York'
52
- ]) {
53
- sh 'bundle exec rake test'
54
- }
55
- }
56
- }
57
- finally {
58
- junit 'test/reports/'
59
- cleanWs()
60
- }
61
- }
62
- }
63
- }
64
- }
65
- }
66
-
67
- post {
68
- failure {
69
- script {
70
- if (env.BRANCH_NAME == 'master' || env.BRANCH_NAME == 'current') {
71
- slackSend (channel: '#plm_website', color: '#FF0000', message: "FAILED ${env.JOB_NAME} [${env.BUILD_NUMBER}] (${env.RUN_DISPLAY_URL})")
72
- }
73
- }
74
- }
75
- }
76
- }
77
-
78
- def with_ruby_build(closure) {
79
- docker.image('ruby:2.3.3').inside() {
80
- checkout([
81
- $class: 'GitSCM',
82
- branches: scm.branches,
83
- doGenerateSubmoduleConfigurations: scm.doGenerateSubmoduleConfigurations,
84
- extensions: scm.extensions + [[$class: 'CloneOption', noTags: true, reference: '', shallow: true]],
85
- userRemoteConfigs: scm.userRemoteConfigs
86
- ])
87
- sh 'rm -rf vendor/bundle'
88
- sh 'bundle install --path=vendor/bundle'
89
- closure()
90
- cleanWs()
91
- }
92
- }
3
+ publishRubyPackagePipeline('./lib/simple_jsonapi/version.rb', 'SimpleJsonapi::VERSION')
data/README.md CHANGED
@@ -1,12 +1,12 @@
1
1
  # SimpleJsonapi
2
2
 
3
- A library for building [JSONAPI](http://jsonapi.org) documents in Ruby. You may also be interested in [simple\_jsonapi\_rails](../simple_jsonapi_rails/README.md), which provides some integrations for using simple_jsonapi in a Rails application.
3
+ A library for building [JSON API](http://jsonapi.org) documents in Ruby. You may also be interested in [simple\_jsonapi\_rails](https://github.com/patientslikeme/simple_jsonapi_rails), which provides some integrations for using simple_jsonapi in a Rails application.
4
4
 
5
- To view this README and more documentation of specific classes and methods, view the YARD documentation by running `yard server --reload` and visiting http://localhost:8808.
5
+ To view this README and more documentation of specific classes and methods, view the [YARD documentation](https://www.rubydoc.info/gems/simple_jsonapi).
6
6
 
7
7
  ### Features
8
8
 
9
- SimpleJsonapi supports the following JSONAPI features:
9
+ SimpleJsonapi supports the following JSON API features:
10
10
 
11
11
  * Singular and collection endpoints
12
12
  * Attributes and relationships, including nested relationships
@@ -26,7 +26,7 @@ A specification for building APIs in JSON. As its creators [write](http://jsonap
26
26
 
27
27
  > If you’ve ever argued with your team about the way your JSON responses should be formatted, JSON API can be your anti-bikeshedding tool.
28
28
 
29
- Here's a sample JSONAPI response that also sets the stage for the examples we'll see below:
29
+ Here's a sample JSON API response that also sets the stage for the examples we'll see below:
30
30
 
31
31
  ```json
32
32
  {
@@ -253,8 +253,8 @@ Attributes (and relationships) can be conditionally rendered by providing an `if
253
253
 
254
254
  ```ruby
255
255
  class UserSerializer < SimpleJsonapi::Serializer
256
- attribute :ssn, if: { @current_user.is_an_admin? }
257
- attribute :country, unless: { |user| user.hide_demographics? }
256
+ attribute :ssn, if: -> { @current_user.is_an_admin? }
257
+ attribute :country, unless: ->(user) { user.hide_demographics? }
258
258
  end
259
259
  ```
260
260
 
@@ -383,7 +383,7 @@ It is also possible to pass in additional variables at render time via the `extr
383
383
 
384
384
  ```ruby
385
385
  class UserSerializer < SimpleJsonapi::Serializer
386
- attribute :ssn, if: { @current_user.is_an_admin? }
386
+ attribute :ssn, if: -> { @current_user.is_an_admin? }
387
387
  relationship :orders do
388
388
  data { |user| get_orders_for_user(user) }
389
389
  end
@@ -1,3 +1,3 @@
1
1
  module SimpleJsonapi
2
- VERSION = '1.0.0'.freeze
2
+ VERSION = '1.1.0'.freeze
3
3
  end
@@ -18,12 +18,12 @@ Gem::Specification.new do |spec|
18
18
  spec.test_files = spec.files.grep(%r{^test/})
19
19
  spec.require_paths = ['lib']
20
20
 
21
- spec.add_runtime_dependency 'activesupport', '~> 5.1'
21
+ spec.add_runtime_dependency 'activesupport', '>= 5.1', '< 7.0'
22
22
 
23
23
  spec.add_development_dependency 'bundler', '~> 1.10'
24
24
  spec.add_development_dependency 'rake', '~> 10.0'
25
25
  spec.add_development_dependency 'minitest'
26
- spec.add_development_dependency 'minitest-reporters'
26
+ spec.add_development_dependency 'minitest-reporters', '~> 1.1.11'
27
27
  spec.add_development_dependency 'pry'
28
28
  spec.add_development_dependency 'mocha'
29
29
  end
metadata CHANGED
@@ -1,29 +1,35 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: simple_jsonapi
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
  - PatientsLikeMe
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2018-04-23 00:00:00.000000000 Z
11
+ date: 2019-09-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
19
  version: '5.1'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '7.0'
20
23
  type: :runtime
21
24
  prerelease: false
22
25
  version_requirements: !ruby/object:Gem::Requirement
23
26
  requirements:
24
- - - "~>"
27
+ - - ">="
25
28
  - !ruby/object:Gem::Version
26
29
  version: '5.1'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '7.0'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: bundler
29
35
  requirement: !ruby/object:Gem::Requirement
@@ -70,16 +76,16 @@ dependencies:
70
76
  name: minitest-reporters
71
77
  requirement: !ruby/object:Gem::Requirement
72
78
  requirements:
73
- - - ">="
79
+ - - "~>"
74
80
  - !ruby/object:Gem::Version
75
- version: '0'
81
+ version: 1.1.11
76
82
  type: :development
77
83
  prerelease: false
78
84
  version_requirements: !ruby/object:Gem::Requirement
79
85
  requirements:
80
- - - ">="
86
+ - - "~>"
81
87
  - !ruby/object:Gem::Version
82
- version: '0'
88
+ version: 1.1.11
83
89
  - !ruby/object:Gem::Dependency
84
90
  name: pry
85
91
  requirement: !ruby/object:Gem::Requirement
@@ -209,7 +215,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
209
215
  version: '0'
210
216
  requirements: []
211
217
  rubyforge_project:
212
- rubygems_version: 2.5.2
218
+ rubygems_version: 2.7.6
213
219
  signing_key:
214
220
  specification_version: 4
215
221
  summary: A library for building JSONAPI documents in Ruby.