schema_serializer 0.2.0 → 0.2.6

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
2
  SHA256:
3
- metadata.gz: 9e77ad90c0adef33c9d54051f2747a00ceb8668e46a54cf2350c5a52cc8a90ad
4
- data.tar.gz: a99ef7650ff88cfae0879fa3d322c0f043fe78f87aa99c00a167bbb00d515d50
3
+ metadata.gz: 16979d066b051ff98b81083b073753d4f755f7d395c10d100de19d3258fd00fe
4
+ data.tar.gz: 58bc8904ee191d367bce4cb81c60acf5028276e090c34bed16150a96ba42f398
5
5
  SHA512:
6
- metadata.gz: 7380eb8d5f8c53bd335fdecc91df45009f6317a633d0c8ca32df63503756852515f82a2581c2f5f7a1867ff1c4f3870bf86291e2924c1beb28df555e6e1e49e5
7
- data.tar.gz: ed7aca31fe5173463fefe842b91fcacc469355de7a02db17cdf2b4470bce7199cc7eb7d4779c5978904e2dd83f7824a842d906b3f0569c2fa253c5713065c8b0
6
+ metadata.gz: 7b9cea96ae7da52913b33a7ebe16b249be137861e31d5ea2f84509b40f14b0ceafac7d5fe42f760ba2d3389e11a901bb53c87c6b1f121ee5ed453fa0ca4daa3f
7
+ data.tar.gz: 3e404e9176704a2220e83dd607672053d4bc7ee6ba1e0f8314150e8e3942f2890ba0735bc7b938ceea921e0a7bfdf7babf74e2657e58ebad1a7ea6e2a3766bdb
@@ -0,0 +1,28 @@
1
+ # This workflow uses actions that are not certified by GitHub.
2
+ # They are provided by a third-party and are governed by
3
+ # separate terms of service, privacy policy, and support
4
+ # documentation.
5
+ # This workflow will download a prebuilt Ruby version, install dependencies and run tests with Rake
6
+ # For more information see: https://github.com/marketplace/actions/setup-ruby-jruby-and-truffleruby
7
+
8
+ name: CI
9
+ on:
10
+ push:
11
+ branches: [ master ]
12
+ pull_request:
13
+ branches: [ master ]
14
+ jobs:
15
+ test:
16
+ runs-on: ubuntu-latest
17
+ steps:
18
+ - uses: actions/checkout@v2
19
+ - name: Set up Ruby
20
+ uses: ruby/setup-ruby@v1
21
+ with:
22
+ ruby-version: 2.7.2
23
+ - name: Install dependencies
24
+ run: bundle install
25
+ - name: Run tests
26
+ run: bundle exec rake spec
27
+ - name: Run rubocop
28
+ run: bundle exec rake rubocop
data/.gitignore CHANGED
@@ -8,4 +8,5 @@
8
8
  /tmp/
9
9
  /Gemfile.lock
10
10
 
11
+ # rspec failure tracking
11
12
  .rspec_status
data/.rspec ADDED
@@ -0,0 +1,3 @@
1
+ --format documentation
2
+ --color
3
+ --require spec_helper
@@ -1,18 +1,21 @@
1
1
  AllCops:
2
+ NewCops: enable
2
3
  TargetRubyVersion: 2.6
3
4
  Exclude:
4
5
  - "node_modules/**/*"
5
6
  - "vendor/**/*"
6
7
 
7
- Layout/IndentFirstArrayElement:
8
- EnforcedStyle: consistent
9
-
10
- Layout/IndentFirstHashElement:
11
- EnforcedStyle: consistent
12
-
8
+ # Private methods indent.
13
9
  Layout/IndentationConsistency:
14
10
  EnforcedStyle: indented_internal_methods
15
11
 
12
+ # Warning: 120 characters
13
+ # Error: 160 characters
14
+ # Make the library more restrictive.
15
+ Layout/LineLength:
16
+ Max: 120
17
+
18
+ # Multi-line indentation with receiver.
16
19
  Layout/MultilineMethodCallIndentation:
