├── .coveralls.yml ├── .github └── workflows │ ├── bench.yml │ ├── memory.yml │ ├── rspec.yml │ └── rubocop.yml ├── .gitignore ├── .rubocop.yml ├── Appraisals ├── CHANGELOG.md ├── Gemfile ├── MIT-LICENSE ├── README.md ├── Rakefile ├── ar_lazy_preload.gemspec ├── benchmark ├── base_bench.rb ├── main.rb └── memory.rb ├── gemfiles ├── rails_7_0.gemfile ├── rails_7_1.gemfile ├── rails_7_2.gemfile ├── rails_8_0.gemfile └── railsmaster.gemfile ├── lib ├── ar_lazy_preload.rb └── ar_lazy_preload │ ├── active_record │ ├── association.rb │ ├── association_relation.rb │ ├── base.rb │ ├── collection_association.rb │ ├── collection_proxy.rb │ ├── merger.rb │ └── relation.rb │ ├── associated_context_builder.rb │ ├── association_tree_builder.rb │ ├── configuration.rb │ ├── context.rb │ ├── contexts │ ├── auto_preload_context.rb │ ├── base_context.rb │ ├── lazy_preload_context.rb │ └── temporary_preload_config.rb │ ├── preloaded_records_converter.rb │ ├── preloader.rb │ ├── railtie.rb │ └── version.rb └── spec ├── ar_lazy_preload ├── active_record │ ├── association_relation_spec.rb │ ├── base_spec.rb │ ├── collection_proxy_spec.rb │ ├── merger_spec.rb │ └── relation_spec.rb ├── ar_lazy_preload_spec.rb ├── associated_context_builder_spec.rb ├── association_tree_builder_spec.rb ├── auto_preload_spec.rb ├── contexts │ ├── lazy_preload_context_spec.rb │ └── temporary_preload_config_spec.rb ├── integrity_spec.rb ├── preload_associations_lazily_spec.rb ├── skip_preload_spec.rb └── temporary_preload_config_spec.rb ├── dummy_rack ├── config.ru └── setup.rb ├── dummy_rails ├── config.ru └── config │ ├── application.rb │ ├── boot.rb │ ├── database.yml │ ├── environment.rb │ ├── environments │ └── test.rb │ ├── routes.rb │ └── secrets.yml ├── helpers ├── factories.rb ├── models.rb └── schema.rb └── spec_helper.rb /.coveralls.yml: -------------------------------------------------------------------------------- 1 | service_name: github-ci 2 | -------------------------------------------------------------------------------- /.github/workflows/bench.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/.github/workflows/bench.yml -------------------------------------------------------------------------------- /.github/workflows/memory.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/.github/workflows/memory.yml -------------------------------------------------------------------------------- /.github/workflows/rspec.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/.github/workflows/rspec.yml -------------------------------------------------------------------------------- /.github/workflows/rubocop.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/.github/workflows/rubocop.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/.gitignore -------------------------------------------------------------------------------- /.rubocop.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/.rubocop.yml -------------------------------------------------------------------------------- /Appraisals: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/Appraisals -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/CHANGELOG.md -------------------------------------------------------------------------------- /Gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/Gemfile -------------------------------------------------------------------------------- /MIT-LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/MIT-LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/README.md -------------------------------------------------------------------------------- /Rakefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/Rakefile -------------------------------------------------------------------------------- /ar_lazy_preload.gemspec: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/ar_lazy_preload.gemspec -------------------------------------------------------------------------------- /benchmark/base_bench.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/benchmark/base_bench.rb -------------------------------------------------------------------------------- /benchmark/main.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/benchmark/main.rb -------------------------------------------------------------------------------- /benchmark/memory.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/benchmark/memory.rb -------------------------------------------------------------------------------- /gemfiles/rails_7_0.gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/gemfiles/rails_7_0.gemfile -------------------------------------------------------------------------------- /gemfiles/rails_7_1.gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/gemfiles/rails_7_1.gemfile -------------------------------------------------------------------------------- /gemfiles/rails_7_2.gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/gemfiles/rails_7_2.gemfile -------------------------------------------------------------------------------- /gemfiles/rails_8_0.gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/gemfiles/rails_8_0.gemfile -------------------------------------------------------------------------------- /gemfiles/railsmaster.gemfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/gemfiles/railsmaster.gemfile -------------------------------------------------------------------------------- /lib/ar_lazy_preload.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/active_record/association.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/active_record/association.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/active_record/association_relation.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/active_record/association_relation.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/active_record/base.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/active_record/base.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/active_record/collection_association.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/active_record/collection_association.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/active_record/collection_proxy.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/active_record/collection_proxy.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/active_record/merger.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/active_record/merger.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/active_record/relation.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/active_record/relation.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/associated_context_builder.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/associated_context_builder.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/association_tree_builder.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/association_tree_builder.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/configuration.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/configuration.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/context.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/context.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/contexts/auto_preload_context.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/contexts/auto_preload_context.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/contexts/base_context.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/contexts/base_context.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/contexts/lazy_preload_context.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/contexts/lazy_preload_context.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/contexts/temporary_preload_config.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/contexts/temporary_preload_config.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/preloaded_records_converter.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/preloaded_records_converter.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/preloader.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/preloader.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/railtie.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/lib/ar_lazy_preload/railtie.rb -------------------------------------------------------------------------------- /lib/ar_lazy_preload/version.rb: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | 3 | module ArLazyPreload 4 | VERSION = "2.1.0" 5 | end 6 | -------------------------------------------------------------------------------- /spec/ar_lazy_preload/active_record/association_relation_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/active_record/association_relation_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/active_record/base_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/active_record/base_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/active_record/collection_proxy_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/active_record/collection_proxy_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/active_record/merger_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/active_record/merger_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/active_record/relation_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/active_record/relation_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/ar_lazy_preload_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/ar_lazy_preload_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/associated_context_builder_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/associated_context_builder_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/association_tree_builder_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/association_tree_builder_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/auto_preload_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/auto_preload_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/contexts/lazy_preload_context_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/contexts/lazy_preload_context_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/contexts/temporary_preload_config_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/contexts/temporary_preload_config_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/integrity_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/integrity_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/preload_associations_lazily_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/preload_associations_lazily_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/skip_preload_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/skip_preload_spec.rb -------------------------------------------------------------------------------- /spec/ar_lazy_preload/temporary_preload_config_spec.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/ar_lazy_preload/temporary_preload_config_spec.rb -------------------------------------------------------------------------------- /spec/dummy_rack/config.ru: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/dummy_rack/config.ru -------------------------------------------------------------------------------- /spec/dummy_rack/setup.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/dummy_rack/setup.rb -------------------------------------------------------------------------------- /spec/dummy_rails/config.ru: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /spec/dummy_rails/config/application.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/dummy_rails/config/application.rb -------------------------------------------------------------------------------- /spec/dummy_rails/config/boot.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/dummy_rails/config/boot.rb -------------------------------------------------------------------------------- /spec/dummy_rails/config/database.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/dummy_rails/config/database.yml -------------------------------------------------------------------------------- /spec/dummy_rails/config/environment.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/dummy_rails/config/environment.rb -------------------------------------------------------------------------------- /spec/dummy_rails/config/environments/test.rb: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | 3 | Dummy::Application.configure do 4 | end 5 | -------------------------------------------------------------------------------- /spec/dummy_rails/config/routes.rb: -------------------------------------------------------------------------------- 1 | # frozen_string_literal: true 2 | 3 | Dummy::Application.routes.draw do 4 | end 5 | -------------------------------------------------------------------------------- /spec/dummy_rails/config/secrets.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/dummy_rails/config/secrets.yml -------------------------------------------------------------------------------- /spec/helpers/factories.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/helpers/factories.rb -------------------------------------------------------------------------------- /spec/helpers/models.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/helpers/models.rb -------------------------------------------------------------------------------- /spec/helpers/schema.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/helpers/schema.rb -------------------------------------------------------------------------------- /spec/spec_helper.rb: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/DmitryTsepelev/ar_lazy_preload/HEAD/spec/spec_helper.rb --------------------------------------------------------------------------------