scim-kit 0.5.1 → 0.6.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: 82460e1f4a879602b96b6f634532ed3ffe99b9cd2bb0f23aa42f9916ade55642
4
- data.tar.gz: c9b22a99488f8513ecd2094a8d6ad0223a9d2757aa28a21b5520960dfd3f8364
3
+ metadata.gz: 6e14ef26f924df00f2d3dd988ee342657b41a9c7bfcbe3c9e2656c94730992b0
4
+ data.tar.gz: a3bc4e23502d61e28fd0ef1f0242ca66de7ad06fa2caaa186fb8f5d88cc2703e
5
5
  SHA512:
6
- metadata.gz: 3b1d01ed990a0fb41cf256665b32ac778f34b424ab0d96ff8b3d7576efaf947b8536eb3e84ad399e3e41941eada8099eb5e15c6fbceea379cb15b70cc84db637
7
- data.tar.gz: 26ee40f4aad95a191c8aedf6c9ac86ce262d1f25cfde185a22312f5ad62aa2503c00f5f0de076c9bf021e48098c75225da7e0ae541a6a0073b77dc659c013620
6
+ metadata.gz: c6ec37af2f3bcb9a92b2603daa754d99ae5f235802514f820c241cf3ecbf75831a7ed43b6e4f8f2463eebec868622e966e6352ca051b2c34992e951eb13a50c4
7
+ data.tar.gz: dd0392513f242aa4e55b55b87b29c24f32962737a3728022e1e87a68d0004985945be20e0508591a67205db0d058e15d9f99e29602db63f84a884c361b9ab781
@@ -0,0 +1,9 @@
1
+ ---
2
+ version: 2
3
+ updates:
4
+ - package-ecosystem: "bundler"
5
+ directory: "/"
6
+ schedule:
7
+ interval: "daily"
8
+ assignees:
9
+ - "xlgmokha"
@@ -1,36 +1,41 @@
1
1
  name: ci
2
- on: [push]
2
+ on:
3
+ push:
4
+ branches: [main]
5
+ pull_request:
6
+ branches: [main]
3
7
  jobs:
4
- build:
8
+ test:
5
9
  runs-on: ubuntu-latest
6
10
  strategy:
7
11
  matrix:
8
- ruby: [ '2.5', '2.6', '2.7' ]
9
- name: RSpec Ruby ${{ matrix.ruby }}
12
+ ruby-version: ['2.7', '3.0', '3.1']
10
13
  steps:
11
14
  - uses: actions/checkout@v2
15
+ - name: Set up Ruby
16
+ uses: ruby/setup-ruby@v1
12
17
  with:
13
- lfs: true
14
- submodules: recursive
15
- - uses: actions/setup-ruby@v1
16
- with:
17
- ruby-version: ${{ matrix.ruby }}
18
- - name: setup
19
- run: ./bin/setup
20
- - name: test
21
- run: ./bin/test
22
- lint:
18
+ ruby-version: ${{ matrix.ruby-version }}
19
+ - run: sh bin/setup
20
+ - name: Running tests…
21
+ run: sh bin/test
22
+ style:
23
23
  runs-on: ubuntu-latest
24
- name: Lint
25
24
  steps:
26
25
  - uses: actions/checkout@v2
26
+ - uses: ruby/setup-ruby@v1
27
27
  with:
28
- lfs: true
29
- submodules: recursive
30
- - uses: actions/setup-ruby@v1
28
+ ruby-version: '3.0'
29
+ bundler-cache: true
30
+ - name: Running style checks…
31
+ run: sh bin/style
32
+ audit:
33
+ runs-on: ubuntu-latest
34
+ steps:
35
+ - uses: actions/checkout@v2
36
+ - uses: ruby/setup-ruby@v1
31
37
  with:
32
- ruby-version: 2.7
33
- - name: setup
34
- run: ./bin/setup
35
- - name: lint
36
- run: ./bin/lint
38
+ ruby-version: '3.0'
39
+ bundler-cache: true
40
+ - name: Running audit…
41
+ run: sh bin/audit
data/.rubocop.yml CHANGED
@@ -7,7 +7,7 @@ AllCops:
7
7
  - 'pkg/**/*'
8
8
  - 'tmp/**/*'
9
9
  - 'vendor/**/*'
10
- TargetRubyVersion: 2.5
10
+ TargetRubyVersion: 2.7
11
11
 
12
12
  Layout/ArgumentAlignment:
13
13
  EnforcedStyle: with_fixed_indentation