17
20
  EnforcedStyle: indented_relative_to_receiver
18
21
 
@@ -20,6 +23,11 @@ Lint/AmbiguousBlockAssociation:
20
23
  Exclude:
21
24
  - "spec/**/*_spec.rb"
22
25
 
26
+ # May define constants within the block in spec.
27
+ Lint/ConstantDefinitionInBlock:
28
+ Exclude:
29
+ - "spec/**/*_spec.rb"
30
+
23
31
  Lint/InheritException:
24
32
  EnforcedStyle: standard_error
25
33
 
@@ -38,18 +46,12 @@ Metrics/BlockLength:
38
46
  - "Gemfile"
39
47
  - "*.gemspec"
40
48
 
41
- CyclomaticComplexity:
49
+ Metrics/CyclomaticComplexity:
42
50
  Max: 10
43
51
 
44
- Metrics/LineLength:
45
- Max: 120
46
-
47
52
  Metrics/MethodLength:
48
53
  Max: 20
49
54
 
50
- Naming/UncommunicativeMethodParamName:
51
- Enabled: false
52
-
53
55
  Security/YAMLLoad:
54
56
  Enabled: false
55
57
 
@@ -65,9 +67,6 @@ Style/AsciiComments:
65
67
  Style/BlockDelimiters:
66
68
  Enabled: false
67
69
 
68
- Style/BracesAroundHashParameters:
69
- Enabled: false
70
-
71
70
  Style/ClassAndModuleChildren:
72
71
  Enabled: false
73
72
 
@@ -96,6 +95,7 @@ Style/EmptyMethod:
96
95
  Style/FormatString:
97
96
  EnforcedStyle: percent
98
97
 
98
+ # Do not use frozen_string_literal comment.
99
99
  Style/FrozenStringLiteralComment:
100
100
  Enabled: false
101
101
 
@@ -110,6 +110,7 @@ Style/MixinUsage:
110
110
  Exclude:
111
111
  - "bin/setup"
112
112
 
113
+ # Use _ when 7 digits or more.
113
114
  Style/NumericLiterals:
114
115
  MinDigits: 7
115
116
  Strict: true
@@ -123,38 +124,42 @@ Style/OrAssignment:
123
124
  Style/PercentLiteralDelimiters:
124
125
  Enabled: false
125
126
 
127
+ # `has_xxx?` is more readable.
126
128
  Style/PreferredHashMethods:
127
129
  EnforcedStyle: verbose
128
130
 
131
+ # Do not use unnecessary returns. (Allow to return multiple values.)
129
132
  Style/RedundantReturn:
130
133
  AllowMultipleReturnValues: true
131
134
 
132
- Style/RedundantSelf:
133
- Enabled: false
134
-
135
+ # Do not specify error class when rescuing StandardError.
135
136
  Style/RescueStandardError:
136
137
  EnforcedStyle: implicit
137
138
 
139
+ # String literals use double quotes.
138
140
  Style/StringLiterals:
139
141
  EnforcedStyle: double_quotes
140
142
 
143
+ # String literal inside the string interpolation use double quotes too.
141
144
  Style/StringLiteralsInInterpolation:
142
145
  EnforcedStyle: double_quotes
143
146
 
147
+ # Percent(`%i(a b)`) and brackets(`[:a, :b]`) are acceptable.
144
148
  Style/SymbolArray:
145
149
  Enabled: false
146
150
 
147
- Style/TernaryParentheses:
148
- EnforcedStyle: require_parentheses_when_complex
149
-
151
+ # Put a trailing comma in argument list.
150
152
  Style/TrailingCommaInArguments:
151
153
  EnforcedStyleForMultiline: comma
152
154
 
155
+ # Put a trailing comma in Array literal.
153
156
  Style/TrailingCommaInArrayLiteral:
154
157
  EnforcedStyleForMultiline: comma
155
158
 
