ulid-rails 0.6.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
2
  SHA256:
3
- metadata.gz: 286faae595c37c666671a84b8eeeb070497b585dd58cde500e96f8b9939e61e8
4
- data.tar.gz: 8463132209c6706611a889e16ddfcf91d24173e88ec47cba9da743df8ccdc12f
3
+ metadata.gz: f122ca0476d8b8c06f1f4bf08219bdf653d0ba890a3cdb6d9d5d99dfec353424
4
+ data.tar.gz: 0d1d58ea8a26637db28421610971049cbc9730201c39f9d9444757a65a249a4e
5
5
  SHA512:
6
- metadata.gz: b84e1c464698d32480e5d27a9d91d13565478e5c3aebc2f8e4fd9c58bf07774eee5b65df3dc2cf4326bfcca7790ab2698ebc51d63cba7b82458707e72959b149
7
- data.tar.gz: c687adcd8d9b8abee8c85c3bd4ce30dd5393883b7993366ca85c502b748cb668dd150ff5977153b8f90278d36fecbc8f02b07aa3d88a138031f78da0a5376120
6
+ metadata.gz: c37272d98ec13e144f2aa8c704d3db3140bf672cf3f6d7e76931acc7ab008b0a51cc91a51c402a8dbc14d73da3ce31092ace18e99efcf31b9ad4ff4c5fd6cb16
7
+ data.tar.gz: d7bcabb538e9f4a588b7d28b79459c06e44c9bfaeffdcaf5e563823908cdad5bcf7de3cd9fd2da20b21062415686e40f5df0904b53e38b9ac367084021616a19
@@ -1,15 +1,19 @@
1
1
  ---
2
2
  name: Linting
3
- on: [push, pull_request]
3
+
4
+ on:
5
+ pull_request:
6
+ push:
7
+ branches:
8
+ - master
9
+
4
10
  jobs:
5
11
  standardrb:
6
- env:
7
- AR_VERSION: "5.2"
8
12
  runs-on: ubuntu-latest
9
13
  steps:
10
- - uses: actions/checkout@v2
14
+ - uses: actions/checkout@v3
11
15
  - uses: ruby/setup-ruby@v1
12
16
  with:
13
- ruby-version: 3.0
17
+ ruby-version: "3.1"
14
18
  bundler-cache: true
15
- - run: bundle exec standardrb
19
+ - run: bundle exec rubocop
@@ -1,25 +1,30 @@
1
1
  ---
2
2
  name: Tests
3
- on: [push, pull_request]
3
+
4
+ on:
5
+ pull_request:
6
+ push:
7
+ branches:
8
+ - master
9
+
4
10
  jobs:
5
11
  tests:
6
12
  runs-on: ubuntu-latest
7
13
  strategy:
14
+ fail-fast: false
8
15
  matrix:
9
- activerecord-version: ["5.0", "5.1", "4.2", "5.2", "6.0", "6.1"]
10
- ruby-version: ["2.6", "2.7", "3.0"]
16
+ activerecord-version: ["5.0", "5.1", "5.2", "6.0", "6.1", "7.0"]
17
+ ruby-version: ["2.6", "2.7", "3.0", "3.1"]
11
18
  exclude:
12
- - activerecord-version: "4.2"
13
- ruby-version: "2.7"
14
- - activerecord-version: "4.2"
15
- ruby-version: "3.0"
16
- - activerecord-version: "5.0"
17
- ruby-version: "3.0"
18
- - activerecord-version: "5.1"
19
- ruby-version: "3.0"
20
- - activerecord-version: "5.2"
21
- ruby-version: "3.0"
19
+ - {activerecord-version: "5.0", ruby-version: "3.0"}
20
+ - {activerecord-version: "5.0", ruby-version: "3.1"}
21
+ - {activerecord-version: "5.1", ruby-version: "3.0"}
22
+ - {activerecord-version: "5.1", ruby-version: "3.1"}
23
+ - {activerecord-version: "5.2", ruby-version: "3.0"}
24
+ - {activerecord-version: "5.2", ruby-version: "3.1"}
25
+ - {activerecord-version: "6.0", ruby-version: "3.1"}
26
+ - {activerecord-version: "7.0", ruby-version: "2.6"}
22
27
  steps:
