Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions gems/activerecord/7.1/_test/test.rb
Original file line number Diff line number Diff line change
Expand Up @@ -33,6 +33,7 @@ class User < ApplicationRecord
User.insert_all!([{ id: 1, name: 'James' }], returning: %i[id name], record_timestamps: true)
User.upsert({ id: 1, name: 'James' }, returning: %i[id name], unique_by: :id, record_timestamps: true)
User.upsert_all([{ id: 1, name: 'James' }], returning: %i[id name], unique_by: :id, record_timestamps: true)
User.with(admin_users: User.where(role: 0))
user = User.new(secret: 'dummy', key: 'dummy', token: 'dummy', phrase: 'dummy')
user.encrypt
user.encrypted_attribute?(:secret)
Expand Down
18 changes: 18 additions & 0 deletions gems/activerecord/7.1/activerecord-7.1.rbs
Original file line number Diff line number Diff line change
Expand Up @@ -26,6 +26,10 @@ module ActiveRecord
extend RuntimeRegistry
end

module QueryMethods
def with: (*untyped args) -> untyped
end

module QueryMethods
class WhereChain[Relation]
def missing: (*Symbol associations) -> Relation
Expand Down Expand Up @@ -124,3 +128,17 @@ module Arel
def initialize: (untyped name, ?type_caster: untyped type_caster, ?as: untyped? as, ?klass: untyped?) -> void
end
end

module ActiveRecord
class Relation
module Methods[Model, PrimaryKey]
def with: (*untyped args) -> self
end
end

class Base
module ClassMethods[Model, Relation, PrimaryKey]
def with: (*untyped args) -> Relation
end
end
end