159
+ # Put a trailing comma in Hash literal.
156
160
  Style/TrailingCommaInHashLiteral:
157
161
  EnforcedStyleForMultiline: comma
158
162
 
163
+ # Percent(`%w(a b)`) and brackets(`["a", "b"]`) are acceptable.
159
164
  Style/WordArray:
160
165
  Enabled: false
@@ -1 +1 @@
1
- 2.6.4
1
+ 2.7.2
data/README.md CHANGED
@@ -1,7 +1,7 @@
1
1
  # SchemaSerializer
2
2
 
3
3
  [![Gem Version](https://badge.fury.io/rb/schema_serializer.svg)](https://badge.fury.io/rb/schema_serializer)
4
- [![Build Status](https://travis-ci.org/i2bskn/schema_serializer.svg?branch=master)](https://travis-ci.org/i2bskn/schema_serializer)
4
+ [![CI](https://github.com/i2bskn/schema_serializer/workflows/CI/badge.svg?branch=master)](https://github.com/i2bskn/schema_serializer/actions?query=workflow%3ACI)
5
5
 
6
6
  SchemaSerializer is provide serialization from schema definition to JSON.
7
7
 
data/Rakefile CHANGED
@@ -1,6 +1,8 @@
1
1
  require "bundler/gem_tasks"
2
2
  require "rspec/core/rake_task"
3
+ require "rubocop/rake_task"
3
4
 
4
5
  RSpec::Core::RakeTask.new(:spec)
6
+ RuboCop::RakeTask.new
5
7
 
6
- task default: :spec
8
+ task :default => %i(spec rubocop)
@@ -5,7 +5,7 @@ require "schema_serializer"
5
5
 
6
6
  User = Struct.new(:id, :name, :age, :gender, :email, :created_at)
7
7
  User.include SchemaSerializer::Serializable
8
- users = Array.new(10000) { |i|
8
+ users = Array.new(1_000_000) { |i|
9
9
  User.new(i.to_s, "abcdefg", rand(80).to_s, rand(2).to_s, "user#{i}@example.com", Time.now)
10
10
  }
11
11
  SchemaSerializer.definition = {
@@ -8,6 +8,10 @@ module SchemaSerializer::Generators
8
8
 
9
9
  def create_example_schema
10
10
  copy_file "schema.yml", "doc/schema.yml"
11
+ copy_file "components/index.yml", "doc/components/index.yml"
12
+ copy_file "components/schemas/index.yml", "doc/components/schemas/index.yml"
13
+ copy_file "components/schemas/User.yml", "doc/components/schemas/User.yml"
14
+ copy_file "components/schemas/Users.yml", "doc/components/schemas/Users.yml"
11
15
  end
12
16
  end
13
17
  end
@@ -0,0 +1,2 @@
1
+ schemas:
2
+ $ref: ./schemas/index.yml
@@ -0,0 +1,12 @@
1
+ type: object
2
+ required:
3
+ - id
4
+ - name
5
+ properties:
6
+ id:
7
+ type: integer
8
+ name:
9
+ type: string
10
+ age:
11
+ nullable: true
12
+ type: integer
@@ -0,0 +1,3 @@
1
+ type: array
2
+ items:
3
+ $ref: "#/components/schemas/User"
@@ -0,0 +1,4 @@
1
+ User:
2
+ $ref: ./User.yml
3
+ Users:
4
+ $ref: ./Users.yml
@@ -1,11 +1,3 @@
1
- Pet:
2
- required:
3
- - id
4
- - name
5
- properties:
6
- id:
7
- type: integer
8
- name:
9
- type: string
10
- tag:
11
- type: string
1
+ openapi: "3.0.0"
2
+ components:
3
+ $ref: ./components/index.yml
@@ -1 +1,4 @@
1
+ # Throw exception with unexpected null value.
2
+ SchemaSerializer.config.raise_on_null = true
3
+
1
4
  SchemaSerializer.load_definition(Rails.root.join("doc/schema.yml"))
@@ -2,15 +2,17 @@ require "active_support"
2
2
  require "active_support/core_ext"
3
3
  require "yaml_ext"
4
4
 
5
+ require "schema_serializer/configuration"
5
6
  require "schema_serializer/definition"
6
7
  require "schema_serializer/schema"
8
+ require "schema_serializer/constantizer"
7
9
  require "schema_serializer/serializable"
8
10
  require "schema_serializer/errors"
9
11
  require "schema_serializer/version"
10
12
  require "schema_serializer/railtie" if defined?(Rails)
11
13
 
12
14
  class SchemaSerializer
13
- attr_reader :object
15
+ attr_reader :object, :options
14
16
 
15
17
  class << self
16
18
  attr_reader :definition
@@ -21,16 +23,28 @@ class SchemaSerializer
21
23
  doc = doc.fetch("components").fetch("schemas")
22
24
  end
23
25
 
26
+ @document_path = path
24
27
  self.definition = doc
25
28
  end
26
29
 
30
+ def reload!
31
+ raise ReloadError, "Load config using .load_definition" if @document_path.nil?
32
+
33
+ load_definition(@document_path)
34
+ end
35
+
27
36
  def definition=(define)
28
37
  @definition = define.is_a?(SchemaSerializer::Definition) ? define : SchemaSerializer::Definition.new(define)
29
38
  end
39
+
40
+ def config
41
+ @config ||= Configuration.new
42
+ end
30
43
  end
31
44
 
32
- def initialize(object, _options = {})
45
+ def initialize(object, options = {})
33
46
  @object = object
47
+ @options = options
34
48
  end
35
49
 
36
50
  def as_json(_options = nil)
@@ -56,6 +70,7 @@ class SchemaSerializer
56
70
  end
57
71
 
58
72
  def respond_to_missing?(name, _include_private = false)
73
+ super
59
74
  object.respond_to?(name)
60
75
  end
61
76
  end
@@ -0,0 +1,23 @@
1
+ class SchemaSerializer
2
+ class Configuration
3
+ VALID_OPTIONS = [
4
+ :raise_on_null,
5
+ ].freeze
6
+
7
+ attr_accessor(*VALID_OPTIONS)
8
+
9
+ def initialize(options = {})
10
+ reset
11
+ merge(options)
12
+ end
13
+
14
+ def merge(options)
15
+ options.each_key { |key| send("#{key}=", options[key]) }
16
+ self
17
+ end
18
+
19
+ def reset
20
+ @raise_on_null = true
21
+ end
22
+ end
23
+ end
@@ -0,0 +1,34 @@
1
+ class SchemaSerializer
2
+ class Constantizer
3
+ class << self
4
+ def find(name)
5
+ return cached_serializers.fetch(name) if cached_serializers.has_key?(name)
6
+ return nil if non_existent_serializers.include?(name)
7
+
8
+ klass = name.safe_constantize
9
+ if klass.present?
10
+ cached_serializers[name] = klass
11
+ return klass
12
+ end
13
+
14
+ non_existent_serializers << name
15
+ nil
16
+ end
17
+
18
+ def refresh!
19
+ @non_existent_serializers = []
20
+ @serializers = {}
21
+ end
22
+
23
+ private
24
+
25
+ def non_existent_serializers
26
+ @non_existent_serializers ||= []
27
+ end
28
+
29
+ def cached_serializers
30
+ @cached_serializers ||= {}
31
+ end
32
+ end
33
+ end
34
+ end
@@ -4,7 +4,7 @@ class SchemaSerializer
4
4
 
5
5
  def initialize(hash)
6
6
  @schemas = hash.each_with_object({}) { |(name, schema), obj|
7
- obj[name.to_s] = Schema.new(schema)
7
+ obj[name.to_s] = Schema.new(name, schema)
8
8
  }
9
9
  end
10
10
 
@@ -2,4 +2,6 @@ class SchemaSerializer
2
2
  class BaseError < StandardError; end
3
3
  class SchemaNotFound < BaseError; end
4
4
  class RequiredNotDefined < BaseError; end
5
+ class NullValue < BaseError; end
6
+ class ReloadError < BaseError; end
5
7
  end
@@ -2,7 +2,8 @@ class SchemaSerializer
2
2
  class Railtie < ::Rails::Railtie
3
3
  initializer "schema_serializer" do
4
4
  ActiveSupport.on_load(:active_record) do
5
- ::ActiveRecord::Base.send(:include, SchemaSerializer::Serializable)
5
+ ::ActiveRecord::Base.include SchemaSerializer::Serializable
6
+ ::ActiveRecord::Relation.include SchemaSerializer::Serializable
6
7
  end
7
8
  end
8
9
  end
@@ -1,24 +1,28 @@
1
1
  class SchemaSerializer
2
2
  class Schema
3
- attr_reader :type, :nullable, :items, :required, :properties
3
+ attr_reader :key, :type, :nullable, :items, :required, :properties
4
4
 
5
- def initialize(hash = {})
5
+ def initialize(key, hash = {})
6
+ @key = key
6
7
  @type = hash["type"]
7
8
  @nullable = !hash["nullable"].nil?
8
9
 
9
10
  case type
10
11
  when "array"
11
- @items = self.class.new(hash.fetch("items"))
12
+ @items = self.class.new(@key, hash.fetch("items"))
12
13
  when "object", nil
13
14
  @required = hash["required"] || []
14
15
  @properties = hash.fetch("properties").each_with_object({}) { |(column, property), obj|
15
- obj[column] = self.class.new(property)
16
+ obj[column] = self.class.new(column, property)
16
17
  }
17
18
  end
18
19
  end
19
20
 
20
21
  def serialize(object)
21
- return nil if nullable && object.nil?
22
+ if object.nil?
23
+ return nil if nullable
24
+ raise NullValue, "#{key} is not allowed to be null" if SchemaSerializer.config.raise_on_null
25
+ end
22
26
 
23
27
  case type
24
28
  when "integer"
@@ -30,8 +34,19 @@ class SchemaSerializer
30
34
  when "boolean"
31
35
  !!object
32
36
  when "array"
33
- object.map { |item| items.serialize(item) }
37
+ serialize_array(object)
34
38
  else
39
+ serialize_object(object)
40
+ end
41
+ end
42
+
43
+ private
44
+
45
+ def serialize_array(object)
46
+ object.map { |item| items.serialize(item) }
47
+ end
48
+
49
+ def serialize_object(object)
35
50
  not_enough_columns = required - properties.keys
36
51
  raise RequiredNotDefined, not_enough_columns.join(", ") unless not_enough_columns.empty?
37
52
 
@@ -39,9 +54,6 @@ class SchemaSerializer
39
54
  obj[column] = schema.serialize(get_value(object, column))
40
55
  }
41
56
  end
42
- end
43
-
44
- private
45
57
 
46
58
  def get_value(object, column)
47
59
  return object[column] || object[column.to_sym] if object.is_a?(Hash)
@@ -1,7 +1,21 @@
1
1
  class SchemaSerializer
2
2
  module Serializable
3
- def serializer(klass = nil)
4
- (klass || "#{self.class.name}Serializer".safe_constantize || SchemaSerializer).new(self)
3
+ def serializer(*args)
4
+ options = args.last.is_a?(Hash) ? args.pop : {}
5
+ klass = args.first || options[:class]
6
+ (klass || serializer_class || SchemaSerializer).new(self, options)
5
7
  end
8
+
9
+ private
10
+
11
+ def serializer_class
12
+ SchemaSerializer::Constantizer.find("#{serializer_base_class_name}Serializer")
13
+ end
14
+
15
+ def serializer_base_class_name
16
+ return self.class.name unless defined?(ActiveRecord)
17
+
18
+ self.class < ActiveRecord::Relation ? model.name.pluralize : self.class.name
19
+ end
6
20
  end
7
21
  end
@@ -1,3 +1,3 @@
1
1
  class SchemaSerializer
2
- VERSION = "0.2.0".freeze
2
+ VERSION = "0.2.6".freeze
3
3
  end
@@ -20,14 +20,16 @@ Gem::Specification.new do |spec|
20
20
  spec.executables = spec.files.grep(%r{^exe/}) { |f| File.basename(f) }
21
21
  spec.require_paths = ["lib"]
22
22
 
23
+ spec.required_ruby_version = ">= 2.6"
24
+
23
25
  spec.add_dependency "activesupport", ">= 5.2.0", "< 6.1"
24
26
  spec.add_dependency "yaml_ext", "0.1.2"
25
27
 
26
28
  spec.add_development_dependency "activerecord", ">= 5.2.0", "< 6.1"
27
- spec.add_development_dependency "bundler", "~> 2.0.2"
28
- spec.add_development_dependency "pry", "~> 0.12.2"
29
+ spec.add_development_dependency "bundler", "~> 2.1.4"
30
+ spec.add_development_dependency "pry", "~> 0.13.1"
29
31
  spec.add_development_dependency "rake"
30
- spec.add_development_dependency "rspec", "~> 3.8.0"
31
- spec.add_development_dependency "rubocop", "~> 0.74.0"
32
- spec.add_development_dependency "sqlite3", "~> 1.4.0"
32
+ spec.add_development_dependency "rspec", "~> 3.10.0"
33
+ spec.add_development_dependency "rubocop", "~> 1.2.0"
34
+ spec.add_development_dependency "sqlite3", "~> 1.4.2"
33
35
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: schema_serializer
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.0
4
+ version: 0.2.6
5
5
  platform: ruby
6
6
  authors:
7
7
  - i2bskn
8
8
  autorequire:
9
9
  bindir: exe
10
10
  cert_chain: []
11
- date: 2019-09-02 00:00:00.000000000 Z
11
+ date: 2020-12-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activesupport
@@ -70,28 +70,28 @@ dependencies:
70
70
  requirements:
71
71
  - - "~>"
72
72
  - !ruby/object:Gem::Version
73
- version: 2.0.2
73
+ version: 2.1.4
74
74
  type: :development
75
75
  prerelease: false
76
76
  version_requirements: !ruby/object:Gem::Requirement
77
77
  requirements:
78
78
  - - "~>"
79
79
  - !ruby/object:Gem::Version
80
- version: 2.0.2
80
+ version: 2.1.4
81
81
  - !ruby/object:Gem::Dependency
82
82
  name: pry
83
83
  requirement: !ruby/object:Gem::Requirement
84
84
  requirements:
85
85
  - - "~>"
86
86
  - !ruby/object:Gem::Version
87
- version: 0.12.2
87
+ version: 0.13.1
88
88
  type: :development
89
89
  prerelease: false
90
90
  version_requirements: !ruby/object:Gem::Requirement
91
91
  requirements:
92
92
  - - "~>"
93
93
  - !ruby/object:Gem::Version
94
- version: 0.12.2
94
+ version: 0.13.1
95
95
  - !ruby/object:Gem::Dependency
96
96
  name: rake
97
97
  requirement: !ruby/object:Gem::Requirement
@@ -112,42 +112,42 @@ dependencies:
112
112
  requirements:
113
113
  - - "~>"
114
114
  - !ruby/object:Gem::Version
115
- version: 3.8.0
115
+ version: 3.10.0
116
116
  type: :development
117
117
  prerelease: false
118
118
  version_requirements: !ruby/object:Gem::Requirement
119
119
  requirements:
120
120
  - - "~>"
121
121
  - !ruby/object:Gem::Version
122
- version: 3.8.0
122
+ version: 3.10.0
123
123
  - !ruby/object:Gem::Dependency
124
124
  name: rubocop
125
125
  requirement: !ruby/object:Gem::Requirement
126
126
  requirements:
127
127
  - - "~>"
128
128
  - !ruby/object:Gem::Version
129
- version: 0.74.0
129
+ version: 1.2.0
130
130
  type: :development
131
131
  prerelease: false
132
132
  version_requirements: !ruby/object:Gem::Requirement
133
133
  requirements:
134
134
  - - "~>"
135
135
  - !ruby/object:Gem::Version
136
- version: 0.74.0
136
+ version: 1.2.0
137
137
  - !ruby/object:Gem::Dependency
138
138
  name: sqlite3
139
139
  requirement: !ruby/object:Gem::Requirement
140
140
  requirements:
141
141
  - - "~>"
142
142
  - !ruby/object:Gem::Version
143
- version: 1.4.0
143
+ version: 1.4.2
144
144
  type: :development
145
145
  prerelease: false
146
146
  version_requirements: !ruby/object:Gem::Requirement
147
147
  requirements:
148
148
  - - "~>"
149
149
  - !ruby/object:Gem::Version
150
- version: 1.4.0
150
+ version: 1.4.2
151
151
  description: SchemaSerializer is provide serialization from schema definition to JSON.
152
152
  email:
153
153
  - i2bskn@gmail.com
@@ -155,10 +155,11 @@ executables: []
155
155
  extensions: []
156
156
  extra_rdoc_files: []
157
157
  files:
158
+ - ".github/workflows/ci.yml"
158
159
  - ".gitignore"
160
+ - ".rspec"
159
161
  - ".rubocop.yml"
160
162
  - ".ruby-version"
161
- - ".travis.yml"
162
163
  - Gemfile
163
164
  - LICENSE
164
165
  - README.md
@@ -168,12 +169,18 @@ files:
168
169
  - bin/setup
169
170
  - lib/generators/schema_serializer/install/USAGE
170
171
  - lib/generators/schema_serializer/install/install_generator.rb
172
+ - lib/generators/schema_serializer/install/templates/components/index.yml
173
+ - lib/generators/schema_serializer/install/templates/components/schemas/User.yml
174
+ - lib/generators/schema_serializer/install/templates/components/schemas/Users.yml
175
+ - lib/generators/schema_serializer/install/templates/components/schemas/index.yml
171
176
  - lib/generators/schema_serializer/install/templates/schema.yml
172
177
  - lib/generators/schema_serializer/install/templates/schema_serializer.rb
173
178
  - lib/generators/schema_serializer/serializer/USAGE
174
179
  - lib/generators/schema_serializer/serializer/serializer_generator.rb
175
180
  - lib/generators/schema_serializer/serializer/templates/serializer.rb.erb
176
181
  - lib/schema_serializer.rb
182
+ - lib/schema_serializer/configuration.rb
183
+ - lib/schema_serializer/constantizer.rb
177
184
  - lib/schema_serializer/definition.rb
178
185
  - lib/schema_serializer/errors.rb
179
186
  - lib/schema_serializer/railtie.rb
@@ -193,14 +200,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
193
200
  requirements:
194
201
  - - ">="
195
202
  - !ruby/object:Gem::Version
196
- version: '0'
203
+ version: '2.6'
197
204
  required_rubygems_version: !ruby/object:Gem::Requirement
198
205
  requirements:
199
206
  - - ">="
200
207
  - !ruby/object:Gem::Version
201
208
  version: '0'
202
209
  requirements: []
203
- rubygems_version: 3.0.3
210
+ rubygems_version: 3.1.4
204
211
  signing_key:
205
212
  specification_version: 4
206
213
  summary: SchemaSerializer is provide serialization from schema definition to JSON.
@@ -1,10 +0,0 @@
1
- ---
2
- sudo: false
3
- language: ruby
4
- cache: bundler
5
- rvm:
6
- - 2.6.4
7
- before_install: gem install bundler -v 2.0.2
8
- script:
9
- - bundle exec rake spec
10
- - bundle exec rubocop