23
- - uses: actions/checkout@v2
28
+ - uses: actions/checkout@v3
24
29
  - name: Test ActiveRecord ${{ matrix.activerecord-version }} and Ruby ${{ matrix.ruby-version }}
25
30
  run: RUBY_VERSION=${{ matrix.ruby-version }} docker-compose run -e AR_VERSION=${{ matrix.activerecord-version }} test
data/.rubocop.yml ADDED
@@ -0,0 +1,12 @@
1
+ require:
2
+ - rubocop-minitest
3
+ - standard
4
+
5
+ inherit_gem:
6
+ rubocop-minitest: config/default.yml
7
+ standard: config/base.yml
8
+
9
+ AllCops:
10
+ NewCops: enable
11
+ Exclude:
12
+ - 'vendor/**/*'
data/CHANGELOG.md CHANGED
@@ -1,24 +1,39 @@
1
1
  # ulid-rails CHANGELOG
2
2
 
3
- ## 0.6
3
+ ## 1.1.0
4
4
 
5
- - Add support for Rails 4.2, 5.0 and 5.1.
5
+ - Fix eager loading with limit/offset on models that have ulid primary key. The fix only applies to ActiveRecord 5.2, 6 and 7 (#38).
6
+ - Add support for Ruby 3.1.
7
+ - Add support for ActiveRecord 7.
6
8
 
7
- ## 0.5
9
+ ## 1.0.0
10
+
11
+ - Drop support for Rails 4.2.
12
+
13
+ ### Breaking Changes
14
+
15
+ - `primary_key` option has been removed. You need to specify `auto_generate: true` to automatically fill your primary key columns.
16
+
17
+ ## 0.6.0
18
+
19
+ - Add support for Rails 4.2, 5.0 and 5.1.
20
+ - Known Issue: AREL expressions incorrectly serialize ULID values in Rails 4.2 (#27).
21
+
22
+ ## 0.5.0
8
23
 
9
24
  - Ensure ULID order respects timestamp order to millisecond precision.
10
25
  - Validation of ULID format when setting value. A wrong format value will trigger a `ULID::Rails::ArgumentError`.
11
26
 
12
- ## 0.4
27
+ ## 0.4.0
13
28
 
14
29
  - Support old ruby versions
15
30
  - Fix auto_generate #2
16
31
 
17
- ## 0.3
32
+ ## 0.3.0
18
33
 
19
34
  - Support PostgresQL
20
35
 
21
- ## 0.2
36
+ ## 0.2.0
22
37
 
23
38
  ### Breaking Changes
24
39
 
data/Gemfile CHANGED
@@ -1,9 +1,2 @@
1
- source "https://rubygems.org"
2
-
3
- git_source(:github) { |repo_name| "https://github.com/#{repo_name}" }
4
-
5
- # Specify your gem's dependencies in ulid-rails.gemspec
6
- gemspec
7
-
8
1
  version = ENV["AR_VERSION"] || "6.0"
9
2
  eval_gemfile File.expand_path("../gemfiles/#{version}.gemfile", __FILE__)
data/README.md CHANGED
@@ -1,25 +1,29 @@
1
1
  # ULID::Rails
2
2
 
3
- This gem makes it possible to use [ULID](https://github.com/ulid/spec) for DB primary keys in a Ruby on Rails app.
4
-
3
+ This gem makes it possible to use [ULID](https://github.com/ulid/spec) for DB in a Ruby on Rails app.
5
4
 
6
5
  ## Installation
7
6
 
8
-
9
7
  ```ruby
10
8
  gem 'ulid-rails'
11
9
  ```
12
10
 
13
11
  And then execute:
14
12
 
15
- $ bundle
13
+ ```
14
+ $ bundle
15
+ ```
16
16
 
17
17
  Or install it yourself as:
18
18
 
19
- $ gem install ulid-rails
19
+ ```
20
+ $ gem install ulid-rails
21
+ ```
20
22
 
21
23
  ## Usage
22
24
 
25
+ First, load up the gem with `require 'ulid/rails'`.
26
+
23
27
  ### Migrations
24
28
 
25
29
  Specify `id: false` to `create_table` and add `id` column as 16-byte binary type.
@@ -27,13 +31,12 @@ Specify `id: false` to `create_table` and add `id` column as 16-byte binary type
27
31
  ```ruby
28
32
  def change
29
33
  create_table :users, id: false do |t|
30
- t.binary :id, limit: 16, primary_key: true
34
+ t.binary :id, limit: 16, auto_generate: true
31
35
  # ...
32
36
  end
33
37
  end
34
38
  ```
35
39
 
36
-
37
40
  ### Model Changes
38
41
 
39
42
  Just add the below lines to your models.
@@ -41,7 +44,7 @@ Just add the below lines to your models.
41
44
  ```ruby
42
45
  class MyModel < ApplicationRecord
43
46
  include ULID::Rails
44
- ulid :id, primary_key: true # The first argument is the ULID column name
47
+ ulid :id, auto_generate: true # The first argument is the ULID column name
45
48
  end
46
49
  ```
47
50
 
@@ -53,7 +56,7 @@ Since ULID includes milli seconds precision timestamp, you don't need to store `
53
56
  ```ruby
54
57
  class MyModel < ApplicationRecord
55
58
  include ULID::Rails
56
- ulid :id, primary_key: true # The first argument is the ULID column name
59
+ ulid :id, auto_generate: true # The first argument is the ULID column name
57
60
 
58
61
  # defines `created_at` method which extract timestamp value from id column.
59
62
  # This way you don't need physical `created_at` column.
@@ -72,7 +75,7 @@ A virtual column is useful if you want to add index on the timestamp column or w
72
75
 
73
76
  ```ruby
74
77
  create_table :users, id: false do |t|
75
- t.binary :id, limit: 16, primary_key: true
78
+ t.binary :id, limit: 16, auto_generate: true
76
79
  t.datetime :updated_at
77
80
  t.virtual_ulid_timestamp :created_at, :id
78
81
  end
@@ -82,14 +85,13 @@ end
82
85
 
83
86
  ### Auto-generate ULID
84
87
 
85
- If `primary_key` is `true`, ULID is auto-generated before create by default.
86
- You can enable or disable auto-generation with `auto_generate` option.
88
+ If `auto_generate` is `true`, ULID is auto-generated before create by default.
89
+ If not specified, the default is `false`.
87
90
 
88
91
  ```
89
92
  class Model < ApplicationRecord
90
- ulid :id, primary_key: true # primary key. auto-generate enabled
93
+ ulid :id, auto_generate: true # auto-generate enabled
91
94
  ulid :foreign_key # auto-generate disabled
92
- ulid :ulid, auto_generate: true # non primary, auto-generate enabled
93
95
  end
94
96
  ```
95
97
 
@@ -104,6 +106,41 @@ You need to specicfy `type` option
104
106
  end
105
107
  ```
106
108
 
109
+ ### Many to many associations
110
+
111
+ Please note that this library doesn't work properly with `has_and_belongs_to_many` associations.
112
+
113
+ Our recommendation is to be explicit and instead use the `has_many, through: join_class` association.
114
+ Notice that for it to work properly you must specify the `has_many` to the join class in the main classes of the association,
115
+ and your join class must have `belongs_to` main classes defined as shown in the example below:
116
+
117
+ ```ruby
118
+ class User < ActiveRecord::Base
119
+ include ULID::Rails
120
+ ulid :id, auto_generate: true
121
+
122
+ has_many :user_articles
123
+ has_many :articles, through: :user_articles
124
+ end
125
+
126
+ class UserArticle < ActiveRecord::Base
127
+ include ULID::Rails
128
+ ulid :id, auto_generate: true
129
+ ulid :user_id
130
+ ulid :article_id
131
+
132
+ belongs_to :user
133
+ belongs_to :article
134
+ end
135
+
136
+ class Article < ActiveRecord::Base
137
+ include ULID::Rails
138
+ ulid :id, auto_generate: true
139
+
140
+ has_many :user_articles
141
+ end
142
+ ```
143
+
107
144
  ## Development
108
145
 
109
146
  ### Run tests
@@ -126,6 +163,10 @@ Or run tests locally, without docker-compose
126
163
  $ AR_VERSION=4.2 bundle update && AR_VERSION=4.2 bundle exec rake test
127
164
  ```
128
165
 
166
+ ## Known issues
167
+
168
+ - ActiveRecord 5.0 and 5.1 do not work properly with some data association loading methods. For example, eager loading with limit/offset on a model that has a ulid ID. Refer to test cases that are skiped for AR 5.0 and 5.1.
169
+
129
170
  ## License
130
171
 
131
172
  The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).
data/gemfiles/5.0.gemfile CHANGED
@@ -1,6 +1,10 @@
1
- gem "activesupport", "~> 5.0"
2
- gem "activemodel", "~> 5.0"
3
- gem "activerecord", "~> 5.0"
1
+ source "https://rubygems.org"
2
+
3
+ gemspec path: ".."
4
+
5
+ gem "activesupport", "~> 5.0.0"
6
+ gem "activemodel", "~> 5.0.0"
7
+ gem "activerecord", "~> 5.0.0"
4
8
  gem "sqlite3", "~> 1.3.6"
5
9
  gem "mysql2", ">= 0.3.18", "< 0.6.0"
6
10
  gem "pg", ">= 0.18", "< 2.0"
data/gemfiles/5.1.gemfile CHANGED
@@ -1,6 +1,10 @@
1
- gem "activesupport", "~> 5.1"
2
- gem "activemodel", "~> 5.1"
3
- gem "activerecord", "~> 5.1"
1
+ source "https://rubygems.org"
2
+
3
+ gemspec path: ".."
4
+
5
+ gem "activesupport", "~> 5.1.0"
6
+ gem "activemodel", "~> 5.1.0"
7
+ gem "activerecord", "~> 5.1.0"
4
8
  gem "sqlite3", "~> 1.3", ">= 1.3.6"
5
9
  gem "mysql2", ">= 0.3.18", "< 0.6.0"
6
10
  gem "pg", ">= 0.18", "< 2.0"
data/gemfiles/5.2.gemfile CHANGED
@@ -1,8 +1,10 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem "activesupport", "~> 5.2"
4
- gem "activemodel", "~> 5.2"
5
- gem "activerecord", "~> 5.2"
6
- gem "sqlite3", "~> 1.3.6"
7
- gem "mysql2"
8
- gem "pg"
3
+ gemspec path: ".."
4
+
5
+ gem "activesupport", "~> 5.2.0"
6
+ gem "activemodel", "~> 5.2.0"
7
+ gem "activerecord", "~> 5.2.0"
8
+ gem "sqlite3", "~> 1.3", ">= 1.3.6"
9
+ gem "mysql2", ">= 0.4.4", "< 0.6.0"
10
+ gem "pg", ">= 0.18", "< 2.0"
data/gemfiles/6.0.gemfile CHANGED
@@ -1,8 +1,10 @@
1
1
  source "https://rubygems.org"
2
2
 
3
- gem "activesupport", "~> 6.0"
4
- gem "activemodel", "~> 6.0"
5
- gem "activerecord", "~> 6.0"
6
- gem "sqlite3", "~> 1.4.1"
7
- gem "mysql2"
8
- gem "pg"
3
+ gemspec path: ".."
4
+
5
+ gem "activesupport", "~> 6.0.0"
6
+ gem "activemodel", "~> 6.0.0"
7
+ gem "activerecord", "~> 6.0.0"
8
+ gem "sqlite3", "~> 1.4"
9
+ gem "mysql2", ">= 0.4.4"
10
+ gem "pg", ">= 0.18", "< 2.0"
data/gemfiles/6.1.gemfile CHANGED
@@ -1,8 +1,10 @@
1
1
  source "https://rubygems.org"
2
2
 
3
+ gemspec path: ".."
4
+
3
5
  gem "activesupport", "~> 6.1.0"
4
6
  gem "activemodel", "~> 6.1.0"
5
7
  gem "activerecord", "~> 6.1.0"
6
- gem "sqlite3", "~> 1.4.2"
7
- gem "mysql2"
8
- gem "pg"
8
+ gem "sqlite3", "~> 1.4"
9
+ gem "mysql2", "~> 0.5"
10
+ gem "pg", "~> 1.1"
@@ -0,0 +1,10 @@
1
+ source "https://rubygems.org"
2
+
3
+ gemspec path: ".."
4
+
5
+ gem "activesupport", "~> 7.0.0"
6
+ gem "activemodel", "~> 7.0.0"
7
+ gem "activerecord", "~> 7.0.0"
8
+ gem "sqlite3", "~> 1.4"
9
+ gem "mysql2", "~> 0.5"
10
+ gem "pg", "~> 1.1"
@@ -8,6 +8,46 @@ module ULID
8
8
  as: "FROM_UNIXTIME(CONV(HEX(#{ulid_column_name} >> 80), 16, 10) / 1000.0)"
9
9
  end
10
10
  end
11
+
12
+ module FinderMethods
13
+ def limited_ids_for(relation)
14
+ id_rows = super
15
+ if klass.attribute_types[primary_key].is_a? ULID::Rails::Type
16
+ id_rows.map do |id|
17
+ klass.attribute_types[primary_key].deserialize id
18
+ end
19
+ else
20
+ id_rows
21
+ end
22
+ end
23
+ end
24
+
25
+ module SchemaStatements
26
+ def distinct_relation_for_primary_key(relation) # :nodoc:
27
+ values = columns_for_distinct(
28
+ visitor.compile(relation.table[relation.primary_key]),
29
+ relation.order_values
30
+ )
31
+
32
+ limited = relation.reselect(values).distinct!
33
+ limited_ids = select_rows(limited.arel, "SQL").map(&:last)
34
+
35
+ if relation.klass.attribute_types[relation.primary_key].is_a? ULID::Rails::Type
36
+ limited_ids.map! do |id|
37
+ relation.klass.attribute_types[relation.primary_key].deserialize id
38
+ end
39
+ end
40
+
41
+ if limited_ids.empty?
42
+ relation.none!
43
+ else
44
+ relation.where!(relation.primary_key => limited_ids)
45
+ end
46
+
47
+ relation.limit_value = relation.offset_value = nil
48
+ relation
49
+ end
50
+ end
11
51
  end
12
52
  end
13
53
  end
@@ -1,21 +1,12 @@
1
+ require "active_model/type"
1
2
  require "ulid/rails/formatter"
2
3
  require "ulid/rails/validator"
3
4
  require "ulid/rails/errors"
4
- require "ulid/rails/constants"
5
5
 
6
6
  module ULID
7
7
  module Rails
8
- case RAILS_VERSION
9
- when "4.2"
10
- require "active_record/type"
11
- Binary = ActiveRecord::Type::Binary
12
- else
13
- require "active_model/type"
14
- Binary = ActiveModel::Type::Binary
15
- end
16
-
17
- class Type < Binary
18
- class Data < Binary::Data
8
+ class Type < ActiveModel::Type::Binary
9
+ class Data < ActiveModel::Type::Binary::Data
19
10
  alias_method :hex, :to_s
20
11
  end
21
12
 
@@ -50,16 +41,6 @@ module ULID
50
41
  end
51
42
  end
52
43
 
53
- if RAILS_4_2
54
- alias_method :type_cast_for_database, :serialize
55
- alias_method :type_cast_from_database, :deserialize
56
-
57
- def type_cast_from_user(value)
58
- assert_valid_value(value)
59
- super
60
- end
61
- end
62
-
63
44
  private
64
45
 
65
46
  def adapter
@@ -1,5 +1,5 @@
1
1
  module ULID
2
2
  module Rails
3
- VERSION = "0.6.0"
3
+ VERSION = "1.1.0"
4
4
  end
5
5
  end
data/lib/ulid/rails.rb CHANGED
@@ -1,21 +1,20 @@
1
1
  require "active_record"
2
2
  require "active_support/concern"
3
+ require "active_model/type"
3
4
  require "ulid"
4
5
  require "base32/crockford"
5
6
  require "ulid/rails/version"
6
7
  require "ulid/rails/type"
7
8
  require "ulid/rails/patch"
8
- require "ulid/rails/constants"
9
9
 
10
10
  module ULID
11
11
  module Rails
12
12
  extend ActiveSupport::Concern
13
13
 
14
14
  class_methods do
15
- def ulid(column_name, primary_key: false, auto_generate: nil)
15
+ def ulid(column_name, auto_generate: false)
16
16
  attribute column_name, ULID::Rails::Type.new
17
17
 
18
- auto_generate = primary_key || auto_generate
19
18
  if auto_generate
20
19
  before_create do
21
20
  send("#{column_name}=", ULID.generate) if send(column_name).nil?
@@ -45,11 +44,15 @@ module ULID
45
44
  end
46
45
  end
47
46
 
48
- unless RAILS_4_2
49
- require "active_model/type"
50
- ActiveModel::Type.register(:ulid, ULID::Rails::Type)
51
- end
52
-
47
+ ActiveModel::Type.register(:ulid, ULID::Rails::Type)
53
48
  ActiveRecord::ConnectionAdapters::TableDefinition.send :include, Patch::Migrations
49
+ case ActiveRecord::VERSION::MAJOR
50
+ when 5
51
+ ActiveRecord::FinderMethods.prepend(Patch::FinderMethods) unless ActiveRecord::VERSION::MINOR < 2
52
+ when 6
53
+ ActiveRecord::FinderMethods.prepend(Patch::FinderMethods)
54
+ when 7
55
+ ActiveRecord::ConnectionAdapters::SchemaStatements.prepend(Patch::SchemaStatements)
56
+ end
54
57
  end
55
58
  end
data/ulid-rails.gemspec CHANGED
@@ -5,13 +5,22 @@ require "ulid/rails/version"
5
5
  Gem::Specification.new do |spec|
6
6
  spec.name = "ulid-rails"
7
7
  spec.version = ULID::Rails::VERSION
8
+ spec.required_ruby_version = ">= 2.5.0"
8
9
  spec.authors = ["Kazunori Kajihiro", "Zendesk"]
9
10
  spec.email = ["kazunori.kajihiro@gmail.com", "ruby-core@zendesk.com"]
10
11
 
11
12
  spec.summary = "ULID for rails"
12
13
  spec.description = "ULID for rails"
14
+ spec.homepage = "https://github.com/k2nr/ulid-rails/"
13
15
  spec.license = "MIT"
14
16
 
17
+ spec.metadata = {
18
+ "changelog_uri" => "https://github.com/k2nr/ulid-rails/blob/master/CHANGELOG.md",
19
+ "source_code_uri" => "https://github.com/k2nr/ulid-rails/",
20
+ "bug_tracker_uri" => "https://github.com/k2nr/ulid-rails/issues",
21
+ "rubygems_mfa_required" => "true"
22
+ }
23
+
15
24
  # Specify which files should be added to the gem when it is released.
16
25
  # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
17
26
  spec.files = Dir.chdir(File.expand_path("..", __FILE__)) do
@@ -23,11 +32,12 @@ Gem::Specification.new do |spec|
23
32
 
24
33
  spec.add_dependency "ulid", "~> 1.0"
25
34
  spec.add_dependency "base32-crockford", "~> 0.1"
26
- spec.add_dependency "activesupport", ">= 4.2"
27
- spec.add_dependency "activemodel", ">= 4.2"
28
- spec.add_dependency "activerecord", ">= 4.2"
35
+ spec.add_dependency "activesupport", ">= 5.0"
36
+ spec.add_dependency "activemodel", ">= 5.0"
37
+ spec.add_dependency "activerecord", ">= 5.0"
29
38
  spec.add_development_dependency "bundler"
30
39
  spec.add_development_dependency "rake"
31
40
  spec.add_development_dependency "minitest", "~> 5.0"
32
- spec.add_development_dependency "standard", "~> 1.3.0"
41
+ spec.add_development_dependency "rubocop-minitest"
42
+ spec.add_development_dependency "standard", "~> 1.16.0"
33
43
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ulid-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.0
4
+ version: 1.1.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kazunori Kajihiro
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2021-11-11 00:00:00.000000000 Z
12
+ date: 2022-12-23 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: ulid
@@ -45,42 +45,42 @@ dependencies:
45
45
  requirements:
46
46
  - - ">="
47
47
  - !ruby/object:Gem::Version
48
- version: '4.2'
48
+ version: '5.0'
49
49
  type: :runtime
50
50
  prerelease: false
51
51
  version_requirements: !ruby/object:Gem::Requirement
52
52
  requirements:
53
53
  - - ">="
54
54
  - !ruby/object:Gem::Version
55
- version: '4.2'
55
+ version: '5.0'
56
56
  - !ruby/object:Gem::Dependency
57
57
  name: activemodel
58
58
  requirement: !ruby/object:Gem::Requirement
59
59
  requirements:
60
60
  - - ">="
61
61
  - !ruby/object:Gem::Version
62
- version: '4.2'
62
+ version: '5.0'
63
63
  type: :runtime
64
64
  prerelease: false
65
65
  version_requirements: !ruby/object:Gem::Requirement
66
66
  requirements:
67
67
  - - ">="
68
68
  - !ruby/object:Gem::Version
69
- version: '4.2'
69
+ version: '5.0'
70
70
  - !ruby/object:Gem::Dependency
71
71
  name: activerecord
72
72
  requirement: !ruby/object:Gem::Requirement
73
73
  requirements:
74
74
  - - ">="
75
75
  - !ruby/object:Gem::Version
76
- version: '4.2'
76
+ version: '5.0'
77
77
  type: :runtime
78
78
  prerelease: false
79
79
  version_requirements: !ruby/object:Gem::Requirement
80
80
  requirements:
81
81
  - - ">="
82
82
  - !ruby/object:Gem::Version
83
- version: '4.2'
83
+ version: '5.0'
84
84
  - !ruby/object:Gem::Dependency
85
85
  name: bundler
86
86
  requirement: !ruby/object:Gem::Requirement
@@ -123,20 +123,34 @@ dependencies:
123
123
  - - "~>"
124
124
  - !ruby/object:Gem::Version
125
125
  version: '5.0'
126
+ - !ruby/object:Gem::Dependency
127
+ name: rubocop-minitest
128
+ requirement: !ruby/object:Gem::Requirement
129
+ requirements:
130
+ - - ">="
131
+ - !ruby/object:Gem::Version
132
+ version: '0'
133
+ type: :development
134
+ prerelease: false
135
+ version_requirements: !ruby/object:Gem::Requirement
136
+ requirements:
137
+ - - ">="
138
+ - !ruby/object:Gem::Version
139
+ version: '0'
126
140
  - !ruby/object:Gem::Dependency
127
141
  name: standard
128
142
  requirement: !ruby/object:Gem::Requirement
129
143
  requirements:
130
144
  - - "~>"
131
145
  - !ruby/object:Gem::Version
132
- version: 1.3.0
146
+ version: 1.16.0
133
147
  type: :development
134
148
  prerelease: false
135
149
  version_requirements: !ruby/object:Gem::Requirement
136
150
  requirements:
137
151
  - - "~>"
138
152
  - !ruby/object:Gem::Version
139
- version: 1.3.0
153
+ version: 1.16.0
140
154
  description: ULID for rails
141
155
  email:
142
156
  - kazunori.kajihiro@gmail.com
@@ -149,6 +163,7 @@ files:
149
163
  - ".github/workflows/lint.yml"
150
164
  - ".github/workflows/test.yml"
151
165
  - ".gitignore"
166
+ - ".rubocop.yml"
152
167
  - ".standard.yml"
153
168
  - CHANGELOG.md
154
169
  - Gemfile
@@ -159,14 +174,13 @@ files:
159
174
  - bin/run_tests
160
175
  - bin/setup
161
176
  - docker-compose.yml
162
- - gemfiles/4.2.gemfile
163
177
  - gemfiles/5.0.gemfile
164
178
  - gemfiles/5.1.gemfile
165
179
  - gemfiles/5.2.gemfile
166
180
  - gemfiles/6.0.gemfile
167
181
  - gemfiles/6.1.gemfile
182
+ - gemfiles/7.0.gemfile
168
183
  - lib/ulid/rails.rb
169
- - lib/ulid/rails/constants.rb
170
184
  - lib/ulid/rails/errors.rb
171
185
  - lib/ulid/rails/formatter.rb
172
186
  - lib/ulid/rails/patch.rb
@@ -174,10 +188,14 @@ files:
174
188
  - lib/ulid/rails/validator.rb
175
189
  - lib/ulid/rails/version.rb
176
190
  - ulid-rails.gemspec
177
- homepage:
191
+ homepage: https://github.com/k2nr/ulid-rails/
178
192
  licenses:
179
193
  - MIT
180
- metadata: {}
194
+ metadata:
195
+ changelog_uri: https://github.com/k2nr/ulid-rails/blob/master/CHANGELOG.md
196
+ source_code_uri: https://github.com/k2nr/ulid-rails/
197
+ bug_tracker_uri: https://github.com/k2nr/ulid-rails/issues
198
+ rubygems_mfa_required: 'true'
181
199
  post_install_message:
182
200
  rdoc_options: []
183
201
  require_paths:
@@ -186,14 +204,14 @@ required_ruby_version: !ruby/object:Gem::Requirement
186
204
  requirements:
187
205
  - - ">="
188
206
  - !ruby/object:Gem::Version
189
- version: '0'
207
+ version: 2.5.0
190
208
  required_rubygems_version: !ruby/object:Gem::Requirement
191
209
  requirements:
192
210
  - - ">="
193
211
  - !ruby/object:Gem::Version
194
212
  version: '0'
195
213
  requirements: []
196
- rubygems_version: 3.2.29
214
+ rubygems_version: 3.1.6
197
215
  signing_key:
198
216
  specification_version: 4
199
217
  summary: ULID for rails
data/gemfiles/4.2.gemfile DELETED
@@ -1,6 +0,0 @@
1
- gem "activesupport", "~> 4.2"
2
- gem "activemodel", "~> 4.2"
3
- gem "activerecord", "~> 4.2"
4
- gem "sqlite3", "~> 1.3.6"
5
- gem "mysql2", ">= 0.3.13", "< 0.6.0"
6
- gem "pg", "~> 0.15"
@@ -1,6 +0,0 @@
1
- module ULID
2
- module Rails
3
- RAILS_VERSION = "#{ActiveRecord::VERSION::MAJOR}.#{ActiveRecord::VERSION::MINOR}"
4
- RAILS_4_2 = RAILS_VERSION == "4.2"
5
- end
6
- end