@@ -43,6 +43,10 @@ Lint/RaiseException:
43
43
  Lint/StructNewOverride:
44
44
  Enabled: true
45
45
 
46
+ Metrics/AbcSize:
47
+ Exclude:
48
+ - 'lib/scim/kit/v2/service_provider_configuration.rb'
49
+
46
50
  Metrics/BlockLength:
47
51
  Exclude:
48
52
  - '*.gemspec'
@@ -72,6 +76,10 @@ Style/HashTransformKeys:
72
76
  Style/HashTransformValues:
73
77
  Enabled: true
74
78
 
79
+ Style/IfUnlessModifier:
80
+ Exclude:
81
+ - 'lib/scim/kit/v2/attribute.rb'
82
+
75
83
  Style/StringLiterals:
76
84
  EnforcedStyle: 'single_quotes'
77
85
 
@@ -84,6 +92,9 @@ Style/TrailingCommaInHashLiteral:
84
92
  RSpec/FilePath:
85
93
  Enabled: false
86
94
 
95
+ RSpec/MultipleMemoizedHelpers:
96
+ Enabled: false
97
+
87
98
  RSpec/NamedSubject:
88
99
  Enabled: false
89
100
 
data/CHANGELOG.md CHANGED
@@ -1,4 +1,4 @@
1
- Version 0.5.1
1
+ Version 0.6.0
2
2
 
3
3
  # Changelog
4
4
  All notable changes to this project will be documented in this file.
@@ -7,6 +7,26 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
7
7
  and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
8
8
 
9
9
  ## [Unreleased]
10
+ ## [0.6.0] - 2022-05-23
11
+ ### Added
12
+ - Add support for Ruby 3.1
13
+
14
+ ### Removed
15
+
16
+ - Drop support for Ruby 2.5
17
+ - Drop support for Ruby 2.6
18
+
19
+ ## [0.5.3] - 2022-05-13
20
+ ### Fixed
21
+
22
+ - fix: change `status` attribute to type string in [error schema](https://www.rfc-editor.org/rfc/rfc7644.html#section-3.12)
23
+ - fix: remove duplicate `invalidSyntax`
24
+ - fix: add mising `invalidFilter`
25
+
26
+ ## [0.5.2] - 2020-05-20
27
+ ### Fixed
28
+
29
+ - fix: Parse sub attributes from schema https://github.com/xlgmokha/scim-kit/pull/38
10
30
 
11
31
  ## [0.5.1] - 2020-05-20
12
32
  ### Fixed
@@ -53,27 +73,30 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
53
73
  - \_assign does not coerce values by default.
54
74
  - errors are merged together instead of overwritten during attribute validation.
55
75
 
56
- [Unreleased]: https://github.com/mokhan/scim-kit/compare/v0.5.1...HEAD
57
- [0.5.1]: https://github.com/mokhan/scim-kit/compare/v0.5.0...v0.5.1
58
- [0.5.0]: https://github.com/mokhan/scim-kit/compare/v0.4.0...v0.5.0
59
- [0.4.0]: https://github.com/mokhan/scim-kit/compare/v0.3.2...v0.4.0
60
- [0.3.2]: https://github.com/mokhan/scim-kit/compare/v0.3.1...v0.3.2
61
- [0.3.1]: https://github.com/mokhan/scim-kit/compare/v0.3.0...v0.3.1
62
- [0.3.0]: https://github.com/mokhan/scim-kit/compare/v0.2.16...v0.3.0
63
- [0.2.16]: https://github.com/mokhan/scim-kit/compare/v0.2.15...v0.2.16
64
- [0.2.15]: https://github.com/mokhan/scim-kit/compare/v0.2.14...v0.2.15
65
- [0.2.14]: https://github.com/mokhan/scim-kit/compare/v0.2.13...v0.2.14
66
- [0.2.13]: https://github.com/mokhan/scim-kit/compare/v0.2.12...v0.2.13
67
- [0.2.12]: https://github.com/mokhan/scim-kit/compare/v0.2.11...v0.2.12
68
- [0.2.11]: https://github.com/mokhan/scim-kit/compare/v0.2.10...v0.2.11
69
- [0.2.10]: https://github.com/mokhan/scim-kit/compare/v0.2.9...v0.2.10
70
- [0.2.9]: https://github.com/mokhan/scim-kit/compare/v0.2.8...v0.2.9
71
- [0.2.8]: https://github.com/mokhan/scim-kit/compare/v0.2.7...v0.2.8
72
- [0.2.7]: https://github.com/mokhan/scim-kit/compare/v0.2.6...v0.2.7
73
- [0.2.6]: https://github.com/mokhan/scim-kit/compare/v0.2.5...v0.2.6
74
- [0.2.5]: https://github.com/mokhan/scim-kit/compare/v0.2.4...v0.2.5
75
- [0.2.4]: https://github.com/mokhan/scim-kit/compare/v0.2.3...v0.2.4
76
- [0.2.3]: https://github.com/mokhan/scim-kit/compare/v0.2.2...v0.2.3
77
- [0.2.2]: https://github.com/mokhan/scim-kit/compare/v0.2.1...v0.2.2
78
- [0.2.1]: https://github.com/mokhan/scim-kit/compare/v0.2.0...v0.2.1
79
- [0.2.0]: https://github.com/mokhan/scim-kit/compare/v0.1.0...v0.2.0
76
+ [Unreleased]: https://github.com/xlgmokha/scim-kit/compare/v0.6.0...HEAD
77
+ [0.6.0]: https://github.com/xlgmokha/scim-kit/compare/v0.5.3...v0.6.0
78
+ [0.5.3]: https://github.com/xlgmokha/scim-kit/compare/v0.5.2...v0.5.3
79
+ [0.5.2]: https://github.com/xlgmokha/scim-kit/compare/v0.5.1...v0.5.2
80
+ [0.5.1]: https://github.com/xlgmokha/scim-kit/compare/v0.5.0...v0.5.1
81
+ [0.5.0]: https://github.com/xlgmokha/scim-kit/compare/v0.4.0...v0.5.0
82
+ [0.4.0]: https://github.com/xlgmokha/scim-kit/compare/v0.3.2...v0.4.0
83
+ [0.3.2]: https://github.com/xlgmokha/scim-kit/compare/v0.3.1...v0.3.2
84
+ [0.3.1]: https://github.com/xlgmokha/scim-kit/compare/v0.3.0...v0.3.1
85
+ [0.3.0]: https://github.com/xlgmokha/scim-kit/compare/v0.2.16...v0.3.0
86
+ [0.2.16]: https://github.com/xlgmokha/scim-kit/compare/v0.2.15...v0.2.16
87
+ [0.2.15]: https://github.com/xlgmokha/scim-kit/compare/v0.2.14...v0.2.15
88
+ [0.2.14]: https://github.com/xlgmokha/scim-kit/compare/v0.2.13...v0.2.14
89
+ [0.2.13]: https://github.com/xlgmokha/scim-kit/compare/v0.2.12...v0.2.13
90
+ [0.2.12]: https://github.com/xlgmokha/scim-kit/compare/v0.2.11...v0.2.12
91
+ [0.2.11]: https://github.com/xlgmokha/scim-kit/compare/v0.2.10...v0.2.11
92
+ [0.2.10]: https://github.com/xlgmokha/scim-kit/compare/v0.2.9...v0.2.10
93
+ [0.2.9]: https://github.com/xlgmokha/scim-kit/compare/v0.2.8...v0.2.9
94
+ [0.2.8]: https://github.com/xlgmokha/scim-kit/compare/v0.2.7...v0.2.8
95
+ [0.2.7]: https://github.com/xlgmokha/scim-kit/compare/v0.2.6...v0.2.7
96
+ [0.2.6]: https://github.com/xlgmokha/scim-kit/compare/v0.2.5...v0.2.6
97
+ [0.2.5]: https://github.com/xlgmokha/scim-kit/compare/v0.2.4...v0.2.5
98
+ [0.2.4]: https://github.com/xlgmokha/scim-kit/compare/v0.2.3...v0.2.4
99
+ [0.2.3]: https://github.com/xlgmokha/scim-kit/compare/v0.2.2...v0.2.3
100
+ [0.2.2]: https://github.com/xlgmokha/scim-kit/compare/v0.2.1...v0.2.2
101
+ [0.2.1]: https://github.com/xlgmokha/scim-kit/compare/v0.2.0...v0.2.1
102
+ [0.2.0]: https://github.com/xlgmokha/scim-kit/compare/v0.1.0...v0.2.0
data/Gemfile.lock CHANGED
@@ -1,97 +1,122 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- scim-kit (0.5.1)
5
- activemodel (>= 5.2.0)
6
- net-hippie (~> 0.3)
7
- parslet (~> 1.8)
4
+ scim-kit (0.6.0)
5
+ activemodel (>= 6.1, < 8.0)
6
+ net-hippie (~> 1.0)
7
+ parslet (~> 2.0)
8
8
  tilt (~> 2.0)
9
9
  tilt-jbuilder (~> 0.7)
10
10
 
11
11
  GEM
12
12
  remote: https://rubygems.org/
13
13
  specs:
14
- activemodel (6.0.3.1)
15
- activesupport (= 6.0.3.1)
16
- activesupport (6.0.3.1)
14
+ actionview (7.0.3)
15
+ activesupport (= 7.0.3)
16
+ builder (~> 3.1)
17
+ erubi (~> 1.4)
18
+ rails-dom-testing (~> 2.0)
19
+ rails-html-sanitizer (~> 1.1, >= 1.2.0)
20
+ activemodel (7.0.3)
21
+ activesupport (= 7.0.3)
22
+ activesupport (7.0.3)
17
23
  concurrent-ruby (~> 1.0, >= 1.0.2)
18
- i18n (>= 0.7, < 2)
19
- minitest (~> 5.1)
20
- tzinfo (~> 1.1)
21
- zeitwerk (~> 2.2, >= 2.2.2)
22
- addressable (2.7.0)
24
+ i18n (>= 1.6, < 2)
25
+ minitest (>= 5.1)
26
+ tzinfo (~> 2.0)
27
+ addressable (2.8.0)
23
28
  public_suffix (>= 2.0.2, < 5.0)
24
- ast (2.4.0)
25
- bundler-audit (0.6.1)
29
+ ast (2.4.2)
30
+ builder (3.2.4)
31
+ bundler-audit (0.9.1)
26
32
  bundler (>= 1.2.0, < 3)
27
- thor (~> 0.18)
28
- byebug (11.1.3)
29
- concurrent-ruby (1.1.6)
30
- crack (0.4.3)
31
- safe_yaml (~> 1.0.0)
32
- diff-lcs (1.3)
33
- ffaker (2.14.0)
33
+ thor (~> 1.0)
34
+ concurrent-ruby (1.1.10)
35
+ crack (0.4.5)
36
+ rexml
37
+ crass (1.0.6)
38
+ diff-lcs (1.5.0)
39
+ erubi (1.10.0)
40
+ ffaker (2.21.0)
34
41
  hashdiff (1.0.1)
35
- i18n (1.8.2)
42
+ i18n (1.10.0)
36
43
  concurrent-ruby (~> 1.0)
37
- jbuilder (2.10.0)
44
+ jbuilder (2.11.5)
45
+ actionview (>= 5.0.0)
38
46
  activesupport (>= 5.0.0)
39
- minitest (5.14.1)
40
- net-hippie (0.3.2)
41
- parallel (1.19.1)
42
- parser (2.7.1.2)
43
- ast (~> 2.4.0)
44
- parslet (1.8.2)
45
- public_suffix (4.0.5)
46
- rainbow (3.0.0)
47
- rake (13.0.1)
48
- rexml (3.2.4)
49
- rspec (3.9.0)
50
- rspec-core (~> 3.9.0)
51
- rspec-expectations (~> 3.9.0)
52
- rspec-mocks (~> 3.9.0)
53
- rspec-core (3.9.2)
54
- rspec-support (~> 3.9.3)
55
- rspec-expectations (3.9.2)
47
+ loofah (2.18.0)
48
+ crass (~> 1.0.2)
49
+ nokogiri (>= 1.5.9)
50
+ mini_portile2 (2.8.0)
51
+ minitest (5.15.0)
52
+ net-hippie (1.1.1)
53
+ nokogiri (1.13.6)
54
+ mini_portile2 (~> 2.8.0)
55
+ racc (~> 1.4)
56
+ nokogiri (1.13.6-x86_64-linux)
57
+ racc (~> 1.4)
58
+ parallel (1.21.0)
59
+ parser (3.1.0.0)
60
+ ast (~> 2.4.1)
61
+ parslet (2.0.0)
62
+ public_suffix (4.0.6)
63
+ racc (1.6.0)
64
+ rails-dom-testing (2.0.3)
65
+ activesupport (>= 4.2.0)
66
+ nokogiri (>= 1.6)
67
+ rails-html-sanitizer (1.4.2)
68
+ loofah (~> 2.3)
69
+ rainbow (3.1.1)
70
+ rake (13.0.6)
71
+ regexp_parser (2.2.0)
72
+ rexml (3.2.5)
73
+ rspec (3.11.0)
74
+ rspec-core (~> 3.11.0)
75
+ rspec-expectations (~> 3.11.0)
76
+ rspec-mocks (~> 3.11.0)
77
+ rspec-core (3.11.0)
78
+ rspec-support (~> 3.11.0)
79
+ rspec-expectations (3.11.0)
56
80
  diff-lcs (>= 1.2.0, < 2.0)
57
- rspec-support (~> 3.9.0)
58
- rspec-mocks (3.9.1)
81
+ rspec-support (~> 3.11.0)
82
+ rspec-mocks (3.11.0)
59
83
  diff-lcs (>= 1.2.0, < 2.0)
60
- rspec-support (~> 3.9.0)
61
- rspec-support (3.9.3)
62
- rubocop (0.83.0)
84
+ rspec-support (~> 3.11.0)
85
+ rspec-support (3.11.0)
86
+ rubocop (0.93.1)
63
87
  parallel (~> 1.10)
64
- parser (>= 2.7.0.1)
88
+ parser (>= 2.7.1.5)
65
89
  rainbow (>= 2.2.2, < 4.0)
90
+ regexp_parser (>= 1.8)
66
91
  rexml
92
+ rubocop-ast (>= 0.6.0)
67
93
  ruby-progressbar (~> 1.7)
68
94
  unicode-display_width (>= 1.4.0, < 2.0)
69
- rubocop-rspec (1.39.0)
70
- rubocop (>= 0.68.1)
71
- ruby-progressbar (1.10.1)
72
- safe_yaml (1.0.5)
73
- thor (0.20.3)
74
- thread_safe (0.3.6)
95
+ rubocop-ast (1.15.1)
96
+ parser (>= 3.0.1.1)
97
+ rubocop-rspec (1.44.1)
98
+ rubocop (~> 0.87)
99
+ rubocop-ast (>= 0.7.1)
100
+ ruby-progressbar (1.11.0)
101
+ thor (1.2.1)
75
102
  tilt (2.0.10)
76
103
  tilt-jbuilder (0.7.1)
77
104
  jbuilder
78
105
  tilt (>= 1.3.0, < 3)
79
- tzinfo (1.2.7)
80
- thread_safe (~> 0.1)
81
- unicode-display_width (1.7.0)
82
- webmock (3.8.3)
83
- addressable (>= 2.3.6)
106
+ tzinfo (2.0.4)
107
+ concurrent-ruby (~> 1.0)
108
+ unicode-display_width (1.8.0)
109
+ webmock (3.14.0)
110
+ addressable (>= 2.8.0)
84
111
  crack (>= 0.3.2)
85
112
  hashdiff (>= 0.4.0, < 2.0.0)
86
- zeitwerk (2.3.0)
87
113
 
88
114
  PLATFORMS
89
115
  ruby
116
+ x86_64-linux
90
117
 
91
118
  DEPENDENCIES
92
- bundler (~> 2.0)
93
119
  bundler-audit (~> 0.6)
94
- byebug
95
120
  ffaker (~> 2.7)
96
121
  rake (~> 13.0)
97
122
  rspec (~> 3.0)
@@ -101,4 +126,4 @@ DEPENDENCIES
101
126
  webmock (~> 3.5)
102
127
 
103
128
  BUNDLED WITH
104
- 2.1.4
129
+ 2.3.6
data/README.md CHANGED
@@ -1,7 +1,6 @@
1
1
  # Scim::Kit
2
2
 
3
- [![Build Status](https://github.com/mokhan/scim-kit/workflows/ci/badge.svg)](https://github.com/mokhan/scim-kit/actions)
4
- [![Code Climate](https://codeclimate.com/github/mokhan/scim-kit.svg)](https://codeclimate.com/github/mokhan/scim-kit)
3
+ [![Build Status](https://github.com/xlgmokha/scim-kit/workflows/ci/badge.svg)](https://github.com/xlgmokha/scim-kit/actions)
5
4
  [![Gem Version](https://badge.fury.io/rb/scim-kit.svg)](https://rubygems.org/gems/scim-kit)
6
5
 
7
6
  Scim::Kit is a library with the purpose of simplifying the generation
@@ -87,7 +86,7 @@ To install this gem onto your local machine, run `bundle exec rake install`. To
87
86
 
88
87
  ## Contributing
89
88
 
90
- Bug reports and pull requests are welcome on GitHub at https://github.com/mokhan/scim-kit.
89
+ Bug reports and pull requests are welcome on GitHub at https://github.com/xlgmokha/scim-kit.
91
90
 
92
91
  ## License
93
92
 
data/Rakefile CHANGED
@@ -9,5 +9,4 @@ RSpec::Core::RakeTask.new(:spec)
9
9
  RuboCop::RakeTask.new(:rubocop)
10
10
  Bundler::Audit::Task.new
11
11
 
12
- task lint: [:rubocop, 'bundle:audit']
13
12
  task default: :spec
data/bin/{lint → audit} RENAMED
@@ -4,6 +4,4 @@ set -e
4
4
 
5
5
  cd "$(dirname "$0")/.."
6
6
 
7
- export RUBYOPT='-W0'
8
-
9
- bundle exec rake lint
7
+ bundle exec rake bundle:audit
data/bin/setup CHANGED
@@ -1,7 +1,9 @@
1
- #!/usr/bin/env bash
2
- set -euo pipefail
3
- IFS=$'\n\t'
1
+ #!/bin/sh
4
2
 
5
- ruby -v
6
- gem install bundler --conservative -v '~> 2.0'
7
- bundle check || bundle install --jobs "$(sysctl -n hw.ncpu || nproc)"
3
+ set -e
4
+
5
+ cd "$(dirname "$0")/.."
6
+
7
+ gem update --system
8
+ gem install bundler
9
+ bundle install
data/bin/shipit CHANGED
@@ -4,5 +4,4 @@ set -e
4
4
 
5
5
  cd "$(dirname "$0")/.."
6
6
 
7
- bin/cibuild
8
7
  bundle exec rake release
data/bin/style ADDED
@@ -0,0 +1,7 @@
1
+ #!/bin/sh
2
+
3
+ set -e
4
+
5
+ cd "$(dirname "$0")/.."
6
+
7
+ bundle exec rubocop "$@"
data/lib/scim/kit/http.rb CHANGED
@@ -21,12 +21,13 @@ module Scim
21
21
  end
22
22
 
23
23
  def self.default_driver
24
- @default_driver ||= Net::Hippie::Client.new(headers: headers).tap do |http|
25
- http.logger = Scim::Kit.logger
26
- http.open_timeout = 1
27
- http.read_timeout = 5
28
- http.follow_redirects = 3
29
- end
24
+ @default_driver ||= Net::Hippie::Client.new(
25
+ follow_redirects: 3,
26
+ headers: headers,
27
+ logger: Scim::Kit.logger,
28
+ open_timeout: 1,
29
+ read_timeout: 5
30
+ )
30
31
  end
31
32
 
32
33
  def self.headers
@@ -6,9 +6,9 @@ module Scim
6
6
  # Represents a SCIM Error
7
7
  class Error < Resource
8
8
  SCIM_TYPES = %w[
9
+ invalidFilter
9
10
  invalidPath
10
11
  invalidSyntax
11
- invalidSyntax
12
12
  invalidValue
13
13
  invalidVers
14
14
  mutability
@@ -32,7 +32,7 @@ module Scim
32
32
  attribute.canonical_values = SCIM_TYPES
33
33
  end
34
34
  x.add_attribute(name: :detail)
35
- x.add_attribute(name: :status, type: :integer)
35
+ x.add_attribute(name: :status, type: :string)
36
36
  end
37
37
  end
38
38
  end
@@ -26,8 +26,8 @@ module Scim
26
26
  end
27
27
 
28
28
  class << self
29
- def build(*args)
30
- item = new(*args)
29
+ def build(**args)
30
+ item = new(**args)
31
31
  yield item
32
32
  item
33
33
  end
@@ -31,8 +31,8 @@ module Scim
31
31
  end
32
32
 
33
33
  class << self
34
- def build(*args)
35
- item = new(*args)
34
+ def build(**args)
35
+ item = new(**args)
36
36
  yield item
37
37
  item
38
38
  end
@@ -45,7 +45,7 @@ module Scim
45
45
  ) do |x|
46
46
  x.meta = Meta.from(hash[:meta])
47
47
  hash[:attributes].each do |y|
48
- x.attributes << AttributeType.from(y)
48
+ x.attributes << parse_attribute_type(y)
49
49
  end
50
50
  end
51
51
  end
@@ -53,6 +53,16 @@ module Scim
53
53
  def parse(json)
54
54
  from(JSON.parse(json, symbolize_names: true))
55
55
  end
56
+
57
+ private
58
+
59
+ def parse_attribute_type(hash)
60
+ attribute_type = AttributeType.from(hash)
61
+ hash[:subAttributes]&.each do |sub_attr_hash|
62
+ attribute_type.attributes << parse_attribute_type(sub_attr_hash)
63
+ end
64
+ attribute_type
65
+ end
56
66
  end
57
67
  end
58
68
  end
@@ -2,6 +2,6 @@
2
2
 
3
3
  module Scim
4
4
  module Kit
5
- VERSION = '0.5.1'
5
+ VERSION = '0.6.0'
6
6
  end
7
7
  end
data/scim-kit.gemspec CHANGED
@@ -12,7 +12,7 @@ Gem::Specification.new do |spec|
12
12
 
13
13
  spec.summary = 'A simple toolkit for working with SCIM 2.0'
14
14
  spec.description = 'A simple toolkit for working with SCIM 2.0'
15
- spec.homepage = 'https://www.github.com/mokhan/scim-kit'
15
+ spec.homepage = 'https://github.com/xlgmokha/scim-kit'
16
16
  spec.license = 'MIT'
17
17
 
18
18
  # Specify which files should be added to the gem when it is released.
@@ -27,17 +27,15 @@ Gem::Specification.new do |spec|
27
27
  File.basename(file)
28
28
  end
29
29
  spec.require_paths = ['lib']
30
- spec.required_ruby_version = Gem::Requirement.new('>= 2.5.0')
30
+ spec.required_ruby_version = Gem::Requirement.new('>= 2.7.0')
31
31
  spec.metadata['yard.run'] = 'yri'
32
32
 
33
- spec.add_dependency 'activemodel', '>= 5.2.0'
34
- spec.add_dependency 'net-hippie', '~> 0.3'
35
- spec.add_dependency 'parslet', '~> 1.8'
33
+ spec.add_dependency 'activemodel', '>= 6.1', '< 8.0'
34
+ spec.add_dependency 'net-hippie', '~> 1.0'
35
+ spec.add_dependency 'parslet', '~> 2.0'
36
36
  spec.add_dependency 'tilt', '~> 2.0'
37
37
  spec.add_dependency 'tilt-jbuilder', '~> 0.7'
38
- spec.add_development_dependency 'bundler', '~> 2.0'
39
38
  spec.add_development_dependency 'bundler-audit', '~> 0.6'
40
- spec.add_development_dependency 'byebug'
41
39
  spec.add_development_dependency 'ffaker', '~> 2.7'
42
40
  spec.add_development_dependency 'rake', '~> 13.0'
43
41
  spec.add_development_dependency 'rspec', '~> 3.0'
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: scim-kit
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.5.1
4
+ version: 0.6.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - mo
8
- autorequire:
8
+ autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2020-05-20 00:00:00.000000000 Z
11
+ date: 2022-05-23 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activemodel
@@ -16,42 +16,48 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 5.2.0
19
+ version: '6.1'
20
+ - - "<"
21
+ - !ruby/object:Gem::Version
22
+ version: '8.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
- version: 5.2.0
29
+ version: '6.1'
30
+ - - "<"
31
+ - !ruby/object:Gem::Version
32
+ version: '8.0'
27
33
  - !ruby/object:Gem::Dependency
28
34
  name: net-hippie
29
35
  requirement: !ruby/object:Gem::Requirement
30
36
  requirements:
31
37
  - - "~>"
32
38
  - !ruby/object:Gem::Version
33
- version: '0.3'
39
+ version: '1.0'
34
40
  type: :runtime
35
41
  prerelease: false
36
42
  version_requirements: !ruby/object:Gem::Requirement
37
43
  requirements:
38
44
  - - "~>"
39
45
  - !ruby/object:Gem::Version
40
- version: '0.3'
46
+ version: '1.0'
41
47
  - !ruby/object:Gem::Dependency
42
48
  name: parslet
43
49
  requirement: !ruby/object:Gem::Requirement
44
50
  requirements:
45
51
  - - "~>"
46
52
  - !ruby/object:Gem::Version
47
- version: '1.8'
53
+ version: '2.0'
48
54
  type: :runtime
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
51
57
  requirements:
52
58
  - - "~>"
53
59
  - !ruby/object:Gem::Version
54
- version: '1.8'
60
+ version: '2.0'
55
61
  - !ruby/object:Gem::Dependency
56
62
  name: tilt
57
63
  requirement: !ruby/object:Gem::Requirement
@@ -80,20 +86,6 @@ dependencies:
80
86
  - - "~>"
81
87
  - !ruby/object:Gem::Version
82
88
  version: '0.7'
83
- - !ruby/object:Gem::Dependency
84
- name: bundler
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '2.0'
90
- type: :development
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
95
- - !ruby/object:Gem::Version
96
- version: '2.0'
97
89
  - !ruby/object:Gem::Dependency
98
90
  name: bundler-audit
99
91
  requirement: !ruby/object:Gem::Requirement
@@ -108,20 +100,6 @@ dependencies:
108
100
  - - "~>"
109
101
  - !ruby/object:Gem::Version
110
102
  version: '0.6'
111
- - !ruby/object:Gem::Dependency
112
- name: byebug
113
- requirement: !ruby/object:Gem::Requirement
114
- requirements:
115
- - - ">="
116
- - !ruby/object:Gem::Version
117
- version: '0'
118
- type: :development
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
123
- - !ruby/object:Gem::Version
124
- version: '0'
125
103
  - !ruby/object:Gem::Dependency
126
104
  name: ffaker
127
105
  requirement: !ruby/object:Gem::Requirement
@@ -214,9 +192,9 @@ executables:
214
192
  extensions: []
215
193
  extra_rdoc_files: []
216
194
  files:
195
+ - ".github/dependabot.yml"
217
196
  - ".github/workflows/ci.yml"
218
197
  - ".gitignore"
219
- - ".gitlab-ci.yml"
220
198
  - ".rspec"
221
199
  - ".rubocop.yml"
222
200
  - CHANGELOG.md
@@ -225,11 +203,11 @@ files:
225
203
  - LICENSE.txt
226
204
  - README.md
227
205
  - Rakefile
228
- - bin/cibuild
206
+ - bin/audit
229
207
  - bin/console
230
- - bin/lint
231
208
  - bin/setup
232
209
  - bin/shipit
210
+ - bin/style
233
211
  - bin/test
234
212
  - exe/scim-kit
235
213
  - lib/scim-kit.rb
@@ -273,12 +251,12 @@ files:
273
251
  - lib/scim/kit/v2/unknown_attribute.rb
274
252
  - lib/scim/kit/version.rb
275
253
  - scim-kit.gemspec
276
- homepage: https://www.github.com/mokhan/scim-kit
254
+ homepage: https://github.com/xlgmokha/scim-kit
277
255
  licenses:
278
256
  - MIT
279
257
  metadata:
280
258
  yard.run: yri
281
- post_install_message:
259
+ post_install_message:
282
260
  rdoc_options: []
283
261
  require_paths:
284
262
  - lib
@@ -286,15 +264,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
286
264
  requirements:
287
265
  - - ">="
288
266
  - !ruby/object:Gem::Version
289
- version: 2.5.0
267
+ version: 2.7.0
290
268
  required_rubygems_version: !ruby/object:Gem::Requirement
291
269
  requirements:
292
270
  - - ">="
293
271
  - !ruby/object:Gem::Version
294
272
  version: '0'
295
273
  requirements: []
296
- rubygems_version: 3.1.3
297
- signing_key:
274
+ rubygems_version: 3.3.14
275
+ signing_key:
298
276
  specification_version: 4
299
277
  summary: A simple toolkit for working with SCIM 2.0
300
278
  test_files: []
data/.gitlab-ci.yml DELETED
@@ -1,11 +0,0 @@
1
- image: ruby:2.6
2
-
3
- before_script:
4
- - apt-get update && apt-get install -y locales
5
- - echo "en_US.UTF-8 UTF-8" > /etc/locale.gen
6
- - locale-gen
7
- - export LC_ALL=en_US.UTF-8
8
-
9
- rspec:
10
- script:
11
- - bin/cibuild
data/bin/cibuild DELETED
@@ -1,21 +0,0 @@
1
- #!/bin/sh
2
-
3
- set -e
4
-
5
- [ -z "$DEBUG" ] || set -x
6
-
7
- cd "$(dirname "$0")/.."
8
- export RUBY_GC_MALLOC_LIMIT=79000000
9
- export RUBY_GC_HEAP_INIT_SLOTS=800000
10
- export RUBY_HEAP_FREE_MIN=100000
11
- export RUBY_HEAP_SLOTS_INCREMENT=400000
12
- export RUBY_HEAP_SLOTS_GROWTH_FACTOR=1
13
-
14
- echo ["$(date "+%H:%M:%S")"] "==> Running setup…"
15
- bin/setup
16
-
17
- echo ["$(date "+%H:%M:%S")"] "==> Running tests…"
18
- bin/test
19
-
20
- echo ["$(date "+%H:%M:%S")"] "==> Running linters…"
21
- bin/lint