get-smart 0.0.1

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.
Files changed (2919) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +193 -0
  4. data/Rakefile +8 -0
  5. data/files/gems/acts-as-taggable-on/advanced/custom_delimiters_unicode_normalization.md +32 -0
  6. data/files/gems/acts-as-taggable-on/advanced/optimize_tag_query_with_joins.md +23 -0
  7. data/files/gems/acts-as-taggable-on/advanced/polymorphic_tagging_across_models.md +36 -0
  8. data/files/gems/acts-as-taggable-on/beginner/add_tags_to_model.md +17 -0
  9. data/files/gems/acts-as-taggable-on/beginner/query_tags.md +14 -0
  10. data/files/gems/acts-as-taggable-on/beginner/setup_gem.md +15 -0
  11. data/files/gems/acts-as-taggable-on/expert/advanced_search_and_caching.md +37 -0
  12. data/files/gems/acts-as-taggable-on/expert/dynamic_tag_contexts.md +31 -0
  13. data/files/gems/acts-as-taggable-on/expert/hierarchical_tags_with_ancestry.md +26 -0
  14. data/files/gems/acts-as-taggable-on/middle/caching_tag_counts.md +26 -0
  15. data/files/gems/acts-as-taggable-on/middle/multiple_tag_contexts.md +23 -0
  16. data/files/gems/acts-as-taggable-on/middle/querying_tagged_models.md +20 -0
  17. data/files/gems/bcrypt/advanced/add_pepper_to_bcrypt.md +30 -0
  18. data/files/gems/bcrypt/advanced/async_password_rehash.md +37 -0
  19. data/files/gems/bcrypt/advanced/dynamic_bcrypt_cost.md +18 -0
  20. data/files/gems/bcrypt/beginner/bcrypt_authentication.md +21 -0
  21. data/files/gems/bcrypt/beginner/bcrypt_installation.md +14 -0
  22. data/files/gems/bcrypt/beginner/bcrypt_model_setup.md +17 -0
  23. data/files/gems/bcrypt/expert/bcrypt_async_hashing.md +37 -0
  24. data/files/gems/bcrypt/expert/bcrypt_legacy_migration.md +31 -0
  25. data/files/gems/bcrypt/expert/bcrypt_pepper_cost_configuration.md +37 -0
  26. data/files/gems/bcrypt/middle/bcrypt_custom_cost.md +12 -0
  27. data/files/gems/bcrypt/middle/bcrypt_generate_and_verify.md +22 -0
  28. data/files/gems/bcrypt/middle/bcrypt_rehash_on_login.md +26 -0
  29. data/files/gems/chartkick/advanced/after_render_hook.md +42 -0
  30. data/files/gems/chartkick/advanced/custom_tooltips_formatters.md +35 -0
  31. data/files/gems/chartkick/advanced/multi_axis_charts.md +29 -0
  32. data/files/gems/chartkick/advanced/streaming_via_action_cable.md +34 -0
  33. data/files/gems/chartkick/beginner/basic_line_chart.md +15 -0
  34. data/files/gems/chartkick/beginner/customize_chart_options.md +16 -0
  35. data/files/gems/chartkick/beginner/multiple_series_bar_chart.md +18 -0
  36. data/files/gems/chartkick/beginner/setup_chartkick.md +21 -0
  37. data/files/gems/chartkick/expert/combo_charts_multiple_axes.md +17 -0
  38. data/files/gems/chartkick/expert/custom_chartjs_library_options.md +28 -0
  39. data/files/gems/chartkick/expert/dynamic_realtime_updates_with_actioncable.md +40 -0
  40. data/files/gems/chartkick/expert/sql_cte_aggregation_for_large_datasets.md +22 -0
  41. data/files/gems/chartkick/middle/ajax_refresh.md +23 -0
  42. data/files/gems/chartkick/middle/custom_chart_options.md +16 -0
  43. data/files/gems/chartkick/middle/group_by_period.md +15 -0
  44. data/files/gems/chartkick/middle/multiple_series.md +18 -0
  45. data/files/gems/counter_culture/advanced/dynamic_conditional_counters.md +19 -0
  46. data/files/gems/counter_culture/advanced/weighted_counter_updates.md +20 -0
  47. data/files/gems/counter_culture/beginner/counter_culture_basic_usage.md +25 -0
  48. data/files/gems/counter_culture/beginner/counter_culture_setup.md +38 -0
  49. data/files/gems/counter_culture/expert/batch_async_counter_updates.md +26 -0
  50. data/files/gems/counter_culture/expert/multi_level_association_caching.md +40 -0
  51. data/files/gems/counter_culture/middle/multiple_counter_usage.md +39 -0
  52. data/files/gems/counter_culture/middle/scoped_comment_counter.md +31 -0
  53. data/files/gems/devise/advanced/custom_password_strength_validator.md.md +22 -0
  54. data/files/gems/devise/advanced/devise_jwt_integration.md.md +34 -0
  55. data/files/gems/devise/advanced/dynamic_omniauth_providers.md.md +15 -0
  56. data/files/gems/devise/advanced/multiple_user_scopes.md.md +30 -0
  57. data/files/gems/devise/beginner/configure_routes.md +12 -0
  58. data/files/gems/devise/beginner/customize_devise_views.md +19 -0
  59. data/files/gems/devise/beginner/generate_user_model.md +9 -0
  60. data/files/gems/devise/beginner/install_devise.md +14 -0
  61. data/files/gems/devise/expert/custom_warden_2fa.md +27 -0
  62. data/files/gems/devise/expert/dynamic_failure_app_handling.md +28 -0
  63. data/files/gems/devise/expert/jwt_stateless_api.md +37 -0
  64. data/files/gems/devise/expert/multi_tenant_authentication.md +28 -0
  65. data/files/gems/devise/middle/custom_redirect_path.md +15 -0
  66. data/files/gems/devise/middle/override_devise_controllers.md +22 -0
  67. data/files/gems/devise/middle/permit_extra_params.md +17 -0
  68. data/files/gems/devise/middle/rspec_devise_helpers.md +24 -0
  69. data/files/gems/factory_bot_rails/advanced/advanced_polymorphic_traits.md +24 -0
  70. data/files/gems/factory_bot_rails/advanced/custom_factorybot_strategy.md +28 -0
  71. data/files/gems/factory_bot_rails/advanced/transient_dynamic_associations.md +22 -0
  72. data/files/gems/factory_bot_rails/beginner/associations.md.md +21 -0
  73. data/files/gems/factory_bot_rails/beginner/basic_factory_setup.md.md +23 -0
  74. data/files/gems/factory_bot_rails/beginner/using_traits.md.md +28 -0
  75. data/files/gems/factory_bot_rails/expert/after_create_callbacks_external_service_setup.md +34 -0
  76. data/files/gems/factory_bot_rails/expert/custom_to_create_bulk_insert_strategy.md +30 -0
  77. data/files/gems/factory_bot_rails/expert/transient_traits_dynamic_associations.md +38 -0
  78. data/files/gems/factory_bot_rails/middle/association_strategies.md +19 -0
  79. data/files/gems/factory_bot_rails/middle/unique_sequences.md +17 -0
  80. data/files/gems/factory_bot_rails/middle/use_traits.md +26 -0
  81. data/files/gems/faker/advanced/custom_provider.md +40 -0
  82. data/files/gems/faker/advanced/multilingual_data.md +18 -0
  83. data/files/gems/faker/advanced/seed_reproducibility.md +25 -0
  84. data/files/gems/faker/beginner/faker_in_tests.md +24 -0
  85. data/files/gems/faker/beginner/installing_faker_gem.md +12 -0
  86. data/files/gems/faker/beginner/seeding_with_faker.md +17 -0
  87. data/files/gems/faker/expert/concurrent_load_testing.md.md +30 -0
  88. data/files/gems/faker/expert/custom_faker_provider.md.md +28 -0
  89. data/files/gems/faker/expert/dynamic_locale_fallback.md.md +23 -0
  90. data/files/gems/faker/middle/faker_locale_configuration.md +15 -0
  91. data/files/gems/faker/middle/faker_unique_generator.md +16 -0
  92. data/files/gems/faker/middle/faker_with_factorybot.md +18 -0
  93. data/files/gems/faraday/advanced/faraday_custom_hmac_middleware.md +36 -0
  94. data/files/gems/faraday/advanced/faraday_retry_exponential_backoff.md +20 -0
  95. data/files/gems/faraday/beginner/faraday_get_request.md +20 -0
  96. data/files/gems/faraday/beginner/faraday_install_config.md +25 -0
  97. data/files/gems/faraday/expert/custom_instrumentation_middleware.md +26 -0
  98. data/files/gems/faraday/expert/thread_safe_connection_pool.md +33 -0
  99. data/files/gems/faraday/middle/custom_middleware_integration.md +38 -0
  100. data/files/gems/faraday/middle/timeouts_and_retries.md +26 -0
  101. data/files/gems/flipper/advanced/consistent_percentage_rollout.md +30 -0
  102. data/files/gems/flipper/advanced/custom_actor_groups.md +20 -0
  103. data/files/gems/flipper/beginner/flipper_basic_toggle.md +31 -0
  104. data/files/gems/flipper/beginner/flipper_setup.md +22 -0
  105. data/files/gems/flipper/expert/custom_instrumentation_statsd.md +21 -0
  106. data/files/gems/flipper/expert/multi_region_adapter.md +47 -0
  107. data/files/gems/flipper/middle/flipper_custom_user_groups.md +20 -0
  108. data/files/gems/flipper/middle/flipper_percentage_rollout.md +16 -0
  109. data/files/gems/geocoder/advanced/geocoder_caching_and_fallback_strategies.md +34 -0
  110. data/files/gems/geocoder/advanced/polymorphic_geocoding_multiple_models.md +46 -0
  111. data/files/gems/geocoder/advanced/postgis_high_performance_queries.md +41 -0
  112. data/files/gems/geocoder/beginner/geocoder_install.md +13 -0
  113. data/files/gems/geocoder/beginner/geocoder_model_setup.md +15 -0
  114. data/files/gems/geocoder/beginner/geocoder_reverse_usage.md +20 -0
  115. data/files/gems/geocoder/expert/bulk_reverse_geocoding_sidekiq.md +26 -0
  116. data/files/gems/geocoder/expert/optimized_distance_sql.md +25 -0
  117. data/files/gems/geocoder/expert/postgis_advanced_queries.md +35 -0
  118. data/files/gems/geocoder/middle/customizing_geocoder_config.md +34 -0
  119. data/files/gems/geocoder/middle/distance_queries_near_scope.md +22 -0
  120. data/files/gems/geocoder/middle/model_geocoding_setup.md +38 -0
  121. data/files/gems/httparty/advanced/custom_httparty_parser.md +41 -0
  122. data/files/gems/httparty/advanced/httparty_with_retry.md +40 -0
  123. data/files/gems/httparty/beginner/basic_get_request.md +14 -0
  124. data/files/gems/httparty/beginner/query_params_usage.md +15 -0
  125. data/files/gems/httparty/expert/httparty_persistent_connections.md +25 -0
  126. data/files/gems/httparty/expert/httparty_typhoeus_adapter.md +49 -0
  127. data/files/gems/httparty/middle/httparty_dynamic_query_params.md +22 -0
  128. data/files/gems/httparty/middle/httparty_reusable_client.md +26 -0
  129. data/files/gems/image_processing/advanced/custom_watermark_processor.md +37 -0
  130. data/files/gems/image_processing/advanced/persistent_variant_cache.md +33 -0
  131. data/files/gems/image_processing/advanced/streaming_variants.md +18 -0
  132. data/files/gems/image_processing/beginner/convert_format_thumbnail.md +12 -0
  133. data/files/gems/image_processing/beginner/generate_resized_variant.md +9 -0
  134. data/files/gems/image_processing/beginner/install_image_processing.md +13 -0
  135. data/files/gems/image_processing/expert/advanced_caching_strategies.md +23 -0
  136. data/files/gems/image_processing/expert/custom_mini_magick_operations.md +26 -0
  137. data/files/gems/image_processing/expert/parallel_processing_pipeline.md +25 -0
  138. data/files/gems/image_processing/middle/background_processing.md +30 -0
  139. data/files/gems/image_processing/middle/chain_transformations.md +26 -0
  140. data/files/gems/image_processing/middle/variants_resizing_format.md +24 -0
  141. data/files/gems/mini_magick/advanced/composite_with_masks.md +14 -0
  142. data/files/gems/mini_magick/advanced/multi_page_document_processing.md +18 -0
  143. data/files/gems/mini_magick/advanced/stream_processing.md +12 -0
  144. data/files/gems/mini_magick/beginner/convert_and_crop.md +17 -0
  145. data/files/gems/mini_magick/beginner/install_and_setup.md +15 -0
  146. data/files/gems/mini_magick/beginner/resize_image.md +13 -0
  147. data/files/gems/mini_magick/expert/gif_optimization_pipeline.md +20 -0
  148. data/files/gems/mini_magick/expert/pdf_multipage_annotation.md +34 -0
  149. data/files/gems/mini_magick/expert/streaming_image_pipelining.md +25 -0
  150. data/files/gems/mini_magick/middle/conditional_resize.md +11 -0
  151. data/files/gems/mini_magick/middle/in_memory_processing.md +17 -0
  152. data/files/gems/mini_magick/middle/optimize_and_compress.md +15 -0
  153. data/files/gems/pundit/advanced/dynamic_policy_scopes.md +39 -0
  154. data/files/gems/pundit/advanced/graphql_field_authorization.md +36 -0
  155. data/files/gems/pundit/beginner/pundit_basic_policy_usage.md +47 -0
  156. data/files/gems/pundit/beginner/pundit_install_setup.md +24 -0
  157. data/files/gems/pundit/expert/pundit_dynamic_context_scopes.md +51 -0
  158. data/files/gems/pundit/expert/pundit_rspec_custom_matchers.md +51 -0
  159. data/files/gems/pundit/middle/policy_scope_in_controller.md +24 -0
  160. data/files/gems/pundit/middle/verify_authorization_callbacks.md +29 -0
  161. data/files/gems/ransack/advanced/custom_ransacker_computed_fields.md +25 -0
  162. data/files/gems/ransack/advanced/define_custom_predicates.md +39 -0
  163. data/files/gems/ransack/advanced/nested_association_query.md +24 -0
  164. data/files/gems/ransack/beginner/basic_search_form.md +25 -0
  165. data/files/gems/ransack/beginner/multi_field_search.md +21 -0
  166. data/files/gems/ransack/beginner/sorting_results.md +28 -0
  167. data/files/gems/ransack/expert/complex_arel_ransacker_full_name.md +25 -0
  168. data/files/gems/ransack/expert/dynamic_whitelisting_ransackable_scopes.md +35 -0
  169. data/files/gems/ransack/expert/postgres_full_text_search_predicate.md +24 -0
  170. data/files/gems/ransack/middle/ransack_association_search.md +25 -0
  171. data/files/gems/ransack/middle/ransack_group_or_conditions.md +54 -0
  172. data/files/gems/ransack/middle/ransack_sort_pagination.md +32 -0
  173. data/files/gems/redis/advanced/redis_cluster_integration.md +26 -0
  174. data/files/gems/redis/advanced/redis_pubsub_connection_pool.md +28 -0
  175. data/files/gems/redis/advanced/redis_redlock_distributed_locks.md +25 -0
  176. data/files/gems/redis/advanced/redis_streams_event_sourcing.md +28 -0
  177. data/files/gems/redis/beginner/connecting_to_redis.md +13 -0
  178. data/files/gems/redis/beginner/set_and_get_keys.md +12 -0
  179. data/files/gems/redis/beginner/setting_key_expiration.md +13 -0
  180. data/files/gems/redis/beginner/working_with_lists.md +13 -0
  181. data/files/gems/redis/expert/redis_hyperloglog_unique_counts.md +30 -0
  182. data/files/gems/redis/expert/redis_lua_atomic_operations.md +45 -0
  183. data/files/gems/redis/expert/redis_redlock_distributed_lock.md +39 -0
  184. data/files/gems/redis/expert/redis_streams_event_sourcing.md +38 -0
  185. data/files/gems/redis/middle/distributed_lock_redlock.md +19 -0
  186. data/files/gems/redis/middle/fragment_caching_redis.md +15 -0
  187. data/files/gems/redis/middle/rate_limiter_redis.md +32 -0
  188. data/files/gems/redis/middle/session_store_redis.md +15 -0
  189. data/files/gems/rspec/advanced/around_hooks_for_transactions.md +23 -0
  190. data/files/gems/rspec/advanced/composite_matcher_operators.md +14 -0
  191. data/files/gems/rspec/advanced/custom_matcher_chainable.md +21 -0
  192. data/files/gems/rspec/advanced/filtering_by_custom_tags.md +19 -0
  193. data/files/gems/rspec/advanced/let_lazy_loaded_dependencies.md +18 -0
  194. data/files/gems/rspec/advanced/monkey_patch_rspec_dsl.md +25 -0
  195. data/files/gems/rspec/advanced/profiling_slow_specs.md +15 -0
  196. data/files/gems/rspec/advanced/rspec_configuration_overrides.md +24 -0
  197. data/files/gems/rspec/advanced/shared_contexts_with_metadata.md +18 -0
  198. data/files/gems/rspec/advanced/verifying_partial_doubles.md +16 -0
  199. data/files/gems/rspec/beginner/rspec_after_hooks.md +16 -0
  200. data/files/gems/rspec/beginner/rspec_before_hooks.md +15 -0
  201. data/files/gems/rspec/beginner/rspec_common_matchers.md +9 -0
  202. data/files/gems/rspec/beginner/rspec_describe_blocks.md +9 -0
  203. data/files/gems/rspec/beginner/rspec_focus_tag.md +21 -0
  204. data/files/gems/rspec/beginner/rspec_it_blocks.md +11 -0
  205. data/files/gems/rspec/beginner/rspec_let_usage.md +13 -0
  206. data/files/gems/rspec/beginner/rspec_setup.md +16 -0
  207. data/files/gems/rspec/beginner/rspec_shared_examples.md +16 -0
  208. data/files/gems/rspec/beginner/rspec_subject_definition.md +13 -0
  209. data/files/gems/rspec/custom_matchers/advanced/chainable_custom_matchers.md +46 -0
  210. data/files/gems/rspec/custom_matchers/advanced/diffable_custom_matchers.md +27 -0
  211. data/files/gems/rspec/custom_matchers/advanced/parameterized_block_matchers.md +30 -0
  212. data/files/gems/rspec/custom_matchers/beginner/basic_custom_matcher.md +17 -0
  213. data/files/gems/rspec/custom_matchers/beginner/custom_failure_message.md +12 -0
  214. data/files/gems/rspec/custom_matchers/beginner/parameterized_custom_matcher.md +18 -0
  215. data/files/gems/rspec/custom_matchers/expert/diffable_block_expectations.md.md +26 -0
  216. data/files/gems/rspec/custom_matchers/expert/dynamic_chaining_matchers.md.md +34 -0
  217. data/files/gems/rspec/custom_matchers/expert/metaprogramming_driven_matchers.md.md +29 -0
  218. data/files/gems/rspec/custom_matchers/middle/chained_custom_matcher.md +28 -0
  219. data/files/gems/rspec/custom_matchers/middle/custom_failure_messages.md +27 -0
  220. data/files/gems/rspec/custom_matchers/middle/parameterized_range_matcher.md +30 -0
  221. data/files/gems/rspec/expert/advanced_const_mocking.md +18 -0
  222. data/files/gems/rspec/expert/custom_composable_matchers.md +23 -0
  223. data/files/gems/rspec/expert/custom_formatters.md +33 -0
  224. data/files/gems/rspec/expert/hook_order_customization.md +19 -0
  225. data/files/gems/rspec/expert/metadata_dynamic_test_generation.md +23 -0
  226. data/files/gems/rspec/expert/parallel_testing_db_sharding.md +18 -0
  227. data/files/gems/rspec/expert/parametrized_shared_examples.md +18 -0
  228. data/files/gems/rspec/expert/performance_profiling.md +22 -0
  229. data/files/gems/rspec/expert/vcr_webmock_advanced.md +18 -0
  230. data/files/gems/rspec/hooks_and_lifecycle/advanced/metadata_conditional_hooks.md +32 -0
  231. data/files/gems/rspec/hooks_and_lifecycle/advanced/orchestrating_external_service.md +36 -0
  232. data/files/gems/rspec/hooks_and_lifecycle/advanced/transactional_time_travel.md +22 -0
  233. data/files/gems/rspec/hooks_and_lifecycle/beginner/rspec_after_hook.md +22 -0
  234. data/files/gems/rspec/hooks_and_lifecycle/beginner/rspec_around_hook.md +18 -0
  235. data/files/gems/rspec/hooks_and_lifecycle/beginner/rspec_before_hook.md +19 -0
  236. data/files/gems/rspec/hooks_and_lifecycle/expert/around_each_instrumentation.md +26 -0
  237. data/files/gems/rspec/hooks_and_lifecycle/expert/metadata_based_hooks.md +30 -0
  238. data/files/gems/rspec/hooks_and_lifecycle/expert/prepend_hooks_module.md +29 -0
  239. data/files/gems/rspec/hooks_and_lifecycle/middle/around_hooks_custom_setup.md +23 -0
  240. data/files/gems/rspec/hooks_and_lifecycle/middle/metadata_filtered_hooks.md +32 -0
  241. data/files/gems/rspec/hooks_and_lifecycle/middle/shared_context_lifecycle.md +40 -0
  242. data/files/gems/rspec/middle/aggregate_failures.md +15 -0
  243. data/files/gems/rspec/middle/around_hooks.md +18 -0
  244. data/files/gems/rspec/middle/custom_matchers.md +27 -0
  245. data/files/gems/rspec/middle/instance_double_usage.md +23 -0
  246. data/files/gems/rspec/middle/let_vs_let_bang.md +14 -0
  247. data/files/gems/rspec/middle/leveraging_contexts.md +23 -0
  248. data/files/gems/rspec/middle/named_subject.md +22 -0
  249. data/files/gems/rspec/middle/shared_examples_usage.md +21 -0
  250. data/files/gems/rspec/middle/tagged_examples_filtering.md +22 -0
  251. data/files/gems/rspec/middle/verifying_partial_doubles.md +24 -0
  252. data/files/gems/rspec/mocks_and_stubs/advanced/instance_double_interface.md +11 -0
  253. data/files/gems/rspec/mocks_and_stubs/advanced/nested_doubles_for_complex_dependencies.md +14 -0
  254. data/files/gems/rspec/mocks_and_stubs/advanced/partial_spy_mocks.md +22 -0
  255. data/files/gems/rspec/mocks_and_stubs/advanced/sequential_return_values.md +13 -0
  256. data/files/gems/rspec/mocks_and_stubs/advanced/stub_private_methods.md +23 -0
  257. data/files/gems/rspec/mocks_and_stubs/beginner/argument_matching_stub.md +19 -0
  258. data/files/gems/rspec/mocks_and_stubs/beginner/chain_method_stub.md +15 -0
  259. data/files/gems/rspec/mocks_and_stubs/beginner/instance_double_usage.md +19 -0
  260. data/files/gems/rspec/mocks_and_stubs/beginner/mock_expectation_receive.md +18 -0
  261. data/files/gems/rspec/mocks_and_stubs/beginner/stub_return_value.md +19 -0
  262. data/files/gems/rspec/mocks_and_stubs/expert/class_spy_on_new_with_and_call_original.md +29 -0
  263. data/files/gems/rspec/mocks_and_stubs/expert/complex_block_yields_with_and_yield.md +30 -0
  264. data/files/gems/rspec/mocks_and_stubs/expert/stub_private_methods_with_prepend.md +33 -0
  265. data/files/gems/rspec/mocks_and_stubs/expert/verifying_module_methods_with_class_double.md +30 -0
  266. data/files/gems/rspec/mocks_and_stubs/expert/wrap_original_with_and_wrap_original.md +29 -0
  267. data/files/gems/rspec/mocks_and_stubs/middle/instance_double_strict_interface.md +17 -0
  268. data/files/gems/rspec/mocks_and_stubs/middle/sequential_return_values.md +16 -0
  269. data/files/gems/rspec/mocks_and_stubs/middle/stubbing_chained_methods.md +18 -0
  270. data/files/gems/rspec/mocks_and_stubs/middle/using_spies_for_assertions.md +16 -0
  271. data/files/gems/rspec/mocks_and_stubs/middle/yielding_block_methods.md +17 -0
  272. data/files/gems/rspec/shared_examples/advanced/metadata_filtered_shared_examples.md +31 -0
  273. data/files/gems/rspec/shared_examples/advanced/parameterized_shared_examples_dsl.md +24 -0
  274. data/files/gems/rspec/shared_examples/beginner/shared_examples_dry_specs.md +23 -0
  275. data/files/gems/rspec/shared_examples/beginner/shared_examples_with_arguments.md +19 -0
  276. data/files/gems/rspec/shared_examples/expert/dynamic_shared_examples_with_metadata.md +43 -0
  277. data/files/gems/rspec/shared_examples/expert/parameterized_shared_examples_with_dynamic_classes.md +65 -0
  278. data/files/gems/rspec/shared_examples/middle/shared_examples_basic_usage.md +24 -0
  279. data/files/gems/rspec/shared_examples/middle/shared_examples_parameterized_usage.md +21 -0
  280. data/files/gems/ruby-openai/advanced/batch_embeddings_async.md +30 -0
  281. data/files/gems/ruby-openai/advanced/function_calling_advanced.md +44 -0
  282. data/files/gems/ruby-openai/advanced/streaming_chat_responses.md +22 -0
  283. data/files/gems/ruby-openai/beginner/handle_errors_gracefully.md +14 -0
  284. data/files/gems/ruby-openai/beginner/setup_ruby_openai.md +15 -0
  285. data/files/gems/ruby-openai/beginner/simple_chat_request.md +17 -0
  286. data/files/gems/ruby-openai/expert/advanced_streaming_with_backpressure.md +30 -0
  287. data/files/gems/ruby-openai/expert/dynamic_function_call_management.md +44 -0
  288. data/files/gems/ruby-openai/expert/high_throughput_rate_limited_requests.md +42 -0
  289. data/files/gems/ruby-openai/middle/handle_rate_limit_retries.md +32 -0
  290. data/files/gems/ruby-openai/middle/parallel_requests.md +27 -0
  291. data/files/gems/ruby-openai/middle/streaming_responses.md +19 -0
  292. data/files/gems/sidekiq/advanced/batch_orchestration.md +29 -0
  293. data/files/gems/sidekiq/advanced/custom_retry_backoff.md +24 -0
  294. data/files/gems/sidekiq/advanced/custom_server_middleware.md +25 -0
  295. data/files/gems/sidekiq/advanced/rate_limiting_concurrency.md +25 -0
  296. data/files/gems/sidekiq/advanced/unique_job_locking.md +26 -0
  297. data/files/gems/sidekiq/beginner/create_basic_worker.md +15 -0
  298. data/files/gems/sidekiq/beginner/enqueue_job_from_controller.md +14 -0
  299. data/files/gems/sidekiq/beginner/monitor_sidekiq_web_ui.md +16 -0
  300. data/files/gems/sidekiq/beginner/pass_arguments_to_worker.md +22 -0
  301. data/files/gems/sidekiq/beginner/setup_sidekiq_in_rails.md +22 -0
  302. data/files/gems/sidekiq/expert/sidekiq_batch_chaining.md +26 -0
  303. data/files/gems/sidekiq/expert/sidekiq_dynamic_autoscaling.md +22 -0
  304. data/files/gems/sidekiq/expert/sidekiq_opentelemetry_middleware.md +22 -0
  305. data/files/gems/sidekiq/expert/sidekiq_retry_jitter.md +31 -0
  306. data/files/gems/sidekiq/expert/sidekiq_tenant_isolation_namespace.md +19 -0
  307. data/files/gems/sidekiq/middle/sidekiq_batch_grouping.md +26 -0
  308. data/files/gems/sidekiq/middle/sidekiq_custom_middleware.md +21 -0
  309. data/files/gems/sidekiq/middle/sidekiq_custom_retry.md +23 -0
  310. data/files/gems/sidekiq/middle/sidekiq_schedule_jobs.md +11 -0
  311. data/files/gems/sidekiq/middle/sidekiq_testing_in_rspec.md +18 -0
  312. data/files/gems/simple_form/advanced/custom_rich_text_input.md +17 -0
  313. data/files/gems/simple_form/advanced/custom_wrappers.md +22 -0
  314. data/files/gems/simple_form/advanced/nested_associations_cocoon.md +26 -0
  315. data/files/gems/simple_form/beginner/simple_form_basic_form.md +11 -0
  316. data/files/gems/simple_form/beginner/simple_form_customizing_inputs.md +11 -0
  317. data/files/gems/simple_form/beginner/simple_form_installation.md +12 -0
  318. data/files/gems/simple_form/expert/custom_formbuilder_macros.md +37 -0
  319. data/files/gems/simple_form/expert/custom_js_widget_wrapper.md +41 -0
  320. data/files/gems/simple_form/expert/dynamic_nested_associations.md +50 -0
  321. data/files/gems/simple_form/middle/collection_inputs.md +21 -0
  322. data/files/gems/simple_form/middle/custom_input_wrapper.md +18 -0
  323. data/files/gems/simple_form/middle/html_attribute_customization.md +18 -0
  324. data/files/gems/solid_queue/advanced/advanced_custom_middleware_integration.md.md +35 -0
  325. data/files/gems/solid_queue/advanced/advanced_dynamic_worker_routing.md.md +27 -0
  326. data/files/gems/solid_queue/advanced/advanced_exponential_backoff.md.md +26 -0
  327. data/files/gems/solid_queue/beginner/define_and_enqueue_job.md +18 -0
  328. data/files/gems/solid_queue/beginner/install_and_configure.md +22 -0
  329. data/files/gems/solid_queue/beginner/schedule_job_future.md +17 -0
  330. data/files/gems/solid_queue/expert/atomic_job_deduplication.md +29 -0
  331. data/files/gems/solid_queue/expert/dynamic_queue_sharding.md +28 -0
  332. data/files/gems/solid_queue/expert/kafka_broker_implementation.md +33 -0
  333. data/files/gems/solid_queue/middle/batch_enqueueing.md +15 -0
  334. data/files/gems/solid_queue/middle/custom_queue_configuration.md +16 -0
  335. data/files/gems/solid_queue/middle/error_handling_and_retries.md +23 -0
  336. data/files/gems/vcr/advanced/vcr_custom_hooks.md +20 -0
  337. data/files/gems/vcr/advanced/vcr_custom_request_matching.md +25 -0
  338. data/files/gems/vcr/beginner/basic_cassette_usage.md +19 -0
  339. data/files/gems/vcr/beginner/install_and_configure_vcr.md +15 -0
  340. data/files/gems/vcr/expert/vcr_custom_persister_and_serializer.md +50 -0
  341. data/files/gems/vcr/expert/vcr_deep_request_matching_and_hooks.md +42 -0
  342. data/files/gems/vcr/middle/custom_request_matchers.md +21 -0
  343. data/files/gems/vcr/middle/dynamic_cassette_naming.md +27 -0
  344. data/files/gems/view_component/advanced/nested_slots.md +23 -0
  345. data/files/gems/view_component/advanced/precompile_and_cache.md +14 -0
  346. data/files/gems/view_component/advanced/system_arguments.md +26 -0
  347. data/files/gems/view_component/advanced/testing_with_rspec.md +18 -0
  348. data/files/gems/view_component/advanced/turbo_stream_integration.md +26 -0
  349. data/files/gems/view_component/beginner/view_component_installation.md +17 -0
  350. data/files/gems/view_component/beginner/view_component_passing_props.md +22 -0
  351. data/files/gems/view_component/beginner/view_component_rendering.md +10 -0
  352. data/files/gems/view_component/beginner/view_component_slots.md +24 -0
  353. data/files/gems/view_component/beginner/view_component_testing.md +15 -0
  354. data/files/gems/view_component/expert/advanced_fragment_caching.md +30 -0
  355. data/files/gems/view_component/expert/deep_testing_with_matchers.md +26 -0
  356. data/files/gems/view_component/expert/dynamic_slots_composition.md +28 -0
  357. data/files/gems/view_component/expert/hotwire_stimulus_integration.md +27 -0
  358. data/files/gems/view_component/expert/instrumentation_and_profiling.md +27 -0
  359. data/files/gems/view_component/middle/component_caching.md +16 -0
  360. data/files/gems/view_component/middle/previewing_components.md +18 -0
  361. data/files/gems/view_component/middle/styling_with_css_modules.md +34 -0
  362. data/files/gems/view_component/middle/testing_components_with_rspec.md +16 -0
  363. data/files/gems/view_component/middle/using_slots.md +23 -0
  364. data/files/gems/webmock/advanced/custom_request_matchers_and_callbacks.md +54 -0
  365. data/files/gems/webmock/advanced/stub_dynamic_request_patterns.md +31 -0
  366. data/files/gems/webmock/beginner/stub_get_requests.md +22 -0
  367. data/files/gems/webmock/beginner/verify_http_requests.md +18 -0
  368. data/files/gems/webmock/expert/chunked_streaming_response.md +32 -0
  369. data/files/gems/webmock/expert/dynamic_request_block_stub.md +45 -0
  370. data/files/gems/webmock/middle/match_requests_by_headers.md +25 -0
  371. data/files/gems/webmock/middle/stub_dynamic_urls_regex.md +18 -0
  372. data/files/javascript/hotwire/advanced/advanced_turbo_stream_targets.md +10 -0
  373. data/files/javascript/hotwire/advanced/custom_turbo_stream_action.md +15 -0
  374. data/files/javascript/hotwire/advanced/dynamic_turbo_frame_source.md +9 -0
  375. data/files/javascript/hotwire/advanced/dynamic_turbo_stream_templates.md +12 -0
  376. data/files/javascript/hotwire/advanced/freeze_frame_for_modals.md +15 -0
  377. data/files/javascript/hotwire/advanced/global_turbo_progress_bar.md +11 -0
  378. data/files/javascript/hotwire/advanced/incremental_updates_with_turbo_streams.md +16 -0
  379. data/files/javascript/hotwire/advanced/intercepting_turbo_requests.md +16 -0
  380. data/files/javascript/hotwire/advanced/override_form_submission_turbo.md +14 -0
  381. data/files/javascript/hotwire/advanced/stimulus_and_turbo_combination.md +19 -0
  382. data/files/javascript/hotwire/advanced/stimulus_lifecycle_management.md +13 -0
  383. data/files/javascript/hotwire/advanced/stimulus_mutation_observer.md +23 -0
  384. data/files/javascript/hotwire/advanced/streaming_large_payloads.md +16 -0
  385. data/files/javascript/hotwire/advanced/turbo_error_handling.md +14 -0
  386. data/files/javascript/hotwire/advanced/turbo_frame_preload_cache.md +23 -0
  387. data/files/javascript/hotwire/advanced/turbo_native_integration.md +14 -0
  388. data/files/javascript/hotwire/beginner/basic_stimulus_controller.md +19 -0
  389. data/files/javascript/hotwire/beginner/basic_turbo_frame.md +10 -0
  390. data/files/javascript/hotwire/beginner/disable_turbo_drive_on_link.md +8 -0
  391. data/files/javascript/hotwire/beginner/importmap_pin_turbo.md +13 -0
  392. data/files/javascript/hotwire/beginner/install_hotwire.md +12 -0
  393. data/files/javascript/hotwire/beginner/install_stimulus.md +8 -0
  394. data/files/javascript/hotwire/beginner/render_turbo_stream_response.md +17 -0
  395. data/files/javascript/hotwire/beginner/stimulus_actions.md +19 -0
  396. data/files/javascript/hotwire/beginner/stimulus_targets.md +21 -0
  397. data/files/javascript/hotwire/beginner/stimulus_values.md +26 -0
  398. data/files/javascript/hotwire/beginner/target_turbo_frame_navigation.md +8 -0
  399. data/files/javascript/hotwire/beginner/turbo_form_remote_submission.md +13 -0
  400. data/files/javascript/hotwire/beginner/turbo_programmatic_navigation.md +12 -0
  401. data/files/javascript/hotwire/beginner/turbo_stream_append.md +10 -0
  402. data/files/javascript/hotwire/beginner/turbo_stream_remove.md +8 -0
  403. data/files/javascript/hotwire/expert/stimulus_reflex_hotwire.md +27 -0
  404. data/files/javascript/hotwire/expert/stimulus_turbo_event_bridge.md +24 -0
  405. data/files/javascript/hotwire/expert/turbo_auth_redirect_handling.md +13 -0
  406. data/files/javascript/hotwire/expert/turbo_cable_namespace.md +19 -0
  407. data/files/javascript/hotwire/expert/turbo_cache_control.md +15 -0
  408. data/files/javascript/hotwire/expert/turbo_custom_validation.md +25 -0
  409. data/files/javascript/hotwire/expert/turbo_debugging_profiling.md +17 -0
  410. data/files/javascript/hotwire/expert/turbo_direct_upload_progress.md +38 -0
  411. data/files/javascript/hotwire/expert/turbo_fragment_caching.md +11 -0
  412. data/files/javascript/hotwire/expert/turbo_frame_lazy_load.md +30 -0
  413. data/files/javascript/hotwire/expert/turbo_low_level_api.md +16 -0
  414. data/files/javascript/hotwire/expert/turbo_native_mobile.md +24 -0
  415. data/files/javascript/hotwire/expert/turbo_optimistic_ui.md +29 -0
  416. data/files/javascript/hotwire/expert/turbo_stream_batch_updates.md +20 -0
  417. data/files/javascript/hotwire/expert/turbo_stream_websocket_integration.md +17 -0
  418. data/files/javascript/stimulus/advanced/conditional_controller_activation.md +20 -0
  419. data/files/javascript/stimulus/advanced/controller_mixins.md +19 -0
  420. data/files/javascript/stimulus/advanced/dynamic_controller_composition.md +16 -0
  421. data/files/javascript/stimulus/advanced/dynamic_outlets_binding.md +21 -0
  422. data/files/javascript/stimulus/advanced/event_delegation_custom_actions.md +23 -0
  423. data/files/javascript/stimulus/advanced/imperative_controller_api.md +19 -0
  424. data/files/javascript/stimulus/advanced/lazy_loading_controllers.md +29 -0
  425. data/files/javascript/stimulus/advanced/lifecycle_frame_callbacks.md +14 -0
  426. data/files/javascript/stimulus/advanced/mutation_observer_adapter.md +24 -0
  427. data/files/javascript/stimulus/advanced/nested_controllers_target_delegation.md +28 -0
  428. data/files/javascript/stimulus/advanced/scss_class_map.md +24 -0
  429. data/files/javascript/stimulus/advanced/stimulus_testing_helpers.md +27 -0
  430. data/files/javascript/stimulus/advanced/turbo_streams_integration.md +22 -0
  431. data/files/javascript/stimulus/advanced/typescript_decorator_integration.md +20 -0
  432. data/files/javascript/stimulus/advanced/value_change_observers.md +14 -0
  433. data/files/javascript/stimulus/beginner/actions_events.md +24 -0
  434. data/files/javascript/stimulus/beginner/connect_disconnect.md +19 -0
  435. data/files/javascript/stimulus/beginner/connect_html_controller.md +12 -0
  436. data/files/javascript/stimulus/beginner/create_controller.md +10 -0
  437. data/files/javascript/stimulus/beginner/data_attributes_usage.md +23 -0
  438. data/files/javascript/stimulus/beginner/debounce_events.md +26 -0
  439. data/files/javascript/stimulus/beginner/debug_with_console.md +17 -0
  440. data/files/javascript/stimulus/beginner/event_modifiers.md +21 -0
  441. data/files/javascript/stimulus/beginner/initialize_method.md +25 -0
  442. data/files/javascript/stimulus/beginner/install_stimulus.md +19 -0
  443. data/files/javascript/stimulus/beginner/manipulating_classes.md +29 -0
  444. data/files/javascript/stimulus/beginner/multiple_controllers.md +14 -0
  445. data/files/javascript/stimulus/beginner/using_targets.md +20 -0
  446. data/files/javascript/stimulus/beginner/using_values.md +30 -0
  447. data/files/javascript/stimulus/expert/composable_controllers.md +30 -0
  448. data/files/javascript/stimulus/expert/custom_target_decorators.md +29 -0
  449. data/files/javascript/stimulus/expert/dynamic_import.md +17 -0
  450. data/files/javascript/stimulus/expert/graphql_subscriptions.md +41 -0
  451. data/files/javascript/stimulus/expert/high_freq_events.md +29 -0
  452. data/files/javascript/stimulus/expert/lifecycle_hooks.md +27 -0
  453. data/files/javascript/stimulus/expert/modal_lazy_connect.md +19 -0
  454. data/files/javascript/stimulus/expert/nested_controller_comm.md +29 -0
  455. data/files/javascript/stimulus/expert/proxy_action_middleware.md +42 -0
  456. data/files/javascript/stimulus/expert/server_sent_events.md +23 -0
  457. data/files/javascript/stimulus/expert/state_machine.md +32 -0
  458. data/files/javascript/stimulus/expert/threejs_integration.md +29 -0
  459. data/files/javascript/stimulus/expert/value_types_map.md +25 -0
  460. data/files/javascript/stimulus/expert/weakmap_memory_opt.md +25 -0
  461. data/files/javascript/stimulus/expert/webworker_integration.md +26 -0
  462. data/files/javascript/stimulus/middle/actioncable_integration.md +25 -0
  463. data/files/javascript/stimulus/middle/async_fetch_requests.md +22 -0
  464. data/files/javascript/stimulus/middle/cleanup_event_listeners.md +27 -0
  465. data/files/javascript/stimulus/middle/css_class_management.md +18 -0
  466. data/files/javascript/stimulus/middle/custom_actions_with_modifiers.md +19 -0
  467. data/files/javascript/stimulus/middle/debugging_with_inspector.md +16 -0
  468. data/files/javascript/stimulus/middle/dynamic_controller_loading.md +16 -0
  469. data/files/javascript/stimulus/middle/dynamic_values.md +24 -0
  470. data/files/javascript/stimulus/middle/event_throttling.md +33 -0
  471. data/files/javascript/stimulus/middle/lifecycle_callbacks.md +27 -0
  472. data/files/javascript/stimulus/middle/nested_targets.md +22 -0
  473. data/files/javascript/stimulus/middle/testing_controllers_with_jest.md +20 -0
  474. data/files/javascript/stimulus/middle/theming_with_data_controllers.md +17 -0
  475. data/files/javascript/stimulus/middle/turbo_frames_integration.md +27 -0
  476. data/files/javascript/stimulus/middle/value_change_callbacks.md +23 -0
  477. data/files/javascript/turbo/advanced/advanced_error_handling_streams.md +24 -0
  478. data/files/javascript/turbo/advanced/custom_form_submission_frame.md +19 -0
  479. data/files/javascript/turbo/advanced/custom_turbo_stream_actions.md +17 -0
  480. data/files/javascript/turbo/advanced/dynamic_module_loading_in_streams.md +18 -0
  481. data/files/javascript/turbo/advanced/intercept_modify_requests.md +10 -0
  482. data/files/javascript/turbo/advanced/lazy_load_turbo_frame.md +22 -0
  483. data/files/javascript/turbo/advanced/performance_debounce_turbo_calls.md +19 -0
  484. data/files/javascript/turbo/advanced/prefetching_links_turbo.md +11 -0
  485. data/files/javascript/turbo/advanced/preload_turbo_frames_on_hover.md +14 -0
  486. data/files/javascript/turbo/advanced/react_turbo_integration.md +18 -0
  487. data/files/javascript/turbo/advanced/secure_turbo_endpoints.md +22 -0
  488. data/files/javascript/turbo/advanced/turbo_caching_invalidation.md +11 -0
  489. data/files/javascript/turbo/advanced/turbo_stimulus_integration.md +23 -0
  490. data/files/javascript/turbo/advanced/turbo_stream_multiplexing.md +16 -0
  491. data/files/javascript/turbo/advanced/websocket_turbo_streams.md +23 -0
  492. data/files/javascript/turbo/beginner/basic_turbo_frame.md +10 -0
  493. data/files/javascript/turbo/beginner/customize_turbo_visit.md +7 -0
  494. data/files/javascript/turbo/beginner/disable_turbo_on_link.md +6 -0
  495. data/files/javascript/turbo/beginner/enable_turbo_on_form.md +11 -0
  496. data/files/javascript/turbo/beginner/file_upload_with_turbo.md +9 -0
  497. data/files/javascript/turbo/beginner/install_turbo_js.md +13 -0
  498. data/files/javascript/turbo/beginner/manual_turbo_load.md +10 -0
  499. data/files/javascript/turbo/beginner/progress_indicator.md +13 -0
  500. data/files/javascript/turbo/beginner/simple_turbo_stream.md +12 -0
  501. data/files/javascript/turbo/beginner/turbo_before_fetch_request.md +8 -0
  502. data/files/javascript/turbo/beginner/turbo_cache_navigation.md +7 -0
  503. data/files/javascript/turbo/beginner/turbo_debug_mode.md +7 -0
  504. data/files/javascript/turbo/beginner/turbo_error_handling.md +11 -0
  505. data/files/javascript/turbo/beginner/turbo_event_listeners.md +10 -0
  506. data/files/javascript/turbo/beginner/turbo_restore_scroll.md +7 -0
  507. data/files/javascript/turbo/expert/turbo_cache_optimization.md +19 -0
  508. data/files/javascript/turbo/expert/turbo_frame_lazy_loading.md +21 -0
  509. data/files/javascript/turbo/expert/turbo_frame_nested_navigation.md +22 -0
  510. data/files/javascript/turbo/expert/turbo_management_multiple_frames.md +11 -0
  511. data/files/javascript/turbo/expert/turbo_native_mobile_integration.md +19 -0
  512. data/files/javascript/turbo/expert/turbo_prefetch_and_prerender.md +12 -0
  513. data/files/javascript/turbo/expert/turbo_rendering_performance.md +17 -0
  514. data/files/javascript/turbo/expert/turbo_security_csp.md +19 -0
  515. data/files/javascript/turbo/expert/turbo_stream_broadcasting.md +28 -0
  516. data/files/javascript/turbo/expert/turbo_stream_chunked_uploads.md +29 -0
  517. data/files/javascript/turbo/expert/turbo_stream_client_hooks.md +12 -0
  518. data/files/javascript/turbo/expert/turbo_stream_complex_selectors.md +10 -0
  519. data/files/javascript/turbo/expert/turbo_stream_continuous_updates.md +25 -0
  520. data/files/javascript/turbo/expert/turbo_stream_streaming_response.md +19 -0
  521. data/files/javascript/turbo/middle/turbo_abort_navigation.md +15 -0
  522. data/files/javascript/turbo/middle/turbo_broadcast_streams.md +15 -0
  523. data/files/javascript/turbo/middle/turbo_connect_stream_source.md +13 -0
  524. data/files/javascript/turbo/middle/turbo_control_navigation.md +17 -0
  525. data/files/javascript/turbo/middle/turbo_custom_progress_bar.md +13 -0
  526. data/files/javascript/turbo/middle/turbo_custom_stream_action.md +18 -0
  527. data/files/javascript/turbo/middle/turbo_debug_logging.md +9 -0
  528. data/files/javascript/turbo/middle/turbo_form_intercept.md +13 -0
  529. data/files/javascript/turbo/middle/turbo_frame_cache.md +22 -0
  530. data/files/javascript/turbo/middle/turbo_frame_manipulation_js.md +13 -0
  531. data/files/javascript/turbo/middle/turbo_inject_streams_js.md +11 -0
  532. data/files/javascript/turbo/middle/turbo_lazy_frame_loading.md +20 -0
  533. data/files/javascript/turbo/middle/turbo_link_prefetch.md +7 -0
  534. data/files/javascript/turbo/middle/turbo_navigation_lifecycle.md +13 -0
  535. data/files/javascript/turbo/middle/turbo_stimulus_integration.md +22 -0
  536. data/files/nosql/redis/advanced/redis_lua_scripting.md +22 -0
  537. data/files/nosql/redis/advanced/redis_pipelining.md +25 -0
  538. data/files/nosql/redis/advanced/redis_streams.md +28 -0
  539. data/files/nosql/redis/beginner/redis_basic_key_value.md +14 -0
  540. data/files/nosql/redis/beginner/redis_connection_setup.md +16 -0
  541. data/files/nosql/redis/beginner/redis_list_usage.md +14 -0
  542. data/files/nosql/redis/expert/redis_cluster_pipeline_optimization.md +26 -0
  543. data/files/nosql/redis/expert/redis_lua_atomic_operations.md +25 -0
  544. data/files/nosql/redis/expert/redis_streams_event_sourcing.md +27 -0
  545. data/files/nosql/redis/middle/redis_api_rate_limiter.md +33 -0
  546. data/files/nosql/redis/middle/redis_cachestore_namespace.md +12 -0
  547. data/files/nosql/redis/middle/redis_distributed_lock_redlock.md +15 -0
  548. data/files/rails/action_cable/advanced/chunked_streaming.md +29 -0
  549. data/files/rails/action_cable/advanced/graphql_subscriptions.md +37 -0
  550. data/files/rails/action_cable/advanced/jwt_channel_authentication.md +26 -0
  551. data/files/rails/action_cable/advanced/kafka_pubsub_adapter.md +41 -0
  552. data/files/rails/action_cable/advanced/rate_limiting_backpressure.md +37 -0
  553. data/files/rails/action_cable/beginner/broadcast_messages.md +19 -0
  554. data/files/rails/action_cable/beginner/client_subscribe_js.md +25 -0
  555. data/files/rails/action_cable/beginner/generate_chat_channel.md +24 -0
  556. data/files/rails/action_cable/beginner/setup_action_cable.md +15 -0
  557. data/files/rails/action_cable/beginner/stream_named_room.md +27 -0
  558. data/files/rails/action_cable/expert/fine_grained_authorization.md +33 -0
  559. data/files/rails/action_cable/expert/jwt_authentication.md +31 -0
  560. data/files/rails/action_cable/expert/load_testing_action_cable.md +29 -0
  561. data/files/rails/action_cable/expert/metrics_instrumentation.md +40 -0
  562. data/files/rails/action_cable/expert/redis_scaling_namespace_isolation.md +28 -0
  563. data/files/rails/action_cable/middle/cleanup_streams_on_unsubscribe.md +19 -0
  564. data/files/rails/action_cable/middle/client_reconnection_resubscribe.md +27 -0
  565. data/files/rails/action_cable/middle/dynamic_stream_identifiers.md +20 -0
  566. data/files/rails/action_cable/middle/manual_broadcast_controller.md +31 -0
  567. data/files/rails/action_cable/middle/model_callback_streaming.md +23 -0
  568. data/files/rails/active_record/advanced/asynchronous_querying_load_async.md +13 -0
  569. data/files/rails/active_record/advanced/bulk_upsert_with_upsert_all.md +11 -0
  570. data/files/rails/active_record/advanced/common_table_expressions_cte.md +9 -0
  571. data/files/rails/active_record/advanced/custom_types_and_attributes_api.md +19 -0
  572. data/files/rails/active_record/advanced/dynamic_parameterized_scopes.md +15 -0
  573. data/files/rails/active_record/advanced/jsonb_querying_and_indexing.md +14 -0
  574. data/files/rails/active_record/advanced/leveraging_window_functions.md +10 -0
  575. data/files/rails/active_record/advanced/multi_database_sharding.md +23 -0
  576. data/files/rails/active_record/advanced/optimistic_locking_for_concurrency.md +13 -0
  577. data/files/rails/active_record/advanced/using_arel_for_complex_joins.md +17 -0
  578. data/files/rails/active_record/beginner/associations_basics.md +17 -0
  579. data/files/rails/active_record/beginner/console_basics.md +9 -0
  580. data/files/rails/active_record/beginner/create_records.md +12 -0
  581. data/files/rails/active_record/beginner/delete_records.md +12 -0
  582. data/files/rails/active_record/beginner/limit_and_offset.md +12 -0
  583. data/files/rails/active_record/beginner/querying_with_where.md +11 -0
  584. data/files/rails/active_record/beginner/reading_records.md +14 -0
  585. data/files/rails/active_record/beginner/sorting_results.md +11 -0
  586. data/files/rails/active_record/beginner/update_records.md +13 -0
  587. data/files/rails/active_record/beginner/validations_intro.md +14 -0
  588. data/files/rails/active_record/expert/advanced_eager_loading.md +13 -0
  589. data/files/rails/active_record/expert/arel_complex_predicates.md +20 -0
  590. data/files/rails/active_record/expert/association_cache_bidi.md +19 -0
  591. data/files/rails/active_record/expert/bulk_upserts_insert_all.md +10 -0
  592. data/files/rails/active_record/expert/dynamic_scopes_metaprogramming.md +15 -0
  593. data/files/rails/active_record/expert/multi_tenancy_schema_adapter.md +22 -0
  594. data/files/rails/active_record/expert/partial_indexes_migrations.md +12 -0
  595. data/files/rails/active_record/expert/query_performance_notifications.md +11 -0
  596. data/files/rails/active_record/expert/sql_window_functions.md +12 -0
  597. data/files/rails/active_record/expert/virtual_attributes_custom_types.md +20 -0
  598. data/files/rails/active_record/middle/arel_complex_queries.md +10 -0
  599. data/files/rails/active_record/middle/batch_processing.md +9 -0
  600. data/files/rails/active_record/middle/dynamic_scopes.md +13 -0
  601. data/files/rails/active_record/middle/eager_loading_includes.md +12 -0
  602. data/files/rails/active_record/middle/merge_relations.md +12 -0
  603. data/files/rails/active_record/middle/optimistic_locking.md +13 -0
  604. data/files/rails/active_record/middle/pluck_and_select_optimization.md +11 -0
  605. data/files/rails/active_record/middle/transactions_and_rollback.md +11 -0
  606. data/files/rails/active_record/middle/upsert_records.md +13 -0
  607. data/files/rails/active_record/middle/use_counter_cache.md +16 -0
  608. data/files/rails/active_record_associations/advanced/association_callbacks_for_cache_invalidation.md +17 -0
  609. data/files/rails/active_record_associations/advanced/association_extensions_module.md +24 -0
  610. data/files/rails/active_record_associations/advanced/deep_nested_attributes_with_reject_if.md +17 -0
  611. data/files/rails/active_record_associations/advanced/dynamic_associations_definition.md +19 -0
  612. data/files/rails/active_record_associations/advanced/habtm_to_has_many_through_with_extra.md +26 -0
  613. data/files/rails/active_record_associations/advanced/inverse_of_and_eager_preloading.md +19 -0
  614. data/files/rails/active_record_associations/advanced/multi_table_join_with_has_many_through.md +20 -0
  615. data/files/rails/active_record_associations/advanced/polymorphic_counter_cache_optimization.md +25 -0
  616. data/files/rails/active_record_associations/advanced/preloading_with_aggregates.md +17 -0
  617. data/files/rails/active_record_associations/advanced/self_referential_scopes.md +19 -0
  618. data/files/rails/active_record_associations/advanced/sti_associations_with_default_scopes.md +23 -0
  619. data/files/rails/active_record_associations/advanced/through_association_with_conditions.md +16 -0
  620. data/files/rails/active_record_associations/beginner/belongs_to_association.md +12 -0
  621. data/files/rails/active_record_associations/beginner/build_associated_records.md +13 -0
  622. data/files/rails/active_record_associations/beginner/counter_cache_option.md +15 -0
  623. data/files/rails/active_record_associations/beginner/dependent_option.md +12 -0
  624. data/files/rails/active_record_associations/beginner/eager_loading_associations.md +13 -0
  625. data/files/rails/active_record_associations/beginner/has_and_belongs_to_many_association.md +17 -0
  626. data/files/rails/active_record_associations/beginner/has_many_association.md +12 -0
  627. data/files/rails/active_record_associations/beginner/has_many_through_association.md +19 -0
  628. data/files/rails/active_record_associations/beginner/has_one_association.md +12 -0
  629. data/files/rails/active_record_associations/beginner/inverse_of_option.md +17 -0
  630. data/files/rails/active_record_associations/beginner/nested_attributes.md +22 -0
  631. data/files/rails/active_record_associations/beginner/validates_associated.md +13 -0
  632. data/files/rails/active_record_associations/expert/association_callbacks_usage.md +19 -0
  633. data/files/rails/active_record_associations/expert/composite_primary_key_associations.md +19 -0
  634. data/files/rails/active_record_associations/expert/custom_inverse_of_complex.md +15 -0
  635. data/files/rails/active_record_associations/expert/custom_join_sql_through.md +12 -0
  636. data/files/rails/active_record_associations/expert/dynamic_association_extensions.md +21 -0
  637. data/files/rails/active_record_associations/expert/dynamic_build_in_callbacks.md +17 -0
  638. data/files/rails/active_record_associations/expert/eager_load_override_select.md +18 -0
  639. data/files/rails/active_record_associations/expert/multi_level_through_alias.md +17 -0
  640. data/files/rails/active_record_associations/expert/polymorphic_counter_cache.md +22 -0
  641. data/files/rails/active_record_associations/expert/recursive_self_referential_tree.md +15 -0
  642. data/files/rails/active_record_associations/expert/scoped_polymorphic_association_conditions.md +16 -0
  643. data/files/rails/active_record_associations/expert/sti_hierarchical_associations.md +15 -0
  644. data/files/rails/active_record_associations/middle/association_extensions.md +16 -0
  645. data/files/rails/active_record_associations/middle/association_scopes.md +12 -0
  646. data/files/rails/active_record_associations/middle/conditional_associations.md +14 -0
  647. data/files/rails/active_record_associations/middle/counter_cache.md +14 -0
  648. data/files/rails/active_record_associations/middle/custom_foreign_key_and_class_name.md +11 -0
  649. data/files/rails/active_record_associations/middle/dependent_options.md +11 -0
  650. data/files/rails/active_record_associations/middle/eager_loading_includes.md +13 -0
  651. data/files/rails/active_record_associations/middle/has_many_through.md +21 -0
  652. data/files/rails/active_record_associations/middle/inverse_of.md +15 -0
  653. data/files/rails/active_record_associations/middle/polymorphic_association.md +17 -0
  654. data/files/rails/active_record_associations/middle/touch_option.md +13 -0
  655. data/files/rails/active_record_associations/middle/validating_associations.md +14 -0
  656. data/files/rails/active_record_callbacks/advanced/active_support_callbacks_api.md +37 -0
  657. data/files/rails/active_record_callbacks/advanced/around_transaction_callbacks.md +20 -0
  658. data/files/rails/active_record_callbacks/advanced/callback_performance_tips.md +18 -0
  659. data/files/rails/active_record_callbacks/advanced/concern_based_callbacks.md +33 -0
  660. data/files/rails/active_record_callbacks/advanced/conditional_callbacks_lambda.md +22 -0
  661. data/files/rails/active_record_callbacks/advanced/custom_callback_chains.md +28 -0
  662. data/files/rails/active_record_callbacks/advanced/explicit_callback_priority.md +22 -0
  663. data/files/rails/active_record_callbacks/advanced/introspect_reorder_callbacks.md +24 -0
  664. data/files/rails/active_record_callbacks/advanced/skip_callbacks_in_tests.md +21 -0
  665. data/files/rails/active_record_callbacks/advanced/sti_inherited_callbacks.md +16 -0
  666. data/files/rails/active_record_callbacks/beginner/after_create_notification.md +16 -0
  667. data/files/rails/active_record_callbacks/beginner/after_destroy_cleanup.md +16 -0
  668. data/files/rails/active_record_callbacks/beginner/after_save_cache_clear.md +16 -0
  669. data/files/rails/active_record_callbacks/beginner/before_create_default_status.md +16 -0
  670. data/files/rails/active_record_callbacks/beginner/before_save_callback.md +16 -0
  671. data/files/rails/active_record_callbacks/beginner/before_validation_usage.md +16 -0
  672. data/files/rails/active_record_callbacks/beginner/conditional_callback_if_unless.md +20 -0
  673. data/files/rails/active_record_callbacks/beginner/multiple_callbacks_order.md +21 -0
  674. data/files/rails/active_record_callbacks/beginner/skip_callback_example.md +13 -0
  675. data/files/rails/active_record_callbacks/beginner/using_blocks_in_callbacks.md +12 -0
  676. data/files/rails/active_record_callbacks/expert/abort_before_destroy.md +19 -0
  677. data/files/rails/active_record_callbacks/expert/around_commit_transaction.md +17 -0
  678. data/files/rails/active_record_callbacks/expert/async_callbacks.md +16 -0
  679. data/files/rails/active_record_callbacks/expert/concerns_for_callbacks.md +24 -0
  680. data/files/rails/active_record_callbacks/expert/conditional_chain_callbacks.md +21 -0
  681. data/files/rails/active_record_callbacks/expert/dynamic_callback_definitions.md +22 -0
  682. data/files/rails/active_record_callbacks/expert/memory_leak_callbacks.md +13 -0
  683. data/files/rails/active_record_callbacks/expert/prepend_callbacks.md +26 -0
  684. data/files/rails/active_record_callbacks/expert/rspec_callbacks_testing.md +17 -0
  685. data/files/rails/active_record_callbacks/expert/soft_delete_callbacks.md +23 -0
  686. data/files/rails/active_record_callbacks/middle/around_save_transaction.md +18 -0
  687. data/files/rails/active_record_callbacks/middle/batch_operations_callbacks.md +19 -0
  688. data/files/rails/active_record_callbacks/middle/callback_ordering.md +21 -0
  689. data/files/rails/active_record_callbacks/middle/callbacks_in_concerns.md +26 -0
  690. data/files/rails/active_record_callbacks/middle/conditional_callbacks.md +20 -0
  691. data/files/rails/active_record_callbacks/middle/default_values_validation.md +16 -0
  692. data/files/rails/active_record_callbacks/middle/email_after_commit.md +16 -0
  693. data/files/rails/active_record_callbacks/middle/normalize_attribute.md +16 -0
  694. data/files/rails/active_record_callbacks/middle/skip_callbacks.md +15 -0
  695. data/files/rails/active_record_callbacks/middle/testing_callbacks.md +16 -0
  696. data/files/rails/active_record_migrations/advanced/check_constraints.md +11 -0
  697. data/files/rails/active_record_migrations/advanced/concurrent_index.md +17 -0
  698. data/files/rails/active_record_migrations/advanced/conditional_migrations.md +13 -0
  699. data/files/rails/active_record_migrations/advanced/custom_enum_types.md +19 -0
  700. data/files/rails/active_record_migrations/advanced/default_sql_functions.md +11 -0
  701. data/files/rails/active_record_migrations/advanced/foreign_key_cascade.md +11 -0
  702. data/files/rails/active_record_migrations/advanced/materialized_views.md +20 -0
  703. data/files/rails/active_record_migrations/advanced/partitioned_tables.md +26 -0
  704. data/files/rails/active_record_migrations/advanced/reversible_data_migrations.md +19 -0
  705. data/files/rails/active_record_migrations/advanced/uuid_primary_keys.md +15 -0
  706. data/files/rails/active_record_migrations/beginner/add_column.md +15 -0
  707. data/files/rails/active_record_migrations/beginner/add_index.md +15 -0
  708. data/files/rails/active_record_migrations/beginner/change_column_type.md +15 -0
  709. data/files/rails/active_record_migrations/beginner/create_table.md +19 -0
  710. data/files/rails/active_record_migrations/beginner/remove_column.md +15 -0
  711. data/files/rails/active_record_migrations/beginner/remove_index.md +15 -0
  712. data/files/rails/active_record_migrations/beginner/rename_column.md +15 -0
  713. data/files/rails/active_record_migrations/beginner/reversible_migration.md +15 -0
  714. data/files/rails/active_record_migrations/beginner/rollback.md +11 -0
  715. data/files/rails/active_record_migrations/beginner/timestamps.md +19 -0
  716. data/files/rails/active_record_migrations/expert/batch_updates_with_find_in_batches.md +26 -0
  717. data/files/rails/active_record_migrations/expert/custom_migration_base_class.md +24 -0
  718. data/files/rails/active_record_migrations/expert/decouple_models_using_anonymous_class.md +21 -0
  719. data/files/rails/active_record_migrations/expert/deferrable_foreign_keys.md +14 -0
  720. data/files/rails/active_record_migrations/expert/disable_ddl_transaction_for_concurrent_index.md +19 -0
  721. data/files/rails/active_record_migrations/expert/multi_step_default_column_addition.md +28 -0
  722. data/files/rails/active_record_migrations/expert/parallel_migrations_via_rake.md +20 -0
  723. data/files/rails/active_record_migrations/expert/postgresql_table_partitioning.md +30 -0
  724. data/files/rails/active_record_migrations/expert/reversible_data_backfill.md +24 -0
  725. data/files/rails/active_record_migrations/expert/squash_and_manage_migration_versions.md +14 -0
  726. data/files/rails/active_record_migrations/middle/add_column_default_not_null.md +17 -0
  727. data/files/rails/active_record_migrations/middle/add_index_options.md +14 -0
  728. data/files/rails/active_record_migrations/middle/batch_data_migration.md +17 -0
  729. data/files/rails/active_record_migrations/middle/change_column_with_data_migration.md +25 -0
  730. data/files/rails/active_record_migrations/middle/concurrent_index.md +15 -0
  731. data/files/rails/active_record_migrations/middle/conditional_migrations.md +13 -0
  732. data/files/rails/active_record_migrations/middle/raw_sql_execute.md +19 -0
  733. data/files/rails/active_record_migrations/middle/remove_columns_indexes.md +12 -0
  734. data/files/rails/active_record_migrations/middle/rename_column.md +11 -0
  735. data/files/rails/active_record_migrations/middle/reversible_migrations.md +14 -0
  736. data/files/rails/active_record_querying/advanced/array_and_hstore_query.md +9 -0
  737. data/files/rails/active_record_querying/advanced/bulk_update_with_case.md +8 -0
  738. data/files/rails/active_record_querying/advanced/common_table_expressions.md +11 -0
  739. data/files/rails/active_record_querying/advanced/computed_selects.md +12 -0
  740. data/files/rails/active_record_querying/advanced/dynamic_arel_queries.md +12 -0
  741. data/files/rails/active_record_querying/advanced/dynamic_filter_scopes.md +12 -0
  742. data/files/rails/active_record_querying/advanced/jsonb_querying.md +9 -0
  743. data/files/rails/active_record_querying/advanced/lateral_joins.md +11 -0
  744. data/files/rails/active_record_querying/advanced/polymorphic_joins.md +10 -0
  745. data/files/rails/active_record_querying/advanced/union_relations.md +9 -0
  746. data/files/rails/active_record_querying/advanced/upsert_all_conflicts.md +10 -0
  747. data/files/rails/active_record_querying/advanced/window_functions.md +13 -0
  748. data/files/rails/active_record_querying/beginner/basic_all_where.md +11 -0
  749. data/files/rails/active_record_querying/beginner/chaining_queries.md +10 -0
  750. data/files/rails/active_record_querying/beginner/exists_queries.md +11 -0
  751. data/files/rails/active_record_querying/beginner/find_or_create_by.md +8 -0
  752. data/files/rails/active_record_querying/beginner/find_vs_find_by.md +11 -0
  753. data/files/rails/active_record_querying/beginner/first_last.md +11 -0
  754. data/files/rails/active_record_querying/beginner/limit_usage.md +8 -0
  755. data/files/rails/active_record_querying/beginner/offset_usage.md +8 -0
  756. data/files/rails/active_record_querying/beginner/order_results.md +11 -0
  757. data/files/rails/active_record_querying/beginner/pluck_usage.md +11 -0
  758. data/files/rails/active_record_querying/beginner/select_columns.md +12 -0
  759. data/files/rails/active_record_querying/beginner/where_not.md +11 -0
  760. data/files/rails/active_record_querying/expert/batch_processing_find_each.md +11 -0
  761. data/files/rails/active_record_querying/expert/bulk_upserts.md +11 -0
  762. data/files/rails/active_record_querying/expert/ctes_with_active_record.md +15 -0
  763. data/files/rails/active_record_querying/expert/eager_loading_nested_polymorphic.md +11 -0
  764. data/files/rails/active_record_querying/expert/explain_analyze_inspection.md +13 -0
  765. data/files/rails/active_record_querying/expert/index_hints_with_raw_sql.md +9 -0
  766. data/files/rails/active_record_querying/expert/jsonb_postgresql_queries.md +15 -0
  767. data/files/rails/active_record_querying/expert/lateral_joins.md +14 -0
  768. data/files/rails/active_record_querying/expert/optimistic_locking_queries.md +12 -0
  769. data/files/rails/active_record_querying/expert/prepared_statements.md +10 -0
  770. data/files/rails/active_record_querying/expert/recursive_cte_for_hierarchies.md +16 -0
  771. data/files/rails/active_record_querying/expert/window_functions.md +11 -0
  772. data/files/rails/active_record_querying/middle/batch_processing.md +10 -0
  773. data/files/rails/active_record_querying/middle/distinct_select.md +10 -0
  774. data/files/rails/active_record_querying/middle/exists_query.md +8 -0
  775. data/files/rails/active_record_querying/middle/from_subquery.md +11 -0
  776. data/files/rails/active_record_querying/middle/includes_conditions.md +10 -0
  777. data/files/rails/active_record_querying/middle/joins_conditions.md +9 -0
  778. data/files/rails/active_record_querying/middle/or_queries.md +10 -0
  779. data/files/rails/active_record_querying/middle/pluck_usage.md +8 -0
  780. data/files/rails/active_record_querying/middle/reorder_results.md +8 -0
  781. data/files/rails/active_record_querying/middle/unscope_conditions.md +10 -0
  782. data/files/rails/active_record_querying/middle/where_not_usage.md +8 -0
  783. data/files/rails/active_record_querying/middle/where_range_query.md +8 -0
  784. data/files/rails/active_record_validations/advanced/conditional_validation_lambda.md +14 -0
  785. data/files/rails/active_record_validations/advanced/custom_validation_contexts.md +22 -0
  786. data/files/rails/active_record_validations/advanced/custom_validator_class.md +21 -0
  787. data/files/rails/active_record_validations/advanced/database_uniqueness_enforcement.md +24 -0
  788. data/files/rails/active_record_validations/advanced/dynamic_validations.md +15 -0
  789. data/files/rails/active_record_validations/advanced/i18n_error_messages.md +20 -0
  790. data/files/rails/active_record_validations/advanced/json_schema_validation.md +21 -0
  791. data/files/rails/active_record_validations/advanced/multi_attribute_validation.md +18 -0
  792. data/files/rails/active_record_validations/advanced/nested_association_validations.md +19 -0
  793. data/files/rails/active_record_validations/advanced/strict_validations.md +19 -0
  794. data/files/rails/active_record_validations/beginner/associated_records_validation.md +10 -0
  795. data/files/rails/active_record_validations/beginner/conditional_validation.md +13 -0
  796. data/files/rails/active_record_validations/beginner/custom_validation_method.md +16 -0
  797. data/files/rails/active_record_validations/beginner/format_validation.md +9 -0
  798. data/files/rails/active_record_validations/beginner/grouping_with_options.md +13 -0
  799. data/files/rails/active_record_validations/beginner/inclusion_exclusion_validation.md +10 -0
  800. data/files/rails/active_record_validations/beginner/length_validation.md +9 -0
  801. data/files/rails/active_record_validations/beginner/numericality_validation.md +9 -0
  802. data/files/rails/active_record_validations/beginner/presence_validation.md +9 -0
  803. data/files/rails/active_record_validations/beginner/uniqueness_validation.md +9 -0
  804. data/files/rails/active_record_validations/expert/advanced_uniqueness_scopes.md +16 -0
  805. data/files/rails/active_record_validations/expert/complex_association_validations.md +17 -0
  806. data/files/rails/active_record_validations/expert/composable_lambda_validators.md +22 -0
  807. data/files/rails/active_record_validations/expert/contextual_validations.md +20 -0
  808. data/files/rails/active_record_validations/expert/custom_validator_classes.md +19 -0
  809. data/files/rails/active_record_validations/expert/db_constraints_parallel.md +20 -0
  810. data/files/rails/active_record_validations/expert/defer_validations_before_validation.md +20 -0
  811. data/files/rails/active_record_validations/expert/dynamic_conditional_validations.md +15 -0
  812. data/files/rails/active_record_validations/expert/json_schema_validation.md +24 -0
  813. data/files/rails/active_record_validations/expert/optimize_validation_performance.md +12 -0
  814. data/files/rails/active_record_validations/middle/associated_models_validation.md +15 -0
  815. data/files/rails/active_record_validations/middle/conditional_validations.md +14 -0
  816. data/files/rails/active_record_validations/middle/custom_validator_method.md +15 -0
  817. data/files/rails/active_record_validations/middle/grouped_validations_with_options.md +12 -0
  818. data/files/rails/active_record_validations/middle/nested_attributes_presence.md +14 -0
  819. data/files/rails/active_record_validations/middle/numericality_options.md +9 -0
  820. data/files/rails/active_record_validations/middle/regex_format_validation.md +8 -0
  821. data/files/rails/active_record_validations/middle/uniqueness_scope.md +9 -0
  822. data/files/rails/active_record_validations/middle/validates_each_usage.md +11 -0
  823. data/files/rails/active_record_validations/middle/validation_contexts.md +12 -0
  824. data/files/rails/active_storage/advanced/custom_blob_analysis.md +28 -0
  825. data/files/rails/active_storage/advanced/custom_variant_processor.md +33 -0
  826. data/files/rails/active_storage/advanced/direct_upload_throttling.md +25 -0
  827. data/files/rails/active_storage/advanced/stream_large_files.md +39 -0
  828. data/files/rails/active_storage/advanced/webp_global_variant.md +22 -0
  829. data/files/rails/active_storage/beginner/active_storage_attach_files.md +21 -0
  830. data/files/rails/active_storage/beginner/active_storage_delete_purge.md +14 -0
  831. data/files/rails/active_storage/beginner/active_storage_display_image.md +12 -0
  832. data/files/rails/active_storage/beginner/active_storage_setup.md +9 -0
  833. data/files/rails/active_storage/beginner/active_storage_validate.md +24 -0
  834. data/files/rails/active_storage/expert/async_variant_generation.md +47 -0
  835. data/files/rails/active_storage/expert/cdn_signed_url_with_custom_headers.md +43 -0
  836. data/files/rails/active_storage/expert/custom_pdf_page_count_analyzer.md +38 -0
  837. data/files/rails/active_storage/expert/mirror_service_fallback.md +42 -0
  838. data/files/rails/active_storage/expert/resumable_multipart_upload.md +35 -0
  839. data/files/rails/active_storage/middle/direct_uploads_with_javascript.md +18 -0
  840. data/files/rails/active_storage/middle/generating_and_displaying_variants.md +19 -0
  841. data/files/rails/active_storage/middle/purging_unused_blobs_and_attachments.md +24 -0
  842. data/files/rails/active_storage/middle/switching_active_storage_services.md +28 -0
  843. data/files/rails/active_storage/middle/validating_active_storage_attachments.md +15 -0
  844. data/files/rails/active_support/advanced/advanced_cache_fetch_multi.md +12 -0
  845. data/files/rails/active_support/advanced/concern_modularization.md +36 -0
  846. data/files/rails/active_support/advanced/custom_inflections.md +13 -0
  847. data/files/rails/active_support/advanced/deprecation_management.md +13 -0
  848. data/files/rails/active_support/advanced/json_encoder_customization.md +17 -0
  849. data/files/rails/active_support/advanced/nested_hash_transformations.md +15 -0
  850. data/files/rails/active_support/advanced/notifications_instrumentation.md +16 -0
  851. data/files/rails/active_support/advanced/per_thread_registry.md +27 -0
  852. data/files/rails/active_support/advanced/reloader_hooks.md +16 -0
  853. data/files/rails/active_support/advanced/tagged_logging.md +14 -0
  854. data/files/rails/active_support/beginner/array_accessors.md +11 -0
  855. data/files/rails/active_support/beginner/current_time_date.md +8 -0
  856. data/files/rails/active_support/beginner/deep_merge_hash.md +10 -0
  857. data/files/rails/active_support/beginner/delegate_method.md +14 -0
  858. data/files/rails/active_support/beginner/indifferent_access.md +10 -0
  859. data/files/rails/active_support/beginner/numeric_time_helpers.md +9 -0
  860. data/files/rails/active_support/beginner/presence_methods.md +10 -0
  861. data/files/rails/active_support/beginner/string_inflections.md +10 -0
  862. data/files/rails/active_support/beginner/string_inquiry.md +14 -0
  863. data/files/rails/active_support/beginner/try_method.md +11 -0
  864. data/files/rails/active_support/expert/advanced_hashdeep_merge.md +12 -0
  865. data/files/rails/active_support/expert/cache_key_generation_extensibility.md +18 -0
  866. data/files/rails/active_support/expert/callbacks_building_custom_chains.md +26 -0
  867. data/files/rails/active_support/expert/concern_dependency_injection.md +30 -0
  868. data/files/rails/active_support/expert/custom_durations_with_precision.md +17 -0
  869. data/files/rails/active_support/expert/custom_inflections.md +18 -0
  870. data/files/rails/active_support/expert/json_serialization_custom_encoder.md +27 -0
  871. data/files/rails/active_support/expert/notifications_custom_instrumentation.md +19 -0
  872. data/files/rails/active_support/expert/on_load_hooks_for_engines.md +15 -0
  873. data/files/rails/active_support/expert/tagged_logging_contexts.md +21 -0
  874. data/files/rails/active_support/middle/active_support_concern_modules.md +20 -0
  875. data/files/rails/active_support/middle/deep_merge_nested_hashes.md +9 -0
  876. data/files/rails/active_support/middle/enumerable_in_groups_of.md +10 -0
  877. data/files/rails/active_support/middle/hash_with_indifferent_access.md +8 -0
  878. data/files/rails/active_support/middle/notifications_instrumentation.md +15 -0
  879. data/files/rails/active_support/middle/numeric_time_extensions.md +8 -0
  880. data/files/rails/active_support/middle/presence_and_blank_helpers.md +9 -0
  881. data/files/rails/active_support/middle/safe_constantize_for_dynamic_loading.md +9 -0
  882. data/files/rails/active_support/middle/string_inflection_helpers.md +9 -0
  883. data/files/rails/active_support/middle/use_time_current_for_timezone.md +7 -0
  884. data/files/rails/api_mode/advanced/advanced_jsonapi_serializer.md +27 -0
  885. data/files/rails/api_mode/advanced/custom_rack_middleware_injection.md +33 -0
  886. data/files/rails/api_mode/advanced/header_based_api_versioning.md +35 -0
  887. data/files/rails/api_mode/advanced/http_caching_etags_conditional_get.md +25 -0
  888. data/files/rails/api_mode/beginner/configure_cors.md +24 -0
  889. data/files/rails/api_mode/beginner/create_api_app.md +10 -0
  890. data/files/rails/api_mode/beginner/generate_resource_controller.md +24 -0
  891. data/files/rails/api_mode/beginner/use_strong_parameters.md +16 -0
  892. data/files/rails/api_mode/expert/accept_header_api_versioning.md +33 -0
  893. data/files/rails/api_mode/expert/custom_rate_limiting_middleware.md +32 -0
  894. data/files/rails/api_mode/expert/fast_json_serialization_with_oj.md +16 -0
  895. data/files/rails/api_mode/expert/streaming_json_responses.md +22 -0
  896. data/files/rails/api_mode/middle/api_error_handling.md +25 -0
  897. data/files/rails/api_mode/middle/api_generators.md +9 -0
  898. data/files/rails/api_mode/middle/api_versioning.md +14 -0
  899. data/files/rails/api_mode/middle/json_serialization.md +17 -0
  900. data/files/rails/assets/advanced/asset_caching_strategies.md +18 -0
  901. data/files/rails/assets/advanced/custom_asset_precompilation.md +17 -0
  902. data/files/rails/assets/advanced/dynamic_asset_host.md +14 -0
  903. data/files/rails/assets/advanced/sprockets_custom_processor.md +20 -0
  904. data/files/rails/assets/advanced/webpacker_custom_config.md +26 -0
  905. data/files/rails/assets/beginner/asset_pipeline_basics.md +17 -0
  906. data/files/rails/assets/beginner/cache_busting_versioning.md +12 -0
  907. data/files/rails/assets/beginner/organize_images_fonts.md +14 -0
  908. data/files/rails/assets/beginner/precompile_assets.md +13 -0
  909. data/files/rails/assets/beginner/sprockets_helpers.md +9 -0
  910. data/files/rails/assets/expert/custom_sprockets_processor.md +14 -0
  911. data/files/rails/assets/expert/dynamic_asset_host_fallback.md +12 -0
  912. data/files/rails/assets/expert/http_cache_invalidation.md +29 -0
  913. data/files/rails/assets/expert/inline_critical_css.md +20 -0
  914. data/files/rails/assets/expert/webpack_bundle_splitting.md +29 -0
  915. data/files/rails/assets/middle/configure_asset_host.md +11 -0
  916. data/files/rails/assets/middle/custom_precompile_assets.md +12 -0
  917. data/files/rails/assets/middle/sass_partials_and_variables.md +15 -0
  918. data/files/rails/assets/middle/sprockets_directives_load_order.md +14 -0
  919. data/files/rails/assets/middle/use_webpacker_asset_pack_tag.md +12 -0
  920. data/files/rails/authentication_and_authorization/advanced/custom_devise_warden_strategy.md +39 -0
  921. data/files/rails/authentication_and_authorization/advanced/jwt_refresh_token_rotation.md +29 -0
  922. data/files/rails/authentication_and_authorization/advanced/multi_tenant_policy_scoping.md +39 -0
  923. data/files/rails/authentication_and_authorization/advanced/pundit_policy_caching.md +26 -0
  924. data/files/rails/authentication_and_authorization/beginner/bcrypt_user_auth.md +25 -0
  925. data/files/rails/authentication_and_authorization/beginner/before_action_authentication.md +33 -0
  926. data/files/rails/authentication_and_authorization/beginner/sessions_controller_setup.md +43 -0
  927. data/files/rails/authentication_and_authorization/beginner/simple_role_authorization.md +42 -0
  928. data/files/rails/authentication_and_authorization/expert/cancancan_ability_caching_preload.md +36 -0
  929. data/files/rails/authentication_and_authorization/expert/dynamic_pundit_scope_with_rls.md +30 -0
  930. data/files/rails/authentication_and_authorization/expert/graphql_jwt_pundit_integration.md +40 -0
  931. data/files/rails/authentication_and_authorization/expert/mfa_custom_warden_strategy.md +30 -0
  932. data/files/rails/authentication_and_authorization/middle/customize_redirects.md +16 -0
  933. data/files/rails/authentication_and_authorization/middle/policy_scope_index.md +29 -0
  934. data/files/rails/authentication_and_authorization/middle/role_based_policies.md +19 -0
  935. data/files/rails/authentication_and_authorization/middle/token_authentication.md +22 -0
  936. data/files/rails/background_jobs/advanced/idempotent_jobs.md +21 -0
  937. data/files/rails/background_jobs/advanced/job_metrics.md +15 -0
  938. data/files/rails/background_jobs/advanced/rate_limiting_middleware.md +35 -0
  939. data/files/rails/background_jobs/advanced/sidekiq_batches.md +27 -0
  940. data/files/rails/background_jobs/advanced/transactional_enqueue.md +18 -0
  941. data/files/rails/background_jobs/beginner/create_simple_job.md +20 -0
  942. data/files/rails/background_jobs/beginner/enqueue_with_perform_later.md +20 -0
  943. data/files/rails/background_jobs/beginner/install_sidekiq.md +31 -0
  944. data/files/rails/background_jobs/beginner/monitor_sidekiq_web.md +17 -0
  945. data/files/rails/background_jobs/beginner/pass_arguments_to_job.md +20 -0
  946. data/files/rails/background_jobs/expert/custom_retry_strategy.md +24 -0
  947. data/files/rails/background_jobs/expert/job_orchestration.md +27 -0
  948. data/files/rails/background_jobs/expert/observability_instrumentation.md +18 -0
  949. data/files/rails/background_jobs/expert/sidekiq_batch_callbacks.md +22 -0
  950. data/files/rails/background_jobs/expert/unique_jobs_idempotency.md +24 -0
  951. data/files/rails/background_jobs/middle/configure_retry_and_discard.md +18 -0
  952. data/files/rails/background_jobs/middle/integrate_active_job_sidekiq.md +27 -0
  953. data/files/rails/background_jobs/middle/schedule_jobs_with_active_job.md +16 -0
  954. data/files/rails/background_jobs/middle/serialize_arguments_safely.md +21 -0
  955. data/files/rails/background_jobs/middle/test_background_jobs_in_rspec.md +28 -0
  956. data/files/rails/benchmarking/advanced/benchmark_ips_gem.md +24 -0
  957. data/files/rails/benchmarking/advanced/gc_profiler_memory.md +17 -0
  958. data/files/rails/benchmarking/advanced/micro_benchmark_bmbm.md +16 -0
  959. data/files/rails/benchmarking/advanced/rack_mini_profiler_programmatic.md +23 -0
  960. data/files/rails/benchmarking/advanced/sql_query_notifications.md +18 -0
  961. data/files/rails/benchmarking/beginner/benchmark_bm.md +18 -0
  962. data/files/rails/benchmarking/beginner/benchmark_measure.md +15 -0
  963. data/files/rails/benchmarking/beginner/benchmark_realtime.md +14 -0
  964. data/files/rails/benchmarking/beginner/console_benchmark.md +13 -0
  965. data/files/rails/benchmarking/beginner/rails_logger_benchmark.md +16 -0
  966. data/files/rails/benchmarking/expert/active_support_notifications_metrics.md +17 -0
  967. data/files/rails/benchmarking/expert/concurrent_ruby_benchmark.md +22 -0
  968. data/files/rails/benchmarking/expert/low_level_benchmarking.md +19 -0
  969. data/files/rails/benchmarking/expert/memory_allocation_tracking.md +23 -0
  970. data/files/rails/benchmarking/expert/sql_query_profiling.md +18 -0
  971. data/files/rails/benchmarking/middle/activerecord_n_plus_one_benchmark.md +19 -0
  972. data/files/rails/benchmarking/middle/benchmark_ips_usage.md +16 -0
  973. data/files/rails/benchmarking/middle/console_benchmark_measure.md +19 -0
  974. data/files/rails/benchmarking/middle/rake_task_benchmark.md +20 -0
  975. data/files/rails/benchmarking/middle/view_rendering_benchmark.md +26 -0
  976. data/files/rails/caching/advanced/custom_cache_versioning.md +23 -0
  977. data/files/rails/caching/advanced/dynamic_fragment_caching.md +23 -0
  978. data/files/rails/caching/advanced/http_conditional_caching.md +15 -0
  979. data/files/rails/caching/advanced/low_level_race_condition_ttl.md +12 -0
  980. data/files/rails/caching/advanced/multi_tier_caching.md +16 -0
  981. data/files/rails/caching/advanced/russian_doll_caching.md +30 -0
  982. data/files/rails/caching/beginner/cache_expiration.md +10 -0
  983. data/files/rails/caching/beginner/conditional_fragment_caching.md +11 -0
  984. data/files/rails/caching/beginner/configure_cache_store.md +14 -0
  985. data/files/rails/caching/beginner/low_level_cache_fetch.md +10 -0
  986. data/files/rails/caching/beginner/russian_doll_caching.md +19 -0
  987. data/files/rails/caching/beginner/view_fragment_caching.md +15 -0
  988. data/files/rails/caching/expert/fetch_multi_batch_reads.md +16 -0
  989. data/files/rails/caching/expert/http_conditional_get.md +15 -0
  990. data/files/rails/caching/expert/localcache_with_remote_store.md +16 -0
  991. data/files/rails/caching/expert/race_condition_ttl.md +12 -0
  992. data/files/rails/caching/expert/raw_store_bypass_serialization.md +18 -0
  993. data/files/rails/caching/expert/russian_doll_cache_versioning.md +18 -0
  994. data/files/rails/command_line/advanced/customizing_cli_defaults_with_railsrc.md +26 -0
  995. data/files/rails/command_line/advanced/one_off_scripts_with_runner.md +21 -0
  996. data/files/rails/command_line/beginner/create_new_app.md +8 -0
  997. data/files/rails/command_line/beginner/run_local_server.md +8 -0
  998. data/files/rails/command_line/expert/custom-rails-cli-commands-railtie.md +42 -0
  999. data/files/rails/command_line/expert/spring-custom-commands.md +36 -0
  1000. data/files/rails/command_line/middle/filtering_rails_routes.md +14 -0
  1001. data/files/rails/command_line/middle/rails_runner_scripts.md +14 -0
  1002. data/files/rails/configuration/advanced/conditional_middleware_configuration.md +29 -0
  1003. data/files/rails/configuration/advanced/config_for_nested_yaml.md +43 -0
  1004. data/files/rails/configuration/advanced/dynamic_custom_config_x.md +34 -0
  1005. data/files/rails/configuration/beginner/config_time_zone.md +17 -0
  1006. data/files/rails/configuration/beginner/configure_locale.md +17 -0
  1007. data/files/rails/configuration/beginner/skip_generator_files.md +18 -0
  1008. data/files/rails/configuration/expert/dynamic_config_for.md +33 -0
  1009. data/files/rails/configuration/expert/multi_env_encrypted_credentials.md +23 -0
  1010. data/files/rails/configuration/expert/railtie_initialization_hooks.md +29 -0
  1011. data/files/rails/configuration/middle/custom_app_config.md +23 -0
  1012. data/files/rails/configuration/middle/environment_specific_config.md +28 -0
  1013. data/files/rails/configuration/middle/load_yaml_config.md +19 -0
  1014. data/files/rails/console/advanced/console_custom_helpers.md +22 -0
  1015. data/files/rails/console/advanced/console_performance_profiling.md +28 -0
  1016. data/files/rails/console/beginner/query_with_console.md +17 -0
  1017. data/files/rails/console/beginner/reload_rails_console.md +14 -0
  1018. data/files/rails/console/expert/benchmark_explain_active_record.md +22 -0
  1019. data/files/rails/console/expert/custom_pry_rc_for_rails_console.md +23 -0
  1020. data/files/rails/console/middle/enhanced_output_with_awesomeprint.md +25 -0
  1021. data/files/rails/console/middle/quick_reload_application_code.md +18 -0
  1022. data/files/rails/controllers/advanced/actioncable_integration.md +17 -0
  1023. data/files/rails/controllers/advanced/bulk_insert_update.md +18 -0
  1024. data/files/rails/controllers/advanced/controller_concerns_draggable.md +32 -0
  1025. data/files/rails/controllers/advanced/controller_testing_shared_examples.md +23 -0
  1026. data/files/rails/controllers/advanced/jwt_authentication_in_controllers.md +18 -0
  1027. data/files/rails/controllers/advanced/n_plus_one_query_optimization.md +17 -0
  1028. data/files/rails/controllers/advanced/rate_limiting_actions.md +28 -0
  1029. data/files/rails/controllers/advanced/rescue_from_graceful_errors.md +19 -0
  1030. data/files/rails/controllers/advanced/russian_doll_caching.md +21 -0
  1031. data/files/rails/controllers/advanced/streaming_json_responses.md +26 -0
  1032. data/files/rails/controllers/advanced/strong_params_nested_attributes.md +17 -0
  1033. data/files/rails/controllers/advanced/versioned_api_namespaces.md +27 -0
  1034. data/files/rails/controllers/beginner/accessing_params.md +13 -0
  1035. data/files/rails/controllers/beginner/basic_controller_setup.md +19 -0
  1036. data/files/rails/controllers/beginner/defining_restful_actions.md +10 -0
  1037. data/files/rails/controllers/beginner/flash_messages.md +23 -0
  1038. data/files/rails/controllers/beginner/handling_not_found_errors.md +15 -0
  1039. data/files/rails/controllers/beginner/redirecting_after_actions.md +16 -0
  1040. data/files/rails/controllers/beginner/rendering_json_responses.md +12 -0
  1041. data/files/rails/controllers/beginner/rendering_templates.md +12 -0
  1042. data/files/rails/controllers/beginner/responding_to_formats.md +15 -0
  1043. data/files/rails/controllers/beginner/using_before_action_filters.md +17 -0
  1044. data/files/rails/controllers/beginner/using_partials_to_dry_views.md +15 -0
  1045. data/files/rails/controllers/beginner/using_strong_parameters.md +22 -0
  1046. data/files/rails/controllers/expert/action_cable_integration.md +24 -0
  1047. data/files/rails/controllers/expert/advanced_content_negotiation.md +22 -0
  1048. data/files/rails/controllers/expert/controller_concerns_adv.md +32 -0
  1049. data/files/rails/controllers/expert/dependency_injection_service_objects.md +26 -0
  1050. data/files/rails/controllers/expert/dynamic_action_metaprogramming.md +24 -0
  1051. data/files/rails/controllers/expert/http2_server_push.md +20 -0
  1052. data/files/rails/controllers/expert/http_caching_conditional_get.md +14 -0
  1053. data/files/rails/controllers/expert/instrumentation_notifications_controller.md +20 -0
  1054. data/files/rails/controllers/expert/rescue_from_custom_exceptions.md +20 -0
  1055. data/files/rails/controllers/expert/streaming_action_controller_live.md +20 -0
  1056. data/files/rails/controllers/expert/strong_params_dynamic_filters.md +26 -0
  1057. data/files/rails/controllers/expert/threading_parallel_requests.md +20 -0
  1058. data/files/rails/controllers/middle/action_caching.md +16 -0
  1059. data/files/rails/controllers/middle/before_action_filters.md +18 -0
  1060. data/files/rails/controllers/middle/controller_concerns.md +22 -0
  1061. data/files/rails/controllers/middle/default_url_options.md +12 -0
  1062. data/files/rails/controllers/middle/namespaced_api_controller.md +24 -0
  1063. data/files/rails/controllers/middle/nested_resources_management.md +29 -0
  1064. data/files/rails/controllers/middle/redirect_back_fallback.md +15 -0
  1065. data/files/rails/controllers/middle/rescue_from_errors.md +17 -0
  1066. data/files/rails/controllers/middle/respond_to_formats.md +14 -0
  1067. data/files/rails/controllers/middle/service_objects.md +40 -0
  1068. data/files/rails/controllers/middle/streaming_responses.md +22 -0
  1069. data/files/rails/controllers/middle/strong_parameters.md +21 -0
  1070. data/files/rails/debugging/advanced/active_support_notifications.md +15 -0
  1071. data/files/rails/debugging/advanced/derailed_benchmarks_setup.md +15 -0
  1072. data/files/rails/debugging/advanced/memory_profiler_usage.md +13 -0
  1073. data/files/rails/debugging/advanced/pry_remote_session.md +20 -0
  1074. data/files/rails/debugging/advanced/rack_mini_profiler_production.md +13 -0
  1075. data/files/rails/debugging/advanced/ruby_tracepoint_tracing.md +15 -0
  1076. data/files/rails/debugging/beginner/binding_irb.md +11 -0
  1077. data/files/rails/debugging/beginner/byebug_basics.md +14 -0
  1078. data/files/rails/debugging/beginner/logging_debug.md +13 -0
  1079. data/files/rails/debugging/beginner/puts_and_inspect.md +11 -0
  1080. data/files/rails/debugging/beginner/rails_console.md +13 -0
  1081. data/files/rails/debugging/beginner/view_dev_logs.md +8 -0
  1082. data/files/rails/debugging/expert/binding_of_caller_usage.md +27 -0
  1083. data/files/rails/debugging/expert/byebug_advanced_mastery.md +28 -0
  1084. data/files/rails/debugging/expert/custom_exception_pry.md +21 -0
  1085. data/files/rails/debugging/expert/notifications_inspector.md +24 -0
  1086. data/files/rails/debugging/expert/remote_pry_docker_debug.md +29 -0
  1087. data/files/rails/debugging/expert/tracepoint_active_record_sql.md +18 -0
  1088. data/files/rails/debugging/middle/active_record_explain_queries.md +14 -0
  1089. data/files/rails/debugging/middle/byebug_step_through.md +20 -0
  1090. data/files/rails/debugging/middle/conditional_breakpoints.md +17 -0
  1091. data/files/rails/debugging/middle/pry_rails_inspection.md +19 -0
  1092. data/files/rails/debugging/middle/tagged_logging.md +19 -0
  1093. data/files/rails/debugging/middle/web_console_error_pages.md +13 -0
  1094. data/files/rails/deployment/advanced/capistrano_parallel_precompile.md +25 -0
  1095. data/files/rails/deployment/advanced/k8s_canary_deployment.md +49 -0
  1096. data/files/rails/deployment/advanced/puma_phased_restarts.md +39 -0
  1097. data/files/rails/deployment/beginner/basic_capistrano_setup.md +33 -0
  1098. data/files/rails/deployment/beginner/deploy_to_heroku.md +19 -0
  1099. data/files/rails/deployment/beginner/dockerize_rails_app.md +36 -0
  1100. data/files/rails/deployment/expert/canary_deployments_k8s_flagger.md +29 -0
  1101. data/files/rails/deployment/expert/docker_cache_optimization.md +33 -0
  1102. data/files/rails/deployment/expert/zero_downtime_db_migrations.md +29 -0
  1103. data/files/rails/deployment/middle/capistrano_custom_tasks.md +28 -0
  1104. data/files/rails/deployment/middle/local_asset_precompile.md +18 -0
  1105. data/files/rails/deployment/middle/production_credentials_usage.md +26 -0
  1106. data/files/rails/encryption/advanced/custom_aws_kms_key_provider.md +34 -0
  1107. data/files/rails/encryption/advanced/deterministic_encryption_search.md +19 -0
  1108. data/files/rails/encryption/advanced/rotate_encryption_keys.md +18 -0
  1109. data/files/rails/encryption/beginner/active_record_encryption.md +28 -0
  1110. data/files/rails/encryption/beginner/message_encryptor_basics.md +17 -0
  1111. data/files/rails/encryption/beginner/rails_credentials.md +24 -0
  1112. data/files/rails/encryption/expert/active_record_attribute_encryption.md +35 -0
  1113. data/files/rails/encryption/expert/authenticated_encryption_with_aad.md +33 -0
  1114. data/files/rails/encryption/expert/rotate_encryption_keys.md +25 -0
  1115. data/files/rails/encryption/middle/active_record_encryption_config.md +17 -0
  1116. data/files/rails/encryption/middle/custom_message_encryptor.md +20 -0
  1117. data/files/rails/encryption/middle/migrate_existing_to_encrypted.md +27 -0
  1118. data/files/rails/engines_and_plugins/advanced/asset_pipeline_and_migrations_railtie.md +31 -0
  1119. data/files/rails/engines_and_plugins/advanced/custom_generator_extension.md +30 -0
  1120. data/files/rails/engines_and_plugins/advanced/dynamic_engine_mounting.md +15 -0
  1121. data/files/rails/engines_and_plugins/advanced/isolate_namespace_engine_config.md +24 -0
  1122. data/files/rails/engines_and_plugins/beginner/engine_basic_setup.md +9 -0
  1123. data/files/rails/engines_and_plugins/beginner/engine_models_migrations.md +32 -0
  1124. data/files/rails/engines_and_plugins/beginner/engine_mounting.md +12 -0
  1125. data/files/rails/engines_and_plugins/beginner/plugin_basic_setup.md +26 -0
  1126. data/files/rails/engines_and_plugins/expert/custom_plugin_with_railtie.md +40 -0
  1127. data/files/rails/engines_and_plugins/expert/isolate_namespace_advanced.md +22 -0
  1128. data/files/rails/engines_and_plugins/expert/optimize_engine_loading.md +28 -0
  1129. data/files/rails/engines_and_plugins/expert/railtie_middleware_hooks.md +19 -0
  1130. data/files/rails/engines_and_plugins/middle/configuring_engine_initializers.md +15 -0
  1131. data/files/rails/engines_and_plugins/middle/mounting_engines_routes.md +16 -0
  1132. data/files/rails/engines_and_plugins/middle/overriding_engine_views.md +16 -0
  1133. data/files/rails/engines_and_plugins/middle/using_plugin_rails_generators.md +16 -0
  1134. data/files/rails/environments/advanced/config_for_env_settings.md +35 -0
  1135. data/files/rails/environments/advanced/multi_env_credentials.md +18 -0
  1136. data/files/rails/environments/beginner/checking_and_setting_rails_environment.md +15 -0
  1137. data/files/rails/environments/beginner/running_rails_in_different_environments.md +13 -0
  1138. data/files/rails/environments/expert/dynamic_environment_switching_middleware.md +44 -0
  1139. data/files/rails/environments/expert/environment_layering_with_common.md +33 -0
  1140. data/files/rails/environments/middle/environment_file_configuration.md +19 -0
  1141. data/files/rails/environments/middle/rails_env_conditional_logic.md +17 -0
  1142. data/files/rails/forms/advanced/accessibility_enhancements_with_aria.md +14 -0
  1143. data/files/rails/forms/advanced/ajax_remote_form_submission.md +21 -0
  1144. data/files/rails/forms/advanced/cache_form_partials_for_performance.md +21 -0
  1145. data/files/rails/forms/advanced/conditional_fields_with_stimulus.md +34 -0
  1146. data/files/rails/forms/advanced/custom_form_builder_shared_helpers.md +38 -0
  1147. data/files/rails/forms/advanced/direct_s3_uploads_with_active_storage.md +18 -0
  1148. data/files/rails/forms/advanced/dynamic_nested_fields_with_cocoon.md +32 -0
  1149. data/files/rails/forms/advanced/form_object_with_reform.md +37 -0
  1150. data/files/rails/forms/advanced/multi_step_form_wizard.md +38 -0
  1151. data/files/rails/forms/advanced/stimulus_reflex_real_time_validation.md +24 -0
  1152. data/files/rails/forms/beginner/checkbox_and_radio.md +15 -0
  1153. data/files/rails/forms/beginner/date_time_select.md +12 -0
  1154. data/files/rails/forms/beginner/display_error_messages.md +21 -0
  1155. data/files/rails/forms/beginner/file_upload_field.md +10 -0
  1156. data/files/rails/forms/beginner/form_tag_basics.md +10 -0
  1157. data/files/rails/forms/beginner/form_with_model.md +10 -0
  1158. data/files/rails/forms/beginner/nested_fields_for.md +23 -0
  1159. data/files/rails/forms/beginner/password_field_basics.md +9 -0
  1160. data/files/rails/forms/beginner/select_dropdown.md +9 -0
  1161. data/files/rails/forms/beginner/text_field_and_label.md +9 -0
  1162. data/files/rails/forms/expert/action_text_integration.md +27 -0
  1163. data/files/rails/forms/expert/advanced_strong_parameters.md +21 -0
  1164. data/files/rails/forms/expert/custom_form_builder.md +24 -0
  1165. data/files/rails/forms/expert/dynamic_nested_forms.md +39 -0
  1166. data/files/rails/forms/expert/form_object_pattern.md +38 -0
  1167. data/files/rails/forms/expert/i18n_and_accessibility.md +22 -0
  1168. data/files/rails/forms/expert/polymorphic_form_inputs.md +27 -0
  1169. data/files/rails/forms/expert/real_time_validations.md +25 -0
  1170. data/files/rails/forms/expert/select_options_caching.md +24 -0
  1171. data/files/rails/forms/middle/checkbox_array_input.md +12 -0
  1172. data/files/rails/forms/middle/collection_select_association.md +9 -0
  1173. data/files/rails/forms/middle/csrf_token_auto.md +9 -0
  1174. data/files/rails/forms/middle/custom_error_highlighting.md +9 -0
  1175. data/files/rails/forms/middle/custom_form_builder.md +18 -0
  1176. data/files/rails/forms/middle/custom_input_options.md +10 -0
  1177. data/files/rails/forms/middle/file_field_active_storage.md +16 -0
  1178. data/files/rails/forms/middle/form_with_remote_submissions.md +9 -0
  1179. data/files/rails/forms/middle/i18n_labels.md +19 -0
  1180. data/files/rails/forms/middle/nested_fields_for_models.md +21 -0
  1181. data/files/rails/helpers/advanced/caching_heavy_helper_computations.md +21 -0
  1182. data/files/rails/helpers/advanced/dynamic_content_tag_with_blocks.md +20 -0
  1183. data/files/rails/helpers/advanced/dynamic_partial_resolution_with_lookup_context.md +17 -0
  1184. data/files/rails/helpers/advanced/extending_javascript_helper_for_i18n.md +15 -0
  1185. data/files/rails/helpers/advanced/injecting_helpers_into_mailers.md +17 -0
  1186. data/files/rails/helpers/advanced/render_partials_from_helpers.md +17 -0
  1187. data/files/rails/helpers/beginner/rails_helper_content_tag.md +10 -0
  1188. data/files/rails/helpers/beginner/rails_helper_form_with.md +12 -0
  1189. data/files/rails/helpers/beginner/rails_helper_image_tag.md +8 -0
  1190. data/files/rails/helpers/beginner/rails_helper_link_to.md +8 -0
  1191. data/files/rails/helpers/beginner/rails_helper_number_to_currency.md +8 -0
  1192. data/files/rails/helpers/beginner/rails_helper_simple_format.md +8 -0
  1193. data/files/rails/helpers/expert/dsl_fluent_helpers.md +29 -0
  1194. data/files/rails/helpers/expert/include_helpers_in_mailers.md +21 -0
  1195. data/files/rails/helpers/expert/memoization_with_rails_cache.md +23 -0
  1196. data/files/rails/helpers/expert/metaprogramming_method_missing_helpers.md +22 -0
  1197. data/files/rails/helpers/expert/organizing_helpers_with_concern.md +24 -0
  1198. data/files/rails/helpers/expert/testing_helpers_with_actionview.md +18 -0
  1199. data/files/rails/helpers/middle/capture_blocks.md +24 -0
  1200. data/files/rails/helpers/middle/content_tag_usage.md +20 -0
  1201. data/files/rails/helpers/middle/custom_helper_modules.md +25 -0
  1202. data/files/rails/helpers/middle/link_to_dynamic_routes.md +16 -0
  1203. data/files/rails/helpers/middle/number_helpers_usage.md +11 -0
  1204. data/files/rails/helpers/middle/tag_helper_void_elements.md +16 -0
  1205. data/files/rails/i18n/advanced/advanced_pluralization.md +24 -0
  1206. data/files/rails/i18n/advanced/custom_db_backend.md +33 -0
  1207. data/files/rails/i18n/advanced/html_safe_interpolation.md +13 -0
  1208. data/files/rails/i18n/advanced/lazy_mailer_lookup.md +17 -0
  1209. data/files/rails/i18n/advanced/proc_based_default_fallback.md +14 -0
  1210. data/files/rails/i18n/beginner/interpolation_in_translations.md +14 -0
  1211. data/files/rails/i18n/beginner/organize_locale_files.md +19 -0
  1212. data/files/rails/i18n/beginner/pluralization_examples.md +16 -0
  1213. data/files/rails/i18n/beginner/setup_default_locale.md +16 -0
  1214. data/files/rails/i18n/beginner/translate_in_views.md +11 -0
  1215. data/files/rails/i18n/expert/caching_translations_memcache.md +18 -0
  1216. data/files/rails/i18n/expert/complex_pluralization_rules.md +36 -0
  1217. data/files/rails/i18n/expert/custom_active_record_backend.md +17 -0
  1218. data/files/rails/i18n/expert/namespace_lazy_lookups.md +19 -0
  1219. data/files/rails/i18n/expert/thread_safe_locale_switching.md +18 -0
  1220. data/files/rails/i18n/middle/datetime_localization.md +17 -0
  1221. data/files/rails/i18n/middle/default_translation_options.md +13 -0
  1222. data/files/rails/i18n/middle/locale_fallbacks.md +15 -0
  1223. data/files/rails/i18n/middle/pluralization_with_count.md +17 -0
  1224. data/files/rails/i18n/middle/scoped_view_translations.md +18 -0
  1225. data/files/rails/layouts/advanced/custom_lookup_context_for_layout.md +18 -0
  1226. data/files/rails/layouts/advanced/dynamic_layout_selection.md +18 -0
  1227. data/files/rails/layouts/advanced/engine_isolated_layouts.md +16 -0
  1228. data/files/rails/layouts/advanced/layout_variants_by_format.md +19 -0
  1229. data/files/rails/layouts/advanced/nested_layouts_with_content_for.md +24 -0
  1230. data/files/rails/layouts/beginner/application_layout.md +19 -0
  1231. data/files/rails/layouts/beginner/custom_controller_layout.md +27 -0
  1232. data/files/rails/layouts/beginner/layout_inheritance.md +20 -0
  1233. data/files/rails/layouts/beginner/nested_layouts_partials.md +23 -0
  1234. data/files/rails/layouts/beginner/yield_content_for.md +24 -0
  1235. data/files/rails/layouts/expert/advanced_content_for_yields.md +43 -0
  1236. data/files/rails/layouts/expert/dynamic_layout_selection.md +21 -0
  1237. data/files/rails/layouts/expert/layout_fragment_caching.md +29 -0
  1238. data/files/rails/layouts/expert/nested_layout_inheritance.md +31 -0
  1239. data/files/rails/layouts/expert/view_component_layouts.md +36 -0
  1240. data/files/rails/layouts/middle/asset_helpers_in_layout.md.md +15 -0
  1241. data/files/rails/layouts/middle/content_for_and_yield.md.md +31 -0
  1242. data/files/rails/layouts/middle/dynamic_controller_layout.md.md +22 -0
  1243. data/files/rails/layouts/middle/nested_layouts.md.md +21 -0
  1244. data/files/rails/layouts/middle/partial_locals_in_layout.md.md +28 -0
  1245. data/files/rails/logging/advanced/asynchronous_logging.md +31 -0
  1246. data/files/rails/logging/advanced/custom_log_formatter.md +18 -0
  1247. data/files/rails/logging/advanced/lograge_logstash_integration.md +22 -0
  1248. data/files/rails/logging/advanced/sql_query_context_logging.md +19 -0
  1249. data/files/rails/logging/advanced/structured_json_logging.md +21 -0
  1250. data/files/rails/logging/advanced/tagged_logging_context.md +22 -0
  1251. data/files/rails/logging/beginner/custom_log_formatter.md +16 -0
  1252. data/files/rails/logging/beginner/default_logger_usage.md +9 -0
  1253. data/files/rails/logging/beginner/logging_in_controllers.md +12 -0
  1254. data/files/rails/logging/beginner/logging_in_models.md +21 -0
  1255. data/files/rails/logging/beginner/setting_log_levels.md +13 -0
  1256. data/files/rails/logging/beginner/tagged_logging.md +14 -0
  1257. data/files/rails/logging/expert/async_buffered_logging.md +33 -0
  1258. data/files/rails/logging/expert/custom_active_support_logsubscriber.md +19 -0
  1259. data/files/rails/logging/expert/enhance_lograge_custom_payloads.md +26 -0
  1260. data/files/rails/logging/expert/implement_correlation_id_tracing.md +27 -0
  1261. data/files/rails/logging/expert/instrument_performance_with_notifications.md +20 -0
  1262. data/files/rails/logging/expert/structure_json_logs_semantic.md +26 -0
  1263. data/files/rails/logging/middle/active_record_sql_logging.md +14 -0
  1264. data/files/rails/logging/middle/broadcast_to_multiple_loggers.md +15 -0
  1265. data/files/rails/logging/middle/custom_log_formatter.md +22 -0
  1266. data/files/rails/logging/middle/environment_log_levels.md +16 -0
  1267. data/files/rails/logging/middle/silence_logging.md +14 -0
  1268. data/files/rails/logging/middle/tagged_logging.md +25 -0
  1269. data/files/rails/mailers/advanced/async_mail_delivery.md +18 -0
  1270. data/files/rails/mailers/advanced/custom_delivery_method.md +26 -0
  1271. data/files/rails/mailers/advanced/dynamic_subjects_i18n.md +25 -0
  1272. data/files/rails/mailers/advanced/instrumentation_monitoring.md +11 -0
  1273. data/files/rails/mailers/advanced/interceptors_observers.md +22 -0
  1274. data/files/rails/mailers/advanced/mailer_previews_locales.md +17 -0
  1275. data/files/rails/mailers/advanced/parameterized_mailers.md +21 -0
  1276. data/files/rails/mailers/advanced/streaming_attachments.md +20 -0
  1277. data/files/rails/mailers/beginner/background_jobs_emails.md +20 -0
  1278. data/files/rails/mailers/beginner/default_options.md +18 -0
  1279. data/files/rails/mailers/beginner/generating_mailer.md +10 -0
  1280. data/files/rails/mailers/beginner/mailer_methods_templates.md +22 -0
  1281. data/files/rails/mailers/beginner/preview_emails.md +15 -0
  1282. data/files/rails/mailers/beginner/send_emails_controllers.md +20 -0
  1283. data/files/rails/mailers/beginner/smtp_configuration.md +22 -0
  1284. data/files/rails/mailers/beginner/test_mailers.md +27 -0
  1285. data/files/rails/mailers/expert/custom_delivery_method.md +34 -0
  1286. data/files/rails/mailers/expert/custom_mailer_preview.md +18 -0
  1287. data/files/rails/mailers/expert/dynamic_multipart_variants.md +25 -0
  1288. data/files/rails/mailers/expert/instrumentation_and_metrics.md +15 -0
  1289. data/files/rails/mailers/expert/mail_interceptors_observers.md +30 -0
  1290. data/files/rails/mailers/expert/mailer_concerns_mixins.md +32 -0
  1291. data/files/rails/mailers/expert/prioritized_async_delivery.md +25 -0
  1292. data/files/rails/mailers/expert/streaming_attachments_s3.md +28 -0
  1293. data/files/rails/mailers/middle/attachments_inline_images.md +20 -0
  1294. data/files/rails/mailers/middle/background_delivery_active_job.md +20 -0
  1295. data/files/rails/mailers/middle/customizing_layouts.md +29 -0
  1296. data/files/rails/mailers/middle/default_url_options.md +12 -0
  1297. data/files/rails/mailers/middle/localizing_content.md +18 -0
  1298. data/files/rails/mailers/middle/mailer_previews.md +15 -0
  1299. data/files/rails/mailers/middle/testing_mailers.md +29 -0
  1300. data/files/rails/mailers/middle/using_helpers_in_mailers.md +17 -0
  1301. data/files/rails/middleware/advanced/conditional_middleware_insertion.md +17 -0
  1302. data/files/rails/middleware/advanced/custom_logging_middleware.md +26 -0
  1303. data/files/rails/middleware/advanced/middleware_stack_inspection.md +18 -0
  1304. data/files/rails/middleware/advanced/response_timing_middleware.md +28 -0
  1305. data/files/rails/middleware/beginner/cors_middleware.md +25 -0
  1306. data/files/rails/middleware/beginner/custom_middleware_setup.md +27 -0
  1307. data/files/rails/middleware/beginner/insert_middleware_position.md +16 -0
  1308. data/files/rails/middleware/beginner/request_logging_middleware.md +28 -0
  1309. data/files/rails/middleware/expert/conditional_asset_pipeline_forking.md +22 -0
  1310. data/files/rails/middleware/expert/dynamic_request_throttling_middleware.md +41 -0
  1311. data/files/rails/middleware/expert/rotating_security_header_injector.md +32 -0
  1312. data/files/rails/middleware/expert/stale_while_revalidate_cache_middleware.md +48 -0
  1313. data/files/rails/middleware/middle/conditional_middleware_loading.md +18 -0
  1314. data/files/rails/middleware/middle/custom_request_logger_middleware.md +30 -0
  1315. data/files/rails/middleware/middle/middleware_insertion_points.md +18 -0
  1316. data/files/rails/middleware/middle/testing_middleware_integration.md +23 -0
  1317. data/files/rails/models/advanced/advisory_locks_for_concurrency_control.md +8 -0
  1318. data/files/rails/models/advanced/bulk_upsert_with_upsert_all.md +14 -0
  1319. data/files/rails/models/advanced/composite_primary_keys_usage.md +20 -0
  1320. data/files/rails/models/advanced/custom_attribute_api_types.md +22 -0
  1321. data/files/rails/models/advanced/db_check_constraints_for_validation.md +17 -0
  1322. data/files/rails/models/advanced/model_concerns_for_modular_logic.md +35 -0
  1323. data/files/rails/models/advanced/optimistic_locking_advanced.md +25 -0
  1324. data/files/rails/models/advanced/parameterized_scopes_for_reusability.md +13 -0
  1325. data/files/rails/models/advanced/postgres_enum_with_attribute_api.md +26 -0
  1326. data/files/rails/models/advanced/using_arel_for_complex_queries.md +24 -0
  1327. data/files/rails/models/beginner/model_associations.md +19 -0
  1328. data/files/rails/models/beginner/model_callbacks.md +22 -0
  1329. data/files/rails/models/beginner/model_constants.md +16 -0
  1330. data/files/rails/models/beginner/model_custom_queries.md +18 -0
  1331. data/files/rails/models/beginner/model_default_values.md +27 -0
  1332. data/files/rails/models/beginner/model_delegation.md +14 -0
  1333. data/files/rails/models/beginner/model_enums.md +15 -0
  1334. data/files/rails/models/beginner/model_scopes.md +15 -0
  1335. data/files/rails/models/beginner/model_testing.md +21 -0
  1336. data/files/rails/models/beginner/model_validations.md +15 -0
  1337. data/files/rails/models/expert/active_record_encryption.md +15 -0
  1338. data/files/rails/models/expert/after_initialize_caching.md +20 -0
  1339. data/files/rails/models/expert/arel_complex_subquery.md +20 -0
  1340. data/files/rails/models/expert/composite_primary_keys.md +16 -0
  1341. data/files/rails/models/expert/custom_dirty_tracking.md +19 -0
  1342. data/files/rails/models/expert/custom_optimistic_locking.md +13 -0
  1343. data/files/rails/models/expert/dynamic_scopes_metaprogramming.md +20 -0
  1344. data/files/rails/models/expert/json_column_virtual_attributes.md +16 -0
  1345. data/files/rails/models/expert/partitioned_table_models.md +22 -0
  1346. data/files/rails/models/expert/sti_abstract_base.md +17 -0
  1347. data/files/rails/models/middle/rails_models_association_counter_cache.md +17 -0
  1348. data/files/rails/models/middle/rails_models_callbacks_best_practices.md +15 -0
  1349. data/files/rails/models/middle/rails_models_custom_validations.md +16 -0
  1350. data/files/rails/models/middle/rails_models_default_scope.md +12 -0
  1351. data/files/rails/models/middle/rails_models_dirty_tracking.md +15 -0
  1352. data/files/rails/models/middle/rails_models_enums.md +13 -0
  1353. data/files/rails/models/middle/rails_models_polymorphic_association.md +25 -0
  1354. data/files/rails/models/middle/rails_models_scopes.md +13 -0
  1355. data/files/rails/models/middle/rails_models_serialization.md +13 -0
  1356. data/files/rails/models/middle/rails_models_transactions.md +11 -0
  1357. data/files/rails/partials/advanced/collection_partial_caching.md.md +15 -0
  1358. data/files/rails/partials/advanced/dynamic_view_path_overrides.md.md +18 -0
  1359. data/files/rails/partials/advanced/partial_with_layout.md.md +14 -0
  1360. data/files/rails/partials/advanced/variant_specific_partials.md.md +25 -0
  1361. data/files/rails/partials/beginner/basic_partial_rendering.md +9 -0
  1362. data/files/rails/partials/beginner/partial_naming_conventions.md +16 -0
  1363. data/files/rails/partials/beginner/passing_local_variables.md +9 -0
  1364. data/files/rails/partials/beginner/rendering_collections.md +9 -0
  1365. data/files/rails/partials/expert/dynamic_partial_resolution.md +15 -0
  1366. data/files/rails/partials/expert/namespaced_partial_overrides.md +17 -0
  1367. data/files/rails/partials/expert/partial_with_layout.md +17 -0
  1368. data/files/rails/partials/expert/russian_doll_caching_partials.md +10 -0
  1369. data/files/rails/partials/middle/caching_partials.md +11 -0
  1370. data/files/rails/partials/middle/nested_partials.md +21 -0
  1371. data/files/rails/partials/middle/passing_locals_to_partials.md +14 -0
  1372. data/files/rails/partials/middle/rendering_collections.md +14 -0
  1373. data/files/rails/performance/advanced/bulk_upserts_with_upsert_all.md +17 -0
  1374. data/files/rails/performance/advanced/cpu_profiling_with_stackprof.md +22 -0
  1375. data/files/rails/performance/advanced/custom_polymorphic_preloader.md +18 -0
  1376. data/files/rails/performance/advanced/db_connection_pool_tuning.md +25 -0
  1377. data/files/rails/performance/advanced/http_caching_with_etag.md +13 -0
  1378. data/files/rails/performance/advanced/multiple_db_read_routing.md +21 -0
  1379. data/files/rails/performance/advanced/preload_for_callbacks.md +11 -0
  1380. data/files/rails/performance/advanced/ruby_gc_tunables.md +19 -0
  1381. data/files/rails/performance/advanced/sql_query_commenting.md +13 -0
  1382. data/files/rails/performance/advanced/streaming_large_responses.md +21 -0
  1383. data/files/rails/performance/beginner/add_database_indexes.md +10 -0
  1384. data/files/rails/performance/beginner/counter_cache_usage.md +15 -0
  1385. data/files/rails/performance/beginner/eager_loading_includes.md +16 -0
  1386. data/files/rails/performance/beginner/find_each_batch_processing.md +10 -0
  1387. data/files/rails/performance/beginner/fragment_caching_views.md +9 -0
  1388. data/files/rails/performance/beginner/pagination_with_kaminari.md +15 -0
  1389. data/files/rails/performance/beginner/pluck_instead_of_select.md +10 -0
  1390. data/files/rails/performance/beginner/precompile_assets_production.md +10 -0
  1391. data/files/rails/performance/beginner/rack_mini_profiler_setup.md +13 -0
  1392. data/files/rails/performance/beginner/russian_doll_caching.md +13 -0
  1393. data/files/rails/performance/expert/active_support_instrumentation.md +25 -0
  1394. data/files/rails/performance/expert/async_query_loading.md +17 -0
  1395. data/files/rails/performance/expert/batch_preloading_scopes.md +19 -0
  1396. data/files/rails/performance/expert/fast_jsonapi_serialization.md +20 -0
  1397. data/files/rails/performance/expert/gc_jemalloc_tuning.md +25 -0
  1398. data/files/rails/performance/expert/middleware_stack_refinement.md +22 -0
  1399. data/files/rails/performance/expert/partial_expression_indexes.md +21 -0
  1400. data/files/rails/performance/expert/puma_connection_pool_tuning.md +26 -0
  1401. data/files/rails/performance/expert/streaming_live_responses.md +27 -0
  1402. data/files/rails/performance/expert/two_level_caching.md +32 -0
  1403. data/files/rails/performance/middle/batch_processing_with_find_each.md +10 -0
  1404. data/files/rails/performance/middle/bulk_insertions_with_insert_all.md +10 -0
  1405. data/files/rails/performance/middle/eager_loading_associations.md +10 -0
  1406. data/files/rails/performance/middle/integrating_bullet_gem.md +17 -0
  1407. data/files/rails/performance/middle/leveraging_rack_mini_profiler.md +13 -0
  1408. data/files/rails/performance/middle/low_level_caching_with_cache_fetch.md +10 -0
  1409. data/files/rails/performance/middle/optimizing_sql_indexes.md +12 -0
  1410. data/files/rails/performance/middle/selecting_specific_columns.md +8 -0
  1411. data/files/rails/performance/middle/using_counter_cache.md +13 -0
  1412. data/files/rails/performance/middle/using_pluck_for_arrays.md +8 -0
  1413. data/files/rails/routing/advanced/api_versioning.md +19 -0
  1414. data/files/rails/routing/advanced/globbing_routes.md +20 -0
  1415. data/files/rails/routing/advanced/route_constraints.md +27 -0
  1416. data/files/rails/routing/advanced/routing_concerns.md +16 -0
  1417. data/files/rails/routing/advanced/shallow_routing.md +21 -0
  1418. data/files/rails/routing/beginner/inspect_routes.md +16 -0
  1419. data/files/rails/routing/beginner/named_custom_routes.md +13 -0
  1420. data/files/rails/routing/beginner/nested_resources.md +14 -0
  1421. data/files/rails/routing/beginner/restful_resources.md +12 -0
  1422. data/files/rails/routing/beginner/root_route.md +13 -0
  1423. data/files/rails/routing/expert/advanced_route_globbing.md +22 -0
  1424. data/files/rails/routing/expert/api_versioning_constraint.md +32 -0
  1425. data/files/rails/routing/expert/dynamic_db_driven_routes.md +29 -0
  1426. data/files/rails/routing/expert/dynamic_route_macros.md +31 -0
  1427. data/files/rails/routing/expert/localized_routes_i18n.md +29 -0
  1428. data/files/rails/routing/middle/member_collection_routes.md +19 -0
  1429. data/files/rails/routing/middle/route_constraints_lambda.md +13 -0
  1430. data/files/rails/routing/middle/route_globbing.md +12 -0
  1431. data/files/rails/routing/middle/routing_concerns.md +16 -0
  1432. data/files/rails/routing/middle/shallow_nesting.md +19 -0
  1433. data/files/rails/secrets_and_credentials/advanced/credentials_rotation_workflow.md +22 -0
  1434. data/files/rails/secrets_and_credentials/advanced/environment_specific_credentials.md +19 -0
  1435. data/files/rails/secrets_and_credentials/advanced/nested_credentials_access.md +25 -0
  1436. data/files/rails/secrets_and_credentials/beginner/accessing_credentials_in_code.md +17 -0
  1437. data/files/rails/secrets_and_credentials/beginner/editing_credentials.md +18 -0
  1438. data/files/rails/secrets_and_credentials/beginner/env_specific_credentials.md +16 -0
  1439. data/files/rails/secrets_and_credentials/expert/aws_kms_credentials_provider.md +28 -0
  1440. data/files/rails/secrets_and_credentials/expert/credentials_rotation_task.md +36 -0
  1441. data/files/rails/secrets_and_credentials/expert/multi_layer_credentials.md +32 -0
  1442. data/files/rails/secrets_and_credentials/middle/access_nested_credentials.md +18 -0
  1443. data/files/rails/secrets_and_credentials/middle/manage_env_credentials.md +13 -0
  1444. data/files/rails/secrets_and_credentials/middle/rotate_master_key.md +15 -0
  1445. data/files/rails/security/advanced/advanced_active_record_relation_filters.md +14 -0
  1446. data/files/rails/security/advanced/audit_logging_with_paper_trail.md +15 -0
  1447. data/files/rails/security/advanced/blind_index_for_searchable_encrypted_data.md +18 -0
  1448. data/files/rails/security/advanced/devise_two_factor_authentication.md +13 -0
  1449. data/files/rails/security/advanced/dynamic_csp_with_secure_headers.md +25 -0
  1450. data/files/rails/security/advanced/encrypted_credentials_multi_environment.md +21 -0
  1451. data/files/rails/security/advanced/host_authorization_middleware.md +8 -0
  1452. data/files/rails/security/advanced/hsts_strict_transport_security.md +14 -0
  1453. data/files/rails/security/advanced/masked_csrf_tokens.md +12 -0
  1454. data/files/rails/security/advanced/oauth_pkce_flow.md +17 -0
  1455. data/files/rails/security/advanced/rack_attack_custom_throttle.md +18 -0
  1456. data/files/rails/security/advanced/safe_raw_sql_with_binds.md +14 -0
  1457. data/files/rails/security/advanced/sanitize_action_text_allowlists.md +9 -0
  1458. data/files/rails/security/advanced/secure_active_storage_uploads.md +21 -0
  1459. data/files/rails/security/advanced/secure_session_cookie_settings.md +12 -0
  1460. data/files/rails/security/beginner/active_record_query_interface.md +12 -0
  1461. data/files/rails/security/beginner/before_action_authenticate.md +14 -0
  1462. data/files/rails/security/beginner/content_security_policy.md +11 -0
  1463. data/files/rails/security/beginner/credentials_secret_key_base.md +15 -0
  1464. data/files/rails/security/beginner/csrf_protection.md +15 -0
  1465. data/files/rails/security/beginner/escape_html_output.md +7 -0
  1466. data/files/rails/security/beginner/filter_sensitive_parameters.md +7 -0
  1467. data/files/rails/security/beginner/force_ssl.md +9 -0
  1468. data/files/rails/security/beginner/has_secure_password.md +17 -0
  1469. data/files/rails/security/beginner/limit_file_uploads.md +21 -0
  1470. data/files/rails/security/beginner/remove_debug_gems.md +13 -0
  1471. data/files/rails/security/beginner/secure_headers.md +11 -0
  1472. data/files/rails/security/beginner/secure_string_comparison.md +11 -0
  1473. data/files/rails/security/beginner/strong_parameters.md +10 -0
  1474. data/files/rails/security/beginner/validate_input_formats.md +9 -0
  1475. data/files/rails/security/expert/active_record_encryption_rotation.md +21 -0
  1476. data/files/rails/security/expert/activestorage_s3_secure_upload.md +25 -0
  1477. data/files/rails/security/expert/arel_safe_dynamic_queries.md +16 -0
  1478. data/files/rails/security/expert/ci_dependency_audit.md +23 -0
  1479. data/files/rails/security/expert/cookie_secret_rotation.md +14 -0
  1480. data/files/rails/security/expert/csp_violation_report_endpoint.md +24 -0
  1481. data/files/rails/security/expert/csp_with_nonces.md +27 -0
  1482. data/files/rails/security/expert/deep_parameter_sanitization.md +34 -0
  1483. data/files/rails/security/expert/disable_xxe_parsing.md +14 -0
  1484. data/files/rails/security/expert/hsts_preload.md +15 -0
  1485. data/files/rails/security/expert/jwt_with_jwks_rotation.md +26 -0
  1486. data/files/rails/security/expert/rack_attack_dynamic_throttles.md +23 -0
  1487. data/files/rails/security/expert/safe_redirect_whitelist.md +26 -0
  1488. data/files/rails/security/expert/strict_cors_dynamic_origins.md +17 -0
  1489. data/files/rails/security/expert/timing_attack_secure_compare.md +14 -0
  1490. data/files/rails/security/middle/active_record_encryption.md +14 -0
  1491. data/files/rails/security/middle/bcrypt_passwords.md +17 -0
  1492. data/files/rails/security/middle/content_security_policy.md +14 -0
  1493. data/files/rails/security/middle/csrf_protection.md +16 -0
  1494. data/files/rails/security/middle/enforce_ssl.md +9 -0
  1495. data/files/rails/security/middle/file_upload_validation.md +20 -0
  1496. data/files/rails/security/middle/output_escaping.md +12 -0
  1497. data/files/rails/security/middle/parameter_filtering.md +8 -0
  1498. data/files/rails/security/middle/rack_attack_rate_limiting.md +18 -0
  1499. data/files/rails/security/middle/secure_cookies_flag.md +8 -0
  1500. data/files/rails/security/middle/secure_redirects.md +15 -0
  1501. data/files/rails/security/middle/security_headers.md +12 -0
  1502. data/files/rails/security/middle/sql_injection_prevention.md +14 -0
  1503. data/files/rails/security/middle/strong_parameters.md +23 -0
  1504. data/files/rails/security/middle/x_frame_options.md +8 -0
  1505. data/files/rails/sessions_and_cookies/advanced/json_hybrid_session_serializer.md +31 -0
  1506. data/files/rails/sessions_and_cookies/advanced/rotate_cookie_encryption_keys.md +25 -0
  1507. data/files/rails/sessions_and_cookies/advanced/sliding_session_expiration.md +40 -0
  1508. data/files/rails/sessions_and_cookies/beginner/setting_basic_cookies_with_expiry.md +13 -0
  1509. data/files/rails/sessions_and_cookies/beginner/using_sessions_to_store_user_data.md +21 -0
  1510. data/files/rails/sessions_and_cookies/beginner/using_signed_cookies_for_tamper_protection.md +14 -0
  1511. data/files/rails/sessions_and_cookies/expert/encrypted_cookie_segmentation.md +37 -0
  1512. data/files/rails/sessions_and_cookies/expert/multi_domain_redis_sessions.md +34 -0
  1513. data/files/rails/sessions_and_cookies/expert/session_secret_rotation.md +20 -0
  1514. data/files/rails/sessions_and_cookies/middle/rolling_session_expiration.md +22 -0
  1515. data/files/rails/sessions_and_cookies/middle/store_cart_in_session.md +21 -0
  1516. data/files/rails/sessions_and_cookies/middle/use_signed_encrypted_cookies.md +16 -0
  1517. data/files/rails/testing/advanced/dynamic_vcr_cassettes.md +22 -0
  1518. data/files/rails/testing/advanced/parallel_test_execution.md +15 -0
  1519. data/files/rails/testing/advanced/property_based_testing_with_rantly.md +18 -0
  1520. data/files/rails/testing/advanced/rspec_profile_slow_specs.md +16 -0
  1521. data/files/rails/testing/advanced/testprof_factorydoctor_integration.md +18 -0
  1522. data/files/rails/testing/beginner/controller_request_spec.md +23 -0
  1523. data/files/rails/testing/beginner/factorybot_basics.md +32 -0
  1524. data/files/rails/testing/beginner/model_validation_spec.md +19 -0
  1525. data/files/rails/testing/beginner/setup_rspec.md +18 -0
  1526. data/files/rails/testing/beginner/using_fixtures.md +30 -0
  1527. data/files/rails/testing/expert/custom_json_schema_matcher.md +35 -0
  1528. data/files/rails/testing/expert/event_driven_testing.md +25 -0
  1529. data/files/rails/testing/expert/mutant_integration.md +46 -0
  1530. data/files/rails/testing/expert/parallel_capybara_tests.md +49 -0
  1531. data/files/rails/testing/expert/test_prof_optimizations.md +46 -0
  1532. data/files/rails/testing/middle/activejob_test_adapter.md +29 -0
  1533. data/files/rails/testing/middle/dry_test_setup_let_subject.md +23 -0
  1534. data/files/rails/testing/middle/file_uploads_fixture.md +18 -0
  1535. data/files/rails/testing/middle/json_api_parsing.md +19 -0
  1536. data/files/rails/testing/middle/reuse_tests_shared_examples.md +24 -0
  1537. data/files/rails/versioning/advanced/dynamic_api_version_constraints.md +46 -0
  1538. data/files/rails/versioning/advanced/paper_trail_advanced_usage.md +45 -0
  1539. data/files/rails/versioning/advanced/serializer_version_selection.md +30 -0
  1540. data/files/rails/versioning/beginner/bundle_update_rails.md +14 -0
  1541. data/files/rails/versioning/beginner/check_current_rails_version.md +20 -0
  1542. data/files/rails/versioning/beginner/lock_rails_version_gemfile.md +16 -0
  1543. data/files/rails/versioning/expert/custom_header_versioning_constraint.md +37 -0
  1544. data/files/rails/versioning/expert/deprecation_middleware_fallback.md +34 -0
  1545. data/files/rails/versioning/expert/versioned_autoload_paths.md +20 -0
  1546. data/files/rails/versioning/middle/versioning_header.md +18 -0
  1547. data/files/rails/versioning/middle/versioning_namespaces.md +19 -0
  1548. data/files/rails/versioning/middle/versioning_route_constraints.md +29 -0
  1549. data/files/rails/views/advanced/capture-safeconcat.md +15 -0
  1550. data/files/rails/views/advanced/cells-gem-usage.md +24 -0
  1551. data/files/rails/views/advanced/custom-form-builder.md +28 -0
  1552. data/files/rails/views/advanced/decorator-pattern-views.md +18 -0
  1553. data/files/rails/views/advanced/dynamic-view-paths.md +17 -0
  1554. data/files/rails/views/advanced/lazy-asset-loading.md +12 -0
  1555. data/files/rails/views/advanced/named-content-slots.md +30 -0
  1556. data/files/rails/views/advanced/nested-fragment-caching.md +21 -0
  1557. data/files/rails/views/advanced/partial-caching-russian-doll.md +13 -0
  1558. data/files/rails/views/advanced/stimulusjs-integration.md +24 -0
  1559. data/files/rails/views/advanced/streaming-template-rendering.md +22 -0
  1560. data/files/rails/views/advanced/viewcomponent-usage.md +27 -0
  1561. data/files/rails/views/beginner/content_for_and_yield.md +19 -0
  1562. data/files/rails/views/beginner/content_tag_usage.md +9 -0
  1563. data/files/rails/views/beginner/escaping_html.md +11 -0
  1564. data/files/rails/views/beginner/forms_form_with.md +19 -0
  1565. data/files/rails/views/beginner/helpers_image_tag.md +8 -0
  1566. data/files/rails/views/beginner/helpers_link_to.md +8 -0
  1567. data/files/rails/views/beginner/layouts_application.md +29 -0
  1568. data/files/rails/views/beginner/partials_basics.md +14 -0
  1569. data/files/rails/views/beginner/partials_collection.md +11 -0
  1570. data/files/rails/views/beginner/partials_with_locals.md +14 -0
  1571. data/files/rails/views/beginner/view_conditionals.md +13 -0
  1572. data/files/rails/views/beginner/view_loops_each.md +12 -0
  1573. data/files/rails/views/expert/asset_pipeline_dynamic_paths.md +16 -0
  1574. data/files/rails/views/expert/cells_gem_decoupling.md +19 -0
  1575. data/files/rails/views/expert/custom_form_builder_dsl.md +24 -0
  1576. data/files/rails/views/expert/i18n_view_precompilation.md +15 -0
  1577. data/files/rails/views/expert/mustache_template_integration.md +20 -0
  1578. data/files/rails/views/expert/nested_fragment_caching_strategies.md +18 -0
  1579. data/files/rails/views/expert/sse_in_views.md +30 -0
  1580. data/files/rails/views/expert/streaming_partials_live.md +26 -0
  1581. data/files/rails/views/expert/template_handler_extension.md +18 -0
  1582. data/files/rails/views/expert/view_rendering_profiler.md +22 -0
  1583. data/files/rails/views/expert/viewcomponent_deep_dive.md +29 -0
  1584. data/files/rails/views/middle/collection_rendering.md +14 -0
  1585. data/files/rails/views/middle/content_for_usage.md +16 -0
  1586. data/files/rails/views/middle/custom_helpers.md +13 -0
  1587. data/files/rails/views/middle/fragment_caching.md +9 -0
  1588. data/files/rails/views/middle/html_tag_helper.md +8 -0
  1589. data/files/rails/views/middle/i18n_in_views.md +6 -0
  1590. data/files/rails/views/middle/inline_form_errors.md +13 -0
  1591. data/files/rails/views/middle/jbuilder_json_views.md +9 -0
  1592. data/files/rails/views/middle/partial_with_locals.md +17 -0
  1593. data/files/rails/views/middle/stimulus_data_attributes.md +9 -0
  1594. data/files/rails/views/middle/turbo_frame_rendering.md +9 -0
  1595. data/files/rails/views/middle/view_component_usage.md +17 -0
  1596. data/files/rails/websockets/advanced/custom_connection_identifiers.md +27 -0
  1597. data/files/rails/websockets/advanced/dynamic_channel_streaming.md +22 -0
  1598. data/files/rails/websockets/advanced/granular_dom_updates.md +43 -0
  1599. data/files/rails/websockets/advanced/reconnect_backoff.md +28 -0
  1600. data/files/rails/websockets/advanced/redis_pubsub_scaling.md +18 -0
  1601. data/files/rails/websockets/beginner/broadcast_from_controller.md +23 -0
  1602. data/files/rails/websockets/beginner/generate_chat_channel.md +19 -0
  1603. data/files/rails/websockets/beginner/model_broadcasting.md +10 -0
  1604. data/files/rails/websockets/beginner/mount_actioncable_in_routes.md +11 -0
  1605. data/files/rails/websockets/beginner/subscribe_in_javascript.md +19 -0
  1606. data/files/rails/websockets/expert/backpressure_throttling.md +35 -0
  1607. data/files/rails/websockets/expert/binary_streaming.md +33 -0
  1608. data/files/rails/websockets/expert/jwt_connection_authentication.md +21 -0
  1609. data/files/rails/websockets/expert/prometheus_monitoring.md +24 -0
  1610. data/files/rails/websockets/expert/redis_sentinel_scaling.md +29 -0
  1611. data/files/rails/websockets/middle/broadcast_to_user.md +23 -0
  1612. data/files/rails/websockets/middle/connection_authorization.md +26 -0
  1613. data/files/rails/websockets/middle/redis_adapter_optimization.md +14 -0
  1614. data/files/rails/websockets/middle/setup_channels_streams.md +26 -0
  1615. data/files/rails/websockets/middle/turbo_streams_integration.md +18 -0
  1616. data/files/ruby/arrays/advanced/balanced_chunk_split.md +16 -0
  1617. data/files/ruby/arrays/advanced/combinatorics_with_arrays.md +13 -0
  1618. data/files/ruby/arrays/advanced/custom_uniq.md +13 -0
  1619. data/files/ruby/arrays/advanced/grouping_with_each_with_object.md +12 -0
  1620. data/files/ruby/arrays/advanced/lazy_enumerators.md +10 -0
  1621. data/files/ruby/arrays/advanced/pattern_matching_arrays.md +15 -0
  1622. data/files/ruby/arrays/advanced/pipeline_with_tap_then.md +12 -0
  1623. data/files/ruby/arrays/advanced/selective_flatten.md +14 -0
  1624. data/files/ruby/arrays/advanced/slice_when_chunking.md +9 -0
  1625. data/files/ruby/arrays/advanced/transpose_jagged_arrays.md +11 -0
  1626. data/files/ruby/arrays/beginner/accessing_elements.md +17 -0
  1627. data/files/ruby/arrays/beginner/adding_elements.md +13 -0
  1628. data/files/ruby/arrays/beginner/array_creation.md +13 -0
  1629. data/files/ruby/arrays/beginner/cleaning_arrays.md +8 -0
  1630. data/files/ruby/arrays/beginner/combining_arrays.md +13 -0
  1631. data/files/ruby/arrays/beginner/destructuring_assignment.md +11 -0
  1632. data/files/ruby/arrays/beginner/iterating_each.md +14 -0
  1633. data/files/ruby/arrays/beginner/map_transform.md +10 -0
  1634. data/files/ruby/arrays/beginner/removing_elements.md +15 -0
  1635. data/files/ruby/arrays/beginner/select_filter.md +9 -0
  1636. data/files/ruby/arrays/expert/binary_packing_with_pack_unpack.md.md +18 -0
  1637. data/files/ruby/arrays/expert/bitset_array_representation.md.md +26 -0
  1638. data/files/ruby/arrays/expert/custom_enumerator_chaining.md.md +24 -0
  1639. data/files/ruby/arrays/expert/deep_freeze_immutable_arrays.md.md +16 -0
  1640. data/files/ruby/arrays/expert/lazy_infinite_enumerator.md.md +17 -0
  1641. data/files/ruby/arrays/expert/memoized_inject.md.md +17 -0
  1642. data/files/ruby/arrays/expert/metaprogramming_dynamic_array_methods.md.md +19 -0
  1643. data/files/ruby/arrays/expert/n_dimensional_array_generator.md.md +15 -0
  1644. data/files/ruby/arrays/expert/parallel_map_with_threads.md.md +34 -0
  1645. data/files/ruby/arrays/expert/refinements_for_array_extensions.md.md +19 -0
  1646. data/files/ruby/arrays/middle/bsearch_usage.md +9 -0
  1647. data/files/ruby/arrays/middle/destructuring_assignment.md +12 -0
  1648. data/files/ruby/arrays/middle/dig_nested_arrays.md +10 -0
  1649. data/files/ruby/arrays/middle/lazy_enumerators.md +11 -0
  1650. data/files/ruby/arrays/middle/map_compact_chain.md +10 -0
  1651. data/files/ruby/arrays/middle/partition_array.md +8 -0
  1652. data/files/ruby/arrays/middle/product_combinations.md +9 -0
  1653. data/files/ruby/arrays/middle/slice_range_negative.md +12 -0
  1654. data/files/ruby/arrays/middle/sum_with_block.md +8 -0
  1655. data/files/ruby/arrays/middle/transpose_matrix.md +12 -0
  1656. data/files/ruby/benchmarking/advanced/compare_algorithms_with_benchmark_ips.md +13 -0
  1657. data/files/ruby/benchmarking/advanced/customize_benchmark_suite_with_metrics.md +19 -0
  1658. data/files/ruby/benchmarking/advanced/disable_gc_for_stable_benchmarks.md +15 -0
  1659. data/files/ruby/benchmarking/advanced/profile_memory_allocations.md +13 -0
  1660. data/files/ruby/benchmarking/advanced/use_warmup_for_consistent_results.md +12 -0
  1661. data/files/ruby/benchmarking/beginner/benchmark_bm.md +16 -0
  1662. data/files/ruby/benchmarking/beginner/benchmark_irb_console.md +10 -0
  1663. data/files/ruby/benchmarking/beginner/benchmark_measure.md +14 -0
  1664. data/files/ruby/benchmarking/beginner/benchmark_realtime.md +13 -0
  1665. data/files/ruby/benchmarking/beginner/benchmark_tms_attributes.md +15 -0
  1666. data/files/ruby/benchmarking/expert/automated_benchmark_reports.md +24 -0
  1667. data/files/ruby/benchmarking/expert/benchmark_ips_config.md +23 -0
  1668. data/files/ruby/benchmarking/expert/c_extension_performance_comparison.md +21 -0
  1669. data/files/ruby/benchmarking/expert/custom_harness_with_warmup.md +38 -0
  1670. data/files/ruby/benchmarking/expert/memory_and_gc_profiling.md +17 -0
  1671. data/files/ruby/benchmarking/middle/benchmark_bm.md +14 -0
  1672. data/files/ruby/benchmarking/middle/benchmark_bmbm.md +12 -0
  1673. data/files/ruby/benchmarking/middle/benchmark_realtime.md +12 -0
  1674. data/files/ruby/benchmarking/middle/benchmark_results_formatting.md +10 -0
  1675. data/files/ruby/benchmarking/middle/benchmark_string_vs_interpolation.md +13 -0
  1676. data/files/ruby/blocks/advanced/benchmark_blocks.md +13 -0
  1677. data/files/ruby/blocks/advanced/destructuring_block_params.md +13 -0
  1678. data/files/ruby/blocks/advanced/fibers_and_blocks.md +21 -0
  1679. data/files/ruby/blocks/advanced/internal_dsl_with_instance_eval.md +34 -0
  1680. data/files/ruby/blocks/advanced/lazy_infinite_streams.md +20 -0
  1681. data/files/ruby/blocks/advanced/method_wrapper_with_blocks.md +28 -0
  1682. data/files/ruby/blocks/advanced/proc_currying_and_composition.md +16 -0
  1683. data/files/ruby/blocks/advanced/retry_with_backoff.md +22 -0
  1684. data/files/ruby/blocks/advanced/trampoline_optimization.md +23 -0
  1685. data/files/ruby/blocks/beginner/block_parameters.md +13 -0
  1686. data/files/ruby/blocks/beginner/block_to_proc_conversion.md +15 -0
  1687. data/files/ruby/blocks/beginner/custom_method_yield.md +18 -0
  1688. data/files/ruby/blocks/beginner/file_resource_management.md +9 -0
  1689. data/files/ruby/blocks/beginner/filtering_select.md +10 -0
  1690. data/files/ruby/blocks/beginner/guarding_with_block_given.md +20 -0
  1691. data/files/ruby/blocks/beginner/hash_each_pair.md +13 -0
  1692. data/files/ruby/blocks/beginner/iterating_each.md +13 -0
  1693. data/files/ruby/blocks/beginner/repeating_times.md +14 -0
  1694. data/files/ruby/blocks/beginner/transforming_map.md +10 -0
  1695. data/files/ruby/blocks/expert/advanced_lazy_enumerator_chaining.md +16 -0
  1696. data/files/ruby/blocks/expert/block_instrumentation_with_prepend.md +26 -0
  1697. data/files/ruby/blocks/expert/capture_and_rebind_block_context.md +19 -0
  1698. data/files/ruby/blocks/expert/context_switch_with_instance_exec.md +21 -0
  1699. data/files/ruby/blocks/expert/curry_and_compose_procs.md +21 -0
  1700. data/files/ruby/blocks/expert/dynamic_define_method_with_block.md +21 -0
  1701. data/files/ruby/blocks/expert/fiber_based_block_control_flow.md +15 -0
  1702. data/files/ruby/blocks/expert/internal_dsl_with_instance_eval.md +34 -0
  1703. data/files/ruby/blocks/expert/partial_application_with_proc.md +12 -0
  1704. data/files/ruby/blocks/expert/trampoline_pattern_with_procs.md +20 -0
  1705. data/files/ruby/blocks/middle/block_to_proc_conversion.md.md +16 -0
  1706. data/files/ruby/blocks/middle/chainable_methods_with_blocks.md.md +31 -0
  1707. data/files/ruby/blocks/middle/check_block_presence.md.md +25 -0
  1708. data/files/ruby/blocks/middle/control_flow_within_blocks.md.md +22 -0
  1709. data/files/ruby/blocks/middle/custom_each_iterator.md.md +27 -0
  1710. data/files/ruby/blocks/middle/default_block_fallback.md.md +16 -0
  1711. data/files/ruby/blocks/middle/dsl_with_instance_eval.md.md +32 -0
  1712. data/files/ruby/blocks/middle/filter_and_map_collections.md.md +16 -0
  1713. data/files/ruby/blocks/middle/multiple_blocks.md.md +22 -0
  1714. data/files/ruby/blocks/middle/yield_with_arguments.md.md +19 -0
  1715. data/files/ruby/classes_and_modules/advanced/alias_chain_prepend.md +24 -0
  1716. data/files/ruby/classes_and_modules/advanced/autoload_modules.md +16 -0
  1717. data/files/ruby/classes_and_modules/advanced/concerns_namespacing.md +28 -0
  1718. data/files/ruby/classes_and_modules/advanced/const_missing_autoload.md +19 -0
  1719. data/files/ruby/classes_and_modules/advanced/dynamic_define_method.md +19 -0
  1720. data/files/ruby/classes_and_modules/advanced/dynamic_delegators.md +31 -0
  1721. data/files/ruby/classes_and_modules/advanced/eigenclass_methods.md +23 -0
  1722. data/files/ruby/classes_and_modules/advanced/extend_class_methods_on_include.md +36 -0
  1723. data/files/ruby/classes_and_modules/advanced/forwardable_mixin.md +29 -0
  1724. data/files/ruby/classes_and_modules/advanced/freeze_module.md +20 -0
  1725. data/files/ruby/classes_and_modules/advanced/inherited_hook_module.md +26 -0
  1726. data/files/ruby/classes_and_modules/advanced/method_missing_proxy.md +32 -0
  1727. data/files/ruby/classes_and_modules/advanced/prepend_vs_include.md +31 -0
  1728. data/files/ruby/classes_and_modules/advanced/self_included_hook.md +28 -0
  1729. data/files/ruby/classes_and_modules/advanced/using_refinements.md +27 -0
  1730. data/files/ruby/classes_and_modules/beginner/attr_accessors.md +15 -0
  1731. data/files/ruby/classes_and_modules/beginner/basic_class_definition.md +9 -0
  1732. data/files/ruby/classes_and_modules/beginner/basic_module_definition.md +11 -0
  1733. data/files/ruby/classes_and_modules/beginner/class_constants.md +12 -0
  1734. data/files/ruby/classes_and_modules/beginner/class_methods.md +13 -0
  1735. data/files/ruby/classes_and_modules/beginner/extend_for_class_methods.md +17 -0
  1736. data/files/ruby/classes_and_modules/beginner/include_mixins.md +17 -0
  1737. data/files/ruby/classes_and_modules/beginner/inheritance_basics.md +19 -0
  1738. data/files/ruby/classes_and_modules/beginner/initialize_method.md +14 -0
  1739. data/files/ruby/classes_and_modules/beginner/inspect_ancestors.md +12 -0
  1740. data/files/ruby/classes_and_modules/beginner/instance_variables.md +15 -0
  1741. data/files/ruby/classes_and_modules/beginner/instantiate_objects.md +8 -0
  1742. data/files/ruby/classes_and_modules/beginner/method_overriding.md +19 -0
  1743. data/files/ruby/classes_and_modules/beginner/module_namespacing.md +15 -0
  1744. data/files/ruby/classes_and_modules/beginner/visibility_control.md +20 -0
  1745. data/files/ruby/classes_and_modules/expert/anonymous_module_isolation.md +18 -0
  1746. data/files/ruby/classes_and_modules/expert/autoload_lazy_loading.md +15 -0
  1747. data/files/ruby/classes_and_modules/expert/concern_pattern_composition.md +23 -0
  1748. data/files/ruby/classes_and_modules/expert/const_missing_dynamic_resolution.md +17 -0
  1749. data/files/ruby/classes_and_modules/expert/dynamic_method_generation.md +19 -0
  1750. data/files/ruby/classes_and_modules/expert/forwardable_delegation.md +21 -0
  1751. data/files/ruby/classes_and_modules/expert/included_class_macros.md +25 -0
  1752. data/files/ruby/classes_and_modules/expert/internal_dsl_included_hook.md +30 -0
  1753. data/files/ruby/classes_and_modules/expert/module_prepend_over_mixin.md +19 -0
  1754. data/files/ruby/classes_and_modules/expert/namespaces_with_module_nesting.md +17 -0
  1755. data/files/ruby/classes_and_modules/expert/prepend_method_wrappers.md +20 -0
  1756. data/files/ruby/classes_and_modules/expert/proxy_method_missing.md +24 -0
  1757. data/files/ruby/classes_and_modules/expert/refinements_scoped_monkey_patches.md +22 -0
  1758. data/files/ruby/classes_and_modules/expert/singleton_class_metaprogramming.md +15 -0
  1759. data/files/ruby/classes_and_modules/expert/tracepoint_execution_tracing.md +16 -0
  1760. data/files/ruby/classes_and_modules/middle/class_eval_vs_module_eval.md +17 -0
  1761. data/files/ruby/classes_and_modules/middle/concern_pattern.md +22 -0
  1762. data/files/ruby/classes_and_modules/middle/const_missing_autoload.md +16 -0
  1763. data/files/ruby/classes_and_modules/middle/dynamic_class_definition.md +16 -0
  1764. data/files/ruby/classes_and_modules/middle/include_vs_extend.md +19 -0
  1765. data/files/ruby/classes_and_modules/middle/mixins_with_callbacks.md +36 -0
  1766. data/files/ruby/classes_and_modules/middle/module_alias_method.md +23 -0
  1767. data/files/ruby/classes_and_modules/middle/module_function_usage.md +26 -0
  1768. data/files/ruby/classes_and_modules/middle/module_nesting_lookup.md +24 -0
  1769. data/files/ruby/classes_and_modules/middle/module_prepend.md +24 -0
  1770. data/files/ruby/classes_and_modules/middle/namespacing_with_modules.md +19 -0
  1771. data/files/ruby/classes_and_modules/middle/refinements_example.md +24 -0
  1772. data/files/ruby/classes_and_modules/middle/self_included_hook.md +27 -0
  1773. data/files/ruby/classes_and_modules/middle/singleton_class_methods.md +16 -0
  1774. data/files/ruby/compression/advanced/creating_tar_gz_archives.md +26 -0
  1775. data/files/ruby/compression/advanced/streaming_large_file_compression.md +21 -0
  1776. data/files/ruby/compression/beginner/compress_with_gzip.md +18 -0
  1777. data/files/ruby/compression/beginner/create_zip_archive.md +16 -0
  1778. data/files/ruby/compression/expert/parallel_zstd_compression_with_ffi.md +77 -0
  1779. data/files/ruby/compression/expert/streaming_chunked_gzip_compression.md +31 -0
  1780. data/files/ruby/compression/middle/file_compression_gzip.md +27 -0
  1781. data/files/ruby/compression/middle/string_compression_deflate.md +17 -0
  1782. data/files/ruby/concurrency_and_mutexes/advanced/condition_variable_coordination.md.md +39 -0
  1783. data/files/ruby/concurrency_and_mutexes/advanced/deadlock_prevention.md.md +48 -0
  1784. data/files/ruby/concurrency_and_mutexes/advanced/double_checked_locking.md.md +33 -0
  1785. data/files/ruby/concurrency_and_mutexes/advanced/monitor_reentrant_mutex.md.md +41 -0
  1786. data/files/ruby/concurrency_and_mutexes/beginner/initialize_mutex_per_resource.md +34 -0
  1787. data/files/ruby/concurrency_and_mutexes/beginner/manual_lock_unlock.md +22 -0
  1788. data/files/ruby/concurrency_and_mutexes/beginner/shared_counter_with_mutex.md +23 -0
  1789. data/files/ruby/concurrency_and_mutexes/beginner/waiting_for_threads_join.md +20 -0
  1790. data/files/ruby/concurrency_and_mutexes/expert/fair_fifo_mutex.md +36 -0
  1791. data/files/ruby/concurrency_and_mutexes/expert/hybrid_spinlock.md +53 -0
  1792. data/files/ruby/concurrency_and_mutexes/expert/lock_striping_mutex_shard.md +34 -0
  1793. data/files/ruby/concurrency_and_mutexes/expert/reentrant_mutex_monitor.md +62 -0
  1794. data/files/ruby/concurrency_and_mutexes/middle/condition_variable_usage.md +37 -0
  1795. data/files/ruby/concurrency_and_mutexes/middle/double_checked_locking.md +29 -0
  1796. data/files/ruby/concurrency_and_mutexes/middle/mutex_synchronize.md +31 -0
  1797. data/files/ruby/concurrency_and_mutexes/middle/mutex_try_lock.md +24 -0
  1798. data/files/ruby/constants/advanced/autoload_with_const_missing.md +22 -0
  1799. data/files/ruby/constants/advanced/dynamic_constants_via_const_set.md +21 -0
  1800. data/files/ruby/constants/advanced/reload_constants_remove_const.md +17 -0
  1801. data/files/ruby/constants/beginner/defining_and_accessing_constants.md +25 -0
  1802. data/files/ruby/constants/beginner/freezing_constants_to_prevent_mutation.md +26 -0
  1803. data/files/ruby/constants/beginner/naming_conventions_for_constants.md +20 -0
  1804. data/files/ruby/constants/expert/custom_const_missing_autoload.md +22 -0
  1805. data/files/ruby/constants/expert/deep_freeze_constants.md +29 -0
  1806. data/files/ruby/constants/expert/dynamic_constant_definition.md +28 -0
  1807. data/files/ruby/constants/middle/config_constants.md +22 -0
  1808. data/files/ruby/constants/middle/freeze_constants.md +21 -0
  1809. data/files/ruby/constants/middle/magic_values_constants.md +34 -0
  1810. data/files/ruby/creating_gems/advanced/cli_plugin_architecture.md +40 -0
  1811. data/files/ruby/creating_gems/advanced/native_extension_setup.md +34 -0
  1812. data/files/ruby/creating_gems/advanced/release_automation.md +37 -0
  1813. data/files/ruby/creating_gems/beginner/build_and_install_gem.md +18 -0
  1814. data/files/ruby/creating_gems/beginner/configure_gemspec.md +12 -0
  1815. data/files/ruby/creating_gems/beginner/initialize_gem_skeleton.md +8 -0
  1816. data/files/ruby/creating_gems/expert/automated_release_pipeline.md +31 -0
  1817. data/files/ruby/creating_gems/expert/custom_gem_scaffold.md +22 -0
  1818. data/files/ruby/creating_gems/expert/native_extension_multi_platform.md +26 -0
  1819. data/files/ruby/creating_gems/middle/embed_usage_examples.md.md +28 -0
  1820. data/files/ruby/creating_gems/middle/initialize_gem_with_bundler.md.md +15 -0
  1821. data/files/ruby/creating_gems/middle/manage_version_metadata.md.md +24 -0
  1822. data/files/ruby/csv/advanced/custom_converters_casting.md +23 -0
  1823. data/files/ruby/csv/advanced/lazy_loading_huge_csv.md +17 -0
  1824. data/files/ruby/csv/advanced/parallel_csv_processing.md +19 -0
  1825. data/files/ruby/csv/advanced/streaming_csv_generation.md +19 -0
  1826. data/files/ruby/csv/beginner/csv_foreach_basics.md +11 -0
  1827. data/files/ruby/csv/beginner/csv_parse_string.md +14 -0
  1828. data/files/ruby/csv/beginner/csv_with_headers.md +11 -0
  1829. data/files/ruby/csv/beginner/csv_write_file.md +13 -0
  1830. data/files/ruby/csv/expert/csv_lazy_streaming.md +15 -0
  1831. data/files/ruby/csv/expert/csv_parallel_processing.md +21 -0
  1832. data/files/ruby/csv/expert/csv_random_access_indexing.md +21 -0
  1833. data/files/ruby/csv/expert/csv_schema_structs.md +21 -0
  1834. data/files/ruby/csv/middle/custom_csv_writing.md +15 -0
  1835. data/files/ruby/csv/middle/efficient_streaming.md +12 -0
  1836. data/files/ruby/csv/middle/headers_and_converters.md +17 -0
  1837. data/files/ruby/csv/middle/resilient_parsing.md +18 -0
  1838. data/files/ruby/data_types/advanced/bitwise_operations.md +26 -0
  1839. data/files/ruby/data_types/advanced/deep_default_hash.md +16 -0
  1840. data/files/ruby/data_types/advanced/lazy_enumerators.md +18 -0
  1841. data/files/ruby/data_types/advanced/pattern_matching.md +22 -0
  1842. data/files/ruby/data_types/advanced/scoped_refinements.md +31 -0
  1843. data/files/ruby/data_types/beginner/ruby_arrays.md +16 -0
  1844. data/files/ruby/data_types/beginner/ruby_hashes.md +16 -0
  1845. data/files/ruby/data_types/beginner/ruby_numbers.md +14 -0
  1846. data/files/ruby/data_types/beginner/ruby_strings.md +11 -0
  1847. data/files/ruby/data_types/beginner/ruby_symbols.md +15 -0
  1848. data/files/ruby/data_types/expert/custom_numeric_coercion.md +36 -0
  1849. data/files/ruby/data_types/expert/deep_immutable_structures.md +22 -0
  1850. data/files/ruby/data_types/expert/high_precision_arithmetic.md +18 -0
  1851. data/files/ruby/data_types/expert/lazy_infinite_sequences.md +24 -0
  1852. data/files/ruby/data_types/expert/pattern_matching_hashes.md +22 -0
  1853. data/files/ruby/data_types/middle/array_destructuring_splat.md +22 -0
  1854. data/files/ruby/data_types/middle/frozen_string_literals.md +20 -0
  1855. data/files/ruby/data_types/middle/hash_default_proc.md +19 -0
  1856. data/files/ruby/data_types/middle/optimize_hash_keys.md +17 -0
  1857. data/files/ruby/data_types/middle/range_iteration_step.md +18 -0
  1858. data/files/ruby/date_time/advanced/business_days_enumeration.md +18 -0
  1859. data/files/ruby/date_time/advanced/custom_date_parsing.md +16 -0
  1860. data/files/ruby/date_time/advanced/high_precision_arithmetic.md +15 -0
  1861. data/files/ruby/date_time/advanced/iso8601_duration_handling.md +20 -0
  1862. data/files/ruby/date_time/advanced/timezone_conversion.md +17 -0
  1863. data/files/ruby/date_time/beginner/date_arithmetic.md +15 -0
  1864. data/files/ruby/date_time/beginner/formatting_dates_times.md +18 -0
  1865. data/files/ruby/date_time/beginner/getting_current_date_time.md +15 -0
  1866. data/files/ruby/date_time/beginner/handling_time_zones.md +17 -0
  1867. data/files/ruby/date_time/beginner/parsing_date_strings.md +15 -0
  1868. data/files/ruby/date_time/expert/astronomical_julian_day_conversion.md +18 -0
  1869. data/files/ruby/date_time/expert/business_calendar_refinement.md +31 -0
  1870. data/files/ruby/date_time/expert/high_res_monotonic_timing.md +16 -0
  1871. data/files/ruby/date_time/expert/leap_second_wrapper.md +36 -0
  1872. data/files/ruby/date_time/expert/tzinfo_caching.md +23 -0
  1873. data/files/ruby/date_time/middle/business_day_calculation.md +20 -0
  1874. data/files/ruby/date_time/middle/calculate_durations.md +16 -0
  1875. data/files/ruby/date_time/middle/format_with_strftime.md +13 -0
  1876. data/files/ruby/date_time/middle/handle_time_zones.md +17 -0
  1877. data/files/ruby/date_time/middle/parse_custom_strptime.md +15 -0
  1878. data/files/ruby/define_method/advanced/custom_visibility_hooks.md +39 -0
  1879. data/files/ruby/define_method/advanced/dsl_scope_capture.md +28 -0
  1880. data/files/ruby/define_method/advanced/dynamic_method_proxy.md +24 -0
  1881. data/files/ruby/define_method/advanced/memoization_via_define_method.md +37 -0
  1882. data/files/ruby/define_method/beginner/attribute_getter_setter.md +26 -0
  1883. data/files/ruby/define_method/beginner/capture_external_variable.md +21 -0
  1884. data/files/ruby/define_method/beginner/dynamic_method_creation.md +17 -0
  1885. data/files/ruby/define_method/beginner/method_with_arguments.md +23 -0
  1886. data/files/ruby/define_method/expert/dynamic_api_client_generator.md +25 -0
  1887. data/files/ruby/define_method/expert/fluent_dsl_builder.md +30 -0
  1888. data/files/ruby/define_method/expert/hot_swappable_methods.md +18 -0
  1889. data/files/ruby/define_method/expert/preserve_method_metadata.md +22 -0
  1890. data/files/ruby/define_method/middle/dynamic_accessors.md +22 -0
  1891. data/files/ruby/define_method/middle/dynamic_delegation.md +24 -0
  1892. data/files/ruby/define_method/middle/method_wrapper_logging.md +29 -0
  1893. data/files/ruby/define_method/middle/validation_helpers.md +43 -0
  1894. data/files/ruby/directory_management/advanced/atomic_directory_swap.md +32 -0
  1895. data/files/ruby/directory_management/advanced/recursive_traversal_find.md +29 -0
  1896. data/files/ruby/directory_management/beginner/dir_list_and_filter.md +23 -0
  1897. data/files/ruby/directory_management/beginner/recursive_directory_creation.md +17 -0
  1898. data/files/ruby/directory_management/expert/cross_platform_realtime_dir_watcher.md +65 -0
  1899. data/files/ruby/directory_management/expert/parallel_lazy_directory_traversal.md +37 -0
  1900. data/files/ruby/directory_management/middle/pattern_based_traversal_with_pathname.md +24 -0
  1901. data/files/ruby/directory_management/middle/safe_directory_creation_with_fileutils.md +19 -0
  1902. data/files/ruby/enumerables/advanced/chunk_while_dynamic_grouping.md +9 -0
  1903. data/files/ruby/enumerables/advanced/each_with_object_stateful_accumulation.md +14 -0
  1904. data/files/ruby/enumerables/advanced/external_iterators_enum_for.md +15 -0
  1905. data/files/ruby/enumerables/advanced/lazy_enumerators_infinite_streams.md +16 -0
  1906. data/files/ruby/enumerables/advanced/slice_when_custom_breaks.md +9 -0
  1907. data/files/ruby/enumerables/advanced/zip_lazy_pattern_matching.md +19 -0
  1908. data/files/ruby/enumerables/beginner/accumulate_with_inject.md +16 -0
  1909. data/files/ruby/enumerables/beginner/exclude_with_reject.md +13 -0
  1910. data/files/ruby/enumerables/beginner/filter_with_select.md +15 -0
  1911. data/files/ruby/enumerables/beginner/find_with_detect.md +15 -0
  1912. data/files/ruby/enumerables/beginner/iterate_with_each.md +12 -0
  1913. data/files/ruby/enumerables/beginner/transform_with_map.md +13 -0
  1914. data/files/ruby/enumerables/expert/custom_enumerable_deep_traversal.md +27 -0
  1915. data/files/ruby/enumerables/expert/dynamic_slice_when.md +14 -0
  1916. data/files/ruby/enumerables/expert/fiber_based_enumerator.md +17 -0
  1917. data/files/ruby/enumerables/expert/infinite_sequence_produce.md +11 -0
  1918. data/files/ruby/enumerables/expert/lazy_pipeline_scaling.md +15 -0
  1919. data/files/ruby/enumerables/expert/merge_infinite_streams.md +21 -0
  1920. data/files/ruby/enumerables/middle/each_with_object_hash_building.md +11 -0
  1921. data/files/ruby/enumerables/middle/flat_map_group_by_transform.md +16 -0
  1922. data/files/ruby/enumerables/middle/lazy_chaining_enumerables.md +14 -0
  1923. data/files/ruby/enumerables/middle/slice_before_chunk_while.md +14 -0
  1924. data/files/ruby/enumerables/middle/sum_with_block.md +12 -0
  1925. data/files/ruby/enumerables/middle/tally_element_counts.md +9 -0
  1926. data/files/ruby/exceptions/advanced/custom_exception_hierarchy.md +19 -0
  1927. data/files/ruby/exceptions/advanced/exception_cause_chaining.md +18 -0
  1928. data/files/ruby/exceptions/advanced/exception_notification_integration.md +19 -0
  1929. data/files/ruby/exceptions/advanced/retry_with_exponential_backoff.md +18 -0
  1930. data/files/ruby/exceptions/beginner/ensure_usage.md +11 -0
  1931. data/files/ruby/exceptions/beginner/raising_exceptions.md +29 -0
  1932. data/files/ruby/exceptions/beginner/rescue_basic.md +10 -0
  1933. data/files/ruby/exceptions/beginner/rescue_specific.md +12 -0
  1934. data/files/ruby/exceptions/expert/custom_error_with_metadata.md +32 -0
  1935. data/files/ruby/exceptions/expert/exception_wrapping_with_cause.md +24 -0
  1936. data/files/ruby/exceptions/expert/exponential_backoff_retry_logic.md +29 -0
  1937. data/files/ruby/exceptions/expert/tracepoint_exception_monitoring.md +21 -0
  1938. data/files/ruby/exceptions/middle/ensure_for_cleanup.md +17 -0
  1939. data/files/ruby/exceptions/middle/inline_rescue_in_method.md +17 -0
  1940. data/files/ruby/exceptions/middle/rescue_specific_exceptions.md +16 -0
  1941. data/files/ruby/exceptions/middle/retry_transient_errors.md +20 -0
  1942. data/files/ruby/fibers/advanced/fiber_async_io.md +33 -0
  1943. data/files/ruby/fibers/advanced/fiber_data_pipeline.md +25 -0
  1944. data/files/ruby/fibers/advanced/fiber_enumerator_generator.md +20 -0
  1945. data/files/ruby/fibers/advanced/fiber_error_supervision.md +32 -0
  1946. data/files/ruby/fibers/beginner/creating_and_resuming.md +17 -0
  1947. data/files/ruby/fibers/beginner/passing_values_between_fiber.md +14 -0
  1948. data/files/ruby/fibers/beginner/simple_enumerator_with_fiber.md +15 -0
  1949. data/files/ruby/fibers/beginner/what_is_a_fiber.md +16 -0
  1950. data/files/ruby/fibers/expert/async_gem_integration.md +22 -0
  1951. data/files/ruby/fibers/expert/async_io_multiplexing.md +43 -0
  1952. data/files/ruby/fibers/expert/cooperative_fiber_scheduler.md +31 -0
  1953. data/files/ruby/fibers/expert/fiber_lazy_enumerator.md +24 -0
  1954. data/files/ruby/fibers/middle/fiber_arguments.md +19 -0
  1955. data/files/ruby/fibers/middle/fiber_basic_usage.md +15 -0
  1956. data/files/ruby/fibers/middle/fiber_cooperative_scheduler.md +31 -0
  1957. data/files/ruby/fibers/middle/fiber_to_enumerator.md +19 -0
  1958. data/files/ruby/file_io/advanced/atomic_file_write.md +23 -0
  1959. data/files/ruby/file_io/advanced/chunked_buffer_reading.md +15 -0
  1960. data/files/ruby/file_io/advanced/encoding_transcoding.md +14 -0
  1961. data/files/ruby/file_io/advanced/fcntl_flags.md +19 -0
  1962. data/files/ruby/file_io/advanced/memory_mapped_file.md +17 -0
  1963. data/files/ruby/file_io/advanced/nonblocking_io_select.md +22 -0
  1964. data/files/ruby/file_io/advanced/tail_f_implementation.md +19 -0
  1965. data/files/ruby/file_io/advanced/zero_copy_io.md +13 -0
  1966. data/files/ruby/file_io/beginner/append_to_file.md +9 -0
  1967. data/files/ruby/file_io/beginner/check_file_existence.md +11 -0
  1968. data/files/ruby/file_io/beginner/io_read_write_shortcuts.md +8 -0
  1969. data/files/ruby/file_io/beginner/iterate_lines_foreach.md +9 -0
  1970. data/files/ruby/file_io/beginner/join_file_paths.md +10 -0
  1971. data/files/ruby/file_io/beginner/read_with_block.md +10 -0
  1972. data/files/ruby/file_io/beginner/readlines_to_array.md +10 -0
  1973. data/files/ruby/file_io/beginner/write_with_block.md +10 -0
  1974. data/files/ruby/file_io/expert/async_io_eventmachine.md +22 -0
  1975. data/files/ruby/file_io/expert/atomic_file_write.md +24 -0
  1976. data/files/ruby/file_io/expert/descriptor_manipulation.md +25 -0
  1977. data/files/ruby/file_io/expert/memory_map_file.md +20 -0
  1978. data/files/ruby/file_io/expert/nonblocking_file_io.md +23 -0
  1979. data/files/ruby/file_io/expert/sparse_file_manipulation.md +22 -0
  1980. data/files/ruby/file_io/expert/streaming_encryption.md +25 -0
  1981. data/files/ruby/file_io/expert/zero_copy_sendfile.md +17 -0
  1982. data/files/ruby/file_io/middle/chunked_read.md.md +11 -0
  1983. data/files/ruby/file_io/middle/efficient_file_copy.md.md +8 -0
  1984. data/files/ruby/file_io/middle/encoding_handling.md.md +10 -0
  1985. data/files/ruby/file_io/middle/file_locking.md.md +10 -0
  1986. data/files/ruby/file_io/middle/file_open_block.md.md +10 -0
  1987. data/files/ruby/file_io/middle/line_by_line_processing.md.md +10 -0
  1988. data/files/ruby/file_io/middle/tempfile_usage.md.md +14 -0
  1989. data/files/ruby/file_io/middle/write_append_modes.md.md +14 -0
  1990. data/files/ruby/hashes/advanced/auto_vivification.md +12 -0
  1991. data/files/ruby/hashes/advanced/compact_and_filter_map.md +17 -0
  1992. data/files/ruby/hashes/advanced/fetch_with_block_defaults.md +20 -0
  1993. data/files/ruby/hashes/advanced/grouping_with_each_with_object.md +22 -0
  1994. data/files/ruby/hashes/advanced/hash_pattern_matching.md +19 -0
  1995. data/files/ruby/hashes/advanced/hash_to_proc.md +19 -0
  1996. data/files/ruby/hashes/advanced/indifferent_access.md +13 -0
  1997. data/files/ruby/hashes/advanced/nested_transform_keys.md +21 -0
  1998. data/files/ruby/hashes/advanced/recursive_deep_merge.md +29 -0
  1999. data/files/ruby/hashes/advanced/slice_and_except.md +13 -0
  2000. data/files/ruby/hashes/beginner/accessing_hash_values.md +13 -0
  2001. data/files/ruby/hashes/beginner/array_to_hash_conversion.md +12 -0
  2002. data/files/ruby/hashes/beginner/checking_key_existence.md +12 -0
  2003. data/files/ruby/hashes/beginner/creating_hashes.md +12 -0
  2004. data/files/ruby/hashes/beginner/hash_default_values.md +9 -0
  2005. data/files/ruby/hashes/beginner/iterating_over_hash.md +17 -0
  2006. data/files/ruby/hashes/beginner/merging_hashes.md +11 -0
  2007. data/files/ruby/hashes/beginner/selecting_hash_entries.md +8 -0
  2008. data/files/ruby/hashes/beginner/symbol_vs_string_keys.md +11 -0
  2009. data/files/ruby/hashes/beginner/working_with_nested_hashes.md +16 -0
  2010. data/files/ruby/hashes/expert/advanced_keyword_arg_forwarding.md +22 -0
  2011. data/files/ruby/hashes/expert/auto_vivification_nested_hashes.md +15 -0
  2012. data/files/ruby/hashes/expert/chaining_transform_keys_values.md +22 -0
  2013. data/files/ruby/hashes/expert/custom_deep_merge_with_conflicts.md +29 -0
  2014. data/files/ruby/hashes/expert/dynamic_struct_from_hash.md +22 -0
  2015. data/files/ruby/hashes/expert/identity_vs_equality_key_comparison.md +15 -0
  2016. data/files/ruby/hashes/expert/immutable_persistent_hash.md +19 -0
  2017. data/files/ruby/hashes/expert/lazy_enumeration_hash_processing.md +17 -0
  2018. data/files/ruby/hashes/expert/pattern_matching_nested_hashes.md +21 -0
  2019. data/files/ruby/hashes/expert/refinements_safe_hash_extensions.md +22 -0
  2020. data/files/ruby/hashes/middle/build_hash_each_with_object.md +12 -0
  2021. data/files/ruby/hashes/middle/compact_hash.md +9 -0
  2022. data/files/ruby/hashes/middle/fetch_with_default_block.md +22 -0
  2023. data/files/ruby/hashes/middle/invert_handle_duplicates.md +16 -0
  2024. data/files/ruby/hashes/middle/merge_with_block.md +20 -0
  2025. data/files/ruby/hashes/middle/select_and_reject.md +13 -0
  2026. data/files/ruby/hashes/middle/slice_hash.md +10 -0
  2027. data/files/ruby/hashes/middle/sort_by_key_or_value.md +14 -0
  2028. data/files/ruby/hashes/middle/transform_keys.md +10 -0
  2029. data/files/ruby/hashes/middle/transform_values.md +14 -0
  2030. data/files/ruby/irb/advanced/conditional_irbrc.md +16 -0
  2031. data/files/ruby/irb/advanced/custom_irb_prompt.md +21 -0
  2032. data/files/ruby/irb/advanced/custom_key_bindings.md +12 -0
  2033. data/files/ruby/irb/advanced/define_magic_commands.md +16 -0
  2034. data/files/ruby/irb/advanced/enable_auto_completion.md +14 -0
  2035. data/files/ruby/irb/advanced/integrate_awesome_print.md +13 -0
  2036. data/files/ruby/irb/advanced/multi_irb_sessions.md +10 -0
  2037. data/files/ruby/irb/advanced/persist_command_history.md +11 -0
  2038. data/files/ruby/irb/advanced/save_load_workspace.md +13 -0
  2039. data/files/ruby/irb/advanced/use_pry_shell.md +15 -0
  2040. data/files/ruby/irb/beginner/access_ruby_docs.md +9 -0
  2041. data/files/ruby/irb/beginner/exit_irb.md +8 -0
  2042. data/files/ruby/irb/beginner/grep_methods.md +9 -0
  2043. data/files/ruby/irb/beginner/history_navigation.md +9 -0
  2044. data/files/ruby/irb/beginner/launch_irb.md +13 -0
  2045. data/files/ruby/irb/beginner/list_methods.md +9 -0
  2046. data/files/ruby/irb/beginner/load_ruby_file.md +9 -0
  2047. data/files/ruby/irb/beginner/multiline_code.md +10 -0
  2048. data/files/ruby/irb/beginner/persist_history.md +12 -0
  2049. data/files/ruby/irb/beginner/shell_commands.md +11 -0
  2050. data/files/ruby/irb/expert/benchmark_integration.md +15 -0
  2051. data/files/ruby/irb/expert/context_switching.md +21 -0
  2052. data/files/ruby/irb/expert/dsl_auto_completion.md +23 -0
  2053. data/files/ruby/irb/expert/dynamic_git_prompt.md +17 -0
  2054. data/files/ruby/irb/expert/history_incremental_search.md +15 -0
  2055. data/files/ruby/irb/expert/input_preprocessor.md +19 -0
  2056. data/files/ruby/irb/expert/magic_commands_extension.md +21 -0
  2057. data/files/ruby/irb/expert/programmatic_irb_control.md +18 -0
  2058. data/files/ruby/irb/expert/sandboxed_session.md +17 -0
  2059. data/files/ruby/irb/expert/threaded_debugging.md +18 -0
  2060. data/files/ruby/irb/middle/auto_require_gems.md +8 -0
  2061. data/files/ruby/irb/middle/awesome_print_output.md +13 -0
  2062. data/files/ruby/irb/middle/binding_irb_hook.md +12 -0
  2063. data/files/ruby/irb/middle/custom_inspector.md +8 -0
  2064. data/files/ruby/irb/middle/custom_irb_commands.md +12 -0
  2065. data/files/ruby/irb/middle/custom_prompt.md +13 -0
  2066. data/files/ruby/irb/middle/pager_output.md +8 -0
  2067. data/files/ruby/irb/middle/persistent_history.md +8 -0
  2068. data/files/ruby/irb/middle/readline_key_bindings.md +9 -0
  2069. data/files/ruby/irb/middle/tab_completion.md +7 -0
  2070. data/files/ruby/json/advanced/custom_generator_state_for_json.md +27 -0
  2071. data/files/ruby/json/advanced/high_performance_parsing_with_oj.md +21 -0
  2072. data/files/ruby/json/advanced/streaming_large_json_with_oj_schandler.md +47 -0
  2073. data/files/ruby/json/beginner/json_file_io.md +17 -0
  2074. data/files/ruby/json/beginner/json_generate_basics.md +17 -0
  2075. data/files/ruby/json/beginner/json_parse_basics.md +19 -0
  2076. data/files/ruby/json/expert/custom_json_serialization_for_complex_objects.md +53 -0
  2077. data/files/ruby/json/expert/high_performance_json_parsing_with_oj.md +28 -0
  2078. data/files/ruby/json/expert/streaming_json_parsing_with_sc_handler.md +62 -0
  2079. data/files/ruby/json/middle/customize_model_serialization.md +25 -0
  2080. data/files/ruby/json/middle/json_schema_validation.md +27 -0
  2081. data/files/ruby/json/middle/streaming_json_parsing.md +29 -0
  2082. data/files/ruby/logging/advanced/custom_log_formatter_with_metadata.md +29 -0
  2083. data/files/ruby/logging/advanced/silence_and_tagged_logging.md +20 -0
  2084. data/files/ruby/logging/advanced/structured_logging_with_lograge.md +30 -0
  2085. data/files/ruby/logging/beginner/basic_logger_setup.md +14 -0
  2086. data/files/ruby/logging/beginner/log_rotation.md +11 -0
  2087. data/files/ruby/logging/beginner/understanding_log_levels.md +14 -0
  2088. data/files/ruby/logging/expert/async_non_blocking_logger.md +46 -0
  2089. data/files/ruby/logging/expert/correlation_id_propagation.md +38 -0
  2090. data/files/ruby/logging/expert/structured_json_logging.md +33 -0
  2091. data/files/ruby/logging/middle/custom_logger_formatter.md +20 -0
  2092. data/files/ruby/logging/middle/json_structured_logging.md +20 -0
  2093. data/files/ruby/logging/middle/tagged_logging.md +15 -0
  2094. data/files/ruby/marshal/advanced/custom_dump_load_versioning.md +32 -0
  2095. data/files/ruby/marshal/advanced/selective_ivars_with_marshal_dump.md +35 -0
  2096. data/files/ruby/marshal/advanced/streaming_with_compression.md +21 -0
  2097. data/files/ruby/marshal/beginner/basic_marshal_dump_load.md +13 -0
  2098. data/files/ruby/marshal/beginner/marshal_caching_simple_objects.md +17 -0
  2099. data/files/ruby/marshal/beginner/marshal_with_files.md +16 -0
  2100. data/files/ruby/marshal/expert/marshal_custom_versioning.md +47 -0
  2101. data/files/ruby/marshal/expert/marshal_secure_compression.md +40 -0
  2102. data/files/ruby/marshal/expert/marshal_streaming_chunks.md +30 -0
  2103. data/files/ruby/marshal/middle/compress_marshal_data.md +16 -0
  2104. data/files/ruby/marshal/middle/custom_marshal_dump_load.md +29 -0
  2105. data/files/ruby/marshal/middle/deep_clone_objects.md +11 -0
  2106. data/files/ruby/matrix/advanced/lu_caching_solver.md +53 -0
  2107. data/files/ruby/matrix/advanced/numo_linalg_svd.md +25 -0
  2108. data/files/ruby/matrix/advanced/rational_exact_arithmetic.md +19 -0
  2109. data/files/ruby/matrix/beginner/matrix_basic_operations.md +16 -0
  2110. data/files/ruby/matrix/beginner/matrix_element_access.md +22 -0
  2111. data/files/ruby/matrix/beginner/matrix_initialization.md +14 -0
  2112. data/files/ruby/matrix/expert/cblas_dgemm_acceleration.md +52 -0
  2113. data/files/ruby/matrix/expert/sparse_matrix_lazy_enumerator.md +57 -0
  2114. data/files/ruby/matrix/expert/strassen_matrix_multiplication.md +75 -0
  2115. data/files/ruby/matrix/middle/matrix_basic_operations.md +15 -0
  2116. data/files/ruby/matrix/middle/matrix_enumeration_transform.md +20 -0
  2117. data/files/ruby/matrix/middle/matrix_transpose_and_diagonal.md +25 -0
  2118. data/files/ruby/metaprogramming/advanced/alias_method_chain_emulation.md +25 -0
  2119. data/files/ruby/metaprogramming/advanced/attribute_query_methods.md +13 -0
  2120. data/files/ruby/metaprogramming/advanced/class_eval_with_context.md +17 -0
  2121. data/files/ruby/metaprogramming/advanced/const_missing_autoload.md +16 -0
  2122. data/files/ruby/metaprogramming/advanced/dsl_instance_eval.md +26 -0
  2123. data/files/ruby/metaprogramming/advanced/dynamic_define_method.md +14 -0
  2124. data/files/ruby/metaprogramming/advanced/dynamic_delegator_generation.md +17 -0
  2125. data/files/ruby/metaprogramming/advanced/dynamic_singleton_methods.md +11 -0
  2126. data/files/ruby/metaprogramming/advanced/eigenclass_singleton_methods.md +13 -0
  2127. data/files/ruby/metaprogramming/advanced/macro_with_included_hook.md +21 -0
  2128. data/files/ruby/metaprogramming/advanced/method_missing_dispatch.md +18 -0
  2129. data/files/ruby/metaprogramming/advanced/module_prepend_hooks.md +19 -0
  2130. data/files/ruby/metaprogramming/advanced/runtime_refinements.md +20 -0
  2131. data/files/ruby/metaprogramming/advanced/tracepoint_monitoring.md +12 -0
  2132. data/files/ruby/metaprogramming/advanced/unbound_method_binding.md +15 -0
  2133. data/files/ruby/metaprogramming/beginner/alias_method_usage.md +20 -0
  2134. data/files/ruby/metaprogramming/beginner/attr_accessor_metaprog.md +14 -0
  2135. data/files/ruby/metaprogramming/beginner/class_eval_usage.md +16 -0
  2136. data/files/ruby/metaprogramming/beginner/class_inherited_hook.md +13 -0
  2137. data/files/ruby/metaprogramming/beginner/const_missing_lazy_loading.md +20 -0
  2138. data/files/ruby/metaprogramming/beginner/define_method_dynamic.md +17 -0
  2139. data/files/ruby/metaprogramming/beginner/define_singleton_method_usage.md +12 -0
  2140. data/files/ruby/metaprogramming/beginner/dynamic_send.md +16 -0
  2141. data/files/ruby/metaprogramming/beginner/eval_usage.md +9 -0
  2142. data/files/ruby/metaprogramming/beginner/instance_eval_usage.md +14 -0
  2143. data/files/ruby/metaprogramming/beginner/method_missing_basics.md +28 -0
  2144. data/files/ruby/metaprogramming/beginner/module_included_hook.md +23 -0
  2145. data/files/ruby/metaprogramming/beginner/respond_to_missing.md +24 -0
  2146. data/files/ruby/metaprogramming/beginner/simple_dsl_blocks.md +31 -0
  2147. data/files/ruby/metaprogramming/expert/advanced_method_missing_respond_to.md +32 -0
  2148. data/files/ruby/metaprogramming/expert/chainable_dsl_with_lambdas.md +26 -0
  2149. data/files/ruby/metaprogramming/expert/compile_time_code_generation_with_eval.md +24 -0
  2150. data/files/ruby/metaprogramming/expert/composable_concerns_like_active_support.md +37 -0
  2151. data/files/ruby/metaprogramming/expert/dsl_instance_eval_class_eval.md +28 -0
  2152. data/files/ruby/metaprogramming/expert/dynamic_constant_loading_with_const_missing.md +21 -0
  2153. data/files/ruby/metaprogramming/expert/dynamic_define_method_with_closure.md +23 -0
  2154. data/files/ruby/metaprogramming/expert/eigenclass_singleton_method_customization.md +22 -0
  2155. data/files/ruby/metaprogramming/expert/module_prepend_for_instrumentation.md +28 -0
  2156. data/files/ruby/metaprogramming/expert/performance_measurement_proxy.md +29 -0
  2157. data/files/ruby/metaprogramming/expert/proxy_pattern_with_basicobject.md +24 -0
  2158. data/files/ruby/metaprogramming/expert/runtime_extension_with_fiddle.md +16 -0
  2159. data/files/ruby/metaprogramming/expert/runtime_instrumentation_tracepoint.md +21 -0
  2160. data/files/ruby/metaprogramming/expert/scoped_monkey_patching_with_refinements.md +28 -0
  2161. data/files/ruby/metaprogramming/expert/unbound_method_rebinding.md +22 -0
  2162. data/files/ruby/metaprogramming/middle/alias_method_wrapping.md +22 -0
  2163. data/files/ruby/metaprogramming/middle/ar_dynamic_scopes.md +15 -0
  2164. data/files/ruby/metaprogramming/middle/auto_timestamp_module.md +27 -0
  2165. data/files/ruby/metaprogramming/middle/class_eval_dynamic_methods.md +15 -0
  2166. data/files/ruby/metaprogramming/middle/const_missing_autoload.md +20 -0
  2167. data/files/ruby/metaprogramming/middle/dsl_with_instance_eval.md +28 -0
  2168. data/files/ruby/metaprogramming/middle/dynamic_attr_accessors.md +26 -0
  2169. data/files/ruby/metaprogramming/middle/dynamic_callbacks.md +43 -0
  2170. data/files/ruby/metaprogramming/middle/dynamic_delegation_forwardable.md +24 -0
  2171. data/files/ruby/metaprogramming/middle/dynamic_method_define.md +16 -0
  2172. data/files/ruby/metaprogramming/middle/dynamic_validation_macros.md +43 -0
  2173. data/files/ruby/metaprogramming/middle/fluent_interface_chaining.md +26 -0
  2174. data/files/ruby/metaprogramming/middle/hook_method_added.md +37 -0
  2175. data/files/ruby/metaprogramming/middle/method_missing_fallback.md +26 -0
  2176. data/files/ruby/metaprogramming/middle/scoped_refinements.md +24 -0
  2177. data/files/ruby/method_missing/advanced/caching_missing_methods.md +31 -0
  2178. data/files/ruby/method_missing/advanced/dsl_method_recording.md +28 -0
  2179. data/files/ruby/method_missing/advanced/lazy_association_proxy.md +36 -0
  2180. data/files/ruby/method_missing/advanced/rest_api_client_dynamic.md +33 -0
  2181. data/files/ruby/method_missing/beginner/method_missing_basic_setup.md +15 -0
  2182. data/files/ruby/method_missing/beginner/method_missing_dynamic_attributes.md +30 -0
  2183. data/files/ruby/method_missing/beginner/method_missing_forward_to_super.md +23 -0
  2184. data/files/ruby/method_missing/beginner/method_missing_respond_to.md +24 -0
  2185. data/files/ruby/method_missing/expert/advanced_signature_handling.md +31 -0
  2186. data/files/ruby/method_missing/expert/caching_method_missing_responses.md +37 -0
  2187. data/files/ruby/method_missing/expert/dynamic_attributes_dsl.md +32 -0
  2188. data/files/ruby/method_missing/expert/transparent_proxy_forwarding.md +25 -0
  2189. data/files/ruby/method_missing/middle/dsl_fallback_methods.md +30 -0
  2190. data/files/ruby/method_missing/middle/dynamic_delegation.md +25 -0
  2191. data/files/ruby/method_missing/middle/forwarding_proxy.md +27 -0
  2192. data/files/ruby/method_missing/middle/logging_undefined_calls.md +20 -0
  2193. data/files/ruby/methods/advanced/curry_and_method_to_proc.md +14 -0
  2194. data/files/ruby/methods/advanced/dynamic_define_method.md +16 -0
  2195. data/files/ruby/methods/advanced/forwarding_arguments.md +20 -0
  2196. data/files/ruby/methods/advanced/memoization_with_arguments.md +18 -0
  2197. data/files/ruby/methods/advanced/method_missing_respond_to_missing.md +24 -0
  2198. data/files/ruby/methods/advanced/method_object_dispatch.md +17 -0
  2199. data/files/ruby/methods/advanced/prepend_for_method_wrapping.md +25 -0
  2200. data/files/ruby/methods/advanced/refinements_local_method_override.md +17 -0
  2201. data/files/ruby/methods/beginner/default_parameters.md +11 -0
  2202. data/files/ruby/methods/beginner/defining_methods.md +13 -0
  2203. data/files/ruby/methods/beginner/implicit_and_explicit_return.md +11 -0
  2204. data/files/ruby/methods/beginner/keyword_arguments.md +11 -0
  2205. data/files/ruby/methods/beginner/method_arguments.md +11 -0
  2206. data/files/ruby/methods/beginner/method_chaining.md +8 -0
  2207. data/files/ruby/methods/beginner/splat_arguments.md +11 -0
  2208. data/files/ruby/methods/beginner/using_blocks.md +14 -0
  2209. data/files/ruby/methods/expert/currying_partial_application.md +18 -0
  2210. data/files/ruby/methods/expert/delegation_with_forwardable.md +41 -0
  2211. data/files/ruby/methods/expert/dynamic_define_method.md +21 -0
  2212. data/files/ruby/methods/expert/method_hooks_metaprogramming.md +32 -0
  2213. data/files/ruby/methods/expert/module_prepend_chain.md +27 -0
  2214. data/files/ruby/methods/expert/pattern_matching_params.md +19 -0
  2215. data/files/ruby/methods/expert/refinements_scope_control.md +20 -0
  2216. data/files/ruby/methods/expert/unbound_method_binding.md +30 -0
  2217. data/files/ruby/methods/middle/alias_method_and_super.md +27 -0
  2218. data/files/ruby/methods/middle/default_keyword_arguments.md +15 -0
  2219. data/files/ruby/methods/middle/dynamic_define_method.md +17 -0
  2220. data/files/ruby/methods/middle/forwardable_delegation.md +24 -0
  2221. data/files/ruby/methods/middle/public_send_vs_send.md +20 -0
  2222. data/files/ruby/methods/middle/splat_and_double_splat.md +17 -0
  2223. data/files/ruby/methods/middle/symbol_to_proc.md +14 -0
  2224. data/files/ruby/methods/middle/tap_chaining.md +16 -0
  2225. data/files/ruby/minitest/advanced/custom_minitest_plugin.md +29 -0
  2226. data/files/ruby/minitest/advanced/custom_reporter_usage.md +28 -0
  2227. data/files/ruby/minitest/advanced/parallel_test_execution.md +20 -0
  2228. data/files/ruby/minitest/advanced/performance_benchmarking.md +17 -0
  2229. data/files/ruby/minitest/beginner/common_assertions.md +15 -0
  2230. data/files/ruby/minitest/beginner/defining_test_cases.md +13 -0
  2231. data/files/ruby/minitest/beginner/getting_started.md +12 -0
  2232. data/files/ruby/minitest/beginner/setup_teardown_hooks.md +20 -0
  2233. data/files/ruby/minitest/expert/custom_minitest_profiling_plugin.md +34 -0
  2234. data/files/ruby/minitest/expert/dynamic_test_generation.md +23 -0
  2235. data/files/ruby/minitest/expert/parallel_test_sharding.md +22 -0
  2236. data/files/ruby/minitest/expert/property_based_with_rantly.md +23 -0
  2237. data/files/ruby/minitest/middle/assertion_matchers_refutations.md +22 -0
  2238. data/files/ruby/minitest/middle/custom_assertion_helpers.md +22 -0
  2239. data/files/ruby/minitest/middle/parallel_test_execution.md +22 -0
  2240. data/files/ruby/minitest/middle/setup_teardown_hooks.md +27 -0
  2241. data/files/ruby/net_http/advanced/concurrent_requests_with_threads.md +24 -0
  2242. data/files/ruby/net_http/advanced/custom_ssl_context.md +18 -0
  2243. data/files/ruby/net_http/advanced/persistent_http_connections.md +13 -0
  2244. data/files/ruby/net_http/advanced/streaming_large_responses.md +17 -0
  2245. data/files/ruby/net_http/beginner/basic_get_request.md +12 -0
  2246. data/files/ruby/net_http/beginner/custom_headers_requests.md +19 -0
  2247. data/files/ruby/net_http/beginner/https_ssl_configuration.md +17 -0
  2248. data/files/ruby/net_http/beginner/post_json_request.md +20 -0
  2249. data/files/ruby/net_http/expert/persistent_connection_pooling.md +17 -0
  2250. data/files/ruby/net_http/expert/retry_with_exponential_backoff.md +29 -0
  2251. data/files/ruby/net_http/expert/ssl_certificate_pinning.md +30 -0
  2252. data/files/ruby/net_http/expert/streaming_chunked_responses.md +22 -0
  2253. data/files/ruby/net_http/middle/get_with_custom_headers.md +21 -0
  2254. data/files/ruby/net_http/middle/parse_json_errors.md +23 -0
  2255. data/files/ruby/net_http/middle/post_form_data.md +22 -0
  2256. data/files/ruby/net_http/middle/timeout_ssl_verify.md +21 -0
  2257. data/files/ruby/networking/advanced/custom_tls_context.md +26 -0
  2258. data/files/ruby/networking/advanced/eventmachine_async_io.md +29 -0
  2259. data/files/ruby/networking/advanced/http2_stream_multiplexing.md +40 -0
  2260. data/files/ruby/networking/advanced/nonblocking_tcp_socket.md +28 -0
  2261. data/files/ruby/networking/beginner/http_get_request.md +13 -0
  2262. data/files/ruby/networking/beginner/open_uri_fetch.md +11 -0
  2263. data/files/ruby/networking/beginner/tcp_client_example.md +13 -0
  2264. data/files/ruby/networking/beginner/tcp_server_example.md +16 -0
  2265. data/files/ruby/networking/expert/custom_tls_context.md +29 -0
  2266. data/files/ruby/networking/expert/http2_multiplexing.md +39 -0
  2267. data/files/ruby/networking/expert/packet_crafting_raw_sockets.md +24 -0
  2268. data/files/ruby/networking/expert/persistent_http_pipelining.md +29 -0
  2269. data/files/ruby/networking/middle/http_multipart_upload.md +27 -0
  2270. data/files/ruby/networking/middle/http_persistent.md +15 -0
  2271. data/files/ruby/networking/middle/http_ssl_customization.md +18 -0
  2272. data/files/ruby/networking/middle/tcp_non_blocking_client.md +23 -0
  2273. data/files/ruby/numbers/advanced/bigdecimal_precision.md +15 -0
  2274. data/files/ruby/numbers/advanced/complex_rotations.md +13 -0
  2275. data/files/ruby/numbers/advanced/numeric_clamp_bounds.md +18 -0
  2276. data/files/ruby/numbers/advanced/prime_factorization.md +23 -0
  2277. data/files/ruby/numbers/advanced/rational_usage.md +18 -0
  2278. data/files/ruby/numbers/beginner/basic_arithmetic.md +15 -0
  2279. data/files/ruby/numbers/beginner/generating_random_numbers.md +9 -0
  2280. data/files/ruby/numbers/beginner/integer_vs_float.md +11 -0
  2281. data/files/ruby/numbers/beginner/number_comparison.md +14 -0
  2282. data/files/ruby/numbers/beginner/rounding_numbers.md +14 -0
  2283. data/files/ruby/numbers/expert/expert_bigdecimal_precision.md +21 -0
  2284. data/files/ruby/numbers/expert/expert_bitwise_binary.md +25 -0
  2285. data/files/ruby/numbers/expert/expert_ffi_math_library.md +31 -0
  2286. data/files/ruby/numbers/expert/expert_prime_enumeration.md +24 -0
  2287. data/files/ruby/numbers/expert/expert_rational_complex.md +17 -0
  2288. data/files/ruby/numbers/middle/bigdecimal_precision.md +15 -0
  2289. data/files/ruby/numbers/middle/clamp_numbers.md +12 -0
  2290. data/files/ruby/numbers/middle/extract_digits.md +16 -0
  2291. data/files/ruby/numbers/middle/random_ranges.md +18 -0
  2292. data/files/ruby/numbers/middle/rational_numbers.md +16 -0
  2293. data/files/ruby/oop/advanced/class_eval_vs_instance_eval.md +26 -0
  2294. data/files/ruby/oop/advanced/dynamic_method_definition.md +22 -0
  2295. data/files/ruby/oop/advanced/eigenclass_for_class_macros.md +23 -0
  2296. data/files/ruby/oop/advanced/forwarding_with_forwardable.md +24 -0
  2297. data/files/ruby/oop/advanced/internal_dsl_with_blocks.md +30 -0
  2298. data/files/ruby/oop/advanced/method_missing_as_proxy.md +34 -0
  2299. data/files/ruby/oop/advanced/modules_as_namespaces_and_mixins.md +36 -0
  2300. data/files/ruby/oop/advanced/refinements_for_scoped_patching.md +17 -0
  2301. data/files/ruby/oop/advanced/tracepoint_for_method_hooking.md +17 -0
  2302. data/files/ruby/oop/beginner/attr_accessors.md +14 -0
  2303. data/files/ruby/oop/beginner/class_methods.md +12 -0
  2304. data/files/ruby/oop/beginner/creating_instances.md +10 -0
  2305. data/files/ruby/oop/beginner/defining_classes.md +8 -0
  2306. data/files/ruby/oop/beginner/inheritance_basics.md +19 -0
  2307. data/files/ruby/oop/beginner/initialize_method.md +16 -0
  2308. data/files/ruby/oop/beginner/instance_methods.md +18 -0
  2309. data/files/ruby/oop/beginner/instance_variables.md +18 -0
  2310. data/files/ruby/oop/beginner/method_overriding.md +19 -0
  2311. data/files/ruby/oop/beginner/modules_mixins.md +17 -0
  2312. data/files/ruby/oop/expert/bytecode_introspection_mod.md +17 -0
  2313. data/files/ruby/oop/expert/class_level_exec.md +30 -0
  2314. data/files/ruby/oop/expert/concurrent_ractor_mixins.md +33 -0
  2315. data/files/ruby/oop/expert/dynamic_method_dsl.md +23 -0
  2316. data/files/ruby/oop/expert/method_missing_delegate.md +23 -0
  2317. data/files/ruby/oop/expert/module_prepend_override.md +26 -0
  2318. data/files/ruby/oop/expert/scoped_refinements.md +23 -0
  2319. data/files/ruby/oop/expert/tracepoint_profiling.md +15 -0
  2320. data/files/ruby/oop/expert/weakref_circular_cleanup.md +24 -0
  2321. data/files/ruby/oop/middle/composition_over_inheritance.md +22 -0
  2322. data/files/ruby/oop/middle/define_value_objects.md +27 -0
  2323. data/files/ruby/oop/middle/dynamic_method_definitions.md +17 -0
  2324. data/files/ruby/oop/middle/leverage_struct_for_data_objects.md +15 -0
  2325. data/files/ruby/oop/middle/mixins_for_shared_behavior.md +18 -0
  2326. data/files/ruby/oop/middle/use_forwardable_for_delegation.md +21 -0
  2327. data/files/ruby/oop/middle/use_method_missing_cautiously.md +28 -0
  2328. data/files/ruby/oop/middle/use_module_namespace.md +18 -0
  2329. data/files/ruby/oop/middle/use_simpledelegator_for_wrappers.md +18 -0
  2330. data/files/ruby/openssl/advanced/custom_ssl_context_configuration.md +22 -0
  2331. data/files/ruby/openssl/advanced/ocsp_certificate_revocation_checking.md +25 -0
  2332. data/files/ruby/openssl/advanced/smime_sign_and_encrypt.md +30 -0
  2333. data/files/ruby/openssl/beginner/aes_encrypt_decrypt.md +28 -0
  2334. data/files/ruby/openssl/beginner/create_sha256_digest.md +20 -0
  2335. data/files/ruby/openssl/beginner/generate_rsa_key_pair.md +17 -0
  2336. data/files/ruby/openssl/expert/hardware_engine_pkcs11.md +23 -0
  2337. data/files/ruby/openssl/expert/mutual_tls_with_sslcontext.md +27 -0
  2338. data/files/ruby/openssl/expert/streaming_aead_gcm_file_encryption.md +32 -0
  2339. data/files/ruby/openssl/middle/aes_gcm_encryption.md +33 -0
  2340. data/files/ruby/openssl/middle/custom_ssl_context.md +29 -0
  2341. data/files/ruby/openssl/middle/verify_certificate_chain.md +25 -0
  2342. data/files/ruby/operators/advanced/boolean_casting.md.md +12 -0
  2343. data/files/ruby/operators/advanced/double_splat_args.md.md +15 -0
  2344. data/files/ruby/operators/advanced/endless_range_operator.md.md +14 -0
  2345. data/files/ruby/operators/advanced/flip_flop_operator.md.md +20 -0
  2346. data/files/ruby/operators/advanced/operator_overloading.md.md +22 -0
  2347. data/files/ruby/operators/advanced/pattern_matching_case_in.md.md +12 -0
  2348. data/files/ruby/operators/advanced/safe_navigation_operator.md.md +13 -0
  2349. data/files/ruby/operators/advanced/spaceship_operator.md.md +26 -0
  2350. data/files/ruby/operators/advanced/symbol_to_proc.md.md +14 -0
  2351. data/files/ruby/operators/advanced/unary_operators.md.md +21 -0
  2352. data/files/ruby/operators/beginner/arithmetic_operators.md +11 -0
  2353. data/files/ruby/operators/beginner/basic_assignment.md +14 -0
  2354. data/files/ruby/operators/beginner/comparison_operators.md +12 -0
  2355. data/files/ruby/operators/beginner/compound_assignment.md +10 -0
  2356. data/files/ruby/operators/beginner/conditional_assignment.md +11 -0
  2357. data/files/ruby/operators/beginner/exponentiation_operator.md +11 -0
  2358. data/files/ruby/operators/beginner/logical_operators.md +17 -0
  2359. data/files/ruby/operators/beginner/range_operators.md +15 -0
  2360. data/files/ruby/operators/beginner/string_concatenation.md +14 -0
  2361. data/files/ruby/operators/beginner/ternary_operator.md +12 -0
  2362. data/files/ruby/operators/expert/bitmask_flags_with_operators.md +41 -0
  2363. data/files/ruby/operators/expert/custom_unary_operator_overloads.md +22 -0
  2364. data/files/ruby/operators/expert/deep_safe_navigation_chaining.md +13 -0
  2365. data/files/ruby/operators/expert/dsl_via_operator_overloads.md +30 -0
  2366. data/files/ruby/operators/expert/dynamic_operator_overloading.md +30 -0
  2367. data/files/ruby/operators/expert/extending_numeric_precision.md +28 -0
  2368. data/files/ruby/operators/expert/inline_rescue_in_operators.md +21 -0
  2369. data/files/ruby/operators/expert/pipeline_operator_with_procs.md +17 -0
  2370. data/files/ruby/operators/expert/refinements_for_core_operators.md +20 -0
  2371. data/files/ruby/operators/expert/spaceship_sort_with_memoization.md +24 -0
  2372. data/files/ruby/operators/middle/default_assignment_operator.md +8 -0
  2373. data/files/ruby/operators/middle/defined_operator.md +10 -0
  2374. data/files/ruby/operators/middle/exponentiation_operator.md +9 -0
  2375. data/files/ruby/operators/middle/flip_flop_operator.md +14 -0
  2376. data/files/ruby/operators/middle/method_proc_shorthand.md +12 -0
  2377. data/files/ruby/operators/middle/range_operator.md +13 -0
  2378. data/files/ruby/operators/middle/regex_match_operator.md +10 -0
  2379. data/files/ruby/operators/middle/safe_navigation_operator.md +11 -0
  2380. data/files/ruby/operators/middle/spaceship_operator.md +19 -0
  2381. data/files/ruby/operators/middle/splat_and_double_splat.md +19 -0
  2382. data/files/ruby/procs_and_lambdas/advanced/destructuring_parameters.md +14 -0
  2383. data/files/ruby/procs_and_lambdas/advanced/dynamic_method_definitions.md +20 -0
  2384. data/files/ruby/procs_and_lambdas/advanced/error_handling_wrappers.md +18 -0
  2385. data/files/ruby/procs_and_lambdas/advanced/lambda_currying.md +13 -0
  2386. data/files/ruby/procs_and_lambdas/advanced/memoization_with_procs.md +18 -0
  2387. data/files/ruby/procs_and_lambdas/advanced/proc_enumerable_chaining.md +19 -0
  2388. data/files/ruby/procs_and_lambdas/advanced/proc_lambda_composition.md +14 -0
  2389. data/files/ruby/procs_and_lambdas/advanced/symbol_to_proc_advanced.md +14 -0
  2390. data/files/ruby/procs_and_lambdas/beginner/calling_lambdas.md +14 -0
  2391. data/files/ruby/procs_and_lambdas/beginner/calling_procs.md +12 -0
  2392. data/files/ruby/procs_and_lambdas/beginner/getting_started_with_lambdas.md +10 -0
  2393. data/files/ruby/procs_and_lambdas/beginner/getting_started_with_procs.md +10 -0
  2394. data/files/ruby/procs_and_lambdas/beginner/passing_lambda_to_method.md +13 -0
  2395. data/files/ruby/procs_and_lambdas/beginner/passing_proc_to_method.md +16 -0
  2396. data/files/ruby/procs_and_lambdas/beginner/proc_vs_lambda_argument_handling.md +11 -0
  2397. data/files/ruby/procs_and_lambdas/beginner/storing_procs_in_collections.md +14 -0
  2398. data/files/ruby/procs_and_lambdas/expert/async_event_driven_procs.md +24 -0
  2399. data/files/ruby/procs_and_lambdas/expert/currying_and_partial_application.md +12 -0
  2400. data/files/ruby/procs_and_lambdas/expert/dynamic_arity_validation.md +14 -0
  2401. data/files/ruby/procs_and_lambdas/expert/metaprogramming_with_define_method.md +26 -0
  2402. data/files/ruby/procs_and_lambdas/expert/proc_and_lambda_composition.md +17 -0
  2403. data/files/ruby/procs_and_lambdas/expert/procs_in_fiber_callbacks.md +22 -0
  2404. data/files/ruby/procs_and_lambdas/expert/profunctor_style_adapters.md +23 -0
  2405. data/files/ruby/procs_and_lambdas/expert/sandboxed_instance_exec.md +18 -0
  2406. data/files/ruby/procs_and_lambdas/middle/chain_procs_lambdas.md +13 -0
  2407. data/files/ruby/procs_and_lambdas/middle/context_capture_proc.md +12 -0
  2408. data/files/ruby/procs_and_lambdas/middle/curried_lambda.md +10 -0
  2409. data/files/ruby/procs_and_lambdas/middle/error_handling_proc.md +16 -0
  2410. data/files/ruby/procs_and_lambdas/middle/lambda_arity.md +12 -0
  2411. data/files/ruby/procs_and_lambdas/middle/memoization_lambda.md +11 -0
  2412. data/files/ruby/procs_and_lambdas/middle/proc_callback.md +14 -0
  2413. data/files/ruby/procs_and_lambdas/middle/proc_lambda_conversion.md +14 -0
  2414. data/files/ruby/profiling/advanced/perftools_flamegraph_generation.md +16 -0
  2415. data/files/ruby/profiling/advanced/ruby_prof_flat_printer.md +14 -0
  2416. data/files/ruby/profiling/advanced/ruby_prof_graph_html.md +17 -0
  2417. data/files/ruby/profiling/advanced/stackprof_sampling_mode.md +19 -0
  2418. data/files/ruby/profiling/advanced/tracepoint_custom_profile.md +19 -0
  2419. data/files/ruby/profiling/beginner/benchmark_bm.md +14 -0
  2420. data/files/ruby/profiling/beginner/benchmark_ips.md +16 -0
  2421. data/files/ruby/profiling/beginner/benchmark_measure.md +15 -0
  2422. data/files/ruby/profiling/beginner/ruby_prof_flat_printer.md +16 -0
  2423. data/files/ruby/profiling/beginner/ruby_profile_flag.md +9 -0
  2424. data/files/ruby/profiling/expert/memory_profiler_deep_inspection.md +16 -0
  2425. data/files/ruby/profiling/expert/rbspy_production_sampling.md +15 -0
  2426. data/files/ruby/profiling/expert/ruby_prof_callgrind_kcachegrind.md +22 -0
  2427. data/files/ruby/profiling/expert/stackprof_flamegraph.md +20 -0
  2428. data/files/ruby/profiling/expert/thread_wall_time_profiling.md +18 -0
  2429. data/files/ruby/profiling/middle/benchmark_bm_usage.md +11 -0
  2430. data/files/ruby/profiling/middle/flamegraph_visualization.md +16 -0
  2431. data/files/ruby/profiling/middle/memory_profiler_usage.md +12 -0
  2432. data/files/ruby/profiling/middle/ruby_prof_cpu.md +14 -0
  2433. data/files/ruby/profiling/middle/stackprof_sampling.md +13 -0
  2434. data/files/ruby/ranges/advanced/custom_object_ranges.md +28 -0
  2435. data/files/ruby/ranges/advanced/infinite_beginless_ranges.md +15 -0
  2436. data/files/ruby/ranges/advanced/lazy_infinite_sequences.md +12 -0
  2437. data/files/ruby/ranges/advanced/pattern_matching_with_ranges.md +27 -0
  2438. data/files/ruby/ranges/advanced/range_step_usage.md +13 -0
  2439. data/files/ruby/ranges/beginner/check_value_in_range.md +12 -0
  2440. data/files/ruby/ranges/beginner/convert_range_to_array.md +13 -0
  2441. data/files/ruby/ranges/beginner/inclusive_vs_exclusive_ranges.md +10 -0
  2442. data/files/ruby/ranges/beginner/iterating_over_ranges.md +15 -0
  2443. data/files/ruby/ranges/beginner/stepping_through_ranges.md +17 -0
  2444. data/files/ruby/ranges/expert/cover_vs_include_performance.md +14 -0
  2445. data/files/ruby/ranges/expert/custom_infinite_enumerator.md +19 -0
  2446. data/files/ruby/ranges/expert/endless_and_beginless_ranges.md +17 -0
  2447. data/files/ruby/ranges/expert/pattern_matching_with_ranges.md +22 -0
  2448. data/files/ruby/ranges/expert/using_ranges_as_hash_keys.md +18 -0
  2449. data/files/ruby/ranges/middle/endless_beginless_ranges.md +17 -0
  2450. data/files/ruby/ranges/middle/range_case_when.md +20 -0
  2451. data/files/ruby/ranges/middle/range_cover_include.md +13 -0
  2452. data/files/ruby/ranges/middle/range_step_iteration.md +12 -0
  2453. data/files/ruby/ranges/middle/range_to_a_and_size.md +13 -0
  2454. data/files/ruby/reflection/advanced/dynamic_method_generation.md +20 -0
  2455. data/files/ruby/reflection/advanced/method_source_reloader.md +17 -0
  2456. data/files/ruby/reflection/advanced/runtime_constant_injection.md +19 -0
  2457. data/files/ruby/reflection/advanced/tracepoint_method_tracing.md +18 -0
  2458. data/files/ruby/reflection/beginner/dynamic_method_invocation.md +14 -0
  2459. data/files/ruby/reflection/beginner/inspect_instance_variables.md +20 -0
  2460. data/files/ruby/reflection/beginner/list_available_methods.md +14 -0
  2461. data/files/ruby/reflection/beginner/use_respond_to.md +13 -0
  2462. data/files/ruby/reflection/expert/ast_manipulation.md +27 -0
  2463. data/files/ruby/reflection/expert/dynamic_basicobject_proxy.md +27 -0
  2464. data/files/ruby/reflection/expert/granular_tracepoint_events.md +16 -0
  2465. data/files/ruby/reflection/expert/singleton_class_hierarchy.md +20 -0
  2466. data/files/ruby/reflection/middle/dynamic_constant_lookup.md +18 -0
  2467. data/files/ruby/reflection/middle/dynamic_method_invocation.md +18 -0
  2468. data/files/ruby/reflection/middle/instance_variable_inspection.md +19 -0
  2469. data/files/ruby/reflection/middle/introspect_methods.md +17 -0
  2470. data/files/ruby/regex/advanced/atomic_grouping.md +11 -0
  2471. data/files/ruby/regex/advanced/dynamic_union.md +10 -0
  2472. data/files/ruby/regex/advanced/extended_mode_comments.md +9 -0
  2473. data/files/ruby/regex/advanced/g_anchor_scanning.md +10 -0
  2474. data/files/ruby/regex/advanced/gsub_with_block.md +11 -0
  2475. data/files/ruby/regex/advanced/lookaround_assertions.md +9 -0
  2476. data/files/ruby/regex/advanced/named_capture_to_hash.md +8 -0
  2477. data/files/ruby/regex/advanced/performance_benchmarking.md +16 -0
  2478. data/files/ruby/regex/advanced/recursive_patterns.md +11 -0
  2479. data/files/ruby/regex/advanced/unicode_properties.md +12 -0
  2480. data/files/ruby/regex/beginner/anchors.md +12 -0
  2481. data/files/ruby/regex/beginner/basic_match_operator.md +11 -0
  2482. data/files/ruby/regex/beginner/capturing_groups.md +9 -0
  2483. data/files/ruby/regex/beginner/character_classes.md +9 -0
  2484. data/files/ruby/regex/beginner/escaping_special_chars.md +9 -0
  2485. data/files/ruby/regex/beginner/gsub_replacement.md +9 -0
  2486. data/files/ruby/regex/beginner/named_captures.md +10 -0
  2487. data/files/ruby/regex/beginner/quantifiers.md +9 -0
  2488. data/files/ruby/regex/beginner/regex_options.md +11 -0
  2489. data/files/ruby/regex/beginner/string_match_method.md +12 -0
  2490. data/files/ruby/regex/expert/advanced_lookaround_combinations.md +27 -0
  2491. data/files/ruby/regex/expert/atomic_groups_for_speed.md +15 -0
  2492. data/files/ruby/regex/expert/branch_reset_grouping.md +19 -0
  2493. data/files/ruby/regex/expert/embed_ruby_code_in_regex.md +21 -0
  2494. data/files/ruby/regex/expert/inline_toggle_modifiers.md +16 -0
  2495. data/files/ruby/regex/expert/named_captures_with_transform.md +18 -0
  2496. data/files/ruby/regex/expert/recursive_regex_for_nested.md +18 -0
  2497. data/files/ruby/regex/expert/regexp_union_optimization.md +16 -0
  2498. data/files/ruby/regex/expert/stringscanner_iterative_scans.md +18 -0
  2499. data/files/ruby/regex/expert/unicode_and_posix_properties.md +20 -0
  2500. data/files/ruby/regex/middle/anchor_validations.md +15 -0
  2501. data/files/ruby/regex/middle/character_classes.md +10 -0
  2502. data/files/ruby/regex/middle/gsub_with_block.md +13 -0
  2503. data/files/ruby/regex/middle/inline_modifiers.md +15 -0
  2504. data/files/ruby/regex/middle/lookahead_lookbehind.md +11 -0
  2505. data/files/ruby/regex/middle/match_data_usage.md +12 -0
  2506. data/files/ruby/regex/middle/named_capture_groups.md +11 -0
  2507. data/files/ruby/regex/middle/non_capturing_groups.md +14 -0
  2508. data/files/ruby/regex/middle/regexp_union.md +11 -0
  2509. data/files/ruby/regex/middle/split_with_regex.md +13 -0
  2510. data/files/ruby/rspec/advanced/around_hooks_time_travel_cleanup.md +20 -0
  2511. data/files/ruby/rspec/advanced/composable_custom_matchers.md +36 -0
  2512. data/files/ruby/rspec/advanced/dynamic_shared_context_metadata.md +25 -0
  2513. data/files/ruby/rspec/advanced/parameterized_testing.md +25 -0
  2514. data/files/ruby/rspec/beginner/first_spec_example.md +15 -0
  2515. data/files/ruby/rspec/beginner/organizing_spec_files.md +21 -0
  2516. data/files/ruby/rspec/beginner/setup_rspec.md +12 -0
  2517. data/files/ruby/rspec/beginner/using_expectations.md +15 -0
  2518. data/files/ruby/rspec/expert/advanced_diffable_matcher.md +40 -0
  2519. data/files/ruby/rspec/expert/custom_example_group_dsl.md +22 -0
  2520. data/files/ruby/rspec/expert/custom_formatter_plugin.md +51 -0
  2521. data/files/ruby/rspec/expert/flaky_spec_auto_retry.md +29 -0
  2522. data/files/ruby/rspec/middle/rspec_contexts_subject.md.md +24 -0
  2523. data/files/ruby/rspec/middle/rspec_custom_matchers.md.md +20 -0
  2524. data/files/ruby/rspec/middle/rspec_let_vs_let_bang.md.md +19 -0
  2525. data/files/ruby/rspec/middle/rspec_shared_examples.md.md +19 -0
  2526. data/files/ruby/serialization/advanced/marshal_custom_versioning.md +41 -0
  2527. data/files/ruby/serialization/advanced/oj_serialization_tuning.md +23 -0
  2528. data/files/ruby/serialization/advanced/streaming_large_json.md +19 -0
  2529. data/files/ruby/serialization/beginner/json_serialization.md +16 -0
  2530. data/files/ruby/serialization/beginner/marshal_serialization.md +13 -0
  2531. data/files/ruby/serialization/beginner/yaml_serialization.md +17 -0
  2532. data/files/ruby/serialization/expert/hybrid_msgpack_json.md +32 -0
  2533. data/files/ruby/serialization/expert/oj_object_hooks.md +22 -0
  2534. data/files/ruby/serialization/expert/versioned_marshal.md +42 -0
  2535. data/files/ruby/serialization/middle/active_model_serializer_example.md +21 -0
  2536. data/files/ruby/serialization/middle/customizing_to_json_example.md +15 -0
  2537. data/files/ruby/serialization/middle/using_oj_for_high_performance.md +16 -0
  2538. data/files/ruby/set/advanced/set_key_extractor.md +32 -0
  2539. data/files/ruby/set/advanced/set_thread_safe.md +28 -0
  2540. data/files/ruby/set/advanced/set_transitive_closure.md +39 -0
  2541. data/files/ruby/set/beginner/basic_set_operations.md +17 -0
  2542. data/files/ruby/set/beginner/initialize_set.md +14 -0
  2543. data/files/ruby/set/beginner/manage_set_elements.md +13 -0
  2544. data/files/ruby/set/expert/custom_hash_eql.md.md +29 -0
  2545. data/files/ruby/set/expert/lazy_unique_filter.md.md +21 -0
  2546. data/files/ruby/set/expert/thread_safe_set.md.md +29 -0
  2547. data/files/ruby/set/middle/custom_object_set.md +34 -0
  2548. data/files/ruby/set/middle/initialize_and_modify_set.md +17 -0
  2549. data/files/ruby/set/middle/set_algebra_operations.md +20 -0
  2550. data/files/ruby/sockets/advanced/non_blocking_io_select.md +35 -0
  2551. data/files/ruby/sockets/advanced/ssl_tls_with_openssl.md +25 -0
  2552. data/files/ruby/sockets/advanced/unix_socket_fd_passing.md +29 -0
  2553. data/files/ruby/sockets/beginner/tcp_client_basics.md +14 -0
  2554. data/files/ruby/sockets/beginner/tcp_server_basics.md +18 -0
  2555. data/files/ruby/sockets/beginner/udp_socket_basics.md +33 -0
  2556. data/files/ruby/sockets/expert/custom_tls_alpn_ocsp.md +47 -0
  2557. data/files/ruby/sockets/expert/fiber_scheduler_socket_server.md +39 -0
  2558. data/files/ruby/sockets/expert/zero_copy_sendfile.md +36 -0
  2559. data/files/ruby/sockets/middle/socket_select_multiplex.md +33 -0
  2560. data/files/ruby/sockets/middle/tcp_client_basic.md +22 -0
  2561. data/files/ruby/sockets/middle/tcp_server_basic.md +19 -0
  2562. data/files/ruby/strings/advanced/advanced_interpolation.md +1 -0
  2563. data/files/ruby/strings/advanced/binary_encoding_manipulation.md +14 -0
  2564. data/files/ruby/strings/advanced/complex_escapes.md +1 -0
  2565. data/files/ruby/strings/advanced/emoji_handling.md +1 -0
  2566. data/files/ruby/strings/advanced/freezing_and_symbols.md +15 -0
  2567. data/files/ruby/strings/advanced/literals_stacking.md +1 -0
  2568. data/files/ruby/strings/advanced/percent_quoting_variants.md +12 -0
  2569. data/files/ruby/strings/advanced/regex_match_performance.md +11 -0
  2570. data/files/ruby/strings/advanced/safe_concat.md +1 -0
  2571. data/files/ruby/strings/advanced/strip_margin_heredoc.md +1 -0
  2572. data/files/ruby/strings/advanced/unicode_normalization.md +1 -0
  2573. data/files/ruby/strings/beginner/common_string_methods.md +10 -0
  2574. data/files/ruby/strings/beginner/heredoc_string.md +14 -0
  2575. data/files/ruby/strings/beginner/length_and_empty.md +10 -0
  2576. data/files/ruby/strings/beginner/shovel_operator.md +10 -0
  2577. data/files/ruby/strings/beginner/string_concatenation.md +10 -0
  2578. data/files/ruby/strings/beginner/string_duplication.md +9 -0
  2579. data/files/ruby/strings/beginner/string_indexing.md +10 -0
  2580. data/files/ruby/strings/beginner/string_interpolation.md +9 -0
  2581. data/files/ruby/strings/beginner/string_slicing.md +10 -0
  2582. data/files/ruby/strings/beginner/substring_replacement.md +9 -0
  2583. data/files/ruby/strings/expert/advanced_named_captures.md +15 -0
  2584. data/files/ruby/strings/expert/ast_pattern_strings.md +1 -0
  2585. data/files/ruby/strings/expert/binary_data_handling_string_b.md +10 -0
  2586. data/files/ruby/strings/expert/binary_parsing_with_unpack_pack.md +12 -0
  2587. data/files/ruby/strings/expert/deep_dup.md +1 -0
  2588. data/files/ruby/strings/expert/demo_continue.md +1 -0
  2589. data/files/ruby/strings/expert/drb_string_marshalling_hash.md +1 -0
  2590. data/files/ruby/strings/expert/fiber_storage_usage.md +1 -0
  2591. data/files/ruby/strings/expert/freeze_dedupe_strings.md +11 -0
  2592. data/files/ruby/strings/expert/fstring_eval.md +1 -0
  2593. data/files/ruby/strings/expert/functional_fstrings.md +1 -0
  2594. data/files/ruby/strings/expert/gb_string_increment.md +1 -0
  2595. data/files/ruby/strings/expert/grapheme_cluster_counting.md +12 -0
  2596. data/files/ruby/strings/expert/handle_invalid_bytes_with_scrub.md +12 -0
  2597. data/files/ruby/strings/expert/heredoc_inheritance.md +1 -0
  2598. data/files/ruby/strings/expert/in_memory_io_with_stringio.md +13 -0
  2599. data/files/ruby/strings/expert/opengl_strings.md +1 -0
  2600. data/files/ruby/strings/expert/override_dup_with_initialize_copy.md +19 -0
  2601. data/files/ruby/strings/expert/regex_named_captures.md +1 -0
  2602. data/files/ruby/strings/expert/regex_performance.md +1 -0
  2603. data/files/ruby/strings/expert/reuse_string_buffers_replace.md +12 -0
  2604. data/files/ruby/strings/expert/sprintf_named.md +1 -0
  2605. data/files/ruby/strings/expert/stateful_sub/",{.md +1 -0
  2606. data/files/ruby/strings/expert/strict_encodings.md +1 -0
  2607. data/files/ruby/strings/expert/string_gc_optimizations.md +1 -0
  2608. data/files/ruby/strings/expert/zero_copy_substring.md +1 -0
  2609. data/files/ruby/strings/middle/demo.json.md +1 -0
  2610. data/files/ruby/strings/middle/dynamic_gsub_blocks.md +12 -0
  2611. data/files/ruby/strings/middle/encoding_force_encode.md +11 -0
  2612. data/files/ruby/strings/middle/heredoc_squiggly.md +17 -0
  2613. data/files/ruby/strings/middle/logging_demos.md.md +1 -0
  2614. data/files/ruby/strings/middle/mutable_string_concatenation.md +12 -0
  2615. data/files/ruby/strings/middle/nested_interpolation.md +9 -0
  2616. data/files/ruby/strings/middle/percent_string_literals.md +11 -0
  2617. data/files/ruby/strings/middle/regex_named_captures.md +10 -0
  2618. data/files/ruby/strings/middle/scrub_invalid_bytes.md +10 -0
  2619. data/files/ruby/strings/middle/session_parse.md +1 -0
  2620. data/files/ruby/strings/middle/string_formatting_sprintf.md +12 -0
  2621. data/files/ruby/strings/middle/string_slicing_ranges.md +12 -0
  2622. data/files/ruby/symbols/advanced/symbol_dynamic_memoization.md +29 -0
  2623. data/files/ruby/symbols/advanced/symbol_pattern_matching.md +25 -0
  2624. data/files/ruby/symbols/advanced/symbol_to_proc.md +15 -0
  2625. data/files/ruby/symbols/beginner/dynamic_symbol_creation.md +16 -0
  2626. data/files/ruby/symbols/beginner/symbol_as_method_identifier.md +20 -0
  2627. data/files/ruby/symbols/beginner/symbol_vs_string.md +14 -0
  2628. data/files/ruby/symbols/expert/dsl_metaprogramming_with_symbols.md +27 -0
  2629. data/files/ruby/symbols/expert/secure_dynamic_symbol_creation.md +20 -0
  2630. data/files/ruby/symbols/expert/symbol_garbage_collection_inspection.md +16 -0
  2631. data/files/ruby/symbols/middle/dynamic_method_definition.md +20 -0
  2632. data/files/ruby/symbols/middle/dynamic_method_invocation.md +20 -0
  2633. data/files/ruby/symbols/middle/symbol_to_proc_enumeration.md +12 -0
  2634. data/files/ruby/syntax/advanced/define_method_with_closure.md +17 -0
  2635. data/files/ruby/syntax/advanced/endless_method_definition.md +14 -0
  2636. data/files/ruby/syntax/advanced/flip_flop_operator.md +14 -0
  2637. data/files/ruby/syntax/advanced/keyword_splat_destructuring.md +15 -0
  2638. data/files/ruby/syntax/advanced/numbered_block_parameters.md +14 -0
  2639. data/files/ruby/syntax/advanced/pattern_matching_destructuring.md +13 -0
  2640. data/files/ruby/syntax/advanced/refinement_scoping.md +18 -0
  2641. data/files/ruby/syntax/advanced/singleton_class_eval.md +14 -0
  2642. data/files/ruby/syntax/advanced/to_proc_shorthand.md +12 -0
  2643. data/files/ruby/syntax/advanced/trace_point_debugging.md +12 -0
  2644. data/files/ruby/syntax/beginner/adding_comments.md +14 -0
  2645. data/files/ruby/syntax/beginner/array_basics.md +8 -0
  2646. data/files/ruby/syntax/beginner/defining_methods.md +10 -0
  2647. data/files/ruby/syntax/beginner/hash_basics.md +8 -0
  2648. data/files/ruby/syntax/beginner/iterating_with_each.md +13 -0
  2649. data/files/ruby/syntax/beginner/simple_conditionals.md +16 -0
  2650. data/files/ruby/syntax/beginner/string_interpolation.md +8 -0
  2651. data/files/ruby/syntax/beginner/symbols_vs_strings.md +8 -0
  2652. data/files/ruby/syntax/beginner/understanding_blocks.md +10 -0
  2653. data/files/ruby/syntax/beginner/using_variables.md +8 -0
  2654. data/files/ruby/syntax/expert/dynamic_define_method.md +16 -0
  2655. data/files/ruby/syntax/expert/eigenclass_dsl.md +26 -0
  2656. data/files/ruby/syntax/expert/endless_method_definitions.md +14 -0
  2657. data/files/ruby/syntax/expert/infinite_enumerator.md +14 -0
  2658. data/files/ruby/syntax/expert/keyword_arg_forwarding.md +16 -0
  2659. data/files/ruby/syntax/expert/nested_hash_pattern.md +16 -0
  2660. data/files/ruby/syntax/expert/numbered_parameters.md +18 -0
  2661. data/files/ruby/syntax/expert/pattern_matching_guards.md +17 -0
  2662. data/files/ruby/syntax/expert/scoped_refinements.md +24 -0
  2663. data/files/ruby/syntax/expert/yield_self_then.md +12 -0
  2664. data/files/ruby/syntax/middle/array_tally.md +9 -0
  2665. data/files/ruby/syntax/middle/destructuring_assignment.md +14 -0
  2666. data/files/ruby/syntax/middle/dig_method.md +16 -0
  2667. data/files/ruby/syntax/middle/frozen_string_literal.md +14 -0
  2668. data/files/ruby/syntax/middle/hash_transform_methods.md +15 -0
  2669. data/files/ruby/syntax/middle/numbered_block_parameters.md +17 -0
  2670. data/files/ruby/syntax/middle/pattern_matching_case_in.md +16 -0
  2671. data/files/ruby/syntax/middle/safe_navigation_operator.md +15 -0
  2672. data/files/ruby/syntax/middle/symbol_to_proc.md +14 -0
  2673. data/files/ruby/syntax/middle/tap_debugging.md +11 -0
  2674. data/files/ruby/tempfiles/advanced/atomic_tempfile_replacement.md +19 -0
  2675. data/files/ruby/tempfiles/advanced/encrypted_tempfile_openssl.md +27 -0
  2676. data/files/ruby/tempfiles/beginner/tempfile_basic_creation.md +19 -0
  2677. data/files/ruby/tempfiles/beginner/tempfile_with_block_cleanup.md +14 -0
  2678. data/files/ruby/tempfiles/expert/otmpfile_anonymous.md +23 -0
  2679. data/files/ruby/tempfiles/expert/secure_wipe_tempfile.md +41 -0
  2680. data/files/ruby/tempfiles/middle/tempfile_auto_cleanup.md +14 -0
  2681. data/files/ruby/tempfiles/middle/tempfile_custom_extension_and_dir.md +17 -0
  2682. data/files/ruby/threads/advanced/graceful_thread_shutdown.md +48 -0
  2683. data/files/ruby/threads/advanced/prioritized_queue_and_conditionvariable.md +47 -0
  2684. data/files/ruby/threads/advanced/thread_local_memoization.md +30 -0
  2685. data/files/ruby/threads/advanced/thread_pool_executor_concurrent_ruby.md +26 -0
  2686. data/files/ruby/threads/beginner/thread_basic_creation.md +15 -0
  2687. data/files/ruby/threads/beginner/thread_joining.md +15 -0
  2688. data/files/ruby/threads/beginner/thread_mutex_usage.md +23 -0
  2689. data/files/ruby/threads/beginner/thread_passing_arguments.md +17 -0
  2690. data/files/ruby/threads/expert/barrier_synchronization_with_conditionvariable.md +43 -0
  2691. data/files/ruby/threads/expert/thread_pool_with_sized_queue.md +41 -0
  2692. data/files/ruby/threads/expert/thread_safe_lru_cache_with_monitor.md +79 -0
  2693. data/files/ruby/threads/expert/timeout_handling_with_thread_handle_interrupt.md +35 -0
  2694. data/files/ruby/threads/middle/graceful_thread_lifecycle.md +23 -0
  2695. data/files/ruby/threads/middle/mutex_synchronize_shared_data.md +23 -0
  2696. data/files/ruby/threads/middle/queue_producer_consumer.md +30 -0
  2697. data/files/ruby/threads/middle/thread_local_variables.md +13 -0
  2698. data/files/ruby/uri/advanced/custom_uri_scheme.md +20 -0
  2699. data/files/ruby/uri/advanced/idn_support_punycode.md +20 -0
  2700. data/files/ruby/uri/advanced/query_param_merging.md +19 -0
  2701. data/files/ruby/uri/beginner/build_url_with_query.md +13 -0
  2702. data/files/ruby/uri/beginner/encode_decode_query.md +16 -0
  2703. data/files/ruby/uri/beginner/parse_url.md +16 -0
  2704. data/files/ruby/uri/expert/advanced_uri_merging.md +21 -0
  2705. data/files/ruby/uri/expert/custom_percent_encoding.md +18 -0
  2706. data/files/ruby/uri/expert/custom_uri_scheme.md +27 -0
  2707. data/files/ruby/uri/middle/constructing_uris_with_encoding.md +19 -0
  2708. data/files/ruby/uri/middle/merging_and_resolving_relative_uris.md +18 -0
  2709. data/files/ruby/uri/middle/parsing_modifying_query_params.md +20 -0
  2710. data/files/ruby/variables/advanced/dynamic_instance_variables.md +31 -0
  2711. data/files/ruby/variables/advanced/dynamic_local_variables.md +23 -0
  2712. data/files/ruby/variables/advanced/thread_local_variables.md +20 -0
  2713. data/files/ruby/variables/beginner/clear_variable_naming.md +13 -0
  2714. data/files/ruby/variables/beginner/multiple_assignment.md +11 -0
  2715. data/files/ruby/variables/beginner/string_interpolation.md +10 -0
  2716. data/files/ruby/variables/expert/binding_local_variable_manipulation_expert.md +16 -0
  2717. data/files/ruby/variables/expert/dynamic_constant_management_expert.md +20 -0
  2718. data/files/ruby/variables/expert/thread_fiber_local_variables_expert.md +20 -0
  2719. data/files/ruby/variables/middle/block_vs_method_variable_scope.md +26 -0
  2720. data/files/ruby/variables/middle/memoization_with_or_equal.md +23 -0
  2721. data/files/ruby/variables/middle/parallel_assignment_and_splat.md +19 -0
  2722. data/files/ruby/xml/advanced/high_performance_ox.md +34 -0
  2723. data/files/ruby/xml/advanced/sax_streaming_large_xml.md +28 -0
  2724. data/files/ruby/xml/advanced/xpath_with_namespaces.md +30 -0
  2725. data/files/ruby/xml/beginner/basic_parsing_with_rexml.md +20 -0
  2726. data/files/ruby/xml/beginner/building_xml_with_nokogiri_builder.md +33 -0
  2727. data/files/ruby/xml/beginner/parsing_xml_with_nokogiri.md +25 -0
  2728. data/files/ruby/xml/expert/custom_sax_handler_performance.md +42 -0
  2729. data/files/ruby/xml/expert/nokogiri_builder_namespaces_schema.md +31 -0
  2730. data/files/ruby/xml/expert/nokogiri_xml_reader_streaming.md +20 -0
  2731. data/files/ruby/xml/middle/build_xml_with_builder.md +26 -0
  2732. data/files/ruby/xml/middle/modify_xml_nodes_nokogiri.md +30 -0
  2733. data/files/ruby/xml/middle/parse_xml_with_namespaces.md +24 -0
  2734. data/files/ruby/yaml/advanced/custom_yaml_serialization.md +40 -0
  2735. data/files/ruby/yaml/advanced/secure_yaml_safe_load.md +38 -0
  2736. data/files/ruby/yaml/advanced/streaming_yaml_parsing.md +34 -0
  2737. data/files/ruby/yaml/beginner/dump_to_yaml.md +19 -0
  2738. data/files/ruby/yaml/beginner/load_yaml_file.md +14 -0
  2739. data/files/ruby/yaml/beginner/safe_parse_yaml_string.md +18 -0
  2740. data/files/ruby/yaml/expert/custom_psych_domain_type.md +34 -0
  2741. data/files/ruby/yaml/expert/secure_yaml_safe_load.md +32 -0
  2742. data/files/ruby/yaml/expert/streaming_yaml_parser.md +32 -0
  2743. data/files/ruby/yaml/middle/custom_yaml_serialization.md +26 -0
  2744. data/files/ruby/yaml/middle/safe_load_yaml.md +25 -0
  2745. data/files/ruby/yaml/middle/yaml_aliases_anchors.md +28 -0
  2746. data/files/sql/general/advanced/expression_and_partial_indexes.md +13 -0
  2747. data/files/sql/general/advanced/full_text_search_configurations.md +14 -0
  2748. data/files/sql/general/advanced/jsonb_indexed_queries.md +12 -0
  2749. data/files/sql/general/advanced/lateral_joins_for_dynamic_subqueries.md +16 -0
  2750. data/files/sql/general/advanced/materialized_views_optimization.md +15 -0
  2751. data/files/sql/general/advanced/merge_upsert_statements.md +19 -0
  2752. data/files/sql/general/advanced/optimizer_hints_and_plans.md +14 -0
  2753. data/files/sql/general/advanced/pivot_queries_crosstab.md +14 -0
  2754. data/files/sql/general/advanced/recursive_cte_hierarchical_queries.md +17 -0
  2755. data/files/sql/general/advanced/window_functions_row_number.md +12 -0
  2756. data/files/sql/general/beginner/basic_inner_join.md +11 -0
  2757. data/files/sql/general/beginner/count_rows.md +11 -0
  2758. data/files/sql/general/beginner/filter_with_where.md +11 -0
  2759. data/files/sql/general/beginner/group_by_clause.md +11 -0
  2760. data/files/sql/general/beginner/insert_into_table.md +10 -0
  2761. data/files/sql/general/beginner/limit_results.md +12 -0
  2762. data/files/sql/general/beginner/select_specific_columns.md +10 -0
  2763. data/files/sql/general/beginner/sort_results_order_by.md +11 -0
  2764. data/files/sql/general/beginner/update_and_delete_records.md +16 -0
  2765. data/files/sql/general/beginner/use_column_aliases.md +10 -0
  2766. data/files/sql/general/expert/explain_analyze_tuning.md +14 -0
  2767. data/files/sql/general/expert/jsonb_indexing.md +15 -0
  2768. data/files/sql/general/expert/lateral_joins.md +14 -0
  2769. data/files/sql/general/expert/materialized_views_refresh.md +18 -0
  2770. data/files/sql/general/expert/partition_pruning.md +21 -0
  2771. data/files/sql/general/expert/pivot_unpivot.md +23 -0
  2772. data/files/sql/general/expert/recursive_cte_hierarchies.md +19 -0
  2773. data/files/sql/general/expert/row_level_security.md +17 -0
  2774. data/files/sql/general/expert/upsert_on_conflict.md +13 -0
  2775. data/files/sql/general/expert/window_function_advanced_analytics.md +18 -0
  2776. data/files/sql/general/middle/batch_inserts_updates.md +17 -0
  2777. data/files/sql/general/middle/cte_for_complex_queries.md +15 -0
  2778. data/files/sql/general/middle/full_text_search.md +16 -0
  2779. data/files/sql/general/middle/index_usage_monitoring.md +13 -0
  2780. data/files/sql/general/middle/join_performance_tips.md +10 -0
  2781. data/files/sql/general/middle/jsonb_querying.md +12 -0
  2782. data/files/sql/general/middle/parameterized_queries_security.md +10 -0
  2783. data/files/sql/general/middle/query_plan_analysis.md +10 -0
  2784. data/files/sql/general/middle/upsert_with_on_conflict.md +11 -0
  2785. data/files/sql/general/middle/window_functions_usage.md +12 -0
  2786. data/files/sql/mysql/advanced/cte_recursive.md +13 -0
  2787. data/files/sql/mysql/advanced/explain_analyze.md +10 -0
  2788. data/files/sql/mysql/advanced/fulltext_boolean_weights.md +13 -0
  2789. data/files/sql/mysql/advanced/generated_columns.md +9 -0
  2790. data/files/sql/mysql/advanced/json_functions.md +10 -0
  2791. data/files/sql/mysql/advanced/partitioning_range.md +11 -0
  2792. data/files/sql/mysql/advanced/performance_schema.md +14 -0
  2793. data/files/sql/mysql/advanced/spatial_index.md +15 -0
  2794. data/files/sql/mysql/advanced/transaction_isolation.md +10 -0
  2795. data/files/sql/mysql/advanced/window_running_total.md +10 -0
  2796. data/files/sql/mysql/beginner/count_aggregate.md +13 -0
  2797. data/files/sql/mysql/beginner/delete_records.md +13 -0
  2798. data/files/sql/mysql/beginner/filter_with_where.md +13 -0
  2799. data/files/sql/mysql/beginner/group_by_results.md +10 -0
  2800. data/files/sql/mysql/beginner/inner_join.md +9 -0
  2801. data/files/sql/mysql/beginner/insert_data.md +14 -0
  2802. data/files/sql/mysql/beginner/limit_results.md +14 -0
  2803. data/files/sql/mysql/beginner/order_by_clause.md +14 -0
  2804. data/files/sql/mysql/beginner/select_all_columns.md +7 -0
  2805. data/files/sql/mysql/beginner/update_records.md +14 -0
  2806. data/files/sql/mysql/expert/advanced_partition_pruning.md +18 -0
  2807. data/files/sql/mysql/expert/extended_statistics_multicolumn_selectivity.md +14 -0
  2808. data/files/sql/mysql/expert/generated_columns_json_optimization.md +13 -0
  2809. data/files/sql/mysql/expert/invisible_indexes_testing.md +18 -0
  2810. data/files/sql/mysql/expert/optimizer_hints_query_forcing.md +13 -0
  2811. data/files/sql/mysql/expert/performance_schema_query_profiling.md +18 -0
  2812. data/files/sql/mysql/expert/recursive_cte_hierarchies.md +16 -0
  2813. data/files/sql/mysql/expert/user_defined_functions_extending.md +30 -0
  2814. data/files/sql/mysql/expert/window_functions_running_totals.md +16 -0
  2815. data/files/sql/mysql/middle/ctes_common_table_expressions.md +14 -0
  2816. data/files/sql/mysql/middle/explain_query.md +9 -0
  2817. data/files/sql/mysql/middle/fulltext_search.md +10 -0
  2818. data/files/sql/mysql/middle/group_concat_usage.md +11 -0
  2819. data/files/sql/mysql/middle/index_usage.md +7 -0
  2820. data/files/sql/mysql/middle/json_functions.md +12 -0
  2821. data/files/sql/mysql/middle/limit_offset_performance.md +13 -0
  2822. data/files/sql/mysql/middle/regex_search.md +12 -0
  2823. data/files/sql/mysql/middle/user_variables.md +13 -0
  2824. data/files/sql/mysql/middle/window_functions.md +10 -0
  2825. data/files/sql/postgresql/advanced/declarative_partitioning_range.md +16 -0
  2826. data/files/sql/postgresql/advanced/full_text_search_tsvector.md +15 -0
  2827. data/files/sql/postgresql/advanced/jsonb_path_query.md +9 -0
  2828. data/files/sql/postgresql/advanced/lateral_joins.md +14 -0
  2829. data/files/sql/postgresql/advanced/materialized_view_concurrent_refresh.md +13 -0
  2830. data/files/sql/postgresql/advanced/parallel_query_execution.md +12 -0
  2831. data/files/sql/postgresql/advanced/partial_expression_index.md +11 -0
  2832. data/files/sql/postgresql/advanced/recursive_cte_hierarchy.md +15 -0
  2833. data/files/sql/postgresql/advanced/upsert_on_conflict.md +10 -0
  2834. data/files/sql/postgresql/advanced/window_function_rank.md +13 -0
  2835. data/files/sql/postgresql/beginner/aggregate_functions.md +10 -0
  2836. data/files/sql/postgresql/beginner/basic_join.md +15 -0
  2837. data/files/sql/postgresql/beginner/connect_to_db.md +12 -0
  2838. data/files/sql/postgresql/beginner/create_table.md +11 -0
  2839. data/files/sql/postgresql/beginner/delete_data.md +12 -0
  2840. data/files/sql/postgresql/beginner/insert_data.md +11 -0
  2841. data/files/sql/postgresql/beginner/order_by_limit.md +9 -0
  2842. data/files/sql/postgresql/beginner/select_basic.md +10 -0
  2843. data/files/sql/postgresql/beginner/update_data.md +14 -0
  2844. data/files/sql/postgresql/beginner/where_clause.md +12 -0
  2845. data/files/sql/postgresql/expert/autovacuum_and_bloat_analysis.md +18 -0
  2846. data/files/sql/postgresql/expert/dynamic_sql_in_plpgsql.md +19 -0
  2847. data/files/sql/postgresql/expert/jsonb_gin_expression_indexes.md +17 -0
  2848. data/files/sql/postgresql/expert/logical_replication_setup.md +16 -0
  2849. data/files/sql/postgresql/expert/parallel_query_tuning.md +14 -0
  2850. data/files/sql/postgresql/expert/partition_pruning_and_wise_joins.md +23 -0
  2851. data/files/sql/postgresql/expert/postgres_fdw_foreign_data_wrapper.md +19 -0
  2852. data/files/sql/postgresql/expert/recursive_cte_graph_traversal.md +18 -0
  2853. data/files/sql/postgresql/expert/window_function_filter_clause.md +11 -0
  2854. data/files/sql/postgresql/middle/full_text_search.md +15 -0
  2855. data/files/sql/postgresql/middle/jsonb_query_indexing.md +13 -0
  2856. data/files/sql/postgresql/middle/lateral_joins_subqueries.md +13 -0
  2857. data/files/sql/postgresql/middle/materialized_views.md +15 -0
  2858. data/files/sql/postgresql/middle/partial_indexes.md +14 -0
  2859. data/files/sql/postgresql/middle/plpgsql_triggers_audit.md +29 -0
  2860. data/files/sql/postgresql/middle/recursive_cte_hierarchy.md +18 -0
  2861. data/files/sql/postgresql/middle/table_partitioning_range.md +16 -0
  2862. data/files/sql/postgresql/middle/upsert_on_conflict.md +11 -0
  2863. data/files/sql/postgresql/middle/window_functions_running_totals.md +12 -0
  2864. data/files/sql/sqlite/advanced/explain_query_planner.md +11 -0
  2865. data/files/sql/sqlite/advanced/fts5_full_text_search.md +20 -0
  2866. data/files/sql/sqlite/advanced/json1_extension.md +18 -0
  2867. data/files/sql/sqlite/advanced/partial_indexes.md +14 -0
  2868. data/files/sql/sqlite/advanced/pragma_performance_tuning.md +13 -0
  2869. data/files/sql/sqlite/advanced/recursive_ctes.md +14 -0
  2870. data/files/sql/sqlite/advanced/rtree_spatial_indexing.md +17 -0
  2871. data/files/sql/sqlite/advanced/upsert_on_conflict.md +17 -0
  2872. data/files/sql/sqlite/advanced/wal_journal_mode.md +13 -0
  2873. data/files/sql/sqlite/advanced/window_functions.md +16 -0
  2874. data/files/sql/sqlite/beginner/aggregate_functions.md +11 -0
  2875. data/files/sql/sqlite/beginner/basic_crud_operations.md +24 -0
  2876. data/files/sql/sqlite/beginner/creating_a_database.md +11 -0
  2877. data/files/sql/sqlite/beginner/creating_indexes.md +11 -0
  2878. data/files/sql/sqlite/beginner/limiting_results.md +11 -0
  2879. data/files/sql/sqlite/beginner/ordering_results.md +11 -0
  2880. data/files/sql/sqlite/beginner/selecting_specific_columns.md +8 -0
  2881. data/files/sql/sqlite/beginner/sqlite_installation.md +13 -0
  2882. data/files/sql/sqlite/beginner/using_transactions.md +13 -0
  2883. data/files/sql/sqlite/beginner/using_where_clause.md +14 -0
  2884. data/files/sql/sqlite/expert/custom_sql_functions_c.md +24 -0
  2885. data/files/sql/sqlite/expert/explain_query_plan_optimization.md +14 -0
  2886. data/files/sql/sqlite/expert/fts5_custom_tokenizer.md +13 -0
  2887. data/files/sql/sqlite/expert/json1_complex_queries.md +13 -0
  2888. data/files/sql/sqlite/expert/partial_expression_indexes.md +11 -0
  2889. data/files/sql/sqlite/expert/pragma_low_level_optimization.md +13 -0
  2890. data/files/sql/sqlite/expert/recursive_cte_hierarchical_queries.md +16 -0
  2891. data/files/sql/sqlite/expert/virtual_tables_external.md +13 -0
  2892. data/files/sql/sqlite/expert/wal_checkpoint_tuning.md +13 -0
  2893. data/files/sql/sqlite/expert/window_functions_analytics.md +14 -0
  2894. data/files/sql/sqlite/middle/common_table_expressions.md +20 -0
  2895. data/files/sql/sqlite/middle/fts5_full_text_search.md +17 -0
  2896. data/files/sql/sqlite/middle/json_functions.md +19 -0
  2897. data/files/sql/sqlite/middle/partial_indexes.md +12 -0
  2898. data/files/sql/sqlite/middle/pragma_performance_tuning.md +13 -0
  2899. data/files/sql/sqlite/middle/recursive_cte_hierarchy.md +16 -0
  2900. data/files/sql/sqlite/middle/timestamp_triggers.md +30 -0
  2901. data/files/sql/sqlite/middle/transaction_batching.md +13 -0
  2902. data/files/sql/sqlite/middle/upsert_on_conflict.md +15 -0
  2903. data/files/sql/sqlite/middle/window_functions_row_number.md +15 -0
  2904. data/lib/generators/get/smart/install_generator.rb +16 -0
  2905. data/lib/generators/get/smart/templates/get_smart.rb +29 -0
  2906. data/lib/get/smart/ai/generator.rb +194 -0
  2907. data/lib/get/smart/app_context.rb +20 -0
  2908. data/lib/get/smart/collection.rb +17 -0
  2909. data/lib/get/smart/learning_path.rb +37 -0
  2910. data/lib/get/smart/logic.rb +95 -0
  2911. data/lib/get/smart/memory.rb +38 -0
  2912. data/lib/get/smart/railtie.rb +26 -0
  2913. data/lib/get/smart/tip.rb +49 -0
  2914. data/lib/get/smart/topic.rb +12 -0
  2915. data/lib/get/smart/topics.rb +30 -0
  2916. data/lib/get/smart/version.rb +5 -0
  2917. data/lib/get/smart.rb +79 -0
  2918. data/lib/tasks/get/smart_tasks.rake +6 -0
  2919. metadata +3115 -0
metadata ADDED
@@ -0,0 +1,3115 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: get-smart
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ platform: ruby
6
+ authors:
7
+ - Igor Kasyanchuk
8
+ bindir: bin
9
+ cert_chain: []
10
+ date: 2025-05-03 00:00:00.000000000 Z
11
+ dependencies:
12
+ - !ruby/object:Gem::Dependency
13
+ name: rails
14
+ requirement: !ruby/object:Gem::Requirement
15
+ requirements:
16
+ - - ">="
17
+ - !ruby/object:Gem::Version
18
+ version: '0'
19
+ type: :runtime
20
+ prerelease: false
21
+ version_requirements: !ruby/object:Gem::Requirement
22
+ requirements:
23
+ - - ">="
24
+ - !ruby/object:Gem::Version
25
+ version: '0'
26
+ - !ruby/object:Gem::Dependency
27
+ name: tty-markdown
28
+ requirement: !ruby/object:Gem::Requirement
29
+ requirements:
30
+ - - ">="
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :runtime
34
+ prerelease: false
35
+ version_requirements: !ruby/object:Gem::Requirement
36
+ requirements:
37
+ - - ">="
38
+ - !ruby/object:Gem::Version
39
+ version: '0'
40
+ - !ruby/object:Gem::Dependency
41
+ name: tty-box
42
+ requirement: !ruby/object:Gem::Requirement
43
+ requirements:
44
+ - - ">="
45
+ - !ruby/object:Gem::Version
46
+ version: '0'
47
+ type: :runtime
48
+ prerelease: false
49
+ version_requirements: !ruby/object:Gem::Requirement
50
+ requirements:
51
+ - - ">="
52
+ - !ruby/object:Gem::Version
53
+ version: '0'
54
+ - !ruby/object:Gem::Dependency
55
+ name: tty-tree
56
+ requirement: !ruby/object:Gem::Requirement
57
+ requirements:
58
+ - - ">="
59
+ - !ruby/object:Gem::Version
60
+ version: '0'
61
+ type: :runtime
62
+ prerelease: false
63
+ version_requirements: !ruby/object:Gem::Requirement
64
+ requirements:
65
+ - - ">="
66
+ - !ruby/object:Gem::Version
67
+ version: '0'
68
+ - !ruby/object:Gem::Dependency
69
+ name: colorize
70
+ requirement: !ruby/object:Gem::Requirement
71
+ requirements:
72
+ - - ">="
73
+ - !ruby/object:Gem::Version
74
+ version: '0'
75
+ type: :runtime
76
+ prerelease: false
77
+ version_requirements: !ruby/object:Gem::Requirement
78
+ requirements:
79
+ - - ">="
80
+ - !ruby/object:Gem::Version
81
+ version: '0'
82
+ - !ruby/object:Gem::Dependency
83
+ name: rspec-rails
84
+ requirement: !ruby/object:Gem::Requirement
85
+ requirements:
86
+ - - ">="
87
+ - !ruby/object:Gem::Version
88
+ version: '0'
89
+ type: :development
90
+ prerelease: false
91
+ version_requirements: !ruby/object:Gem::Requirement
92
+ requirements:
93
+ - - ">="
94
+ - !ruby/object:Gem::Version
95
+ version: '0'
96
+ - !ruby/object:Gem::Dependency
97
+ name: debug
98
+ requirement: !ruby/object:Gem::Requirement
99
+ requirements:
100
+ - - ">="
101
+ - !ruby/object:Gem::Version
102
+ version: '0'
103
+ type: :development
104
+ prerelease: false
105
+ version_requirements: !ruby/object:Gem::Requirement
106
+ requirements:
107
+ - - ">="
108
+ - !ruby/object:Gem::Version
109
+ version: '0'
110
+ - !ruby/object:Gem::Dependency
111
+ name: wrapped_print
112
+ requirement: !ruby/object:Gem::Requirement
113
+ requirements:
114
+ - - ">="
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ type: :development
118
+ prerelease: false
119
+ version_requirements: !ruby/object:Gem::Requirement
120
+ requirements:
121
+ - - ">="
122
+ - !ruby/object:Gem::Version
123
+ version: '0'
124
+ - !ruby/object:Gem::Dependency
125
+ name: simplecov
126
+ requirement: !ruby/object:Gem::Requirement
127
+ requirements:
128
+ - - ">="
129
+ - !ruby/object:Gem::Version
130
+ version: '0'
131
+ type: :development
132
+ prerelease: false
133
+ version_requirements: !ruby/object:Gem::Requirement
134
+ requirements:
135
+ - - ">="
136
+ - !ruby/object:Gem::Version
137
+ version: '0'
138
+ - !ruby/object:Gem::Dependency
139
+ name: ruby-openai
140
+ requirement: !ruby/object:Gem::Requirement
141
+ requirements:
142
+ - - ">="
143
+ - !ruby/object:Gem::Version
144
+ version: '0'
145
+ type: :development
146
+ prerelease: false
147
+ version_requirements: !ruby/object:Gem::Requirement
148
+ requirements:
149
+ - - ">="
150
+ - !ruby/object:Gem::Version
151
+ version: '0'
152
+ - !ruby/object:Gem::Dependency
153
+ name: dotenv
154
+ requirement: !ruby/object:Gem::Requirement
155
+ requirements:
156
+ - - ">="
157
+ - !ruby/object:Gem::Version
158
+ version: '0'
159
+ type: :development
160
+ prerelease: false
161
+ version_requirements: !ruby/object:Gem::Requirement
162
+ requirements:
163
+ - - ">="
164
+ - !ruby/object:Gem::Version
165
+ version: '0'
166
+ description: Learn Ruby and Rails by examples
167
+ email:
168
+ - igorkasyanchuk@gmail.com
169
+ executables: []
170
+ extensions: []
171
+ extra_rdoc_files: []
172
+ files:
173
+ - MIT-LICENSE
174
+ - README.md
175
+ - Rakefile
176
+ - files/gems/acts-as-taggable-on/advanced/custom_delimiters_unicode_normalization.md
177
+ - files/gems/acts-as-taggable-on/advanced/optimize_tag_query_with_joins.md
178
+ - files/gems/acts-as-taggable-on/advanced/polymorphic_tagging_across_models.md
179
+ - files/gems/acts-as-taggable-on/beginner/add_tags_to_model.md
180
+ - files/gems/acts-as-taggable-on/beginner/query_tags.md
181
+ - files/gems/acts-as-taggable-on/beginner/setup_gem.md
182
+ - files/gems/acts-as-taggable-on/expert/advanced_search_and_caching.md
183
+ - files/gems/acts-as-taggable-on/expert/dynamic_tag_contexts.md
184
+ - files/gems/acts-as-taggable-on/expert/hierarchical_tags_with_ancestry.md
185
+ - files/gems/acts-as-taggable-on/middle/caching_tag_counts.md
186
+ - files/gems/acts-as-taggable-on/middle/multiple_tag_contexts.md
187
+ - files/gems/acts-as-taggable-on/middle/querying_tagged_models.md
188
+ - files/gems/bcrypt/advanced/add_pepper_to_bcrypt.md
189
+ - files/gems/bcrypt/advanced/async_password_rehash.md
190
+ - files/gems/bcrypt/advanced/dynamic_bcrypt_cost.md
191
+ - files/gems/bcrypt/beginner/bcrypt_authentication.md
192
+ - files/gems/bcrypt/beginner/bcrypt_installation.md
193
+ - files/gems/bcrypt/beginner/bcrypt_model_setup.md
194
+ - files/gems/bcrypt/expert/bcrypt_async_hashing.md
195
+ - files/gems/bcrypt/expert/bcrypt_legacy_migration.md
196
+ - files/gems/bcrypt/expert/bcrypt_pepper_cost_configuration.md
197
+ - files/gems/bcrypt/middle/bcrypt_custom_cost.md
198
+ - files/gems/bcrypt/middle/bcrypt_generate_and_verify.md
199
+ - files/gems/bcrypt/middle/bcrypt_rehash_on_login.md
200
+ - files/gems/chartkick/advanced/after_render_hook.md
201
+ - files/gems/chartkick/advanced/custom_tooltips_formatters.md
202
+ - files/gems/chartkick/advanced/multi_axis_charts.md
203
+ - files/gems/chartkick/advanced/streaming_via_action_cable.md
204
+ - files/gems/chartkick/beginner/basic_line_chart.md
205
+ - files/gems/chartkick/beginner/customize_chart_options.md
206
+ - files/gems/chartkick/beginner/multiple_series_bar_chart.md
207
+ - files/gems/chartkick/beginner/setup_chartkick.md
208
+ - files/gems/chartkick/expert/combo_charts_multiple_axes.md
209
+ - files/gems/chartkick/expert/custom_chartjs_library_options.md
210
+ - files/gems/chartkick/expert/dynamic_realtime_updates_with_actioncable.md
211
+ - files/gems/chartkick/expert/sql_cte_aggregation_for_large_datasets.md
212
+ - files/gems/chartkick/middle/ajax_refresh.md
213
+ - files/gems/chartkick/middle/custom_chart_options.md
214
+ - files/gems/chartkick/middle/group_by_period.md
215
+ - files/gems/chartkick/middle/multiple_series.md
216
+ - files/gems/counter_culture/advanced/dynamic_conditional_counters.md
217
+ - files/gems/counter_culture/advanced/weighted_counter_updates.md
218
+ - files/gems/counter_culture/beginner/counter_culture_basic_usage.md
219
+ - files/gems/counter_culture/beginner/counter_culture_setup.md
220
+ - files/gems/counter_culture/expert/batch_async_counter_updates.md
221
+ - files/gems/counter_culture/expert/multi_level_association_caching.md
222
+ - files/gems/counter_culture/middle/multiple_counter_usage.md
223
+ - files/gems/counter_culture/middle/scoped_comment_counter.md
224
+ - files/gems/devise/advanced/custom_password_strength_validator.md.md
225
+ - files/gems/devise/advanced/devise_jwt_integration.md.md
226
+ - files/gems/devise/advanced/dynamic_omniauth_providers.md.md
227
+ - files/gems/devise/advanced/multiple_user_scopes.md.md
228
+ - files/gems/devise/beginner/configure_routes.md
229
+ - files/gems/devise/beginner/customize_devise_views.md
230
+ - files/gems/devise/beginner/generate_user_model.md
231
+ - files/gems/devise/beginner/install_devise.md
232
+ - files/gems/devise/expert/custom_warden_2fa.md
233
+ - files/gems/devise/expert/dynamic_failure_app_handling.md
234
+ - files/gems/devise/expert/jwt_stateless_api.md
235
+ - files/gems/devise/expert/multi_tenant_authentication.md
236
+ - files/gems/devise/middle/custom_redirect_path.md
237
+ - files/gems/devise/middle/override_devise_controllers.md
238
+ - files/gems/devise/middle/permit_extra_params.md
239
+ - files/gems/devise/middle/rspec_devise_helpers.md
240
+ - files/gems/factory_bot_rails/advanced/advanced_polymorphic_traits.md
241
+ - files/gems/factory_bot_rails/advanced/custom_factorybot_strategy.md
242
+ - files/gems/factory_bot_rails/advanced/transient_dynamic_associations.md
243
+ - files/gems/factory_bot_rails/beginner/associations.md.md
244
+ - files/gems/factory_bot_rails/beginner/basic_factory_setup.md.md
245
+ - files/gems/factory_bot_rails/beginner/using_traits.md.md
246
+ - files/gems/factory_bot_rails/expert/after_create_callbacks_external_service_setup.md
247
+ - files/gems/factory_bot_rails/expert/custom_to_create_bulk_insert_strategy.md
248
+ - files/gems/factory_bot_rails/expert/transient_traits_dynamic_associations.md
249
+ - files/gems/factory_bot_rails/middle/association_strategies.md
250
+ - files/gems/factory_bot_rails/middle/unique_sequences.md
251
+ - files/gems/factory_bot_rails/middle/use_traits.md
252
+ - files/gems/faker/advanced/custom_provider.md
253
+ - files/gems/faker/advanced/multilingual_data.md
254
+ - files/gems/faker/advanced/seed_reproducibility.md
255
+ - files/gems/faker/beginner/faker_in_tests.md
256
+ - files/gems/faker/beginner/installing_faker_gem.md
257
+ - files/gems/faker/beginner/seeding_with_faker.md
258
+ - files/gems/faker/expert/concurrent_load_testing.md.md
259
+ - files/gems/faker/expert/custom_faker_provider.md.md
260
+ - files/gems/faker/expert/dynamic_locale_fallback.md.md
261
+ - files/gems/faker/middle/faker_locale_configuration.md
262
+ - files/gems/faker/middle/faker_unique_generator.md
263
+ - files/gems/faker/middle/faker_with_factorybot.md
264
+ - files/gems/faraday/advanced/faraday_custom_hmac_middleware.md
265
+ - files/gems/faraday/advanced/faraday_retry_exponential_backoff.md
266
+ - files/gems/faraday/beginner/faraday_get_request.md
267
+ - files/gems/faraday/beginner/faraday_install_config.md
268
+ - files/gems/faraday/expert/custom_instrumentation_middleware.md
269
+ - files/gems/faraday/expert/thread_safe_connection_pool.md
270
+ - files/gems/faraday/middle/custom_middleware_integration.md
271
+ - files/gems/faraday/middle/timeouts_and_retries.md
272
+ - files/gems/flipper/advanced/consistent_percentage_rollout.md
273
+ - files/gems/flipper/advanced/custom_actor_groups.md
274
+ - files/gems/flipper/beginner/flipper_basic_toggle.md
275
+ - files/gems/flipper/beginner/flipper_setup.md
276
+ - files/gems/flipper/expert/custom_instrumentation_statsd.md
277
+ - files/gems/flipper/expert/multi_region_adapter.md
278
+ - files/gems/flipper/middle/flipper_custom_user_groups.md
279
+ - files/gems/flipper/middle/flipper_percentage_rollout.md
280
+ - files/gems/geocoder/advanced/geocoder_caching_and_fallback_strategies.md
281
+ - files/gems/geocoder/advanced/polymorphic_geocoding_multiple_models.md
282
+ - files/gems/geocoder/advanced/postgis_high_performance_queries.md
283
+ - files/gems/geocoder/beginner/geocoder_install.md
284
+ - files/gems/geocoder/beginner/geocoder_model_setup.md
285
+ - files/gems/geocoder/beginner/geocoder_reverse_usage.md
286
+ - files/gems/geocoder/expert/bulk_reverse_geocoding_sidekiq.md
287
+ - files/gems/geocoder/expert/optimized_distance_sql.md
288
+ - files/gems/geocoder/expert/postgis_advanced_queries.md
289
+ - files/gems/geocoder/middle/customizing_geocoder_config.md
290
+ - files/gems/geocoder/middle/distance_queries_near_scope.md
291
+ - files/gems/geocoder/middle/model_geocoding_setup.md
292
+ - files/gems/httparty/advanced/custom_httparty_parser.md
293
+ - files/gems/httparty/advanced/httparty_with_retry.md
294
+ - files/gems/httparty/beginner/basic_get_request.md
295
+ - files/gems/httparty/beginner/query_params_usage.md
296
+ - files/gems/httparty/expert/httparty_persistent_connections.md
297
+ - files/gems/httparty/expert/httparty_typhoeus_adapter.md
298
+ - files/gems/httparty/middle/httparty_dynamic_query_params.md
299
+ - files/gems/httparty/middle/httparty_reusable_client.md
300
+ - files/gems/image_processing/advanced/custom_watermark_processor.md
301
+ - files/gems/image_processing/advanced/persistent_variant_cache.md
302
+ - files/gems/image_processing/advanced/streaming_variants.md
303
+ - files/gems/image_processing/beginner/convert_format_thumbnail.md
304
+ - files/gems/image_processing/beginner/generate_resized_variant.md
305
+ - files/gems/image_processing/beginner/install_image_processing.md
306
+ - files/gems/image_processing/expert/advanced_caching_strategies.md
307
+ - files/gems/image_processing/expert/custom_mini_magick_operations.md
308
+ - files/gems/image_processing/expert/parallel_processing_pipeline.md
309
+ - files/gems/image_processing/middle/background_processing.md
310
+ - files/gems/image_processing/middle/chain_transformations.md
311
+ - files/gems/image_processing/middle/variants_resizing_format.md
312
+ - files/gems/mini_magick/advanced/composite_with_masks.md
313
+ - files/gems/mini_magick/advanced/multi_page_document_processing.md
314
+ - files/gems/mini_magick/advanced/stream_processing.md
315
+ - files/gems/mini_magick/beginner/convert_and_crop.md
316
+ - files/gems/mini_magick/beginner/install_and_setup.md
317
+ - files/gems/mini_magick/beginner/resize_image.md
318
+ - files/gems/mini_magick/expert/gif_optimization_pipeline.md
319
+ - files/gems/mini_magick/expert/pdf_multipage_annotation.md
320
+ - files/gems/mini_magick/expert/streaming_image_pipelining.md
321
+ - files/gems/mini_magick/middle/conditional_resize.md
322
+ - files/gems/mini_magick/middle/in_memory_processing.md
323
+ - files/gems/mini_magick/middle/optimize_and_compress.md
324
+ - files/gems/pundit/advanced/dynamic_policy_scopes.md
325
+ - files/gems/pundit/advanced/graphql_field_authorization.md
326
+ - files/gems/pundit/beginner/pundit_basic_policy_usage.md
327
+ - files/gems/pundit/beginner/pundit_install_setup.md
328
+ - files/gems/pundit/expert/pundit_dynamic_context_scopes.md
329
+ - files/gems/pundit/expert/pundit_rspec_custom_matchers.md
330
+ - files/gems/pundit/middle/policy_scope_in_controller.md
331
+ - files/gems/pundit/middle/verify_authorization_callbacks.md
332
+ - files/gems/ransack/advanced/custom_ransacker_computed_fields.md
333
+ - files/gems/ransack/advanced/define_custom_predicates.md
334
+ - files/gems/ransack/advanced/nested_association_query.md
335
+ - files/gems/ransack/beginner/basic_search_form.md
336
+ - files/gems/ransack/beginner/multi_field_search.md
337
+ - files/gems/ransack/beginner/sorting_results.md
338
+ - files/gems/ransack/expert/complex_arel_ransacker_full_name.md
339
+ - files/gems/ransack/expert/dynamic_whitelisting_ransackable_scopes.md
340
+ - files/gems/ransack/expert/postgres_full_text_search_predicate.md
341
+ - files/gems/ransack/middle/ransack_association_search.md
342
+ - files/gems/ransack/middle/ransack_group_or_conditions.md
343
+ - files/gems/ransack/middle/ransack_sort_pagination.md
344
+ - files/gems/redis/advanced/redis_cluster_integration.md
345
+ - files/gems/redis/advanced/redis_pubsub_connection_pool.md
346
+ - files/gems/redis/advanced/redis_redlock_distributed_locks.md
347
+ - files/gems/redis/advanced/redis_streams_event_sourcing.md
348
+ - files/gems/redis/beginner/connecting_to_redis.md
349
+ - files/gems/redis/beginner/set_and_get_keys.md
350
+ - files/gems/redis/beginner/setting_key_expiration.md
351
+ - files/gems/redis/beginner/working_with_lists.md
352
+ - files/gems/redis/expert/redis_hyperloglog_unique_counts.md
353
+ - files/gems/redis/expert/redis_lua_atomic_operations.md
354
+ - files/gems/redis/expert/redis_redlock_distributed_lock.md
355
+ - files/gems/redis/expert/redis_streams_event_sourcing.md
356
+ - files/gems/redis/middle/distributed_lock_redlock.md
357
+ - files/gems/redis/middle/fragment_caching_redis.md
358
+ - files/gems/redis/middle/rate_limiter_redis.md
359
+ - files/gems/redis/middle/session_store_redis.md
360
+ - files/gems/rspec/advanced/around_hooks_for_transactions.md
361
+ - files/gems/rspec/advanced/composite_matcher_operators.md
362
+ - files/gems/rspec/advanced/custom_matcher_chainable.md
363
+ - files/gems/rspec/advanced/filtering_by_custom_tags.md
364
+ - files/gems/rspec/advanced/let_lazy_loaded_dependencies.md
365
+ - files/gems/rspec/advanced/monkey_patch_rspec_dsl.md
366
+ - files/gems/rspec/advanced/profiling_slow_specs.md
367
+ - files/gems/rspec/advanced/rspec_configuration_overrides.md
368
+ - files/gems/rspec/advanced/shared_contexts_with_metadata.md
369
+ - files/gems/rspec/advanced/verifying_partial_doubles.md
370
+ - files/gems/rspec/beginner/rspec_after_hooks.md
371
+ - files/gems/rspec/beginner/rspec_before_hooks.md
372
+ - files/gems/rspec/beginner/rspec_common_matchers.md
373
+ - files/gems/rspec/beginner/rspec_describe_blocks.md
374
+ - files/gems/rspec/beginner/rspec_focus_tag.md
375
+ - files/gems/rspec/beginner/rspec_it_blocks.md
376
+ - files/gems/rspec/beginner/rspec_let_usage.md
377
+ - files/gems/rspec/beginner/rspec_setup.md
378
+ - files/gems/rspec/beginner/rspec_shared_examples.md
379
+ - files/gems/rspec/beginner/rspec_subject_definition.md
380
+ - files/gems/rspec/custom_matchers/advanced/chainable_custom_matchers.md
381
+ - files/gems/rspec/custom_matchers/advanced/diffable_custom_matchers.md
382
+ - files/gems/rspec/custom_matchers/advanced/parameterized_block_matchers.md
383
+ - files/gems/rspec/custom_matchers/beginner/basic_custom_matcher.md
384
+ - files/gems/rspec/custom_matchers/beginner/custom_failure_message.md
385
+ - files/gems/rspec/custom_matchers/beginner/parameterized_custom_matcher.md
386
+ - files/gems/rspec/custom_matchers/expert/diffable_block_expectations.md.md
387
+ - files/gems/rspec/custom_matchers/expert/dynamic_chaining_matchers.md.md
388
+ - files/gems/rspec/custom_matchers/expert/metaprogramming_driven_matchers.md.md
389
+ - files/gems/rspec/custom_matchers/middle/chained_custom_matcher.md
390
+ - files/gems/rspec/custom_matchers/middle/custom_failure_messages.md
391
+ - files/gems/rspec/custom_matchers/middle/parameterized_range_matcher.md
392
+ - files/gems/rspec/expert/advanced_const_mocking.md
393
+ - files/gems/rspec/expert/custom_composable_matchers.md
394
+ - files/gems/rspec/expert/custom_formatters.md
395
+ - files/gems/rspec/expert/hook_order_customization.md
396
+ - files/gems/rspec/expert/metadata_dynamic_test_generation.md
397
+ - files/gems/rspec/expert/parallel_testing_db_sharding.md
398
+ - files/gems/rspec/expert/parametrized_shared_examples.md
399
+ - files/gems/rspec/expert/performance_profiling.md
400
+ - files/gems/rspec/expert/vcr_webmock_advanced.md
401
+ - files/gems/rspec/hooks_and_lifecycle/advanced/metadata_conditional_hooks.md
402
+ - files/gems/rspec/hooks_and_lifecycle/advanced/orchestrating_external_service.md
403
+ - files/gems/rspec/hooks_and_lifecycle/advanced/transactional_time_travel.md
404
+ - files/gems/rspec/hooks_and_lifecycle/beginner/rspec_after_hook.md
405
+ - files/gems/rspec/hooks_and_lifecycle/beginner/rspec_around_hook.md
406
+ - files/gems/rspec/hooks_and_lifecycle/beginner/rspec_before_hook.md
407
+ - files/gems/rspec/hooks_and_lifecycle/expert/around_each_instrumentation.md
408
+ - files/gems/rspec/hooks_and_lifecycle/expert/metadata_based_hooks.md
409
+ - files/gems/rspec/hooks_and_lifecycle/expert/prepend_hooks_module.md
410
+ - files/gems/rspec/hooks_and_lifecycle/middle/around_hooks_custom_setup.md
411
+ - files/gems/rspec/hooks_and_lifecycle/middle/metadata_filtered_hooks.md
412
+ - files/gems/rspec/hooks_and_lifecycle/middle/shared_context_lifecycle.md
413
+ - files/gems/rspec/middle/aggregate_failures.md
414
+ - files/gems/rspec/middle/around_hooks.md
415
+ - files/gems/rspec/middle/custom_matchers.md
416
+ - files/gems/rspec/middle/instance_double_usage.md
417
+ - files/gems/rspec/middle/let_vs_let_bang.md
418
+ - files/gems/rspec/middle/leveraging_contexts.md
419
+ - files/gems/rspec/middle/named_subject.md
420
+ - files/gems/rspec/middle/shared_examples_usage.md
421
+ - files/gems/rspec/middle/tagged_examples_filtering.md
422
+ - files/gems/rspec/middle/verifying_partial_doubles.md
423
+ - files/gems/rspec/mocks_and_stubs/advanced/instance_double_interface.md
424
+ - files/gems/rspec/mocks_and_stubs/advanced/nested_doubles_for_complex_dependencies.md
425
+ - files/gems/rspec/mocks_and_stubs/advanced/partial_spy_mocks.md
426
+ - files/gems/rspec/mocks_and_stubs/advanced/sequential_return_values.md
427
+ - files/gems/rspec/mocks_and_stubs/advanced/stub_private_methods.md
428
+ - files/gems/rspec/mocks_and_stubs/beginner/argument_matching_stub.md
429
+ - files/gems/rspec/mocks_and_stubs/beginner/chain_method_stub.md
430
+ - files/gems/rspec/mocks_and_stubs/beginner/instance_double_usage.md
431
+ - files/gems/rspec/mocks_and_stubs/beginner/mock_expectation_receive.md
432
+ - files/gems/rspec/mocks_and_stubs/beginner/stub_return_value.md
433
+ - files/gems/rspec/mocks_and_stubs/expert/class_spy_on_new_with_and_call_original.md
434
+ - files/gems/rspec/mocks_and_stubs/expert/complex_block_yields_with_and_yield.md
435
+ - files/gems/rspec/mocks_and_stubs/expert/stub_private_methods_with_prepend.md
436
+ - files/gems/rspec/mocks_and_stubs/expert/verifying_module_methods_with_class_double.md
437
+ - files/gems/rspec/mocks_and_stubs/expert/wrap_original_with_and_wrap_original.md
438
+ - files/gems/rspec/mocks_and_stubs/middle/instance_double_strict_interface.md
439
+ - files/gems/rspec/mocks_and_stubs/middle/sequential_return_values.md
440
+ - files/gems/rspec/mocks_and_stubs/middle/stubbing_chained_methods.md
441
+ - files/gems/rspec/mocks_and_stubs/middle/using_spies_for_assertions.md
442
+ - files/gems/rspec/mocks_and_stubs/middle/yielding_block_methods.md
443
+ - files/gems/rspec/shared_examples/advanced/metadata_filtered_shared_examples.md
444
+ - files/gems/rspec/shared_examples/advanced/parameterized_shared_examples_dsl.md
445
+ - files/gems/rspec/shared_examples/beginner/shared_examples_dry_specs.md
446
+ - files/gems/rspec/shared_examples/beginner/shared_examples_with_arguments.md
447
+ - files/gems/rspec/shared_examples/expert/dynamic_shared_examples_with_metadata.md
448
+ - files/gems/rspec/shared_examples/expert/parameterized_shared_examples_with_dynamic_classes.md
449
+ - files/gems/rspec/shared_examples/middle/shared_examples_basic_usage.md
450
+ - files/gems/rspec/shared_examples/middle/shared_examples_parameterized_usage.md
451
+ - files/gems/ruby-openai/advanced/batch_embeddings_async.md
452
+ - files/gems/ruby-openai/advanced/function_calling_advanced.md
453
+ - files/gems/ruby-openai/advanced/streaming_chat_responses.md
454
+ - files/gems/ruby-openai/beginner/handle_errors_gracefully.md
455
+ - files/gems/ruby-openai/beginner/setup_ruby_openai.md
456
+ - files/gems/ruby-openai/beginner/simple_chat_request.md
457
+ - files/gems/ruby-openai/expert/advanced_streaming_with_backpressure.md
458
+ - files/gems/ruby-openai/expert/dynamic_function_call_management.md
459
+ - files/gems/ruby-openai/expert/high_throughput_rate_limited_requests.md
460
+ - files/gems/ruby-openai/middle/handle_rate_limit_retries.md
461
+ - files/gems/ruby-openai/middle/parallel_requests.md
462
+ - files/gems/ruby-openai/middle/streaming_responses.md
463
+ - files/gems/sidekiq/advanced/batch_orchestration.md
464
+ - files/gems/sidekiq/advanced/custom_retry_backoff.md
465
+ - files/gems/sidekiq/advanced/custom_server_middleware.md
466
+ - files/gems/sidekiq/advanced/rate_limiting_concurrency.md
467
+ - files/gems/sidekiq/advanced/unique_job_locking.md
468
+ - files/gems/sidekiq/beginner/create_basic_worker.md
469
+ - files/gems/sidekiq/beginner/enqueue_job_from_controller.md
470
+ - files/gems/sidekiq/beginner/monitor_sidekiq_web_ui.md
471
+ - files/gems/sidekiq/beginner/pass_arguments_to_worker.md
472
+ - files/gems/sidekiq/beginner/setup_sidekiq_in_rails.md
473
+ - files/gems/sidekiq/expert/sidekiq_batch_chaining.md
474
+ - files/gems/sidekiq/expert/sidekiq_dynamic_autoscaling.md
475
+ - files/gems/sidekiq/expert/sidekiq_opentelemetry_middleware.md
476
+ - files/gems/sidekiq/expert/sidekiq_retry_jitter.md
477
+ - files/gems/sidekiq/expert/sidekiq_tenant_isolation_namespace.md
478
+ - files/gems/sidekiq/middle/sidekiq_batch_grouping.md
479
+ - files/gems/sidekiq/middle/sidekiq_custom_middleware.md
480
+ - files/gems/sidekiq/middle/sidekiq_custom_retry.md
481
+ - files/gems/sidekiq/middle/sidekiq_schedule_jobs.md
482
+ - files/gems/sidekiq/middle/sidekiq_testing_in_rspec.md
483
+ - files/gems/simple_form/advanced/custom_rich_text_input.md
484
+ - files/gems/simple_form/advanced/custom_wrappers.md
485
+ - files/gems/simple_form/advanced/nested_associations_cocoon.md
486
+ - files/gems/simple_form/beginner/simple_form_basic_form.md
487
+ - files/gems/simple_form/beginner/simple_form_customizing_inputs.md
488
+ - files/gems/simple_form/beginner/simple_form_installation.md
489
+ - files/gems/simple_form/expert/custom_formbuilder_macros.md
490
+ - files/gems/simple_form/expert/custom_js_widget_wrapper.md
491
+ - files/gems/simple_form/expert/dynamic_nested_associations.md
492
+ - files/gems/simple_form/middle/collection_inputs.md
493
+ - files/gems/simple_form/middle/custom_input_wrapper.md
494
+ - files/gems/simple_form/middle/html_attribute_customization.md
495
+ - files/gems/solid_queue/advanced/advanced_custom_middleware_integration.md.md
496
+ - files/gems/solid_queue/advanced/advanced_dynamic_worker_routing.md.md
497
+ - files/gems/solid_queue/advanced/advanced_exponential_backoff.md.md
498
+ - files/gems/solid_queue/beginner/define_and_enqueue_job.md
499
+ - files/gems/solid_queue/beginner/install_and_configure.md
500
+ - files/gems/solid_queue/beginner/schedule_job_future.md
501
+ - files/gems/solid_queue/expert/atomic_job_deduplication.md
502
+ - files/gems/solid_queue/expert/dynamic_queue_sharding.md
503
+ - files/gems/solid_queue/expert/kafka_broker_implementation.md
504
+ - files/gems/solid_queue/middle/batch_enqueueing.md
505
+ - files/gems/solid_queue/middle/custom_queue_configuration.md
506
+ - files/gems/solid_queue/middle/error_handling_and_retries.md
507
+ - files/gems/vcr/advanced/vcr_custom_hooks.md
508
+ - files/gems/vcr/advanced/vcr_custom_request_matching.md
509
+ - files/gems/vcr/beginner/basic_cassette_usage.md
510
+ - files/gems/vcr/beginner/install_and_configure_vcr.md
511
+ - files/gems/vcr/expert/vcr_custom_persister_and_serializer.md
512
+ - files/gems/vcr/expert/vcr_deep_request_matching_and_hooks.md
513
+ - files/gems/vcr/middle/custom_request_matchers.md
514
+ - files/gems/vcr/middle/dynamic_cassette_naming.md
515
+ - files/gems/view_component/advanced/nested_slots.md
516
+ - files/gems/view_component/advanced/precompile_and_cache.md
517
+ - files/gems/view_component/advanced/system_arguments.md
518
+ - files/gems/view_component/advanced/testing_with_rspec.md
519
+ - files/gems/view_component/advanced/turbo_stream_integration.md
520
+ - files/gems/view_component/beginner/view_component_installation.md
521
+ - files/gems/view_component/beginner/view_component_passing_props.md
522
+ - files/gems/view_component/beginner/view_component_rendering.md
523
+ - files/gems/view_component/beginner/view_component_slots.md
524
+ - files/gems/view_component/beginner/view_component_testing.md
525
+ - files/gems/view_component/expert/advanced_fragment_caching.md
526
+ - files/gems/view_component/expert/deep_testing_with_matchers.md
527
+ - files/gems/view_component/expert/dynamic_slots_composition.md
528
+ - files/gems/view_component/expert/hotwire_stimulus_integration.md
529
+ - files/gems/view_component/expert/instrumentation_and_profiling.md
530
+ - files/gems/view_component/middle/component_caching.md
531
+ - files/gems/view_component/middle/previewing_components.md
532
+ - files/gems/view_component/middle/styling_with_css_modules.md
533
+ - files/gems/view_component/middle/testing_components_with_rspec.md
534
+ - files/gems/view_component/middle/using_slots.md
535
+ - files/gems/webmock/advanced/custom_request_matchers_and_callbacks.md
536
+ - files/gems/webmock/advanced/stub_dynamic_request_patterns.md
537
+ - files/gems/webmock/beginner/stub_get_requests.md
538
+ - files/gems/webmock/beginner/verify_http_requests.md
539
+ - files/gems/webmock/expert/chunked_streaming_response.md
540
+ - files/gems/webmock/expert/dynamic_request_block_stub.md
541
+ - files/gems/webmock/middle/match_requests_by_headers.md
542
+ - files/gems/webmock/middle/stub_dynamic_urls_regex.md
543
+ - files/javascript/hotwire/advanced/advanced_turbo_stream_targets.md
544
+ - files/javascript/hotwire/advanced/custom_turbo_stream_action.md
545
+ - files/javascript/hotwire/advanced/dynamic_turbo_frame_source.md
546
+ - files/javascript/hotwire/advanced/dynamic_turbo_stream_templates.md
547
+ - files/javascript/hotwire/advanced/freeze_frame_for_modals.md
548
+ - files/javascript/hotwire/advanced/global_turbo_progress_bar.md
549
+ - files/javascript/hotwire/advanced/incremental_updates_with_turbo_streams.md
550
+ - files/javascript/hotwire/advanced/intercepting_turbo_requests.md
551
+ - files/javascript/hotwire/advanced/override_form_submission_turbo.md
552
+ - files/javascript/hotwire/advanced/stimulus_and_turbo_combination.md
553
+ - files/javascript/hotwire/advanced/stimulus_lifecycle_management.md
554
+ - files/javascript/hotwire/advanced/stimulus_mutation_observer.md
555
+ - files/javascript/hotwire/advanced/streaming_large_payloads.md
556
+ - files/javascript/hotwire/advanced/turbo_error_handling.md
557
+ - files/javascript/hotwire/advanced/turbo_frame_preload_cache.md
558
+ - files/javascript/hotwire/advanced/turbo_native_integration.md
559
+ - files/javascript/hotwire/beginner/basic_stimulus_controller.md
560
+ - files/javascript/hotwire/beginner/basic_turbo_frame.md
561
+ - files/javascript/hotwire/beginner/disable_turbo_drive_on_link.md
562
+ - files/javascript/hotwire/beginner/importmap_pin_turbo.md
563
+ - files/javascript/hotwire/beginner/install_hotwire.md
564
+ - files/javascript/hotwire/beginner/install_stimulus.md
565
+ - files/javascript/hotwire/beginner/render_turbo_stream_response.md
566
+ - files/javascript/hotwire/beginner/stimulus_actions.md
567
+ - files/javascript/hotwire/beginner/stimulus_targets.md
568
+ - files/javascript/hotwire/beginner/stimulus_values.md
569
+ - files/javascript/hotwire/beginner/target_turbo_frame_navigation.md
570
+ - files/javascript/hotwire/beginner/turbo_form_remote_submission.md
571
+ - files/javascript/hotwire/beginner/turbo_programmatic_navigation.md
572
+ - files/javascript/hotwire/beginner/turbo_stream_append.md
573
+ - files/javascript/hotwire/beginner/turbo_stream_remove.md
574
+ - files/javascript/hotwire/expert/stimulus_reflex_hotwire.md
575
+ - files/javascript/hotwire/expert/stimulus_turbo_event_bridge.md
576
+ - files/javascript/hotwire/expert/turbo_auth_redirect_handling.md
577
+ - files/javascript/hotwire/expert/turbo_cable_namespace.md
578
+ - files/javascript/hotwire/expert/turbo_cache_control.md
579
+ - files/javascript/hotwire/expert/turbo_custom_validation.md
580
+ - files/javascript/hotwire/expert/turbo_debugging_profiling.md
581
+ - files/javascript/hotwire/expert/turbo_direct_upload_progress.md
582
+ - files/javascript/hotwire/expert/turbo_fragment_caching.md
583
+ - files/javascript/hotwire/expert/turbo_frame_lazy_load.md
584
+ - files/javascript/hotwire/expert/turbo_low_level_api.md
585
+ - files/javascript/hotwire/expert/turbo_native_mobile.md
586
+ - files/javascript/hotwire/expert/turbo_optimistic_ui.md
587
+ - files/javascript/hotwire/expert/turbo_stream_batch_updates.md
588
+ - files/javascript/hotwire/expert/turbo_stream_websocket_integration.md
589
+ - files/javascript/stimulus/advanced/conditional_controller_activation.md
590
+ - files/javascript/stimulus/advanced/controller_mixins.md
591
+ - files/javascript/stimulus/advanced/dynamic_controller_composition.md
592
+ - files/javascript/stimulus/advanced/dynamic_outlets_binding.md
593
+ - files/javascript/stimulus/advanced/event_delegation_custom_actions.md
594
+ - files/javascript/stimulus/advanced/imperative_controller_api.md
595
+ - files/javascript/stimulus/advanced/lazy_loading_controllers.md
596
+ - files/javascript/stimulus/advanced/lifecycle_frame_callbacks.md
597
+ - files/javascript/stimulus/advanced/mutation_observer_adapter.md
598
+ - files/javascript/stimulus/advanced/nested_controllers_target_delegation.md
599
+ - files/javascript/stimulus/advanced/scss_class_map.md
600
+ - files/javascript/stimulus/advanced/stimulus_testing_helpers.md
601
+ - files/javascript/stimulus/advanced/turbo_streams_integration.md
602
+ - files/javascript/stimulus/advanced/typescript_decorator_integration.md
603
+ - files/javascript/stimulus/advanced/value_change_observers.md
604
+ - files/javascript/stimulus/beginner/actions_events.md
605
+ - files/javascript/stimulus/beginner/connect_disconnect.md
606
+ - files/javascript/stimulus/beginner/connect_html_controller.md
607
+ - files/javascript/stimulus/beginner/create_controller.md
608
+ - files/javascript/stimulus/beginner/data_attributes_usage.md
609
+ - files/javascript/stimulus/beginner/debounce_events.md
610
+ - files/javascript/stimulus/beginner/debug_with_console.md
611
+ - files/javascript/stimulus/beginner/event_modifiers.md
612
+ - files/javascript/stimulus/beginner/initialize_method.md
613
+ - files/javascript/stimulus/beginner/install_stimulus.md
614
+ - files/javascript/stimulus/beginner/manipulating_classes.md
615
+ - files/javascript/stimulus/beginner/multiple_controllers.md
616
+ - files/javascript/stimulus/beginner/using_targets.md
617
+ - files/javascript/stimulus/beginner/using_values.md
618
+ - files/javascript/stimulus/expert/composable_controllers.md
619
+ - files/javascript/stimulus/expert/custom_target_decorators.md
620
+ - files/javascript/stimulus/expert/dynamic_import.md
621
+ - files/javascript/stimulus/expert/graphql_subscriptions.md
622
+ - files/javascript/stimulus/expert/high_freq_events.md
623
+ - files/javascript/stimulus/expert/lifecycle_hooks.md
624
+ - files/javascript/stimulus/expert/modal_lazy_connect.md
625
+ - files/javascript/stimulus/expert/nested_controller_comm.md
626
+ - files/javascript/stimulus/expert/proxy_action_middleware.md
627
+ - files/javascript/stimulus/expert/server_sent_events.md
628
+ - files/javascript/stimulus/expert/state_machine.md
629
+ - files/javascript/stimulus/expert/threejs_integration.md
630
+ - files/javascript/stimulus/expert/value_types_map.md
631
+ - files/javascript/stimulus/expert/weakmap_memory_opt.md
632
+ - files/javascript/stimulus/expert/webworker_integration.md
633
+ - files/javascript/stimulus/middle/actioncable_integration.md
634
+ - files/javascript/stimulus/middle/async_fetch_requests.md
635
+ - files/javascript/stimulus/middle/cleanup_event_listeners.md
636
+ - files/javascript/stimulus/middle/css_class_management.md
637
+ - files/javascript/stimulus/middle/custom_actions_with_modifiers.md
638
+ - files/javascript/stimulus/middle/debugging_with_inspector.md
639
+ - files/javascript/stimulus/middle/dynamic_controller_loading.md
640
+ - files/javascript/stimulus/middle/dynamic_values.md
641
+ - files/javascript/stimulus/middle/event_throttling.md
642
+ - files/javascript/stimulus/middle/lifecycle_callbacks.md
643
+ - files/javascript/stimulus/middle/nested_targets.md
644
+ - files/javascript/stimulus/middle/testing_controllers_with_jest.md
645
+ - files/javascript/stimulus/middle/theming_with_data_controllers.md
646
+ - files/javascript/stimulus/middle/turbo_frames_integration.md
647
+ - files/javascript/stimulus/middle/value_change_callbacks.md
648
+ - files/javascript/turbo/advanced/advanced_error_handling_streams.md
649
+ - files/javascript/turbo/advanced/custom_form_submission_frame.md
650
+ - files/javascript/turbo/advanced/custom_turbo_stream_actions.md
651
+ - files/javascript/turbo/advanced/dynamic_module_loading_in_streams.md
652
+ - files/javascript/turbo/advanced/intercept_modify_requests.md
653
+ - files/javascript/turbo/advanced/lazy_load_turbo_frame.md
654
+ - files/javascript/turbo/advanced/performance_debounce_turbo_calls.md
655
+ - files/javascript/turbo/advanced/prefetching_links_turbo.md
656
+ - files/javascript/turbo/advanced/preload_turbo_frames_on_hover.md
657
+ - files/javascript/turbo/advanced/react_turbo_integration.md
658
+ - files/javascript/turbo/advanced/secure_turbo_endpoints.md
659
+ - files/javascript/turbo/advanced/turbo_caching_invalidation.md
660
+ - files/javascript/turbo/advanced/turbo_stimulus_integration.md
661
+ - files/javascript/turbo/advanced/turbo_stream_multiplexing.md
662
+ - files/javascript/turbo/advanced/websocket_turbo_streams.md
663
+ - files/javascript/turbo/beginner/basic_turbo_frame.md
664
+ - files/javascript/turbo/beginner/customize_turbo_visit.md
665
+ - files/javascript/turbo/beginner/disable_turbo_on_link.md
666
+ - files/javascript/turbo/beginner/enable_turbo_on_form.md
667
+ - files/javascript/turbo/beginner/file_upload_with_turbo.md
668
+ - files/javascript/turbo/beginner/install_turbo_js.md
669
+ - files/javascript/turbo/beginner/manual_turbo_load.md
670
+ - files/javascript/turbo/beginner/progress_indicator.md
671
+ - files/javascript/turbo/beginner/simple_turbo_stream.md
672
+ - files/javascript/turbo/beginner/turbo_before_fetch_request.md
673
+ - files/javascript/turbo/beginner/turbo_cache_navigation.md
674
+ - files/javascript/turbo/beginner/turbo_debug_mode.md
675
+ - files/javascript/turbo/beginner/turbo_error_handling.md
676
+ - files/javascript/turbo/beginner/turbo_event_listeners.md
677
+ - files/javascript/turbo/beginner/turbo_restore_scroll.md
678
+ - files/javascript/turbo/expert/turbo_cache_optimization.md
679
+ - files/javascript/turbo/expert/turbo_frame_lazy_loading.md
680
+ - files/javascript/turbo/expert/turbo_frame_nested_navigation.md
681
+ - files/javascript/turbo/expert/turbo_management_multiple_frames.md
682
+ - files/javascript/turbo/expert/turbo_native_mobile_integration.md
683
+ - files/javascript/turbo/expert/turbo_prefetch_and_prerender.md
684
+ - files/javascript/turbo/expert/turbo_rendering_performance.md
685
+ - files/javascript/turbo/expert/turbo_security_csp.md
686
+ - files/javascript/turbo/expert/turbo_stream_broadcasting.md
687
+ - files/javascript/turbo/expert/turbo_stream_chunked_uploads.md
688
+ - files/javascript/turbo/expert/turbo_stream_client_hooks.md
689
+ - files/javascript/turbo/expert/turbo_stream_complex_selectors.md
690
+ - files/javascript/turbo/expert/turbo_stream_continuous_updates.md
691
+ - files/javascript/turbo/expert/turbo_stream_streaming_response.md
692
+ - files/javascript/turbo/middle/turbo_abort_navigation.md
693
+ - files/javascript/turbo/middle/turbo_broadcast_streams.md
694
+ - files/javascript/turbo/middle/turbo_connect_stream_source.md
695
+ - files/javascript/turbo/middle/turbo_control_navigation.md
696
+ - files/javascript/turbo/middle/turbo_custom_progress_bar.md
697
+ - files/javascript/turbo/middle/turbo_custom_stream_action.md
698
+ - files/javascript/turbo/middle/turbo_debug_logging.md
699
+ - files/javascript/turbo/middle/turbo_form_intercept.md
700
+ - files/javascript/turbo/middle/turbo_frame_cache.md
701
+ - files/javascript/turbo/middle/turbo_frame_manipulation_js.md
702
+ - files/javascript/turbo/middle/turbo_inject_streams_js.md
703
+ - files/javascript/turbo/middle/turbo_lazy_frame_loading.md
704
+ - files/javascript/turbo/middle/turbo_link_prefetch.md
705
+ - files/javascript/turbo/middle/turbo_navigation_lifecycle.md
706
+ - files/javascript/turbo/middle/turbo_stimulus_integration.md
707
+ - files/nosql/redis/advanced/redis_lua_scripting.md
708
+ - files/nosql/redis/advanced/redis_pipelining.md
709
+ - files/nosql/redis/advanced/redis_streams.md
710
+ - files/nosql/redis/beginner/redis_basic_key_value.md
711
+ - files/nosql/redis/beginner/redis_connection_setup.md
712
+ - files/nosql/redis/beginner/redis_list_usage.md
713
+ - files/nosql/redis/expert/redis_cluster_pipeline_optimization.md
714
+ - files/nosql/redis/expert/redis_lua_atomic_operations.md
715
+ - files/nosql/redis/expert/redis_streams_event_sourcing.md
716
+ - files/nosql/redis/middle/redis_api_rate_limiter.md
717
+ - files/nosql/redis/middle/redis_cachestore_namespace.md
718
+ - files/nosql/redis/middle/redis_distributed_lock_redlock.md
719
+ - files/rails/action_cable/advanced/chunked_streaming.md
720
+ - files/rails/action_cable/advanced/graphql_subscriptions.md
721
+ - files/rails/action_cable/advanced/jwt_channel_authentication.md
722
+ - files/rails/action_cable/advanced/kafka_pubsub_adapter.md
723
+ - files/rails/action_cable/advanced/rate_limiting_backpressure.md
724
+ - files/rails/action_cable/beginner/broadcast_messages.md
725
+ - files/rails/action_cable/beginner/client_subscribe_js.md
726
+ - files/rails/action_cable/beginner/generate_chat_channel.md
727
+ - files/rails/action_cable/beginner/setup_action_cable.md
728
+ - files/rails/action_cable/beginner/stream_named_room.md
729
+ - files/rails/action_cable/expert/fine_grained_authorization.md
730
+ - files/rails/action_cable/expert/jwt_authentication.md
731
+ - files/rails/action_cable/expert/load_testing_action_cable.md
732
+ - files/rails/action_cable/expert/metrics_instrumentation.md
733
+ - files/rails/action_cable/expert/redis_scaling_namespace_isolation.md
734
+ - files/rails/action_cable/middle/cleanup_streams_on_unsubscribe.md
735
+ - files/rails/action_cable/middle/client_reconnection_resubscribe.md
736
+ - files/rails/action_cable/middle/dynamic_stream_identifiers.md
737
+ - files/rails/action_cable/middle/manual_broadcast_controller.md
738
+ - files/rails/action_cable/middle/model_callback_streaming.md
739
+ - files/rails/active_record/advanced/asynchronous_querying_load_async.md
740
+ - files/rails/active_record/advanced/bulk_upsert_with_upsert_all.md
741
+ - files/rails/active_record/advanced/common_table_expressions_cte.md
742
+ - files/rails/active_record/advanced/custom_types_and_attributes_api.md
743
+ - files/rails/active_record/advanced/dynamic_parameterized_scopes.md
744
+ - files/rails/active_record/advanced/jsonb_querying_and_indexing.md
745
+ - files/rails/active_record/advanced/leveraging_window_functions.md
746
+ - files/rails/active_record/advanced/multi_database_sharding.md
747
+ - files/rails/active_record/advanced/optimistic_locking_for_concurrency.md
748
+ - files/rails/active_record/advanced/using_arel_for_complex_joins.md
749
+ - files/rails/active_record/beginner/associations_basics.md
750
+ - files/rails/active_record/beginner/console_basics.md
751
+ - files/rails/active_record/beginner/create_records.md
752
+ - files/rails/active_record/beginner/delete_records.md
753
+ - files/rails/active_record/beginner/limit_and_offset.md
754
+ - files/rails/active_record/beginner/querying_with_where.md
755
+ - files/rails/active_record/beginner/reading_records.md
756
+ - files/rails/active_record/beginner/sorting_results.md
757
+ - files/rails/active_record/beginner/update_records.md
758
+ - files/rails/active_record/beginner/validations_intro.md
759
+ - files/rails/active_record/expert/advanced_eager_loading.md
760
+ - files/rails/active_record/expert/arel_complex_predicates.md
761
+ - files/rails/active_record/expert/association_cache_bidi.md
762
+ - files/rails/active_record/expert/bulk_upserts_insert_all.md
763
+ - files/rails/active_record/expert/dynamic_scopes_metaprogramming.md
764
+ - files/rails/active_record/expert/multi_tenancy_schema_adapter.md
765
+ - files/rails/active_record/expert/partial_indexes_migrations.md
766
+ - files/rails/active_record/expert/query_performance_notifications.md
767
+ - files/rails/active_record/expert/sql_window_functions.md
768
+ - files/rails/active_record/expert/virtual_attributes_custom_types.md
769
+ - files/rails/active_record/middle/arel_complex_queries.md
770
+ - files/rails/active_record/middle/batch_processing.md
771
+ - files/rails/active_record/middle/dynamic_scopes.md
772
+ - files/rails/active_record/middle/eager_loading_includes.md
773
+ - files/rails/active_record/middle/merge_relations.md
774
+ - files/rails/active_record/middle/optimistic_locking.md
775
+ - files/rails/active_record/middle/pluck_and_select_optimization.md
776
+ - files/rails/active_record/middle/transactions_and_rollback.md
777
+ - files/rails/active_record/middle/upsert_records.md
778
+ - files/rails/active_record/middle/use_counter_cache.md
779
+ - files/rails/active_record_associations/advanced/association_callbacks_for_cache_invalidation.md
780
+ - files/rails/active_record_associations/advanced/association_extensions_module.md
781
+ - files/rails/active_record_associations/advanced/deep_nested_attributes_with_reject_if.md
782
+ - files/rails/active_record_associations/advanced/dynamic_associations_definition.md
783
+ - files/rails/active_record_associations/advanced/habtm_to_has_many_through_with_extra.md
784
+ - files/rails/active_record_associations/advanced/inverse_of_and_eager_preloading.md
785
+ - files/rails/active_record_associations/advanced/multi_table_join_with_has_many_through.md
786
+ - files/rails/active_record_associations/advanced/polymorphic_counter_cache_optimization.md
787
+ - files/rails/active_record_associations/advanced/preloading_with_aggregates.md
788
+ - files/rails/active_record_associations/advanced/self_referential_scopes.md
789
+ - files/rails/active_record_associations/advanced/sti_associations_with_default_scopes.md
790
+ - files/rails/active_record_associations/advanced/through_association_with_conditions.md
791
+ - files/rails/active_record_associations/beginner/belongs_to_association.md
792
+ - files/rails/active_record_associations/beginner/build_associated_records.md
793
+ - files/rails/active_record_associations/beginner/counter_cache_option.md
794
+ - files/rails/active_record_associations/beginner/dependent_option.md
795
+ - files/rails/active_record_associations/beginner/eager_loading_associations.md
796
+ - files/rails/active_record_associations/beginner/has_and_belongs_to_many_association.md
797
+ - files/rails/active_record_associations/beginner/has_many_association.md
798
+ - files/rails/active_record_associations/beginner/has_many_through_association.md
799
+ - files/rails/active_record_associations/beginner/has_one_association.md
800
+ - files/rails/active_record_associations/beginner/inverse_of_option.md
801
+ - files/rails/active_record_associations/beginner/nested_attributes.md
802
+ - files/rails/active_record_associations/beginner/validates_associated.md
803
+ - files/rails/active_record_associations/expert/association_callbacks_usage.md
804
+ - files/rails/active_record_associations/expert/composite_primary_key_associations.md
805
+ - files/rails/active_record_associations/expert/custom_inverse_of_complex.md
806
+ - files/rails/active_record_associations/expert/custom_join_sql_through.md
807
+ - files/rails/active_record_associations/expert/dynamic_association_extensions.md
808
+ - files/rails/active_record_associations/expert/dynamic_build_in_callbacks.md
809
+ - files/rails/active_record_associations/expert/eager_load_override_select.md
810
+ - files/rails/active_record_associations/expert/multi_level_through_alias.md
811
+ - files/rails/active_record_associations/expert/polymorphic_counter_cache.md
812
+ - files/rails/active_record_associations/expert/recursive_self_referential_tree.md
813
+ - files/rails/active_record_associations/expert/scoped_polymorphic_association_conditions.md
814
+ - files/rails/active_record_associations/expert/sti_hierarchical_associations.md
815
+ - files/rails/active_record_associations/middle/association_extensions.md
816
+ - files/rails/active_record_associations/middle/association_scopes.md
817
+ - files/rails/active_record_associations/middle/conditional_associations.md
818
+ - files/rails/active_record_associations/middle/counter_cache.md
819
+ - files/rails/active_record_associations/middle/custom_foreign_key_and_class_name.md
820
+ - files/rails/active_record_associations/middle/dependent_options.md
821
+ - files/rails/active_record_associations/middle/eager_loading_includes.md
822
+ - files/rails/active_record_associations/middle/has_many_through.md
823
+ - files/rails/active_record_associations/middle/inverse_of.md
824
+ - files/rails/active_record_associations/middle/polymorphic_association.md
825
+ - files/rails/active_record_associations/middle/touch_option.md
826
+ - files/rails/active_record_associations/middle/validating_associations.md
827
+ - files/rails/active_record_callbacks/advanced/active_support_callbacks_api.md
828
+ - files/rails/active_record_callbacks/advanced/around_transaction_callbacks.md
829
+ - files/rails/active_record_callbacks/advanced/callback_performance_tips.md
830
+ - files/rails/active_record_callbacks/advanced/concern_based_callbacks.md
831
+ - files/rails/active_record_callbacks/advanced/conditional_callbacks_lambda.md
832
+ - files/rails/active_record_callbacks/advanced/custom_callback_chains.md
833
+ - files/rails/active_record_callbacks/advanced/explicit_callback_priority.md
834
+ - files/rails/active_record_callbacks/advanced/introspect_reorder_callbacks.md
835
+ - files/rails/active_record_callbacks/advanced/skip_callbacks_in_tests.md
836
+ - files/rails/active_record_callbacks/advanced/sti_inherited_callbacks.md
837
+ - files/rails/active_record_callbacks/beginner/after_create_notification.md
838
+ - files/rails/active_record_callbacks/beginner/after_destroy_cleanup.md
839
+ - files/rails/active_record_callbacks/beginner/after_save_cache_clear.md
840
+ - files/rails/active_record_callbacks/beginner/before_create_default_status.md
841
+ - files/rails/active_record_callbacks/beginner/before_save_callback.md
842
+ - files/rails/active_record_callbacks/beginner/before_validation_usage.md
843
+ - files/rails/active_record_callbacks/beginner/conditional_callback_if_unless.md
844
+ - files/rails/active_record_callbacks/beginner/multiple_callbacks_order.md
845
+ - files/rails/active_record_callbacks/beginner/skip_callback_example.md
846
+ - files/rails/active_record_callbacks/beginner/using_blocks_in_callbacks.md
847
+ - files/rails/active_record_callbacks/expert/abort_before_destroy.md
848
+ - files/rails/active_record_callbacks/expert/around_commit_transaction.md
849
+ - files/rails/active_record_callbacks/expert/async_callbacks.md
850
+ - files/rails/active_record_callbacks/expert/concerns_for_callbacks.md
851
+ - files/rails/active_record_callbacks/expert/conditional_chain_callbacks.md
852
+ - files/rails/active_record_callbacks/expert/dynamic_callback_definitions.md
853
+ - files/rails/active_record_callbacks/expert/memory_leak_callbacks.md
854
+ - files/rails/active_record_callbacks/expert/prepend_callbacks.md
855
+ - files/rails/active_record_callbacks/expert/rspec_callbacks_testing.md
856
+ - files/rails/active_record_callbacks/expert/soft_delete_callbacks.md
857
+ - files/rails/active_record_callbacks/middle/around_save_transaction.md
858
+ - files/rails/active_record_callbacks/middle/batch_operations_callbacks.md
859
+ - files/rails/active_record_callbacks/middle/callback_ordering.md
860
+ - files/rails/active_record_callbacks/middle/callbacks_in_concerns.md
861
+ - files/rails/active_record_callbacks/middle/conditional_callbacks.md
862
+ - files/rails/active_record_callbacks/middle/default_values_validation.md
863
+ - files/rails/active_record_callbacks/middle/email_after_commit.md
864
+ - files/rails/active_record_callbacks/middle/normalize_attribute.md
865
+ - files/rails/active_record_callbacks/middle/skip_callbacks.md
866
+ - files/rails/active_record_callbacks/middle/testing_callbacks.md
867
+ - files/rails/active_record_migrations/advanced/check_constraints.md
868
+ - files/rails/active_record_migrations/advanced/concurrent_index.md
869
+ - files/rails/active_record_migrations/advanced/conditional_migrations.md
870
+ - files/rails/active_record_migrations/advanced/custom_enum_types.md
871
+ - files/rails/active_record_migrations/advanced/default_sql_functions.md
872
+ - files/rails/active_record_migrations/advanced/foreign_key_cascade.md
873
+ - files/rails/active_record_migrations/advanced/materialized_views.md
874
+ - files/rails/active_record_migrations/advanced/partitioned_tables.md
875
+ - files/rails/active_record_migrations/advanced/reversible_data_migrations.md
876
+ - files/rails/active_record_migrations/advanced/uuid_primary_keys.md
877
+ - files/rails/active_record_migrations/beginner/add_column.md
878
+ - files/rails/active_record_migrations/beginner/add_index.md
879
+ - files/rails/active_record_migrations/beginner/change_column_type.md
880
+ - files/rails/active_record_migrations/beginner/create_table.md
881
+ - files/rails/active_record_migrations/beginner/remove_column.md
882
+ - files/rails/active_record_migrations/beginner/remove_index.md
883
+ - files/rails/active_record_migrations/beginner/rename_column.md
884
+ - files/rails/active_record_migrations/beginner/reversible_migration.md
885
+ - files/rails/active_record_migrations/beginner/rollback.md
886
+ - files/rails/active_record_migrations/beginner/timestamps.md
887
+ - files/rails/active_record_migrations/expert/batch_updates_with_find_in_batches.md
888
+ - files/rails/active_record_migrations/expert/custom_migration_base_class.md
889
+ - files/rails/active_record_migrations/expert/decouple_models_using_anonymous_class.md
890
+ - files/rails/active_record_migrations/expert/deferrable_foreign_keys.md
891
+ - files/rails/active_record_migrations/expert/disable_ddl_transaction_for_concurrent_index.md
892
+ - files/rails/active_record_migrations/expert/multi_step_default_column_addition.md
893
+ - files/rails/active_record_migrations/expert/parallel_migrations_via_rake.md
894
+ - files/rails/active_record_migrations/expert/postgresql_table_partitioning.md
895
+ - files/rails/active_record_migrations/expert/reversible_data_backfill.md
896
+ - files/rails/active_record_migrations/expert/squash_and_manage_migration_versions.md
897
+ - files/rails/active_record_migrations/middle/add_column_default_not_null.md
898
+ - files/rails/active_record_migrations/middle/add_index_options.md
899
+ - files/rails/active_record_migrations/middle/batch_data_migration.md
900
+ - files/rails/active_record_migrations/middle/change_column_with_data_migration.md
901
+ - files/rails/active_record_migrations/middle/concurrent_index.md
902
+ - files/rails/active_record_migrations/middle/conditional_migrations.md
903
+ - files/rails/active_record_migrations/middle/raw_sql_execute.md
904
+ - files/rails/active_record_migrations/middle/remove_columns_indexes.md
905
+ - files/rails/active_record_migrations/middle/rename_column.md
906
+ - files/rails/active_record_migrations/middle/reversible_migrations.md
907
+ - files/rails/active_record_querying/advanced/array_and_hstore_query.md
908
+ - files/rails/active_record_querying/advanced/bulk_update_with_case.md
909
+ - files/rails/active_record_querying/advanced/common_table_expressions.md
910
+ - files/rails/active_record_querying/advanced/computed_selects.md
911
+ - files/rails/active_record_querying/advanced/dynamic_arel_queries.md
912
+ - files/rails/active_record_querying/advanced/dynamic_filter_scopes.md
913
+ - files/rails/active_record_querying/advanced/jsonb_querying.md
914
+ - files/rails/active_record_querying/advanced/lateral_joins.md
915
+ - files/rails/active_record_querying/advanced/polymorphic_joins.md
916
+ - files/rails/active_record_querying/advanced/union_relations.md
917
+ - files/rails/active_record_querying/advanced/upsert_all_conflicts.md
918
+ - files/rails/active_record_querying/advanced/window_functions.md
919
+ - files/rails/active_record_querying/beginner/basic_all_where.md
920
+ - files/rails/active_record_querying/beginner/chaining_queries.md
921
+ - files/rails/active_record_querying/beginner/exists_queries.md
922
+ - files/rails/active_record_querying/beginner/find_or_create_by.md
923
+ - files/rails/active_record_querying/beginner/find_vs_find_by.md
924
+ - files/rails/active_record_querying/beginner/first_last.md
925
+ - files/rails/active_record_querying/beginner/limit_usage.md
926
+ - files/rails/active_record_querying/beginner/offset_usage.md
927
+ - files/rails/active_record_querying/beginner/order_results.md
928
+ - files/rails/active_record_querying/beginner/pluck_usage.md
929
+ - files/rails/active_record_querying/beginner/select_columns.md
930
+ - files/rails/active_record_querying/beginner/where_not.md
931
+ - files/rails/active_record_querying/expert/batch_processing_find_each.md
932
+ - files/rails/active_record_querying/expert/bulk_upserts.md
933
+ - files/rails/active_record_querying/expert/ctes_with_active_record.md
934
+ - files/rails/active_record_querying/expert/eager_loading_nested_polymorphic.md
935
+ - files/rails/active_record_querying/expert/explain_analyze_inspection.md
936
+ - files/rails/active_record_querying/expert/index_hints_with_raw_sql.md
937
+ - files/rails/active_record_querying/expert/jsonb_postgresql_queries.md
938
+ - files/rails/active_record_querying/expert/lateral_joins.md
939
+ - files/rails/active_record_querying/expert/optimistic_locking_queries.md
940
+ - files/rails/active_record_querying/expert/prepared_statements.md
941
+ - files/rails/active_record_querying/expert/recursive_cte_for_hierarchies.md
942
+ - files/rails/active_record_querying/expert/window_functions.md
943
+ - files/rails/active_record_querying/middle/batch_processing.md
944
+ - files/rails/active_record_querying/middle/distinct_select.md
945
+ - files/rails/active_record_querying/middle/exists_query.md
946
+ - files/rails/active_record_querying/middle/from_subquery.md
947
+ - files/rails/active_record_querying/middle/includes_conditions.md
948
+ - files/rails/active_record_querying/middle/joins_conditions.md
949
+ - files/rails/active_record_querying/middle/or_queries.md
950
+ - files/rails/active_record_querying/middle/pluck_usage.md
951
+ - files/rails/active_record_querying/middle/reorder_results.md
952
+ - files/rails/active_record_querying/middle/unscope_conditions.md
953
+ - files/rails/active_record_querying/middle/where_not_usage.md
954
+ - files/rails/active_record_querying/middle/where_range_query.md
955
+ - files/rails/active_record_validations/advanced/conditional_validation_lambda.md
956
+ - files/rails/active_record_validations/advanced/custom_validation_contexts.md
957
+ - files/rails/active_record_validations/advanced/custom_validator_class.md
958
+ - files/rails/active_record_validations/advanced/database_uniqueness_enforcement.md
959
+ - files/rails/active_record_validations/advanced/dynamic_validations.md
960
+ - files/rails/active_record_validations/advanced/i18n_error_messages.md
961
+ - files/rails/active_record_validations/advanced/json_schema_validation.md
962
+ - files/rails/active_record_validations/advanced/multi_attribute_validation.md
963
+ - files/rails/active_record_validations/advanced/nested_association_validations.md
964
+ - files/rails/active_record_validations/advanced/strict_validations.md
965
+ - files/rails/active_record_validations/beginner/associated_records_validation.md
966
+ - files/rails/active_record_validations/beginner/conditional_validation.md
967
+ - files/rails/active_record_validations/beginner/custom_validation_method.md
968
+ - files/rails/active_record_validations/beginner/format_validation.md
969
+ - files/rails/active_record_validations/beginner/grouping_with_options.md
970
+ - files/rails/active_record_validations/beginner/inclusion_exclusion_validation.md
971
+ - files/rails/active_record_validations/beginner/length_validation.md
972
+ - files/rails/active_record_validations/beginner/numericality_validation.md
973
+ - files/rails/active_record_validations/beginner/presence_validation.md
974
+ - files/rails/active_record_validations/beginner/uniqueness_validation.md
975
+ - files/rails/active_record_validations/expert/advanced_uniqueness_scopes.md
976
+ - files/rails/active_record_validations/expert/complex_association_validations.md
977
+ - files/rails/active_record_validations/expert/composable_lambda_validators.md
978
+ - files/rails/active_record_validations/expert/contextual_validations.md
979
+ - files/rails/active_record_validations/expert/custom_validator_classes.md
980
+ - files/rails/active_record_validations/expert/db_constraints_parallel.md
981
+ - files/rails/active_record_validations/expert/defer_validations_before_validation.md
982
+ - files/rails/active_record_validations/expert/dynamic_conditional_validations.md
983
+ - files/rails/active_record_validations/expert/json_schema_validation.md
984
+ - files/rails/active_record_validations/expert/optimize_validation_performance.md
985
+ - files/rails/active_record_validations/middle/associated_models_validation.md
986
+ - files/rails/active_record_validations/middle/conditional_validations.md
987
+ - files/rails/active_record_validations/middle/custom_validator_method.md
988
+ - files/rails/active_record_validations/middle/grouped_validations_with_options.md
989
+ - files/rails/active_record_validations/middle/nested_attributes_presence.md
990
+ - files/rails/active_record_validations/middle/numericality_options.md
991
+ - files/rails/active_record_validations/middle/regex_format_validation.md
992
+ - files/rails/active_record_validations/middle/uniqueness_scope.md
993
+ - files/rails/active_record_validations/middle/validates_each_usage.md
994
+ - files/rails/active_record_validations/middle/validation_contexts.md
995
+ - files/rails/active_storage/advanced/custom_blob_analysis.md
996
+ - files/rails/active_storage/advanced/custom_variant_processor.md
997
+ - files/rails/active_storage/advanced/direct_upload_throttling.md
998
+ - files/rails/active_storage/advanced/stream_large_files.md
999
+ - files/rails/active_storage/advanced/webp_global_variant.md
1000
+ - files/rails/active_storage/beginner/active_storage_attach_files.md
1001
+ - files/rails/active_storage/beginner/active_storage_delete_purge.md
1002
+ - files/rails/active_storage/beginner/active_storage_display_image.md
1003
+ - files/rails/active_storage/beginner/active_storage_setup.md
1004
+ - files/rails/active_storage/beginner/active_storage_validate.md
1005
+ - files/rails/active_storage/expert/async_variant_generation.md
1006
+ - files/rails/active_storage/expert/cdn_signed_url_with_custom_headers.md
1007
+ - files/rails/active_storage/expert/custom_pdf_page_count_analyzer.md
1008
+ - files/rails/active_storage/expert/mirror_service_fallback.md
1009
+ - files/rails/active_storage/expert/resumable_multipart_upload.md
1010
+ - files/rails/active_storage/middle/direct_uploads_with_javascript.md
1011
+ - files/rails/active_storage/middle/generating_and_displaying_variants.md
1012
+ - files/rails/active_storage/middle/purging_unused_blobs_and_attachments.md
1013
+ - files/rails/active_storage/middle/switching_active_storage_services.md
1014
+ - files/rails/active_storage/middle/validating_active_storage_attachments.md
1015
+ - files/rails/active_support/advanced/advanced_cache_fetch_multi.md
1016
+ - files/rails/active_support/advanced/concern_modularization.md
1017
+ - files/rails/active_support/advanced/custom_inflections.md
1018
+ - files/rails/active_support/advanced/deprecation_management.md
1019
+ - files/rails/active_support/advanced/json_encoder_customization.md
1020
+ - files/rails/active_support/advanced/nested_hash_transformations.md
1021
+ - files/rails/active_support/advanced/notifications_instrumentation.md
1022
+ - files/rails/active_support/advanced/per_thread_registry.md
1023
+ - files/rails/active_support/advanced/reloader_hooks.md
1024
+ - files/rails/active_support/advanced/tagged_logging.md
1025
+ - files/rails/active_support/beginner/array_accessors.md
1026
+ - files/rails/active_support/beginner/current_time_date.md
1027
+ - files/rails/active_support/beginner/deep_merge_hash.md
1028
+ - files/rails/active_support/beginner/delegate_method.md
1029
+ - files/rails/active_support/beginner/indifferent_access.md
1030
+ - files/rails/active_support/beginner/numeric_time_helpers.md
1031
+ - files/rails/active_support/beginner/presence_methods.md
1032
+ - files/rails/active_support/beginner/string_inflections.md
1033
+ - files/rails/active_support/beginner/string_inquiry.md
1034
+ - files/rails/active_support/beginner/try_method.md
1035
+ - files/rails/active_support/expert/advanced_hashdeep_merge.md
1036
+ - files/rails/active_support/expert/cache_key_generation_extensibility.md
1037
+ - files/rails/active_support/expert/callbacks_building_custom_chains.md
1038
+ - files/rails/active_support/expert/concern_dependency_injection.md
1039
+ - files/rails/active_support/expert/custom_durations_with_precision.md
1040
+ - files/rails/active_support/expert/custom_inflections.md
1041
+ - files/rails/active_support/expert/json_serialization_custom_encoder.md
1042
+ - files/rails/active_support/expert/notifications_custom_instrumentation.md
1043
+ - files/rails/active_support/expert/on_load_hooks_for_engines.md
1044
+ - files/rails/active_support/expert/tagged_logging_contexts.md
1045
+ - files/rails/active_support/middle/active_support_concern_modules.md
1046
+ - files/rails/active_support/middle/deep_merge_nested_hashes.md
1047
+ - files/rails/active_support/middle/enumerable_in_groups_of.md
1048
+ - files/rails/active_support/middle/hash_with_indifferent_access.md
1049
+ - files/rails/active_support/middle/notifications_instrumentation.md
1050
+ - files/rails/active_support/middle/numeric_time_extensions.md
1051
+ - files/rails/active_support/middle/presence_and_blank_helpers.md
1052
+ - files/rails/active_support/middle/safe_constantize_for_dynamic_loading.md
1053
+ - files/rails/active_support/middle/string_inflection_helpers.md
1054
+ - files/rails/active_support/middle/use_time_current_for_timezone.md
1055
+ - files/rails/api_mode/advanced/advanced_jsonapi_serializer.md
1056
+ - files/rails/api_mode/advanced/custom_rack_middleware_injection.md
1057
+ - files/rails/api_mode/advanced/header_based_api_versioning.md
1058
+ - files/rails/api_mode/advanced/http_caching_etags_conditional_get.md
1059
+ - files/rails/api_mode/beginner/configure_cors.md
1060
+ - files/rails/api_mode/beginner/create_api_app.md
1061
+ - files/rails/api_mode/beginner/generate_resource_controller.md
1062
+ - files/rails/api_mode/beginner/use_strong_parameters.md
1063
+ - files/rails/api_mode/expert/accept_header_api_versioning.md
1064
+ - files/rails/api_mode/expert/custom_rate_limiting_middleware.md
1065
+ - files/rails/api_mode/expert/fast_json_serialization_with_oj.md
1066
+ - files/rails/api_mode/expert/streaming_json_responses.md
1067
+ - files/rails/api_mode/middle/api_error_handling.md
1068
+ - files/rails/api_mode/middle/api_generators.md
1069
+ - files/rails/api_mode/middle/api_versioning.md
1070
+ - files/rails/api_mode/middle/json_serialization.md
1071
+ - files/rails/assets/advanced/asset_caching_strategies.md
1072
+ - files/rails/assets/advanced/custom_asset_precompilation.md
1073
+ - files/rails/assets/advanced/dynamic_asset_host.md
1074
+ - files/rails/assets/advanced/sprockets_custom_processor.md
1075
+ - files/rails/assets/advanced/webpacker_custom_config.md
1076
+ - files/rails/assets/beginner/asset_pipeline_basics.md
1077
+ - files/rails/assets/beginner/cache_busting_versioning.md
1078
+ - files/rails/assets/beginner/organize_images_fonts.md
1079
+ - files/rails/assets/beginner/precompile_assets.md
1080
+ - files/rails/assets/beginner/sprockets_helpers.md
1081
+ - files/rails/assets/expert/custom_sprockets_processor.md
1082
+ - files/rails/assets/expert/dynamic_asset_host_fallback.md
1083
+ - files/rails/assets/expert/http_cache_invalidation.md
1084
+ - files/rails/assets/expert/inline_critical_css.md
1085
+ - files/rails/assets/expert/webpack_bundle_splitting.md
1086
+ - files/rails/assets/middle/configure_asset_host.md
1087
+ - files/rails/assets/middle/custom_precompile_assets.md
1088
+ - files/rails/assets/middle/sass_partials_and_variables.md
1089
+ - files/rails/assets/middle/sprockets_directives_load_order.md
1090
+ - files/rails/assets/middle/use_webpacker_asset_pack_tag.md
1091
+ - files/rails/authentication_and_authorization/advanced/custom_devise_warden_strategy.md
1092
+ - files/rails/authentication_and_authorization/advanced/jwt_refresh_token_rotation.md
1093
+ - files/rails/authentication_and_authorization/advanced/multi_tenant_policy_scoping.md
1094
+ - files/rails/authentication_and_authorization/advanced/pundit_policy_caching.md
1095
+ - files/rails/authentication_and_authorization/beginner/bcrypt_user_auth.md
1096
+ - files/rails/authentication_and_authorization/beginner/before_action_authentication.md
1097
+ - files/rails/authentication_and_authorization/beginner/sessions_controller_setup.md
1098
+ - files/rails/authentication_and_authorization/beginner/simple_role_authorization.md
1099
+ - files/rails/authentication_and_authorization/expert/cancancan_ability_caching_preload.md
1100
+ - files/rails/authentication_and_authorization/expert/dynamic_pundit_scope_with_rls.md
1101
+ - files/rails/authentication_and_authorization/expert/graphql_jwt_pundit_integration.md
1102
+ - files/rails/authentication_and_authorization/expert/mfa_custom_warden_strategy.md
1103
+ - files/rails/authentication_and_authorization/middle/customize_redirects.md
1104
+ - files/rails/authentication_and_authorization/middle/policy_scope_index.md
1105
+ - files/rails/authentication_and_authorization/middle/role_based_policies.md
1106
+ - files/rails/authentication_and_authorization/middle/token_authentication.md
1107
+ - files/rails/background_jobs/advanced/idempotent_jobs.md
1108
+ - files/rails/background_jobs/advanced/job_metrics.md
1109
+ - files/rails/background_jobs/advanced/rate_limiting_middleware.md
1110
+ - files/rails/background_jobs/advanced/sidekiq_batches.md
1111
+ - files/rails/background_jobs/advanced/transactional_enqueue.md
1112
+ - files/rails/background_jobs/beginner/create_simple_job.md
1113
+ - files/rails/background_jobs/beginner/enqueue_with_perform_later.md
1114
+ - files/rails/background_jobs/beginner/install_sidekiq.md
1115
+ - files/rails/background_jobs/beginner/monitor_sidekiq_web.md
1116
+ - files/rails/background_jobs/beginner/pass_arguments_to_job.md
1117
+ - files/rails/background_jobs/expert/custom_retry_strategy.md
1118
+ - files/rails/background_jobs/expert/job_orchestration.md
1119
+ - files/rails/background_jobs/expert/observability_instrumentation.md
1120
+ - files/rails/background_jobs/expert/sidekiq_batch_callbacks.md
1121
+ - files/rails/background_jobs/expert/unique_jobs_idempotency.md
1122
+ - files/rails/background_jobs/middle/configure_retry_and_discard.md
1123
+ - files/rails/background_jobs/middle/integrate_active_job_sidekiq.md
1124
+ - files/rails/background_jobs/middle/schedule_jobs_with_active_job.md
1125
+ - files/rails/background_jobs/middle/serialize_arguments_safely.md
1126
+ - files/rails/background_jobs/middle/test_background_jobs_in_rspec.md
1127
+ - files/rails/benchmarking/advanced/benchmark_ips_gem.md
1128
+ - files/rails/benchmarking/advanced/gc_profiler_memory.md
1129
+ - files/rails/benchmarking/advanced/micro_benchmark_bmbm.md
1130
+ - files/rails/benchmarking/advanced/rack_mini_profiler_programmatic.md
1131
+ - files/rails/benchmarking/advanced/sql_query_notifications.md
1132
+ - files/rails/benchmarking/beginner/benchmark_bm.md
1133
+ - files/rails/benchmarking/beginner/benchmark_measure.md
1134
+ - files/rails/benchmarking/beginner/benchmark_realtime.md
1135
+ - files/rails/benchmarking/beginner/console_benchmark.md
1136
+ - files/rails/benchmarking/beginner/rails_logger_benchmark.md
1137
+ - files/rails/benchmarking/expert/active_support_notifications_metrics.md
1138
+ - files/rails/benchmarking/expert/concurrent_ruby_benchmark.md
1139
+ - files/rails/benchmarking/expert/low_level_benchmarking.md
1140
+ - files/rails/benchmarking/expert/memory_allocation_tracking.md
1141
+ - files/rails/benchmarking/expert/sql_query_profiling.md
1142
+ - files/rails/benchmarking/middle/activerecord_n_plus_one_benchmark.md
1143
+ - files/rails/benchmarking/middle/benchmark_ips_usage.md
1144
+ - files/rails/benchmarking/middle/console_benchmark_measure.md
1145
+ - files/rails/benchmarking/middle/rake_task_benchmark.md
1146
+ - files/rails/benchmarking/middle/view_rendering_benchmark.md
1147
+ - files/rails/caching/advanced/custom_cache_versioning.md
1148
+ - files/rails/caching/advanced/dynamic_fragment_caching.md
1149
+ - files/rails/caching/advanced/http_conditional_caching.md
1150
+ - files/rails/caching/advanced/low_level_race_condition_ttl.md
1151
+ - files/rails/caching/advanced/multi_tier_caching.md
1152
+ - files/rails/caching/advanced/russian_doll_caching.md
1153
+ - files/rails/caching/beginner/cache_expiration.md
1154
+ - files/rails/caching/beginner/conditional_fragment_caching.md
1155
+ - files/rails/caching/beginner/configure_cache_store.md
1156
+ - files/rails/caching/beginner/low_level_cache_fetch.md
1157
+ - files/rails/caching/beginner/russian_doll_caching.md
1158
+ - files/rails/caching/beginner/view_fragment_caching.md
1159
+ - files/rails/caching/expert/fetch_multi_batch_reads.md
1160
+ - files/rails/caching/expert/http_conditional_get.md
1161
+ - files/rails/caching/expert/localcache_with_remote_store.md
1162
+ - files/rails/caching/expert/race_condition_ttl.md
1163
+ - files/rails/caching/expert/raw_store_bypass_serialization.md
1164
+ - files/rails/caching/expert/russian_doll_cache_versioning.md
1165
+ - files/rails/command_line/advanced/customizing_cli_defaults_with_railsrc.md
1166
+ - files/rails/command_line/advanced/one_off_scripts_with_runner.md
1167
+ - files/rails/command_line/beginner/create_new_app.md
1168
+ - files/rails/command_line/beginner/run_local_server.md
1169
+ - files/rails/command_line/expert/custom-rails-cli-commands-railtie.md
1170
+ - files/rails/command_line/expert/spring-custom-commands.md
1171
+ - files/rails/command_line/middle/filtering_rails_routes.md
1172
+ - files/rails/command_line/middle/rails_runner_scripts.md
1173
+ - files/rails/configuration/advanced/conditional_middleware_configuration.md
1174
+ - files/rails/configuration/advanced/config_for_nested_yaml.md
1175
+ - files/rails/configuration/advanced/dynamic_custom_config_x.md
1176
+ - files/rails/configuration/beginner/config_time_zone.md
1177
+ - files/rails/configuration/beginner/configure_locale.md
1178
+ - files/rails/configuration/beginner/skip_generator_files.md
1179
+ - files/rails/configuration/expert/dynamic_config_for.md
1180
+ - files/rails/configuration/expert/multi_env_encrypted_credentials.md
1181
+ - files/rails/configuration/expert/railtie_initialization_hooks.md
1182
+ - files/rails/configuration/middle/custom_app_config.md
1183
+ - files/rails/configuration/middle/environment_specific_config.md
1184
+ - files/rails/configuration/middle/load_yaml_config.md
1185
+ - files/rails/console/advanced/console_custom_helpers.md
1186
+ - files/rails/console/advanced/console_performance_profiling.md
1187
+ - files/rails/console/beginner/query_with_console.md
1188
+ - files/rails/console/beginner/reload_rails_console.md
1189
+ - files/rails/console/expert/benchmark_explain_active_record.md
1190
+ - files/rails/console/expert/custom_pry_rc_for_rails_console.md
1191
+ - files/rails/console/middle/enhanced_output_with_awesomeprint.md
1192
+ - files/rails/console/middle/quick_reload_application_code.md
1193
+ - files/rails/controllers/advanced/actioncable_integration.md
1194
+ - files/rails/controllers/advanced/bulk_insert_update.md
1195
+ - files/rails/controllers/advanced/controller_concerns_draggable.md
1196
+ - files/rails/controllers/advanced/controller_testing_shared_examples.md
1197
+ - files/rails/controllers/advanced/jwt_authentication_in_controllers.md
1198
+ - files/rails/controllers/advanced/n_plus_one_query_optimization.md
1199
+ - files/rails/controllers/advanced/rate_limiting_actions.md
1200
+ - files/rails/controllers/advanced/rescue_from_graceful_errors.md
1201
+ - files/rails/controllers/advanced/russian_doll_caching.md
1202
+ - files/rails/controllers/advanced/streaming_json_responses.md
1203
+ - files/rails/controllers/advanced/strong_params_nested_attributes.md
1204
+ - files/rails/controllers/advanced/versioned_api_namespaces.md
1205
+ - files/rails/controllers/beginner/accessing_params.md
1206
+ - files/rails/controllers/beginner/basic_controller_setup.md
1207
+ - files/rails/controllers/beginner/defining_restful_actions.md
1208
+ - files/rails/controllers/beginner/flash_messages.md
1209
+ - files/rails/controllers/beginner/handling_not_found_errors.md
1210
+ - files/rails/controllers/beginner/redirecting_after_actions.md
1211
+ - files/rails/controllers/beginner/rendering_json_responses.md
1212
+ - files/rails/controllers/beginner/rendering_templates.md
1213
+ - files/rails/controllers/beginner/responding_to_formats.md
1214
+ - files/rails/controllers/beginner/using_before_action_filters.md
1215
+ - files/rails/controllers/beginner/using_partials_to_dry_views.md
1216
+ - files/rails/controllers/beginner/using_strong_parameters.md
1217
+ - files/rails/controllers/expert/action_cable_integration.md
1218
+ - files/rails/controllers/expert/advanced_content_negotiation.md
1219
+ - files/rails/controllers/expert/controller_concerns_adv.md
1220
+ - files/rails/controllers/expert/dependency_injection_service_objects.md
1221
+ - files/rails/controllers/expert/dynamic_action_metaprogramming.md
1222
+ - files/rails/controllers/expert/http2_server_push.md
1223
+ - files/rails/controllers/expert/http_caching_conditional_get.md
1224
+ - files/rails/controllers/expert/instrumentation_notifications_controller.md
1225
+ - files/rails/controllers/expert/rescue_from_custom_exceptions.md
1226
+ - files/rails/controllers/expert/streaming_action_controller_live.md
1227
+ - files/rails/controllers/expert/strong_params_dynamic_filters.md
1228
+ - files/rails/controllers/expert/threading_parallel_requests.md
1229
+ - files/rails/controllers/middle/action_caching.md
1230
+ - files/rails/controllers/middle/before_action_filters.md
1231
+ - files/rails/controllers/middle/controller_concerns.md
1232
+ - files/rails/controllers/middle/default_url_options.md
1233
+ - files/rails/controllers/middle/namespaced_api_controller.md
1234
+ - files/rails/controllers/middle/nested_resources_management.md
1235
+ - files/rails/controllers/middle/redirect_back_fallback.md
1236
+ - files/rails/controllers/middle/rescue_from_errors.md
1237
+ - files/rails/controllers/middle/respond_to_formats.md
1238
+ - files/rails/controllers/middle/service_objects.md
1239
+ - files/rails/controllers/middle/streaming_responses.md
1240
+ - files/rails/controllers/middle/strong_parameters.md
1241
+ - files/rails/debugging/advanced/active_support_notifications.md
1242
+ - files/rails/debugging/advanced/derailed_benchmarks_setup.md
1243
+ - files/rails/debugging/advanced/memory_profiler_usage.md
1244
+ - files/rails/debugging/advanced/pry_remote_session.md
1245
+ - files/rails/debugging/advanced/rack_mini_profiler_production.md
1246
+ - files/rails/debugging/advanced/ruby_tracepoint_tracing.md
1247
+ - files/rails/debugging/beginner/binding_irb.md
1248
+ - files/rails/debugging/beginner/byebug_basics.md
1249
+ - files/rails/debugging/beginner/logging_debug.md
1250
+ - files/rails/debugging/beginner/puts_and_inspect.md
1251
+ - files/rails/debugging/beginner/rails_console.md
1252
+ - files/rails/debugging/beginner/view_dev_logs.md
1253
+ - files/rails/debugging/expert/binding_of_caller_usage.md
1254
+ - files/rails/debugging/expert/byebug_advanced_mastery.md
1255
+ - files/rails/debugging/expert/custom_exception_pry.md
1256
+ - files/rails/debugging/expert/notifications_inspector.md
1257
+ - files/rails/debugging/expert/remote_pry_docker_debug.md
1258
+ - files/rails/debugging/expert/tracepoint_active_record_sql.md
1259
+ - files/rails/debugging/middle/active_record_explain_queries.md
1260
+ - files/rails/debugging/middle/byebug_step_through.md
1261
+ - files/rails/debugging/middle/conditional_breakpoints.md
1262
+ - files/rails/debugging/middle/pry_rails_inspection.md
1263
+ - files/rails/debugging/middle/tagged_logging.md
1264
+ - files/rails/debugging/middle/web_console_error_pages.md
1265
+ - files/rails/deployment/advanced/capistrano_parallel_precompile.md
1266
+ - files/rails/deployment/advanced/k8s_canary_deployment.md
1267
+ - files/rails/deployment/advanced/puma_phased_restarts.md
1268
+ - files/rails/deployment/beginner/basic_capistrano_setup.md
1269
+ - files/rails/deployment/beginner/deploy_to_heroku.md
1270
+ - files/rails/deployment/beginner/dockerize_rails_app.md
1271
+ - files/rails/deployment/expert/canary_deployments_k8s_flagger.md
1272
+ - files/rails/deployment/expert/docker_cache_optimization.md
1273
+ - files/rails/deployment/expert/zero_downtime_db_migrations.md
1274
+ - files/rails/deployment/middle/capistrano_custom_tasks.md
1275
+ - files/rails/deployment/middle/local_asset_precompile.md
1276
+ - files/rails/deployment/middle/production_credentials_usage.md
1277
+ - files/rails/encryption/advanced/custom_aws_kms_key_provider.md
1278
+ - files/rails/encryption/advanced/deterministic_encryption_search.md
1279
+ - files/rails/encryption/advanced/rotate_encryption_keys.md
1280
+ - files/rails/encryption/beginner/active_record_encryption.md
1281
+ - files/rails/encryption/beginner/message_encryptor_basics.md
1282
+ - files/rails/encryption/beginner/rails_credentials.md
1283
+ - files/rails/encryption/expert/active_record_attribute_encryption.md
1284
+ - files/rails/encryption/expert/authenticated_encryption_with_aad.md
1285
+ - files/rails/encryption/expert/rotate_encryption_keys.md
1286
+ - files/rails/encryption/middle/active_record_encryption_config.md
1287
+ - files/rails/encryption/middle/custom_message_encryptor.md
1288
+ - files/rails/encryption/middle/migrate_existing_to_encrypted.md
1289
+ - files/rails/engines_and_plugins/advanced/asset_pipeline_and_migrations_railtie.md
1290
+ - files/rails/engines_and_plugins/advanced/custom_generator_extension.md
1291
+ - files/rails/engines_and_plugins/advanced/dynamic_engine_mounting.md
1292
+ - files/rails/engines_and_plugins/advanced/isolate_namespace_engine_config.md
1293
+ - files/rails/engines_and_plugins/beginner/engine_basic_setup.md
1294
+ - files/rails/engines_and_plugins/beginner/engine_models_migrations.md
1295
+ - files/rails/engines_and_plugins/beginner/engine_mounting.md
1296
+ - files/rails/engines_and_plugins/beginner/plugin_basic_setup.md
1297
+ - files/rails/engines_and_plugins/expert/custom_plugin_with_railtie.md
1298
+ - files/rails/engines_and_plugins/expert/isolate_namespace_advanced.md
1299
+ - files/rails/engines_and_plugins/expert/optimize_engine_loading.md
1300
+ - files/rails/engines_and_plugins/expert/railtie_middleware_hooks.md
1301
+ - files/rails/engines_and_plugins/middle/configuring_engine_initializers.md
1302
+ - files/rails/engines_and_plugins/middle/mounting_engines_routes.md
1303
+ - files/rails/engines_and_plugins/middle/overriding_engine_views.md
1304
+ - files/rails/engines_and_plugins/middle/using_plugin_rails_generators.md
1305
+ - files/rails/environments/advanced/config_for_env_settings.md
1306
+ - files/rails/environments/advanced/multi_env_credentials.md
1307
+ - files/rails/environments/beginner/checking_and_setting_rails_environment.md
1308
+ - files/rails/environments/beginner/running_rails_in_different_environments.md
1309
+ - files/rails/environments/expert/dynamic_environment_switching_middleware.md
1310
+ - files/rails/environments/expert/environment_layering_with_common.md
1311
+ - files/rails/environments/middle/environment_file_configuration.md
1312
+ - files/rails/environments/middle/rails_env_conditional_logic.md
1313
+ - files/rails/forms/advanced/accessibility_enhancements_with_aria.md
1314
+ - files/rails/forms/advanced/ajax_remote_form_submission.md
1315
+ - files/rails/forms/advanced/cache_form_partials_for_performance.md
1316
+ - files/rails/forms/advanced/conditional_fields_with_stimulus.md
1317
+ - files/rails/forms/advanced/custom_form_builder_shared_helpers.md
1318
+ - files/rails/forms/advanced/direct_s3_uploads_with_active_storage.md
1319
+ - files/rails/forms/advanced/dynamic_nested_fields_with_cocoon.md
1320
+ - files/rails/forms/advanced/form_object_with_reform.md
1321
+ - files/rails/forms/advanced/multi_step_form_wizard.md
1322
+ - files/rails/forms/advanced/stimulus_reflex_real_time_validation.md
1323
+ - files/rails/forms/beginner/checkbox_and_radio.md
1324
+ - files/rails/forms/beginner/date_time_select.md
1325
+ - files/rails/forms/beginner/display_error_messages.md
1326
+ - files/rails/forms/beginner/file_upload_field.md
1327
+ - files/rails/forms/beginner/form_tag_basics.md
1328
+ - files/rails/forms/beginner/form_with_model.md
1329
+ - files/rails/forms/beginner/nested_fields_for.md
1330
+ - files/rails/forms/beginner/password_field_basics.md
1331
+ - files/rails/forms/beginner/select_dropdown.md
1332
+ - files/rails/forms/beginner/text_field_and_label.md
1333
+ - files/rails/forms/expert/action_text_integration.md
1334
+ - files/rails/forms/expert/advanced_strong_parameters.md
1335
+ - files/rails/forms/expert/custom_form_builder.md
1336
+ - files/rails/forms/expert/dynamic_nested_forms.md
1337
+ - files/rails/forms/expert/form_object_pattern.md
1338
+ - files/rails/forms/expert/i18n_and_accessibility.md
1339
+ - files/rails/forms/expert/polymorphic_form_inputs.md
1340
+ - files/rails/forms/expert/real_time_validations.md
1341
+ - files/rails/forms/expert/select_options_caching.md
1342
+ - files/rails/forms/middle/checkbox_array_input.md
1343
+ - files/rails/forms/middle/collection_select_association.md
1344
+ - files/rails/forms/middle/csrf_token_auto.md
1345
+ - files/rails/forms/middle/custom_error_highlighting.md
1346
+ - files/rails/forms/middle/custom_form_builder.md
1347
+ - files/rails/forms/middle/custom_input_options.md
1348
+ - files/rails/forms/middle/file_field_active_storage.md
1349
+ - files/rails/forms/middle/form_with_remote_submissions.md
1350
+ - files/rails/forms/middle/i18n_labels.md
1351
+ - files/rails/forms/middle/nested_fields_for_models.md
1352
+ - files/rails/helpers/advanced/caching_heavy_helper_computations.md
1353
+ - files/rails/helpers/advanced/dynamic_content_tag_with_blocks.md
1354
+ - files/rails/helpers/advanced/dynamic_partial_resolution_with_lookup_context.md
1355
+ - files/rails/helpers/advanced/extending_javascript_helper_for_i18n.md
1356
+ - files/rails/helpers/advanced/injecting_helpers_into_mailers.md
1357
+ - files/rails/helpers/advanced/render_partials_from_helpers.md
1358
+ - files/rails/helpers/beginner/rails_helper_content_tag.md
1359
+ - files/rails/helpers/beginner/rails_helper_form_with.md
1360
+ - files/rails/helpers/beginner/rails_helper_image_tag.md
1361
+ - files/rails/helpers/beginner/rails_helper_link_to.md
1362
+ - files/rails/helpers/beginner/rails_helper_number_to_currency.md
1363
+ - files/rails/helpers/beginner/rails_helper_simple_format.md
1364
+ - files/rails/helpers/expert/dsl_fluent_helpers.md
1365
+ - files/rails/helpers/expert/include_helpers_in_mailers.md
1366
+ - files/rails/helpers/expert/memoization_with_rails_cache.md
1367
+ - files/rails/helpers/expert/metaprogramming_method_missing_helpers.md
1368
+ - files/rails/helpers/expert/organizing_helpers_with_concern.md
1369
+ - files/rails/helpers/expert/testing_helpers_with_actionview.md
1370
+ - files/rails/helpers/middle/capture_blocks.md
1371
+ - files/rails/helpers/middle/content_tag_usage.md
1372
+ - files/rails/helpers/middle/custom_helper_modules.md
1373
+ - files/rails/helpers/middle/link_to_dynamic_routes.md
1374
+ - files/rails/helpers/middle/number_helpers_usage.md
1375
+ - files/rails/helpers/middle/tag_helper_void_elements.md
1376
+ - files/rails/i18n/advanced/advanced_pluralization.md
1377
+ - files/rails/i18n/advanced/custom_db_backend.md
1378
+ - files/rails/i18n/advanced/html_safe_interpolation.md
1379
+ - files/rails/i18n/advanced/lazy_mailer_lookup.md
1380
+ - files/rails/i18n/advanced/proc_based_default_fallback.md
1381
+ - files/rails/i18n/beginner/interpolation_in_translations.md
1382
+ - files/rails/i18n/beginner/organize_locale_files.md
1383
+ - files/rails/i18n/beginner/pluralization_examples.md
1384
+ - files/rails/i18n/beginner/setup_default_locale.md
1385
+ - files/rails/i18n/beginner/translate_in_views.md
1386
+ - files/rails/i18n/expert/caching_translations_memcache.md
1387
+ - files/rails/i18n/expert/complex_pluralization_rules.md
1388
+ - files/rails/i18n/expert/custom_active_record_backend.md
1389
+ - files/rails/i18n/expert/namespace_lazy_lookups.md
1390
+ - files/rails/i18n/expert/thread_safe_locale_switching.md
1391
+ - files/rails/i18n/middle/datetime_localization.md
1392
+ - files/rails/i18n/middle/default_translation_options.md
1393
+ - files/rails/i18n/middle/locale_fallbacks.md
1394
+ - files/rails/i18n/middle/pluralization_with_count.md
1395
+ - files/rails/i18n/middle/scoped_view_translations.md
1396
+ - files/rails/layouts/advanced/custom_lookup_context_for_layout.md
1397
+ - files/rails/layouts/advanced/dynamic_layout_selection.md
1398
+ - files/rails/layouts/advanced/engine_isolated_layouts.md
1399
+ - files/rails/layouts/advanced/layout_variants_by_format.md
1400
+ - files/rails/layouts/advanced/nested_layouts_with_content_for.md
1401
+ - files/rails/layouts/beginner/application_layout.md
1402
+ - files/rails/layouts/beginner/custom_controller_layout.md
1403
+ - files/rails/layouts/beginner/layout_inheritance.md
1404
+ - files/rails/layouts/beginner/nested_layouts_partials.md
1405
+ - files/rails/layouts/beginner/yield_content_for.md
1406
+ - files/rails/layouts/expert/advanced_content_for_yields.md
1407
+ - files/rails/layouts/expert/dynamic_layout_selection.md
1408
+ - files/rails/layouts/expert/layout_fragment_caching.md
1409
+ - files/rails/layouts/expert/nested_layout_inheritance.md
1410
+ - files/rails/layouts/expert/view_component_layouts.md
1411
+ - files/rails/layouts/middle/asset_helpers_in_layout.md.md
1412
+ - files/rails/layouts/middle/content_for_and_yield.md.md
1413
+ - files/rails/layouts/middle/dynamic_controller_layout.md.md
1414
+ - files/rails/layouts/middle/nested_layouts.md.md
1415
+ - files/rails/layouts/middle/partial_locals_in_layout.md.md
1416
+ - files/rails/logging/advanced/asynchronous_logging.md
1417
+ - files/rails/logging/advanced/custom_log_formatter.md
1418
+ - files/rails/logging/advanced/lograge_logstash_integration.md
1419
+ - files/rails/logging/advanced/sql_query_context_logging.md
1420
+ - files/rails/logging/advanced/structured_json_logging.md
1421
+ - files/rails/logging/advanced/tagged_logging_context.md
1422
+ - files/rails/logging/beginner/custom_log_formatter.md
1423
+ - files/rails/logging/beginner/default_logger_usage.md
1424
+ - files/rails/logging/beginner/logging_in_controllers.md
1425
+ - files/rails/logging/beginner/logging_in_models.md
1426
+ - files/rails/logging/beginner/setting_log_levels.md
1427
+ - files/rails/logging/beginner/tagged_logging.md
1428
+ - files/rails/logging/expert/async_buffered_logging.md
1429
+ - files/rails/logging/expert/custom_active_support_logsubscriber.md
1430
+ - files/rails/logging/expert/enhance_lograge_custom_payloads.md
1431
+ - files/rails/logging/expert/implement_correlation_id_tracing.md
1432
+ - files/rails/logging/expert/instrument_performance_with_notifications.md
1433
+ - files/rails/logging/expert/structure_json_logs_semantic.md
1434
+ - files/rails/logging/middle/active_record_sql_logging.md
1435
+ - files/rails/logging/middle/broadcast_to_multiple_loggers.md
1436
+ - files/rails/logging/middle/custom_log_formatter.md
1437
+ - files/rails/logging/middle/environment_log_levels.md
1438
+ - files/rails/logging/middle/silence_logging.md
1439
+ - files/rails/logging/middle/tagged_logging.md
1440
+ - files/rails/mailers/advanced/async_mail_delivery.md
1441
+ - files/rails/mailers/advanced/custom_delivery_method.md
1442
+ - files/rails/mailers/advanced/dynamic_subjects_i18n.md
1443
+ - files/rails/mailers/advanced/instrumentation_monitoring.md
1444
+ - files/rails/mailers/advanced/interceptors_observers.md
1445
+ - files/rails/mailers/advanced/mailer_previews_locales.md
1446
+ - files/rails/mailers/advanced/parameterized_mailers.md
1447
+ - files/rails/mailers/advanced/streaming_attachments.md
1448
+ - files/rails/mailers/beginner/background_jobs_emails.md
1449
+ - files/rails/mailers/beginner/default_options.md
1450
+ - files/rails/mailers/beginner/generating_mailer.md
1451
+ - files/rails/mailers/beginner/mailer_methods_templates.md
1452
+ - files/rails/mailers/beginner/preview_emails.md
1453
+ - files/rails/mailers/beginner/send_emails_controllers.md
1454
+ - files/rails/mailers/beginner/smtp_configuration.md
1455
+ - files/rails/mailers/beginner/test_mailers.md
1456
+ - files/rails/mailers/expert/custom_delivery_method.md
1457
+ - files/rails/mailers/expert/custom_mailer_preview.md
1458
+ - files/rails/mailers/expert/dynamic_multipart_variants.md
1459
+ - files/rails/mailers/expert/instrumentation_and_metrics.md
1460
+ - files/rails/mailers/expert/mail_interceptors_observers.md
1461
+ - files/rails/mailers/expert/mailer_concerns_mixins.md
1462
+ - files/rails/mailers/expert/prioritized_async_delivery.md
1463
+ - files/rails/mailers/expert/streaming_attachments_s3.md
1464
+ - files/rails/mailers/middle/attachments_inline_images.md
1465
+ - files/rails/mailers/middle/background_delivery_active_job.md
1466
+ - files/rails/mailers/middle/customizing_layouts.md
1467
+ - files/rails/mailers/middle/default_url_options.md
1468
+ - files/rails/mailers/middle/localizing_content.md
1469
+ - files/rails/mailers/middle/mailer_previews.md
1470
+ - files/rails/mailers/middle/testing_mailers.md
1471
+ - files/rails/mailers/middle/using_helpers_in_mailers.md
1472
+ - files/rails/middleware/advanced/conditional_middleware_insertion.md
1473
+ - files/rails/middleware/advanced/custom_logging_middleware.md
1474
+ - files/rails/middleware/advanced/middleware_stack_inspection.md
1475
+ - files/rails/middleware/advanced/response_timing_middleware.md
1476
+ - files/rails/middleware/beginner/cors_middleware.md
1477
+ - files/rails/middleware/beginner/custom_middleware_setup.md
1478
+ - files/rails/middleware/beginner/insert_middleware_position.md
1479
+ - files/rails/middleware/beginner/request_logging_middleware.md
1480
+ - files/rails/middleware/expert/conditional_asset_pipeline_forking.md
1481
+ - files/rails/middleware/expert/dynamic_request_throttling_middleware.md
1482
+ - files/rails/middleware/expert/rotating_security_header_injector.md
1483
+ - files/rails/middleware/expert/stale_while_revalidate_cache_middleware.md
1484
+ - files/rails/middleware/middle/conditional_middleware_loading.md
1485
+ - files/rails/middleware/middle/custom_request_logger_middleware.md
1486
+ - files/rails/middleware/middle/middleware_insertion_points.md
1487
+ - files/rails/middleware/middle/testing_middleware_integration.md
1488
+ - files/rails/models/advanced/advisory_locks_for_concurrency_control.md
1489
+ - files/rails/models/advanced/bulk_upsert_with_upsert_all.md
1490
+ - files/rails/models/advanced/composite_primary_keys_usage.md
1491
+ - files/rails/models/advanced/custom_attribute_api_types.md
1492
+ - files/rails/models/advanced/db_check_constraints_for_validation.md
1493
+ - files/rails/models/advanced/model_concerns_for_modular_logic.md
1494
+ - files/rails/models/advanced/optimistic_locking_advanced.md
1495
+ - files/rails/models/advanced/parameterized_scopes_for_reusability.md
1496
+ - files/rails/models/advanced/postgres_enum_with_attribute_api.md
1497
+ - files/rails/models/advanced/using_arel_for_complex_queries.md
1498
+ - files/rails/models/beginner/model_associations.md
1499
+ - files/rails/models/beginner/model_callbacks.md
1500
+ - files/rails/models/beginner/model_constants.md
1501
+ - files/rails/models/beginner/model_custom_queries.md
1502
+ - files/rails/models/beginner/model_default_values.md
1503
+ - files/rails/models/beginner/model_delegation.md
1504
+ - files/rails/models/beginner/model_enums.md
1505
+ - files/rails/models/beginner/model_scopes.md
1506
+ - files/rails/models/beginner/model_testing.md
1507
+ - files/rails/models/beginner/model_validations.md
1508
+ - files/rails/models/expert/active_record_encryption.md
1509
+ - files/rails/models/expert/after_initialize_caching.md
1510
+ - files/rails/models/expert/arel_complex_subquery.md
1511
+ - files/rails/models/expert/composite_primary_keys.md
1512
+ - files/rails/models/expert/custom_dirty_tracking.md
1513
+ - files/rails/models/expert/custom_optimistic_locking.md
1514
+ - files/rails/models/expert/dynamic_scopes_metaprogramming.md
1515
+ - files/rails/models/expert/json_column_virtual_attributes.md
1516
+ - files/rails/models/expert/partitioned_table_models.md
1517
+ - files/rails/models/expert/sti_abstract_base.md
1518
+ - files/rails/models/middle/rails_models_association_counter_cache.md
1519
+ - files/rails/models/middle/rails_models_callbacks_best_practices.md
1520
+ - files/rails/models/middle/rails_models_custom_validations.md
1521
+ - files/rails/models/middle/rails_models_default_scope.md
1522
+ - files/rails/models/middle/rails_models_dirty_tracking.md
1523
+ - files/rails/models/middle/rails_models_enums.md
1524
+ - files/rails/models/middle/rails_models_polymorphic_association.md
1525
+ - files/rails/models/middle/rails_models_scopes.md
1526
+ - files/rails/models/middle/rails_models_serialization.md
1527
+ - files/rails/models/middle/rails_models_transactions.md
1528
+ - files/rails/partials/advanced/collection_partial_caching.md.md
1529
+ - files/rails/partials/advanced/dynamic_view_path_overrides.md.md
1530
+ - files/rails/partials/advanced/partial_with_layout.md.md
1531
+ - files/rails/partials/advanced/variant_specific_partials.md.md
1532
+ - files/rails/partials/beginner/basic_partial_rendering.md
1533
+ - files/rails/partials/beginner/partial_naming_conventions.md
1534
+ - files/rails/partials/beginner/passing_local_variables.md
1535
+ - files/rails/partials/beginner/rendering_collections.md
1536
+ - files/rails/partials/expert/dynamic_partial_resolution.md
1537
+ - files/rails/partials/expert/namespaced_partial_overrides.md
1538
+ - files/rails/partials/expert/partial_with_layout.md
1539
+ - files/rails/partials/expert/russian_doll_caching_partials.md
1540
+ - files/rails/partials/middle/caching_partials.md
1541
+ - files/rails/partials/middle/nested_partials.md
1542
+ - files/rails/partials/middle/passing_locals_to_partials.md
1543
+ - files/rails/partials/middle/rendering_collections.md
1544
+ - files/rails/performance/advanced/bulk_upserts_with_upsert_all.md
1545
+ - files/rails/performance/advanced/cpu_profiling_with_stackprof.md
1546
+ - files/rails/performance/advanced/custom_polymorphic_preloader.md
1547
+ - files/rails/performance/advanced/db_connection_pool_tuning.md
1548
+ - files/rails/performance/advanced/http_caching_with_etag.md
1549
+ - files/rails/performance/advanced/multiple_db_read_routing.md
1550
+ - files/rails/performance/advanced/preload_for_callbacks.md
1551
+ - files/rails/performance/advanced/ruby_gc_tunables.md
1552
+ - files/rails/performance/advanced/sql_query_commenting.md
1553
+ - files/rails/performance/advanced/streaming_large_responses.md
1554
+ - files/rails/performance/beginner/add_database_indexes.md
1555
+ - files/rails/performance/beginner/counter_cache_usage.md
1556
+ - files/rails/performance/beginner/eager_loading_includes.md
1557
+ - files/rails/performance/beginner/find_each_batch_processing.md
1558
+ - files/rails/performance/beginner/fragment_caching_views.md
1559
+ - files/rails/performance/beginner/pagination_with_kaminari.md
1560
+ - files/rails/performance/beginner/pluck_instead_of_select.md
1561
+ - files/rails/performance/beginner/precompile_assets_production.md
1562
+ - files/rails/performance/beginner/rack_mini_profiler_setup.md
1563
+ - files/rails/performance/beginner/russian_doll_caching.md
1564
+ - files/rails/performance/expert/active_support_instrumentation.md
1565
+ - files/rails/performance/expert/async_query_loading.md
1566
+ - files/rails/performance/expert/batch_preloading_scopes.md
1567
+ - files/rails/performance/expert/fast_jsonapi_serialization.md
1568
+ - files/rails/performance/expert/gc_jemalloc_tuning.md
1569
+ - files/rails/performance/expert/middleware_stack_refinement.md
1570
+ - files/rails/performance/expert/partial_expression_indexes.md
1571
+ - files/rails/performance/expert/puma_connection_pool_tuning.md
1572
+ - files/rails/performance/expert/streaming_live_responses.md
1573
+ - files/rails/performance/expert/two_level_caching.md
1574
+ - files/rails/performance/middle/batch_processing_with_find_each.md
1575
+ - files/rails/performance/middle/bulk_insertions_with_insert_all.md
1576
+ - files/rails/performance/middle/eager_loading_associations.md
1577
+ - files/rails/performance/middle/integrating_bullet_gem.md
1578
+ - files/rails/performance/middle/leveraging_rack_mini_profiler.md
1579
+ - files/rails/performance/middle/low_level_caching_with_cache_fetch.md
1580
+ - files/rails/performance/middle/optimizing_sql_indexes.md
1581
+ - files/rails/performance/middle/selecting_specific_columns.md
1582
+ - files/rails/performance/middle/using_counter_cache.md
1583
+ - files/rails/performance/middle/using_pluck_for_arrays.md
1584
+ - files/rails/routing/advanced/api_versioning.md
1585
+ - files/rails/routing/advanced/globbing_routes.md
1586
+ - files/rails/routing/advanced/route_constraints.md
1587
+ - files/rails/routing/advanced/routing_concerns.md
1588
+ - files/rails/routing/advanced/shallow_routing.md
1589
+ - files/rails/routing/beginner/inspect_routes.md
1590
+ - files/rails/routing/beginner/named_custom_routes.md
1591
+ - files/rails/routing/beginner/nested_resources.md
1592
+ - files/rails/routing/beginner/restful_resources.md
1593
+ - files/rails/routing/beginner/root_route.md
1594
+ - files/rails/routing/expert/advanced_route_globbing.md
1595
+ - files/rails/routing/expert/api_versioning_constraint.md
1596
+ - files/rails/routing/expert/dynamic_db_driven_routes.md
1597
+ - files/rails/routing/expert/dynamic_route_macros.md
1598
+ - files/rails/routing/expert/localized_routes_i18n.md
1599
+ - files/rails/routing/middle/member_collection_routes.md
1600
+ - files/rails/routing/middle/route_constraints_lambda.md
1601
+ - files/rails/routing/middle/route_globbing.md
1602
+ - files/rails/routing/middle/routing_concerns.md
1603
+ - files/rails/routing/middle/shallow_nesting.md
1604
+ - files/rails/secrets_and_credentials/advanced/credentials_rotation_workflow.md
1605
+ - files/rails/secrets_and_credentials/advanced/environment_specific_credentials.md
1606
+ - files/rails/secrets_and_credentials/advanced/nested_credentials_access.md
1607
+ - files/rails/secrets_and_credentials/beginner/accessing_credentials_in_code.md
1608
+ - files/rails/secrets_and_credentials/beginner/editing_credentials.md
1609
+ - files/rails/secrets_and_credentials/beginner/env_specific_credentials.md
1610
+ - files/rails/secrets_and_credentials/expert/aws_kms_credentials_provider.md
1611
+ - files/rails/secrets_and_credentials/expert/credentials_rotation_task.md
1612
+ - files/rails/secrets_and_credentials/expert/multi_layer_credentials.md
1613
+ - files/rails/secrets_and_credentials/middle/access_nested_credentials.md
1614
+ - files/rails/secrets_and_credentials/middle/manage_env_credentials.md
1615
+ - files/rails/secrets_and_credentials/middle/rotate_master_key.md
1616
+ - files/rails/security/advanced/advanced_active_record_relation_filters.md
1617
+ - files/rails/security/advanced/audit_logging_with_paper_trail.md
1618
+ - files/rails/security/advanced/blind_index_for_searchable_encrypted_data.md
1619
+ - files/rails/security/advanced/devise_two_factor_authentication.md
1620
+ - files/rails/security/advanced/dynamic_csp_with_secure_headers.md
1621
+ - files/rails/security/advanced/encrypted_credentials_multi_environment.md
1622
+ - files/rails/security/advanced/host_authorization_middleware.md
1623
+ - files/rails/security/advanced/hsts_strict_transport_security.md
1624
+ - files/rails/security/advanced/masked_csrf_tokens.md
1625
+ - files/rails/security/advanced/oauth_pkce_flow.md
1626
+ - files/rails/security/advanced/rack_attack_custom_throttle.md
1627
+ - files/rails/security/advanced/safe_raw_sql_with_binds.md
1628
+ - files/rails/security/advanced/sanitize_action_text_allowlists.md
1629
+ - files/rails/security/advanced/secure_active_storage_uploads.md
1630
+ - files/rails/security/advanced/secure_session_cookie_settings.md
1631
+ - files/rails/security/beginner/active_record_query_interface.md
1632
+ - files/rails/security/beginner/before_action_authenticate.md
1633
+ - files/rails/security/beginner/content_security_policy.md
1634
+ - files/rails/security/beginner/credentials_secret_key_base.md
1635
+ - files/rails/security/beginner/csrf_protection.md
1636
+ - files/rails/security/beginner/escape_html_output.md
1637
+ - files/rails/security/beginner/filter_sensitive_parameters.md
1638
+ - files/rails/security/beginner/force_ssl.md
1639
+ - files/rails/security/beginner/has_secure_password.md
1640
+ - files/rails/security/beginner/limit_file_uploads.md
1641
+ - files/rails/security/beginner/remove_debug_gems.md
1642
+ - files/rails/security/beginner/secure_headers.md
1643
+ - files/rails/security/beginner/secure_string_comparison.md
1644
+ - files/rails/security/beginner/strong_parameters.md
1645
+ - files/rails/security/beginner/validate_input_formats.md
1646
+ - files/rails/security/expert/active_record_encryption_rotation.md
1647
+ - files/rails/security/expert/activestorage_s3_secure_upload.md
1648
+ - files/rails/security/expert/arel_safe_dynamic_queries.md
1649
+ - files/rails/security/expert/ci_dependency_audit.md
1650
+ - files/rails/security/expert/cookie_secret_rotation.md
1651
+ - files/rails/security/expert/csp_violation_report_endpoint.md
1652
+ - files/rails/security/expert/csp_with_nonces.md
1653
+ - files/rails/security/expert/deep_parameter_sanitization.md
1654
+ - files/rails/security/expert/disable_xxe_parsing.md
1655
+ - files/rails/security/expert/hsts_preload.md
1656
+ - files/rails/security/expert/jwt_with_jwks_rotation.md
1657
+ - files/rails/security/expert/rack_attack_dynamic_throttles.md
1658
+ - files/rails/security/expert/safe_redirect_whitelist.md
1659
+ - files/rails/security/expert/strict_cors_dynamic_origins.md
1660
+ - files/rails/security/expert/timing_attack_secure_compare.md
1661
+ - files/rails/security/middle/active_record_encryption.md
1662
+ - files/rails/security/middle/bcrypt_passwords.md
1663
+ - files/rails/security/middle/content_security_policy.md
1664
+ - files/rails/security/middle/csrf_protection.md
1665
+ - files/rails/security/middle/enforce_ssl.md
1666
+ - files/rails/security/middle/file_upload_validation.md
1667
+ - files/rails/security/middle/output_escaping.md
1668
+ - files/rails/security/middle/parameter_filtering.md
1669
+ - files/rails/security/middle/rack_attack_rate_limiting.md
1670
+ - files/rails/security/middle/secure_cookies_flag.md
1671
+ - files/rails/security/middle/secure_redirects.md
1672
+ - files/rails/security/middle/security_headers.md
1673
+ - files/rails/security/middle/sql_injection_prevention.md
1674
+ - files/rails/security/middle/strong_parameters.md
1675
+ - files/rails/security/middle/x_frame_options.md
1676
+ - files/rails/sessions_and_cookies/advanced/json_hybrid_session_serializer.md
1677
+ - files/rails/sessions_and_cookies/advanced/rotate_cookie_encryption_keys.md
1678
+ - files/rails/sessions_and_cookies/advanced/sliding_session_expiration.md
1679
+ - files/rails/sessions_and_cookies/beginner/setting_basic_cookies_with_expiry.md
1680
+ - files/rails/sessions_and_cookies/beginner/using_sessions_to_store_user_data.md
1681
+ - files/rails/sessions_and_cookies/beginner/using_signed_cookies_for_tamper_protection.md
1682
+ - files/rails/sessions_and_cookies/expert/encrypted_cookie_segmentation.md
1683
+ - files/rails/sessions_and_cookies/expert/multi_domain_redis_sessions.md
1684
+ - files/rails/sessions_and_cookies/expert/session_secret_rotation.md
1685
+ - files/rails/sessions_and_cookies/middle/rolling_session_expiration.md
1686
+ - files/rails/sessions_and_cookies/middle/store_cart_in_session.md
1687
+ - files/rails/sessions_and_cookies/middle/use_signed_encrypted_cookies.md
1688
+ - files/rails/testing/advanced/dynamic_vcr_cassettes.md
1689
+ - files/rails/testing/advanced/parallel_test_execution.md
1690
+ - files/rails/testing/advanced/property_based_testing_with_rantly.md
1691
+ - files/rails/testing/advanced/rspec_profile_slow_specs.md
1692
+ - files/rails/testing/advanced/testprof_factorydoctor_integration.md
1693
+ - files/rails/testing/beginner/controller_request_spec.md
1694
+ - files/rails/testing/beginner/factorybot_basics.md
1695
+ - files/rails/testing/beginner/model_validation_spec.md
1696
+ - files/rails/testing/beginner/setup_rspec.md
1697
+ - files/rails/testing/beginner/using_fixtures.md
1698
+ - files/rails/testing/expert/custom_json_schema_matcher.md
1699
+ - files/rails/testing/expert/event_driven_testing.md
1700
+ - files/rails/testing/expert/mutant_integration.md
1701
+ - files/rails/testing/expert/parallel_capybara_tests.md
1702
+ - files/rails/testing/expert/test_prof_optimizations.md
1703
+ - files/rails/testing/middle/activejob_test_adapter.md
1704
+ - files/rails/testing/middle/dry_test_setup_let_subject.md
1705
+ - files/rails/testing/middle/file_uploads_fixture.md
1706
+ - files/rails/testing/middle/json_api_parsing.md
1707
+ - files/rails/testing/middle/reuse_tests_shared_examples.md
1708
+ - files/rails/versioning/advanced/dynamic_api_version_constraints.md
1709
+ - files/rails/versioning/advanced/paper_trail_advanced_usage.md
1710
+ - files/rails/versioning/advanced/serializer_version_selection.md
1711
+ - files/rails/versioning/beginner/bundle_update_rails.md
1712
+ - files/rails/versioning/beginner/check_current_rails_version.md
1713
+ - files/rails/versioning/beginner/lock_rails_version_gemfile.md
1714
+ - files/rails/versioning/expert/custom_header_versioning_constraint.md
1715
+ - files/rails/versioning/expert/deprecation_middleware_fallback.md
1716
+ - files/rails/versioning/expert/versioned_autoload_paths.md
1717
+ - files/rails/versioning/middle/versioning_header.md
1718
+ - files/rails/versioning/middle/versioning_namespaces.md
1719
+ - files/rails/versioning/middle/versioning_route_constraints.md
1720
+ - files/rails/views/advanced/capture-safeconcat.md
1721
+ - files/rails/views/advanced/cells-gem-usage.md
1722
+ - files/rails/views/advanced/custom-form-builder.md
1723
+ - files/rails/views/advanced/decorator-pattern-views.md
1724
+ - files/rails/views/advanced/dynamic-view-paths.md
1725
+ - files/rails/views/advanced/lazy-asset-loading.md
1726
+ - files/rails/views/advanced/named-content-slots.md
1727
+ - files/rails/views/advanced/nested-fragment-caching.md
1728
+ - files/rails/views/advanced/partial-caching-russian-doll.md
1729
+ - files/rails/views/advanced/stimulusjs-integration.md
1730
+ - files/rails/views/advanced/streaming-template-rendering.md
1731
+ - files/rails/views/advanced/viewcomponent-usage.md
1732
+ - files/rails/views/beginner/content_for_and_yield.md
1733
+ - files/rails/views/beginner/content_tag_usage.md
1734
+ - files/rails/views/beginner/escaping_html.md
1735
+ - files/rails/views/beginner/forms_form_with.md
1736
+ - files/rails/views/beginner/helpers_image_tag.md
1737
+ - files/rails/views/beginner/helpers_link_to.md
1738
+ - files/rails/views/beginner/layouts_application.md
1739
+ - files/rails/views/beginner/partials_basics.md
1740
+ - files/rails/views/beginner/partials_collection.md
1741
+ - files/rails/views/beginner/partials_with_locals.md
1742
+ - files/rails/views/beginner/view_conditionals.md
1743
+ - files/rails/views/beginner/view_loops_each.md
1744
+ - files/rails/views/expert/asset_pipeline_dynamic_paths.md
1745
+ - files/rails/views/expert/cells_gem_decoupling.md
1746
+ - files/rails/views/expert/custom_form_builder_dsl.md
1747
+ - files/rails/views/expert/i18n_view_precompilation.md
1748
+ - files/rails/views/expert/mustache_template_integration.md
1749
+ - files/rails/views/expert/nested_fragment_caching_strategies.md
1750
+ - files/rails/views/expert/sse_in_views.md
1751
+ - files/rails/views/expert/streaming_partials_live.md
1752
+ - files/rails/views/expert/template_handler_extension.md
1753
+ - files/rails/views/expert/view_rendering_profiler.md
1754
+ - files/rails/views/expert/viewcomponent_deep_dive.md
1755
+ - files/rails/views/middle/collection_rendering.md
1756
+ - files/rails/views/middle/content_for_usage.md
1757
+ - files/rails/views/middle/custom_helpers.md
1758
+ - files/rails/views/middle/fragment_caching.md
1759
+ - files/rails/views/middle/html_tag_helper.md
1760
+ - files/rails/views/middle/i18n_in_views.md
1761
+ - files/rails/views/middle/inline_form_errors.md
1762
+ - files/rails/views/middle/jbuilder_json_views.md
1763
+ - files/rails/views/middle/partial_with_locals.md
1764
+ - files/rails/views/middle/stimulus_data_attributes.md
1765
+ - files/rails/views/middle/turbo_frame_rendering.md
1766
+ - files/rails/views/middle/view_component_usage.md
1767
+ - files/rails/websockets/advanced/custom_connection_identifiers.md
1768
+ - files/rails/websockets/advanced/dynamic_channel_streaming.md
1769
+ - files/rails/websockets/advanced/granular_dom_updates.md
1770
+ - files/rails/websockets/advanced/reconnect_backoff.md
1771
+ - files/rails/websockets/advanced/redis_pubsub_scaling.md
1772
+ - files/rails/websockets/beginner/broadcast_from_controller.md
1773
+ - files/rails/websockets/beginner/generate_chat_channel.md
1774
+ - files/rails/websockets/beginner/model_broadcasting.md
1775
+ - files/rails/websockets/beginner/mount_actioncable_in_routes.md
1776
+ - files/rails/websockets/beginner/subscribe_in_javascript.md
1777
+ - files/rails/websockets/expert/backpressure_throttling.md
1778
+ - files/rails/websockets/expert/binary_streaming.md
1779
+ - files/rails/websockets/expert/jwt_connection_authentication.md
1780
+ - files/rails/websockets/expert/prometheus_monitoring.md
1781
+ - files/rails/websockets/expert/redis_sentinel_scaling.md
1782
+ - files/rails/websockets/middle/broadcast_to_user.md
1783
+ - files/rails/websockets/middle/connection_authorization.md
1784
+ - files/rails/websockets/middle/redis_adapter_optimization.md
1785
+ - files/rails/websockets/middle/setup_channels_streams.md
1786
+ - files/rails/websockets/middle/turbo_streams_integration.md
1787
+ - files/ruby/arrays/advanced/balanced_chunk_split.md
1788
+ - files/ruby/arrays/advanced/combinatorics_with_arrays.md
1789
+ - files/ruby/arrays/advanced/custom_uniq.md
1790
+ - files/ruby/arrays/advanced/grouping_with_each_with_object.md
1791
+ - files/ruby/arrays/advanced/lazy_enumerators.md
1792
+ - files/ruby/arrays/advanced/pattern_matching_arrays.md
1793
+ - files/ruby/arrays/advanced/pipeline_with_tap_then.md
1794
+ - files/ruby/arrays/advanced/selective_flatten.md
1795
+ - files/ruby/arrays/advanced/slice_when_chunking.md
1796
+ - files/ruby/arrays/advanced/transpose_jagged_arrays.md
1797
+ - files/ruby/arrays/beginner/accessing_elements.md
1798
+ - files/ruby/arrays/beginner/adding_elements.md
1799
+ - files/ruby/arrays/beginner/array_creation.md
1800
+ - files/ruby/arrays/beginner/cleaning_arrays.md
1801
+ - files/ruby/arrays/beginner/combining_arrays.md
1802
+ - files/ruby/arrays/beginner/destructuring_assignment.md
1803
+ - files/ruby/arrays/beginner/iterating_each.md
1804
+ - files/ruby/arrays/beginner/map_transform.md
1805
+ - files/ruby/arrays/beginner/removing_elements.md
1806
+ - files/ruby/arrays/beginner/select_filter.md
1807
+ - files/ruby/arrays/expert/binary_packing_with_pack_unpack.md.md
1808
+ - files/ruby/arrays/expert/bitset_array_representation.md.md
1809
+ - files/ruby/arrays/expert/custom_enumerator_chaining.md.md
1810
+ - files/ruby/arrays/expert/deep_freeze_immutable_arrays.md.md
1811
+ - files/ruby/arrays/expert/lazy_infinite_enumerator.md.md
1812
+ - files/ruby/arrays/expert/memoized_inject.md.md
1813
+ - files/ruby/arrays/expert/metaprogramming_dynamic_array_methods.md.md
1814
+ - files/ruby/arrays/expert/n_dimensional_array_generator.md.md
1815
+ - files/ruby/arrays/expert/parallel_map_with_threads.md.md
1816
+ - files/ruby/arrays/expert/refinements_for_array_extensions.md.md
1817
+ - files/ruby/arrays/middle/bsearch_usage.md
1818
+ - files/ruby/arrays/middle/destructuring_assignment.md
1819
+ - files/ruby/arrays/middle/dig_nested_arrays.md
1820
+ - files/ruby/arrays/middle/lazy_enumerators.md
1821
+ - files/ruby/arrays/middle/map_compact_chain.md
1822
+ - files/ruby/arrays/middle/partition_array.md
1823
+ - files/ruby/arrays/middle/product_combinations.md
1824
+ - files/ruby/arrays/middle/slice_range_negative.md
1825
+ - files/ruby/arrays/middle/sum_with_block.md
1826
+ - files/ruby/arrays/middle/transpose_matrix.md
1827
+ - files/ruby/benchmarking/advanced/compare_algorithms_with_benchmark_ips.md
1828
+ - files/ruby/benchmarking/advanced/customize_benchmark_suite_with_metrics.md
1829
+ - files/ruby/benchmarking/advanced/disable_gc_for_stable_benchmarks.md
1830
+ - files/ruby/benchmarking/advanced/profile_memory_allocations.md
1831
+ - files/ruby/benchmarking/advanced/use_warmup_for_consistent_results.md
1832
+ - files/ruby/benchmarking/beginner/benchmark_bm.md
1833
+ - files/ruby/benchmarking/beginner/benchmark_irb_console.md
1834
+ - files/ruby/benchmarking/beginner/benchmark_measure.md
1835
+ - files/ruby/benchmarking/beginner/benchmark_realtime.md
1836
+ - files/ruby/benchmarking/beginner/benchmark_tms_attributes.md
1837
+ - files/ruby/benchmarking/expert/automated_benchmark_reports.md
1838
+ - files/ruby/benchmarking/expert/benchmark_ips_config.md
1839
+ - files/ruby/benchmarking/expert/c_extension_performance_comparison.md
1840
+ - files/ruby/benchmarking/expert/custom_harness_with_warmup.md
1841
+ - files/ruby/benchmarking/expert/memory_and_gc_profiling.md
1842
+ - files/ruby/benchmarking/middle/benchmark_bm.md
1843
+ - files/ruby/benchmarking/middle/benchmark_bmbm.md
1844
+ - files/ruby/benchmarking/middle/benchmark_realtime.md
1845
+ - files/ruby/benchmarking/middle/benchmark_results_formatting.md
1846
+ - files/ruby/benchmarking/middle/benchmark_string_vs_interpolation.md
1847
+ - files/ruby/blocks/advanced/benchmark_blocks.md
1848
+ - files/ruby/blocks/advanced/destructuring_block_params.md
1849
+ - files/ruby/blocks/advanced/fibers_and_blocks.md
1850
+ - files/ruby/blocks/advanced/internal_dsl_with_instance_eval.md
1851
+ - files/ruby/blocks/advanced/lazy_infinite_streams.md
1852
+ - files/ruby/blocks/advanced/method_wrapper_with_blocks.md
1853
+ - files/ruby/blocks/advanced/proc_currying_and_composition.md
1854
+ - files/ruby/blocks/advanced/retry_with_backoff.md
1855
+ - files/ruby/blocks/advanced/trampoline_optimization.md
1856
+ - files/ruby/blocks/beginner/block_parameters.md
1857
+ - files/ruby/blocks/beginner/block_to_proc_conversion.md
1858
+ - files/ruby/blocks/beginner/custom_method_yield.md
1859
+ - files/ruby/blocks/beginner/file_resource_management.md
1860
+ - files/ruby/blocks/beginner/filtering_select.md
1861
+ - files/ruby/blocks/beginner/guarding_with_block_given.md
1862
+ - files/ruby/blocks/beginner/hash_each_pair.md
1863
+ - files/ruby/blocks/beginner/iterating_each.md
1864
+ - files/ruby/blocks/beginner/repeating_times.md
1865
+ - files/ruby/blocks/beginner/transforming_map.md
1866
+ - files/ruby/blocks/expert/advanced_lazy_enumerator_chaining.md
1867
+ - files/ruby/blocks/expert/block_instrumentation_with_prepend.md
1868
+ - files/ruby/blocks/expert/capture_and_rebind_block_context.md
1869
+ - files/ruby/blocks/expert/context_switch_with_instance_exec.md
1870
+ - files/ruby/blocks/expert/curry_and_compose_procs.md
1871
+ - files/ruby/blocks/expert/dynamic_define_method_with_block.md
1872
+ - files/ruby/blocks/expert/fiber_based_block_control_flow.md
1873
+ - files/ruby/blocks/expert/internal_dsl_with_instance_eval.md
1874
+ - files/ruby/blocks/expert/partial_application_with_proc.md
1875
+ - files/ruby/blocks/expert/trampoline_pattern_with_procs.md
1876
+ - files/ruby/blocks/middle/block_to_proc_conversion.md.md
1877
+ - files/ruby/blocks/middle/chainable_methods_with_blocks.md.md
1878
+ - files/ruby/blocks/middle/check_block_presence.md.md
1879
+ - files/ruby/blocks/middle/control_flow_within_blocks.md.md
1880
+ - files/ruby/blocks/middle/custom_each_iterator.md.md
1881
+ - files/ruby/blocks/middle/default_block_fallback.md.md
1882
+ - files/ruby/blocks/middle/dsl_with_instance_eval.md.md
1883
+ - files/ruby/blocks/middle/filter_and_map_collections.md.md
1884
+ - files/ruby/blocks/middle/multiple_blocks.md.md
1885
+ - files/ruby/blocks/middle/yield_with_arguments.md.md
1886
+ - files/ruby/classes_and_modules/advanced/alias_chain_prepend.md
1887
+ - files/ruby/classes_and_modules/advanced/autoload_modules.md
1888
+ - files/ruby/classes_and_modules/advanced/concerns_namespacing.md
1889
+ - files/ruby/classes_and_modules/advanced/const_missing_autoload.md
1890
+ - files/ruby/classes_and_modules/advanced/dynamic_define_method.md
1891
+ - files/ruby/classes_and_modules/advanced/dynamic_delegators.md
1892
+ - files/ruby/classes_and_modules/advanced/eigenclass_methods.md
1893
+ - files/ruby/classes_and_modules/advanced/extend_class_methods_on_include.md
1894
+ - files/ruby/classes_and_modules/advanced/forwardable_mixin.md
1895
+ - files/ruby/classes_and_modules/advanced/freeze_module.md
1896
+ - files/ruby/classes_and_modules/advanced/inherited_hook_module.md
1897
+ - files/ruby/classes_and_modules/advanced/method_missing_proxy.md
1898
+ - files/ruby/classes_and_modules/advanced/prepend_vs_include.md
1899
+ - files/ruby/classes_and_modules/advanced/self_included_hook.md
1900
+ - files/ruby/classes_and_modules/advanced/using_refinements.md
1901
+ - files/ruby/classes_and_modules/beginner/attr_accessors.md
1902
+ - files/ruby/classes_and_modules/beginner/basic_class_definition.md
1903
+ - files/ruby/classes_and_modules/beginner/basic_module_definition.md
1904
+ - files/ruby/classes_and_modules/beginner/class_constants.md
1905
+ - files/ruby/classes_and_modules/beginner/class_methods.md
1906
+ - files/ruby/classes_and_modules/beginner/extend_for_class_methods.md
1907
+ - files/ruby/classes_and_modules/beginner/include_mixins.md
1908
+ - files/ruby/classes_and_modules/beginner/inheritance_basics.md
1909
+ - files/ruby/classes_and_modules/beginner/initialize_method.md
1910
+ - files/ruby/classes_and_modules/beginner/inspect_ancestors.md
1911
+ - files/ruby/classes_and_modules/beginner/instance_variables.md
1912
+ - files/ruby/classes_and_modules/beginner/instantiate_objects.md
1913
+ - files/ruby/classes_and_modules/beginner/method_overriding.md
1914
+ - files/ruby/classes_and_modules/beginner/module_namespacing.md
1915
+ - files/ruby/classes_and_modules/beginner/visibility_control.md
1916
+ - files/ruby/classes_and_modules/expert/anonymous_module_isolation.md
1917
+ - files/ruby/classes_and_modules/expert/autoload_lazy_loading.md
1918
+ - files/ruby/classes_and_modules/expert/concern_pattern_composition.md
1919
+ - files/ruby/classes_and_modules/expert/const_missing_dynamic_resolution.md
1920
+ - files/ruby/classes_and_modules/expert/dynamic_method_generation.md
1921
+ - files/ruby/classes_and_modules/expert/forwardable_delegation.md
1922
+ - files/ruby/classes_and_modules/expert/included_class_macros.md
1923
+ - files/ruby/classes_and_modules/expert/internal_dsl_included_hook.md
1924
+ - files/ruby/classes_and_modules/expert/module_prepend_over_mixin.md
1925
+ - files/ruby/classes_and_modules/expert/namespaces_with_module_nesting.md
1926
+ - files/ruby/classes_and_modules/expert/prepend_method_wrappers.md
1927
+ - files/ruby/classes_and_modules/expert/proxy_method_missing.md
1928
+ - files/ruby/classes_and_modules/expert/refinements_scoped_monkey_patches.md
1929
+ - files/ruby/classes_and_modules/expert/singleton_class_metaprogramming.md
1930
+ - files/ruby/classes_and_modules/expert/tracepoint_execution_tracing.md
1931
+ - files/ruby/classes_and_modules/middle/class_eval_vs_module_eval.md
1932
+ - files/ruby/classes_and_modules/middle/concern_pattern.md
1933
+ - files/ruby/classes_and_modules/middle/const_missing_autoload.md
1934
+ - files/ruby/classes_and_modules/middle/dynamic_class_definition.md
1935
+ - files/ruby/classes_and_modules/middle/include_vs_extend.md
1936
+ - files/ruby/classes_and_modules/middle/mixins_with_callbacks.md
1937
+ - files/ruby/classes_and_modules/middle/module_alias_method.md
1938
+ - files/ruby/classes_and_modules/middle/module_function_usage.md
1939
+ - files/ruby/classes_and_modules/middle/module_nesting_lookup.md
1940
+ - files/ruby/classes_and_modules/middle/module_prepend.md
1941
+ - files/ruby/classes_and_modules/middle/namespacing_with_modules.md
1942
+ - files/ruby/classes_and_modules/middle/refinements_example.md
1943
+ - files/ruby/classes_and_modules/middle/self_included_hook.md
1944
+ - files/ruby/classes_and_modules/middle/singleton_class_methods.md
1945
+ - files/ruby/compression/advanced/creating_tar_gz_archives.md
1946
+ - files/ruby/compression/advanced/streaming_large_file_compression.md
1947
+ - files/ruby/compression/beginner/compress_with_gzip.md
1948
+ - files/ruby/compression/beginner/create_zip_archive.md
1949
+ - files/ruby/compression/expert/parallel_zstd_compression_with_ffi.md
1950
+ - files/ruby/compression/expert/streaming_chunked_gzip_compression.md
1951
+ - files/ruby/compression/middle/file_compression_gzip.md
1952
+ - files/ruby/compression/middle/string_compression_deflate.md
1953
+ - files/ruby/concurrency_and_mutexes/advanced/condition_variable_coordination.md.md
1954
+ - files/ruby/concurrency_and_mutexes/advanced/deadlock_prevention.md.md
1955
+ - files/ruby/concurrency_and_mutexes/advanced/double_checked_locking.md.md
1956
+ - files/ruby/concurrency_and_mutexes/advanced/monitor_reentrant_mutex.md.md
1957
+ - files/ruby/concurrency_and_mutexes/beginner/initialize_mutex_per_resource.md
1958
+ - files/ruby/concurrency_and_mutexes/beginner/manual_lock_unlock.md
1959
+ - files/ruby/concurrency_and_mutexes/beginner/shared_counter_with_mutex.md
1960
+ - files/ruby/concurrency_and_mutexes/beginner/waiting_for_threads_join.md
1961
+ - files/ruby/concurrency_and_mutexes/expert/fair_fifo_mutex.md
1962
+ - files/ruby/concurrency_and_mutexes/expert/hybrid_spinlock.md
1963
+ - files/ruby/concurrency_and_mutexes/expert/lock_striping_mutex_shard.md
1964
+ - files/ruby/concurrency_and_mutexes/expert/reentrant_mutex_monitor.md
1965
+ - files/ruby/concurrency_and_mutexes/middle/condition_variable_usage.md
1966
+ - files/ruby/concurrency_and_mutexes/middle/double_checked_locking.md
1967
+ - files/ruby/concurrency_and_mutexes/middle/mutex_synchronize.md
1968
+ - files/ruby/concurrency_and_mutexes/middle/mutex_try_lock.md
1969
+ - files/ruby/constants/advanced/autoload_with_const_missing.md
1970
+ - files/ruby/constants/advanced/dynamic_constants_via_const_set.md
1971
+ - files/ruby/constants/advanced/reload_constants_remove_const.md
1972
+ - files/ruby/constants/beginner/defining_and_accessing_constants.md
1973
+ - files/ruby/constants/beginner/freezing_constants_to_prevent_mutation.md
1974
+ - files/ruby/constants/beginner/naming_conventions_for_constants.md
1975
+ - files/ruby/constants/expert/custom_const_missing_autoload.md
1976
+ - files/ruby/constants/expert/deep_freeze_constants.md
1977
+ - files/ruby/constants/expert/dynamic_constant_definition.md
1978
+ - files/ruby/constants/middle/config_constants.md
1979
+ - files/ruby/constants/middle/freeze_constants.md
1980
+ - files/ruby/constants/middle/magic_values_constants.md
1981
+ - files/ruby/creating_gems/advanced/cli_plugin_architecture.md
1982
+ - files/ruby/creating_gems/advanced/native_extension_setup.md
1983
+ - files/ruby/creating_gems/advanced/release_automation.md
1984
+ - files/ruby/creating_gems/beginner/build_and_install_gem.md
1985
+ - files/ruby/creating_gems/beginner/configure_gemspec.md
1986
+ - files/ruby/creating_gems/beginner/initialize_gem_skeleton.md
1987
+ - files/ruby/creating_gems/expert/automated_release_pipeline.md
1988
+ - files/ruby/creating_gems/expert/custom_gem_scaffold.md
1989
+ - files/ruby/creating_gems/expert/native_extension_multi_platform.md
1990
+ - files/ruby/creating_gems/middle/embed_usage_examples.md.md
1991
+ - files/ruby/creating_gems/middle/initialize_gem_with_bundler.md.md
1992
+ - files/ruby/creating_gems/middle/manage_version_metadata.md.md
1993
+ - files/ruby/csv/advanced/custom_converters_casting.md
1994
+ - files/ruby/csv/advanced/lazy_loading_huge_csv.md
1995
+ - files/ruby/csv/advanced/parallel_csv_processing.md
1996
+ - files/ruby/csv/advanced/streaming_csv_generation.md
1997
+ - files/ruby/csv/beginner/csv_foreach_basics.md
1998
+ - files/ruby/csv/beginner/csv_parse_string.md
1999
+ - files/ruby/csv/beginner/csv_with_headers.md
2000
+ - files/ruby/csv/beginner/csv_write_file.md
2001
+ - files/ruby/csv/expert/csv_lazy_streaming.md
2002
+ - files/ruby/csv/expert/csv_parallel_processing.md
2003
+ - files/ruby/csv/expert/csv_random_access_indexing.md
2004
+ - files/ruby/csv/expert/csv_schema_structs.md
2005
+ - files/ruby/csv/middle/custom_csv_writing.md
2006
+ - files/ruby/csv/middle/efficient_streaming.md
2007
+ - files/ruby/csv/middle/headers_and_converters.md
2008
+ - files/ruby/csv/middle/resilient_parsing.md
2009
+ - files/ruby/data_types/advanced/bitwise_operations.md
2010
+ - files/ruby/data_types/advanced/deep_default_hash.md
2011
+ - files/ruby/data_types/advanced/lazy_enumerators.md
2012
+ - files/ruby/data_types/advanced/pattern_matching.md
2013
+ - files/ruby/data_types/advanced/scoped_refinements.md
2014
+ - files/ruby/data_types/beginner/ruby_arrays.md
2015
+ - files/ruby/data_types/beginner/ruby_hashes.md
2016
+ - files/ruby/data_types/beginner/ruby_numbers.md
2017
+ - files/ruby/data_types/beginner/ruby_strings.md
2018
+ - files/ruby/data_types/beginner/ruby_symbols.md
2019
+ - files/ruby/data_types/expert/custom_numeric_coercion.md
2020
+ - files/ruby/data_types/expert/deep_immutable_structures.md
2021
+ - files/ruby/data_types/expert/high_precision_arithmetic.md
2022
+ - files/ruby/data_types/expert/lazy_infinite_sequences.md
2023
+ - files/ruby/data_types/expert/pattern_matching_hashes.md
2024
+ - files/ruby/data_types/middle/array_destructuring_splat.md
2025
+ - files/ruby/data_types/middle/frozen_string_literals.md
2026
+ - files/ruby/data_types/middle/hash_default_proc.md
2027
+ - files/ruby/data_types/middle/optimize_hash_keys.md
2028
+ - files/ruby/data_types/middle/range_iteration_step.md
2029
+ - files/ruby/date_time/advanced/business_days_enumeration.md
2030
+ - files/ruby/date_time/advanced/custom_date_parsing.md
2031
+ - files/ruby/date_time/advanced/high_precision_arithmetic.md
2032
+ - files/ruby/date_time/advanced/iso8601_duration_handling.md
2033
+ - files/ruby/date_time/advanced/timezone_conversion.md
2034
+ - files/ruby/date_time/beginner/date_arithmetic.md
2035
+ - files/ruby/date_time/beginner/formatting_dates_times.md
2036
+ - files/ruby/date_time/beginner/getting_current_date_time.md
2037
+ - files/ruby/date_time/beginner/handling_time_zones.md
2038
+ - files/ruby/date_time/beginner/parsing_date_strings.md
2039
+ - files/ruby/date_time/expert/astronomical_julian_day_conversion.md
2040
+ - files/ruby/date_time/expert/business_calendar_refinement.md
2041
+ - files/ruby/date_time/expert/high_res_monotonic_timing.md
2042
+ - files/ruby/date_time/expert/leap_second_wrapper.md
2043
+ - files/ruby/date_time/expert/tzinfo_caching.md
2044
+ - files/ruby/date_time/middle/business_day_calculation.md
2045
+ - files/ruby/date_time/middle/calculate_durations.md
2046
+ - files/ruby/date_time/middle/format_with_strftime.md
2047
+ - files/ruby/date_time/middle/handle_time_zones.md
2048
+ - files/ruby/date_time/middle/parse_custom_strptime.md
2049
+ - files/ruby/define_method/advanced/custom_visibility_hooks.md
2050
+ - files/ruby/define_method/advanced/dsl_scope_capture.md
2051
+ - files/ruby/define_method/advanced/dynamic_method_proxy.md
2052
+ - files/ruby/define_method/advanced/memoization_via_define_method.md
2053
+ - files/ruby/define_method/beginner/attribute_getter_setter.md
2054
+ - files/ruby/define_method/beginner/capture_external_variable.md
2055
+ - files/ruby/define_method/beginner/dynamic_method_creation.md
2056
+ - files/ruby/define_method/beginner/method_with_arguments.md
2057
+ - files/ruby/define_method/expert/dynamic_api_client_generator.md
2058
+ - files/ruby/define_method/expert/fluent_dsl_builder.md
2059
+ - files/ruby/define_method/expert/hot_swappable_methods.md
2060
+ - files/ruby/define_method/expert/preserve_method_metadata.md
2061
+ - files/ruby/define_method/middle/dynamic_accessors.md
2062
+ - files/ruby/define_method/middle/dynamic_delegation.md
2063
+ - files/ruby/define_method/middle/method_wrapper_logging.md
2064
+ - files/ruby/define_method/middle/validation_helpers.md
2065
+ - files/ruby/directory_management/advanced/atomic_directory_swap.md
2066
+ - files/ruby/directory_management/advanced/recursive_traversal_find.md
2067
+ - files/ruby/directory_management/beginner/dir_list_and_filter.md
2068
+ - files/ruby/directory_management/beginner/recursive_directory_creation.md
2069
+ - files/ruby/directory_management/expert/cross_platform_realtime_dir_watcher.md
2070
+ - files/ruby/directory_management/expert/parallel_lazy_directory_traversal.md
2071
+ - files/ruby/directory_management/middle/pattern_based_traversal_with_pathname.md
2072
+ - files/ruby/directory_management/middle/safe_directory_creation_with_fileutils.md
2073
+ - files/ruby/enumerables/advanced/chunk_while_dynamic_grouping.md
2074
+ - files/ruby/enumerables/advanced/each_with_object_stateful_accumulation.md
2075
+ - files/ruby/enumerables/advanced/external_iterators_enum_for.md
2076
+ - files/ruby/enumerables/advanced/lazy_enumerators_infinite_streams.md
2077
+ - files/ruby/enumerables/advanced/slice_when_custom_breaks.md
2078
+ - files/ruby/enumerables/advanced/zip_lazy_pattern_matching.md
2079
+ - files/ruby/enumerables/beginner/accumulate_with_inject.md
2080
+ - files/ruby/enumerables/beginner/exclude_with_reject.md
2081
+ - files/ruby/enumerables/beginner/filter_with_select.md
2082
+ - files/ruby/enumerables/beginner/find_with_detect.md
2083
+ - files/ruby/enumerables/beginner/iterate_with_each.md
2084
+ - files/ruby/enumerables/beginner/transform_with_map.md
2085
+ - files/ruby/enumerables/expert/custom_enumerable_deep_traversal.md
2086
+ - files/ruby/enumerables/expert/dynamic_slice_when.md
2087
+ - files/ruby/enumerables/expert/fiber_based_enumerator.md
2088
+ - files/ruby/enumerables/expert/infinite_sequence_produce.md
2089
+ - files/ruby/enumerables/expert/lazy_pipeline_scaling.md
2090
+ - files/ruby/enumerables/expert/merge_infinite_streams.md
2091
+ - files/ruby/enumerables/middle/each_with_object_hash_building.md
2092
+ - files/ruby/enumerables/middle/flat_map_group_by_transform.md
2093
+ - files/ruby/enumerables/middle/lazy_chaining_enumerables.md
2094
+ - files/ruby/enumerables/middle/slice_before_chunk_while.md
2095
+ - files/ruby/enumerables/middle/sum_with_block.md
2096
+ - files/ruby/enumerables/middle/tally_element_counts.md
2097
+ - files/ruby/exceptions/advanced/custom_exception_hierarchy.md
2098
+ - files/ruby/exceptions/advanced/exception_cause_chaining.md
2099
+ - files/ruby/exceptions/advanced/exception_notification_integration.md
2100
+ - files/ruby/exceptions/advanced/retry_with_exponential_backoff.md
2101
+ - files/ruby/exceptions/beginner/ensure_usage.md
2102
+ - files/ruby/exceptions/beginner/raising_exceptions.md
2103
+ - files/ruby/exceptions/beginner/rescue_basic.md
2104
+ - files/ruby/exceptions/beginner/rescue_specific.md
2105
+ - files/ruby/exceptions/expert/custom_error_with_metadata.md
2106
+ - files/ruby/exceptions/expert/exception_wrapping_with_cause.md
2107
+ - files/ruby/exceptions/expert/exponential_backoff_retry_logic.md
2108
+ - files/ruby/exceptions/expert/tracepoint_exception_monitoring.md
2109
+ - files/ruby/exceptions/middle/ensure_for_cleanup.md
2110
+ - files/ruby/exceptions/middle/inline_rescue_in_method.md
2111
+ - files/ruby/exceptions/middle/rescue_specific_exceptions.md
2112
+ - files/ruby/exceptions/middle/retry_transient_errors.md
2113
+ - files/ruby/fibers/advanced/fiber_async_io.md
2114
+ - files/ruby/fibers/advanced/fiber_data_pipeline.md
2115
+ - files/ruby/fibers/advanced/fiber_enumerator_generator.md
2116
+ - files/ruby/fibers/advanced/fiber_error_supervision.md
2117
+ - files/ruby/fibers/beginner/creating_and_resuming.md
2118
+ - files/ruby/fibers/beginner/passing_values_between_fiber.md
2119
+ - files/ruby/fibers/beginner/simple_enumerator_with_fiber.md
2120
+ - files/ruby/fibers/beginner/what_is_a_fiber.md
2121
+ - files/ruby/fibers/expert/async_gem_integration.md
2122
+ - files/ruby/fibers/expert/async_io_multiplexing.md
2123
+ - files/ruby/fibers/expert/cooperative_fiber_scheduler.md
2124
+ - files/ruby/fibers/expert/fiber_lazy_enumerator.md
2125
+ - files/ruby/fibers/middle/fiber_arguments.md
2126
+ - files/ruby/fibers/middle/fiber_basic_usage.md
2127
+ - files/ruby/fibers/middle/fiber_cooperative_scheduler.md
2128
+ - files/ruby/fibers/middle/fiber_to_enumerator.md
2129
+ - files/ruby/file_io/advanced/atomic_file_write.md
2130
+ - files/ruby/file_io/advanced/chunked_buffer_reading.md
2131
+ - files/ruby/file_io/advanced/encoding_transcoding.md
2132
+ - files/ruby/file_io/advanced/fcntl_flags.md
2133
+ - files/ruby/file_io/advanced/memory_mapped_file.md
2134
+ - files/ruby/file_io/advanced/nonblocking_io_select.md
2135
+ - files/ruby/file_io/advanced/tail_f_implementation.md
2136
+ - files/ruby/file_io/advanced/zero_copy_io.md
2137
+ - files/ruby/file_io/beginner/append_to_file.md
2138
+ - files/ruby/file_io/beginner/check_file_existence.md
2139
+ - files/ruby/file_io/beginner/io_read_write_shortcuts.md
2140
+ - files/ruby/file_io/beginner/iterate_lines_foreach.md
2141
+ - files/ruby/file_io/beginner/join_file_paths.md
2142
+ - files/ruby/file_io/beginner/read_with_block.md
2143
+ - files/ruby/file_io/beginner/readlines_to_array.md
2144
+ - files/ruby/file_io/beginner/write_with_block.md
2145
+ - files/ruby/file_io/expert/async_io_eventmachine.md
2146
+ - files/ruby/file_io/expert/atomic_file_write.md
2147
+ - files/ruby/file_io/expert/descriptor_manipulation.md
2148
+ - files/ruby/file_io/expert/memory_map_file.md
2149
+ - files/ruby/file_io/expert/nonblocking_file_io.md
2150
+ - files/ruby/file_io/expert/sparse_file_manipulation.md
2151
+ - files/ruby/file_io/expert/streaming_encryption.md
2152
+ - files/ruby/file_io/expert/zero_copy_sendfile.md
2153
+ - files/ruby/file_io/middle/chunked_read.md.md
2154
+ - files/ruby/file_io/middle/efficient_file_copy.md.md
2155
+ - files/ruby/file_io/middle/encoding_handling.md.md
2156
+ - files/ruby/file_io/middle/file_locking.md.md
2157
+ - files/ruby/file_io/middle/file_open_block.md.md
2158
+ - files/ruby/file_io/middle/line_by_line_processing.md.md
2159
+ - files/ruby/file_io/middle/tempfile_usage.md.md
2160
+ - files/ruby/file_io/middle/write_append_modes.md.md
2161
+ - files/ruby/hashes/advanced/auto_vivification.md
2162
+ - files/ruby/hashes/advanced/compact_and_filter_map.md
2163
+ - files/ruby/hashes/advanced/fetch_with_block_defaults.md
2164
+ - files/ruby/hashes/advanced/grouping_with_each_with_object.md
2165
+ - files/ruby/hashes/advanced/hash_pattern_matching.md
2166
+ - files/ruby/hashes/advanced/hash_to_proc.md
2167
+ - files/ruby/hashes/advanced/indifferent_access.md
2168
+ - files/ruby/hashes/advanced/nested_transform_keys.md
2169
+ - files/ruby/hashes/advanced/recursive_deep_merge.md
2170
+ - files/ruby/hashes/advanced/slice_and_except.md
2171
+ - files/ruby/hashes/beginner/accessing_hash_values.md
2172
+ - files/ruby/hashes/beginner/array_to_hash_conversion.md
2173
+ - files/ruby/hashes/beginner/checking_key_existence.md
2174
+ - files/ruby/hashes/beginner/creating_hashes.md
2175
+ - files/ruby/hashes/beginner/hash_default_values.md
2176
+ - files/ruby/hashes/beginner/iterating_over_hash.md
2177
+ - files/ruby/hashes/beginner/merging_hashes.md
2178
+ - files/ruby/hashes/beginner/selecting_hash_entries.md
2179
+ - files/ruby/hashes/beginner/symbol_vs_string_keys.md
2180
+ - files/ruby/hashes/beginner/working_with_nested_hashes.md
2181
+ - files/ruby/hashes/expert/advanced_keyword_arg_forwarding.md
2182
+ - files/ruby/hashes/expert/auto_vivification_nested_hashes.md
2183
+ - files/ruby/hashes/expert/chaining_transform_keys_values.md
2184
+ - files/ruby/hashes/expert/custom_deep_merge_with_conflicts.md
2185
+ - files/ruby/hashes/expert/dynamic_struct_from_hash.md
2186
+ - files/ruby/hashes/expert/identity_vs_equality_key_comparison.md
2187
+ - files/ruby/hashes/expert/immutable_persistent_hash.md
2188
+ - files/ruby/hashes/expert/lazy_enumeration_hash_processing.md
2189
+ - files/ruby/hashes/expert/pattern_matching_nested_hashes.md
2190
+ - files/ruby/hashes/expert/refinements_safe_hash_extensions.md
2191
+ - files/ruby/hashes/middle/build_hash_each_with_object.md
2192
+ - files/ruby/hashes/middle/compact_hash.md
2193
+ - files/ruby/hashes/middle/fetch_with_default_block.md
2194
+ - files/ruby/hashes/middle/invert_handle_duplicates.md
2195
+ - files/ruby/hashes/middle/merge_with_block.md
2196
+ - files/ruby/hashes/middle/select_and_reject.md
2197
+ - files/ruby/hashes/middle/slice_hash.md
2198
+ - files/ruby/hashes/middle/sort_by_key_or_value.md
2199
+ - files/ruby/hashes/middle/transform_keys.md
2200
+ - files/ruby/hashes/middle/transform_values.md
2201
+ - files/ruby/irb/advanced/conditional_irbrc.md
2202
+ - files/ruby/irb/advanced/custom_irb_prompt.md
2203
+ - files/ruby/irb/advanced/custom_key_bindings.md
2204
+ - files/ruby/irb/advanced/define_magic_commands.md
2205
+ - files/ruby/irb/advanced/enable_auto_completion.md
2206
+ - files/ruby/irb/advanced/integrate_awesome_print.md
2207
+ - files/ruby/irb/advanced/multi_irb_sessions.md
2208
+ - files/ruby/irb/advanced/persist_command_history.md
2209
+ - files/ruby/irb/advanced/save_load_workspace.md
2210
+ - files/ruby/irb/advanced/use_pry_shell.md
2211
+ - files/ruby/irb/beginner/access_ruby_docs.md
2212
+ - files/ruby/irb/beginner/exit_irb.md
2213
+ - files/ruby/irb/beginner/grep_methods.md
2214
+ - files/ruby/irb/beginner/history_navigation.md
2215
+ - files/ruby/irb/beginner/launch_irb.md
2216
+ - files/ruby/irb/beginner/list_methods.md
2217
+ - files/ruby/irb/beginner/load_ruby_file.md
2218
+ - files/ruby/irb/beginner/multiline_code.md
2219
+ - files/ruby/irb/beginner/persist_history.md
2220
+ - files/ruby/irb/beginner/shell_commands.md
2221
+ - files/ruby/irb/expert/benchmark_integration.md
2222
+ - files/ruby/irb/expert/context_switching.md
2223
+ - files/ruby/irb/expert/dsl_auto_completion.md
2224
+ - files/ruby/irb/expert/dynamic_git_prompt.md
2225
+ - files/ruby/irb/expert/history_incremental_search.md
2226
+ - files/ruby/irb/expert/input_preprocessor.md
2227
+ - files/ruby/irb/expert/magic_commands_extension.md
2228
+ - files/ruby/irb/expert/programmatic_irb_control.md
2229
+ - files/ruby/irb/expert/sandboxed_session.md
2230
+ - files/ruby/irb/expert/threaded_debugging.md
2231
+ - files/ruby/irb/middle/auto_require_gems.md
2232
+ - files/ruby/irb/middle/awesome_print_output.md
2233
+ - files/ruby/irb/middle/binding_irb_hook.md
2234
+ - files/ruby/irb/middle/custom_inspector.md
2235
+ - files/ruby/irb/middle/custom_irb_commands.md
2236
+ - files/ruby/irb/middle/custom_prompt.md
2237
+ - files/ruby/irb/middle/pager_output.md
2238
+ - files/ruby/irb/middle/persistent_history.md
2239
+ - files/ruby/irb/middle/readline_key_bindings.md
2240
+ - files/ruby/irb/middle/tab_completion.md
2241
+ - files/ruby/json/advanced/custom_generator_state_for_json.md
2242
+ - files/ruby/json/advanced/high_performance_parsing_with_oj.md
2243
+ - files/ruby/json/advanced/streaming_large_json_with_oj_schandler.md
2244
+ - files/ruby/json/beginner/json_file_io.md
2245
+ - files/ruby/json/beginner/json_generate_basics.md
2246
+ - files/ruby/json/beginner/json_parse_basics.md
2247
+ - files/ruby/json/expert/custom_json_serialization_for_complex_objects.md
2248
+ - files/ruby/json/expert/high_performance_json_parsing_with_oj.md
2249
+ - files/ruby/json/expert/streaming_json_parsing_with_sc_handler.md
2250
+ - files/ruby/json/middle/customize_model_serialization.md
2251
+ - files/ruby/json/middle/json_schema_validation.md
2252
+ - files/ruby/json/middle/streaming_json_parsing.md
2253
+ - files/ruby/logging/advanced/custom_log_formatter_with_metadata.md
2254
+ - files/ruby/logging/advanced/silence_and_tagged_logging.md
2255
+ - files/ruby/logging/advanced/structured_logging_with_lograge.md
2256
+ - files/ruby/logging/beginner/basic_logger_setup.md
2257
+ - files/ruby/logging/beginner/log_rotation.md
2258
+ - files/ruby/logging/beginner/understanding_log_levels.md
2259
+ - files/ruby/logging/expert/async_non_blocking_logger.md
2260
+ - files/ruby/logging/expert/correlation_id_propagation.md
2261
+ - files/ruby/logging/expert/structured_json_logging.md
2262
+ - files/ruby/logging/middle/custom_logger_formatter.md
2263
+ - files/ruby/logging/middle/json_structured_logging.md
2264
+ - files/ruby/logging/middle/tagged_logging.md
2265
+ - files/ruby/marshal/advanced/custom_dump_load_versioning.md
2266
+ - files/ruby/marshal/advanced/selective_ivars_with_marshal_dump.md
2267
+ - files/ruby/marshal/advanced/streaming_with_compression.md
2268
+ - files/ruby/marshal/beginner/basic_marshal_dump_load.md
2269
+ - files/ruby/marshal/beginner/marshal_caching_simple_objects.md
2270
+ - files/ruby/marshal/beginner/marshal_with_files.md
2271
+ - files/ruby/marshal/expert/marshal_custom_versioning.md
2272
+ - files/ruby/marshal/expert/marshal_secure_compression.md
2273
+ - files/ruby/marshal/expert/marshal_streaming_chunks.md
2274
+ - files/ruby/marshal/middle/compress_marshal_data.md
2275
+ - files/ruby/marshal/middle/custom_marshal_dump_load.md
2276
+ - files/ruby/marshal/middle/deep_clone_objects.md
2277
+ - files/ruby/matrix/advanced/lu_caching_solver.md
2278
+ - files/ruby/matrix/advanced/numo_linalg_svd.md
2279
+ - files/ruby/matrix/advanced/rational_exact_arithmetic.md
2280
+ - files/ruby/matrix/beginner/matrix_basic_operations.md
2281
+ - files/ruby/matrix/beginner/matrix_element_access.md
2282
+ - files/ruby/matrix/beginner/matrix_initialization.md
2283
+ - files/ruby/matrix/expert/cblas_dgemm_acceleration.md
2284
+ - files/ruby/matrix/expert/sparse_matrix_lazy_enumerator.md
2285
+ - files/ruby/matrix/expert/strassen_matrix_multiplication.md
2286
+ - files/ruby/matrix/middle/matrix_basic_operations.md
2287
+ - files/ruby/matrix/middle/matrix_enumeration_transform.md
2288
+ - files/ruby/matrix/middle/matrix_transpose_and_diagonal.md
2289
+ - files/ruby/metaprogramming/advanced/alias_method_chain_emulation.md
2290
+ - files/ruby/metaprogramming/advanced/attribute_query_methods.md
2291
+ - files/ruby/metaprogramming/advanced/class_eval_with_context.md
2292
+ - files/ruby/metaprogramming/advanced/const_missing_autoload.md
2293
+ - files/ruby/metaprogramming/advanced/dsl_instance_eval.md
2294
+ - files/ruby/metaprogramming/advanced/dynamic_define_method.md
2295
+ - files/ruby/metaprogramming/advanced/dynamic_delegator_generation.md
2296
+ - files/ruby/metaprogramming/advanced/dynamic_singleton_methods.md
2297
+ - files/ruby/metaprogramming/advanced/eigenclass_singleton_methods.md
2298
+ - files/ruby/metaprogramming/advanced/macro_with_included_hook.md
2299
+ - files/ruby/metaprogramming/advanced/method_missing_dispatch.md
2300
+ - files/ruby/metaprogramming/advanced/module_prepend_hooks.md
2301
+ - files/ruby/metaprogramming/advanced/runtime_refinements.md
2302
+ - files/ruby/metaprogramming/advanced/tracepoint_monitoring.md
2303
+ - files/ruby/metaprogramming/advanced/unbound_method_binding.md
2304
+ - files/ruby/metaprogramming/beginner/alias_method_usage.md
2305
+ - files/ruby/metaprogramming/beginner/attr_accessor_metaprog.md
2306
+ - files/ruby/metaprogramming/beginner/class_eval_usage.md
2307
+ - files/ruby/metaprogramming/beginner/class_inherited_hook.md
2308
+ - files/ruby/metaprogramming/beginner/const_missing_lazy_loading.md
2309
+ - files/ruby/metaprogramming/beginner/define_method_dynamic.md
2310
+ - files/ruby/metaprogramming/beginner/define_singleton_method_usage.md
2311
+ - files/ruby/metaprogramming/beginner/dynamic_send.md
2312
+ - files/ruby/metaprogramming/beginner/eval_usage.md
2313
+ - files/ruby/metaprogramming/beginner/instance_eval_usage.md
2314
+ - files/ruby/metaprogramming/beginner/method_missing_basics.md
2315
+ - files/ruby/metaprogramming/beginner/module_included_hook.md
2316
+ - files/ruby/metaprogramming/beginner/respond_to_missing.md
2317
+ - files/ruby/metaprogramming/beginner/simple_dsl_blocks.md
2318
+ - files/ruby/metaprogramming/expert/advanced_method_missing_respond_to.md
2319
+ - files/ruby/metaprogramming/expert/chainable_dsl_with_lambdas.md
2320
+ - files/ruby/metaprogramming/expert/compile_time_code_generation_with_eval.md
2321
+ - files/ruby/metaprogramming/expert/composable_concerns_like_active_support.md
2322
+ - files/ruby/metaprogramming/expert/dsl_instance_eval_class_eval.md
2323
+ - files/ruby/metaprogramming/expert/dynamic_constant_loading_with_const_missing.md
2324
+ - files/ruby/metaprogramming/expert/dynamic_define_method_with_closure.md
2325
+ - files/ruby/metaprogramming/expert/eigenclass_singleton_method_customization.md
2326
+ - files/ruby/metaprogramming/expert/module_prepend_for_instrumentation.md
2327
+ - files/ruby/metaprogramming/expert/performance_measurement_proxy.md
2328
+ - files/ruby/metaprogramming/expert/proxy_pattern_with_basicobject.md
2329
+ - files/ruby/metaprogramming/expert/runtime_extension_with_fiddle.md
2330
+ - files/ruby/metaprogramming/expert/runtime_instrumentation_tracepoint.md
2331
+ - files/ruby/metaprogramming/expert/scoped_monkey_patching_with_refinements.md
2332
+ - files/ruby/metaprogramming/expert/unbound_method_rebinding.md
2333
+ - files/ruby/metaprogramming/middle/alias_method_wrapping.md
2334
+ - files/ruby/metaprogramming/middle/ar_dynamic_scopes.md
2335
+ - files/ruby/metaprogramming/middle/auto_timestamp_module.md
2336
+ - files/ruby/metaprogramming/middle/class_eval_dynamic_methods.md
2337
+ - files/ruby/metaprogramming/middle/const_missing_autoload.md
2338
+ - files/ruby/metaprogramming/middle/dsl_with_instance_eval.md
2339
+ - files/ruby/metaprogramming/middle/dynamic_attr_accessors.md
2340
+ - files/ruby/metaprogramming/middle/dynamic_callbacks.md
2341
+ - files/ruby/metaprogramming/middle/dynamic_delegation_forwardable.md
2342
+ - files/ruby/metaprogramming/middle/dynamic_method_define.md
2343
+ - files/ruby/metaprogramming/middle/dynamic_validation_macros.md
2344
+ - files/ruby/metaprogramming/middle/fluent_interface_chaining.md
2345
+ - files/ruby/metaprogramming/middle/hook_method_added.md
2346
+ - files/ruby/metaprogramming/middle/method_missing_fallback.md
2347
+ - files/ruby/metaprogramming/middle/scoped_refinements.md
2348
+ - files/ruby/method_missing/advanced/caching_missing_methods.md
2349
+ - files/ruby/method_missing/advanced/dsl_method_recording.md
2350
+ - files/ruby/method_missing/advanced/lazy_association_proxy.md
2351
+ - files/ruby/method_missing/advanced/rest_api_client_dynamic.md
2352
+ - files/ruby/method_missing/beginner/method_missing_basic_setup.md
2353
+ - files/ruby/method_missing/beginner/method_missing_dynamic_attributes.md
2354
+ - files/ruby/method_missing/beginner/method_missing_forward_to_super.md
2355
+ - files/ruby/method_missing/beginner/method_missing_respond_to.md
2356
+ - files/ruby/method_missing/expert/advanced_signature_handling.md
2357
+ - files/ruby/method_missing/expert/caching_method_missing_responses.md
2358
+ - files/ruby/method_missing/expert/dynamic_attributes_dsl.md
2359
+ - files/ruby/method_missing/expert/transparent_proxy_forwarding.md
2360
+ - files/ruby/method_missing/middle/dsl_fallback_methods.md
2361
+ - files/ruby/method_missing/middle/dynamic_delegation.md
2362
+ - files/ruby/method_missing/middle/forwarding_proxy.md
2363
+ - files/ruby/method_missing/middle/logging_undefined_calls.md
2364
+ - files/ruby/methods/advanced/curry_and_method_to_proc.md
2365
+ - files/ruby/methods/advanced/dynamic_define_method.md
2366
+ - files/ruby/methods/advanced/forwarding_arguments.md
2367
+ - files/ruby/methods/advanced/memoization_with_arguments.md
2368
+ - files/ruby/methods/advanced/method_missing_respond_to_missing.md
2369
+ - files/ruby/methods/advanced/method_object_dispatch.md
2370
+ - files/ruby/methods/advanced/prepend_for_method_wrapping.md
2371
+ - files/ruby/methods/advanced/refinements_local_method_override.md
2372
+ - files/ruby/methods/beginner/default_parameters.md
2373
+ - files/ruby/methods/beginner/defining_methods.md
2374
+ - files/ruby/methods/beginner/implicit_and_explicit_return.md
2375
+ - files/ruby/methods/beginner/keyword_arguments.md
2376
+ - files/ruby/methods/beginner/method_arguments.md
2377
+ - files/ruby/methods/beginner/method_chaining.md
2378
+ - files/ruby/methods/beginner/splat_arguments.md
2379
+ - files/ruby/methods/beginner/using_blocks.md
2380
+ - files/ruby/methods/expert/currying_partial_application.md
2381
+ - files/ruby/methods/expert/delegation_with_forwardable.md
2382
+ - files/ruby/methods/expert/dynamic_define_method.md
2383
+ - files/ruby/methods/expert/method_hooks_metaprogramming.md
2384
+ - files/ruby/methods/expert/module_prepend_chain.md
2385
+ - files/ruby/methods/expert/pattern_matching_params.md
2386
+ - files/ruby/methods/expert/refinements_scope_control.md
2387
+ - files/ruby/methods/expert/unbound_method_binding.md
2388
+ - files/ruby/methods/middle/alias_method_and_super.md
2389
+ - files/ruby/methods/middle/default_keyword_arguments.md
2390
+ - files/ruby/methods/middle/dynamic_define_method.md
2391
+ - files/ruby/methods/middle/forwardable_delegation.md
2392
+ - files/ruby/methods/middle/public_send_vs_send.md
2393
+ - files/ruby/methods/middle/splat_and_double_splat.md
2394
+ - files/ruby/methods/middle/symbol_to_proc.md
2395
+ - files/ruby/methods/middle/tap_chaining.md
2396
+ - files/ruby/minitest/advanced/custom_minitest_plugin.md
2397
+ - files/ruby/minitest/advanced/custom_reporter_usage.md
2398
+ - files/ruby/minitest/advanced/parallel_test_execution.md
2399
+ - files/ruby/minitest/advanced/performance_benchmarking.md
2400
+ - files/ruby/minitest/beginner/common_assertions.md
2401
+ - files/ruby/minitest/beginner/defining_test_cases.md
2402
+ - files/ruby/minitest/beginner/getting_started.md
2403
+ - files/ruby/minitest/beginner/setup_teardown_hooks.md
2404
+ - files/ruby/minitest/expert/custom_minitest_profiling_plugin.md
2405
+ - files/ruby/minitest/expert/dynamic_test_generation.md
2406
+ - files/ruby/minitest/expert/parallel_test_sharding.md
2407
+ - files/ruby/minitest/expert/property_based_with_rantly.md
2408
+ - files/ruby/minitest/middle/assertion_matchers_refutations.md
2409
+ - files/ruby/minitest/middle/custom_assertion_helpers.md
2410
+ - files/ruby/minitest/middle/parallel_test_execution.md
2411
+ - files/ruby/minitest/middle/setup_teardown_hooks.md
2412
+ - files/ruby/net_http/advanced/concurrent_requests_with_threads.md
2413
+ - files/ruby/net_http/advanced/custom_ssl_context.md
2414
+ - files/ruby/net_http/advanced/persistent_http_connections.md
2415
+ - files/ruby/net_http/advanced/streaming_large_responses.md
2416
+ - files/ruby/net_http/beginner/basic_get_request.md
2417
+ - files/ruby/net_http/beginner/custom_headers_requests.md
2418
+ - files/ruby/net_http/beginner/https_ssl_configuration.md
2419
+ - files/ruby/net_http/beginner/post_json_request.md
2420
+ - files/ruby/net_http/expert/persistent_connection_pooling.md
2421
+ - files/ruby/net_http/expert/retry_with_exponential_backoff.md
2422
+ - files/ruby/net_http/expert/ssl_certificate_pinning.md
2423
+ - files/ruby/net_http/expert/streaming_chunked_responses.md
2424
+ - files/ruby/net_http/middle/get_with_custom_headers.md
2425
+ - files/ruby/net_http/middle/parse_json_errors.md
2426
+ - files/ruby/net_http/middle/post_form_data.md
2427
+ - files/ruby/net_http/middle/timeout_ssl_verify.md
2428
+ - files/ruby/networking/advanced/custom_tls_context.md
2429
+ - files/ruby/networking/advanced/eventmachine_async_io.md
2430
+ - files/ruby/networking/advanced/http2_stream_multiplexing.md
2431
+ - files/ruby/networking/advanced/nonblocking_tcp_socket.md
2432
+ - files/ruby/networking/beginner/http_get_request.md
2433
+ - files/ruby/networking/beginner/open_uri_fetch.md
2434
+ - files/ruby/networking/beginner/tcp_client_example.md
2435
+ - files/ruby/networking/beginner/tcp_server_example.md
2436
+ - files/ruby/networking/expert/custom_tls_context.md
2437
+ - files/ruby/networking/expert/http2_multiplexing.md
2438
+ - files/ruby/networking/expert/packet_crafting_raw_sockets.md
2439
+ - files/ruby/networking/expert/persistent_http_pipelining.md
2440
+ - files/ruby/networking/middle/http_multipart_upload.md
2441
+ - files/ruby/networking/middle/http_persistent.md
2442
+ - files/ruby/networking/middle/http_ssl_customization.md
2443
+ - files/ruby/networking/middle/tcp_non_blocking_client.md
2444
+ - files/ruby/numbers/advanced/bigdecimal_precision.md
2445
+ - files/ruby/numbers/advanced/complex_rotations.md
2446
+ - files/ruby/numbers/advanced/numeric_clamp_bounds.md
2447
+ - files/ruby/numbers/advanced/prime_factorization.md
2448
+ - files/ruby/numbers/advanced/rational_usage.md
2449
+ - files/ruby/numbers/beginner/basic_arithmetic.md
2450
+ - files/ruby/numbers/beginner/generating_random_numbers.md
2451
+ - files/ruby/numbers/beginner/integer_vs_float.md
2452
+ - files/ruby/numbers/beginner/number_comparison.md
2453
+ - files/ruby/numbers/beginner/rounding_numbers.md
2454
+ - files/ruby/numbers/expert/expert_bigdecimal_precision.md
2455
+ - files/ruby/numbers/expert/expert_bitwise_binary.md
2456
+ - files/ruby/numbers/expert/expert_ffi_math_library.md
2457
+ - files/ruby/numbers/expert/expert_prime_enumeration.md
2458
+ - files/ruby/numbers/expert/expert_rational_complex.md
2459
+ - files/ruby/numbers/middle/bigdecimal_precision.md
2460
+ - files/ruby/numbers/middle/clamp_numbers.md
2461
+ - files/ruby/numbers/middle/extract_digits.md
2462
+ - files/ruby/numbers/middle/random_ranges.md
2463
+ - files/ruby/numbers/middle/rational_numbers.md
2464
+ - files/ruby/oop/advanced/class_eval_vs_instance_eval.md
2465
+ - files/ruby/oop/advanced/dynamic_method_definition.md
2466
+ - files/ruby/oop/advanced/eigenclass_for_class_macros.md
2467
+ - files/ruby/oop/advanced/forwarding_with_forwardable.md
2468
+ - files/ruby/oop/advanced/internal_dsl_with_blocks.md
2469
+ - files/ruby/oop/advanced/method_missing_as_proxy.md
2470
+ - files/ruby/oop/advanced/modules_as_namespaces_and_mixins.md
2471
+ - files/ruby/oop/advanced/refinements_for_scoped_patching.md
2472
+ - files/ruby/oop/advanced/tracepoint_for_method_hooking.md
2473
+ - files/ruby/oop/beginner/attr_accessors.md
2474
+ - files/ruby/oop/beginner/class_methods.md
2475
+ - files/ruby/oop/beginner/creating_instances.md
2476
+ - files/ruby/oop/beginner/defining_classes.md
2477
+ - files/ruby/oop/beginner/inheritance_basics.md
2478
+ - files/ruby/oop/beginner/initialize_method.md
2479
+ - files/ruby/oop/beginner/instance_methods.md
2480
+ - files/ruby/oop/beginner/instance_variables.md
2481
+ - files/ruby/oop/beginner/method_overriding.md
2482
+ - files/ruby/oop/beginner/modules_mixins.md
2483
+ - files/ruby/oop/expert/bytecode_introspection_mod.md
2484
+ - files/ruby/oop/expert/class_level_exec.md
2485
+ - files/ruby/oop/expert/concurrent_ractor_mixins.md
2486
+ - files/ruby/oop/expert/dynamic_method_dsl.md
2487
+ - files/ruby/oop/expert/method_missing_delegate.md
2488
+ - files/ruby/oop/expert/module_prepend_override.md
2489
+ - files/ruby/oop/expert/scoped_refinements.md
2490
+ - files/ruby/oop/expert/tracepoint_profiling.md
2491
+ - files/ruby/oop/expert/weakref_circular_cleanup.md
2492
+ - files/ruby/oop/middle/composition_over_inheritance.md
2493
+ - files/ruby/oop/middle/define_value_objects.md
2494
+ - files/ruby/oop/middle/dynamic_method_definitions.md
2495
+ - files/ruby/oop/middle/leverage_struct_for_data_objects.md
2496
+ - files/ruby/oop/middle/mixins_for_shared_behavior.md
2497
+ - files/ruby/oop/middle/use_forwardable_for_delegation.md
2498
+ - files/ruby/oop/middle/use_method_missing_cautiously.md
2499
+ - files/ruby/oop/middle/use_module_namespace.md
2500
+ - files/ruby/oop/middle/use_simpledelegator_for_wrappers.md
2501
+ - files/ruby/openssl/advanced/custom_ssl_context_configuration.md
2502
+ - files/ruby/openssl/advanced/ocsp_certificate_revocation_checking.md
2503
+ - files/ruby/openssl/advanced/smime_sign_and_encrypt.md
2504
+ - files/ruby/openssl/beginner/aes_encrypt_decrypt.md
2505
+ - files/ruby/openssl/beginner/create_sha256_digest.md
2506
+ - files/ruby/openssl/beginner/generate_rsa_key_pair.md
2507
+ - files/ruby/openssl/expert/hardware_engine_pkcs11.md
2508
+ - files/ruby/openssl/expert/mutual_tls_with_sslcontext.md
2509
+ - files/ruby/openssl/expert/streaming_aead_gcm_file_encryption.md
2510
+ - files/ruby/openssl/middle/aes_gcm_encryption.md
2511
+ - files/ruby/openssl/middle/custom_ssl_context.md
2512
+ - files/ruby/openssl/middle/verify_certificate_chain.md
2513
+ - files/ruby/operators/advanced/boolean_casting.md.md
2514
+ - files/ruby/operators/advanced/double_splat_args.md.md
2515
+ - files/ruby/operators/advanced/endless_range_operator.md.md
2516
+ - files/ruby/operators/advanced/flip_flop_operator.md.md
2517
+ - files/ruby/operators/advanced/operator_overloading.md.md
2518
+ - files/ruby/operators/advanced/pattern_matching_case_in.md.md
2519
+ - files/ruby/operators/advanced/safe_navigation_operator.md.md
2520
+ - files/ruby/operators/advanced/spaceship_operator.md.md
2521
+ - files/ruby/operators/advanced/symbol_to_proc.md.md
2522
+ - files/ruby/operators/advanced/unary_operators.md.md
2523
+ - files/ruby/operators/beginner/arithmetic_operators.md
2524
+ - files/ruby/operators/beginner/basic_assignment.md
2525
+ - files/ruby/operators/beginner/comparison_operators.md
2526
+ - files/ruby/operators/beginner/compound_assignment.md
2527
+ - files/ruby/operators/beginner/conditional_assignment.md
2528
+ - files/ruby/operators/beginner/exponentiation_operator.md
2529
+ - files/ruby/operators/beginner/logical_operators.md
2530
+ - files/ruby/operators/beginner/range_operators.md
2531
+ - files/ruby/operators/beginner/string_concatenation.md
2532
+ - files/ruby/operators/beginner/ternary_operator.md
2533
+ - files/ruby/operators/expert/bitmask_flags_with_operators.md
2534
+ - files/ruby/operators/expert/custom_unary_operator_overloads.md
2535
+ - files/ruby/operators/expert/deep_safe_navigation_chaining.md
2536
+ - files/ruby/operators/expert/dsl_via_operator_overloads.md
2537
+ - files/ruby/operators/expert/dynamic_operator_overloading.md
2538
+ - files/ruby/operators/expert/extending_numeric_precision.md
2539
+ - files/ruby/operators/expert/inline_rescue_in_operators.md
2540
+ - files/ruby/operators/expert/pipeline_operator_with_procs.md
2541
+ - files/ruby/operators/expert/refinements_for_core_operators.md
2542
+ - files/ruby/operators/expert/spaceship_sort_with_memoization.md
2543
+ - files/ruby/operators/middle/default_assignment_operator.md
2544
+ - files/ruby/operators/middle/defined_operator.md
2545
+ - files/ruby/operators/middle/exponentiation_operator.md
2546
+ - files/ruby/operators/middle/flip_flop_operator.md
2547
+ - files/ruby/operators/middle/method_proc_shorthand.md
2548
+ - files/ruby/operators/middle/range_operator.md
2549
+ - files/ruby/operators/middle/regex_match_operator.md
2550
+ - files/ruby/operators/middle/safe_navigation_operator.md
2551
+ - files/ruby/operators/middle/spaceship_operator.md
2552
+ - files/ruby/operators/middle/splat_and_double_splat.md
2553
+ - files/ruby/procs_and_lambdas/advanced/destructuring_parameters.md
2554
+ - files/ruby/procs_and_lambdas/advanced/dynamic_method_definitions.md
2555
+ - files/ruby/procs_and_lambdas/advanced/error_handling_wrappers.md
2556
+ - files/ruby/procs_and_lambdas/advanced/lambda_currying.md
2557
+ - files/ruby/procs_and_lambdas/advanced/memoization_with_procs.md
2558
+ - files/ruby/procs_and_lambdas/advanced/proc_enumerable_chaining.md
2559
+ - files/ruby/procs_and_lambdas/advanced/proc_lambda_composition.md
2560
+ - files/ruby/procs_and_lambdas/advanced/symbol_to_proc_advanced.md
2561
+ - files/ruby/procs_and_lambdas/beginner/calling_lambdas.md
2562
+ - files/ruby/procs_and_lambdas/beginner/calling_procs.md
2563
+ - files/ruby/procs_and_lambdas/beginner/getting_started_with_lambdas.md
2564
+ - files/ruby/procs_and_lambdas/beginner/getting_started_with_procs.md
2565
+ - files/ruby/procs_and_lambdas/beginner/passing_lambda_to_method.md
2566
+ - files/ruby/procs_and_lambdas/beginner/passing_proc_to_method.md
2567
+ - files/ruby/procs_and_lambdas/beginner/proc_vs_lambda_argument_handling.md
2568
+ - files/ruby/procs_and_lambdas/beginner/storing_procs_in_collections.md
2569
+ - files/ruby/procs_and_lambdas/expert/async_event_driven_procs.md
2570
+ - files/ruby/procs_and_lambdas/expert/currying_and_partial_application.md
2571
+ - files/ruby/procs_and_lambdas/expert/dynamic_arity_validation.md
2572
+ - files/ruby/procs_and_lambdas/expert/metaprogramming_with_define_method.md
2573
+ - files/ruby/procs_and_lambdas/expert/proc_and_lambda_composition.md
2574
+ - files/ruby/procs_and_lambdas/expert/procs_in_fiber_callbacks.md
2575
+ - files/ruby/procs_and_lambdas/expert/profunctor_style_adapters.md
2576
+ - files/ruby/procs_and_lambdas/expert/sandboxed_instance_exec.md
2577
+ - files/ruby/procs_and_lambdas/middle/chain_procs_lambdas.md
2578
+ - files/ruby/procs_and_lambdas/middle/context_capture_proc.md
2579
+ - files/ruby/procs_and_lambdas/middle/curried_lambda.md
2580
+ - files/ruby/procs_and_lambdas/middle/error_handling_proc.md
2581
+ - files/ruby/procs_and_lambdas/middle/lambda_arity.md
2582
+ - files/ruby/procs_and_lambdas/middle/memoization_lambda.md
2583
+ - files/ruby/procs_and_lambdas/middle/proc_callback.md
2584
+ - files/ruby/procs_and_lambdas/middle/proc_lambda_conversion.md
2585
+ - files/ruby/profiling/advanced/perftools_flamegraph_generation.md
2586
+ - files/ruby/profiling/advanced/ruby_prof_flat_printer.md
2587
+ - files/ruby/profiling/advanced/ruby_prof_graph_html.md
2588
+ - files/ruby/profiling/advanced/stackprof_sampling_mode.md
2589
+ - files/ruby/profiling/advanced/tracepoint_custom_profile.md
2590
+ - files/ruby/profiling/beginner/benchmark_bm.md
2591
+ - files/ruby/profiling/beginner/benchmark_ips.md
2592
+ - files/ruby/profiling/beginner/benchmark_measure.md
2593
+ - files/ruby/profiling/beginner/ruby_prof_flat_printer.md
2594
+ - files/ruby/profiling/beginner/ruby_profile_flag.md
2595
+ - files/ruby/profiling/expert/memory_profiler_deep_inspection.md
2596
+ - files/ruby/profiling/expert/rbspy_production_sampling.md
2597
+ - files/ruby/profiling/expert/ruby_prof_callgrind_kcachegrind.md
2598
+ - files/ruby/profiling/expert/stackprof_flamegraph.md
2599
+ - files/ruby/profiling/expert/thread_wall_time_profiling.md
2600
+ - files/ruby/profiling/middle/benchmark_bm_usage.md
2601
+ - files/ruby/profiling/middle/flamegraph_visualization.md
2602
+ - files/ruby/profiling/middle/memory_profiler_usage.md
2603
+ - files/ruby/profiling/middle/ruby_prof_cpu.md
2604
+ - files/ruby/profiling/middle/stackprof_sampling.md
2605
+ - files/ruby/ranges/advanced/custom_object_ranges.md
2606
+ - files/ruby/ranges/advanced/infinite_beginless_ranges.md
2607
+ - files/ruby/ranges/advanced/lazy_infinite_sequences.md
2608
+ - files/ruby/ranges/advanced/pattern_matching_with_ranges.md
2609
+ - files/ruby/ranges/advanced/range_step_usage.md
2610
+ - files/ruby/ranges/beginner/check_value_in_range.md
2611
+ - files/ruby/ranges/beginner/convert_range_to_array.md
2612
+ - files/ruby/ranges/beginner/inclusive_vs_exclusive_ranges.md
2613
+ - files/ruby/ranges/beginner/iterating_over_ranges.md
2614
+ - files/ruby/ranges/beginner/stepping_through_ranges.md
2615
+ - files/ruby/ranges/expert/cover_vs_include_performance.md
2616
+ - files/ruby/ranges/expert/custom_infinite_enumerator.md
2617
+ - files/ruby/ranges/expert/endless_and_beginless_ranges.md
2618
+ - files/ruby/ranges/expert/pattern_matching_with_ranges.md
2619
+ - files/ruby/ranges/expert/using_ranges_as_hash_keys.md
2620
+ - files/ruby/ranges/middle/endless_beginless_ranges.md
2621
+ - files/ruby/ranges/middle/range_case_when.md
2622
+ - files/ruby/ranges/middle/range_cover_include.md
2623
+ - files/ruby/ranges/middle/range_step_iteration.md
2624
+ - files/ruby/ranges/middle/range_to_a_and_size.md
2625
+ - files/ruby/reflection/advanced/dynamic_method_generation.md
2626
+ - files/ruby/reflection/advanced/method_source_reloader.md
2627
+ - files/ruby/reflection/advanced/runtime_constant_injection.md
2628
+ - files/ruby/reflection/advanced/tracepoint_method_tracing.md
2629
+ - files/ruby/reflection/beginner/dynamic_method_invocation.md
2630
+ - files/ruby/reflection/beginner/inspect_instance_variables.md
2631
+ - files/ruby/reflection/beginner/list_available_methods.md
2632
+ - files/ruby/reflection/beginner/use_respond_to.md
2633
+ - files/ruby/reflection/expert/ast_manipulation.md
2634
+ - files/ruby/reflection/expert/dynamic_basicobject_proxy.md
2635
+ - files/ruby/reflection/expert/granular_tracepoint_events.md
2636
+ - files/ruby/reflection/expert/singleton_class_hierarchy.md
2637
+ - files/ruby/reflection/middle/dynamic_constant_lookup.md
2638
+ - files/ruby/reflection/middle/dynamic_method_invocation.md
2639
+ - files/ruby/reflection/middle/instance_variable_inspection.md
2640
+ - files/ruby/reflection/middle/introspect_methods.md
2641
+ - files/ruby/regex/advanced/atomic_grouping.md
2642
+ - files/ruby/regex/advanced/dynamic_union.md
2643
+ - files/ruby/regex/advanced/extended_mode_comments.md
2644
+ - files/ruby/regex/advanced/g_anchor_scanning.md
2645
+ - files/ruby/regex/advanced/gsub_with_block.md
2646
+ - files/ruby/regex/advanced/lookaround_assertions.md
2647
+ - files/ruby/regex/advanced/named_capture_to_hash.md
2648
+ - files/ruby/regex/advanced/performance_benchmarking.md
2649
+ - files/ruby/regex/advanced/recursive_patterns.md
2650
+ - files/ruby/regex/advanced/unicode_properties.md
2651
+ - files/ruby/regex/beginner/anchors.md
2652
+ - files/ruby/regex/beginner/basic_match_operator.md
2653
+ - files/ruby/regex/beginner/capturing_groups.md
2654
+ - files/ruby/regex/beginner/character_classes.md
2655
+ - files/ruby/regex/beginner/escaping_special_chars.md
2656
+ - files/ruby/regex/beginner/gsub_replacement.md
2657
+ - files/ruby/regex/beginner/named_captures.md
2658
+ - files/ruby/regex/beginner/quantifiers.md
2659
+ - files/ruby/regex/beginner/regex_options.md
2660
+ - files/ruby/regex/beginner/string_match_method.md
2661
+ - files/ruby/regex/expert/advanced_lookaround_combinations.md
2662
+ - files/ruby/regex/expert/atomic_groups_for_speed.md
2663
+ - files/ruby/regex/expert/branch_reset_grouping.md
2664
+ - files/ruby/regex/expert/embed_ruby_code_in_regex.md
2665
+ - files/ruby/regex/expert/inline_toggle_modifiers.md
2666
+ - files/ruby/regex/expert/named_captures_with_transform.md
2667
+ - files/ruby/regex/expert/recursive_regex_for_nested.md
2668
+ - files/ruby/regex/expert/regexp_union_optimization.md
2669
+ - files/ruby/regex/expert/stringscanner_iterative_scans.md
2670
+ - files/ruby/regex/expert/unicode_and_posix_properties.md
2671
+ - files/ruby/regex/middle/anchor_validations.md
2672
+ - files/ruby/regex/middle/character_classes.md
2673
+ - files/ruby/regex/middle/gsub_with_block.md
2674
+ - files/ruby/regex/middle/inline_modifiers.md
2675
+ - files/ruby/regex/middle/lookahead_lookbehind.md
2676
+ - files/ruby/regex/middle/match_data_usage.md
2677
+ - files/ruby/regex/middle/named_capture_groups.md
2678
+ - files/ruby/regex/middle/non_capturing_groups.md
2679
+ - files/ruby/regex/middle/regexp_union.md
2680
+ - files/ruby/regex/middle/split_with_regex.md
2681
+ - files/ruby/rspec/advanced/around_hooks_time_travel_cleanup.md
2682
+ - files/ruby/rspec/advanced/composable_custom_matchers.md
2683
+ - files/ruby/rspec/advanced/dynamic_shared_context_metadata.md
2684
+ - files/ruby/rspec/advanced/parameterized_testing.md
2685
+ - files/ruby/rspec/beginner/first_spec_example.md
2686
+ - files/ruby/rspec/beginner/organizing_spec_files.md
2687
+ - files/ruby/rspec/beginner/setup_rspec.md
2688
+ - files/ruby/rspec/beginner/using_expectations.md
2689
+ - files/ruby/rspec/expert/advanced_diffable_matcher.md
2690
+ - files/ruby/rspec/expert/custom_example_group_dsl.md
2691
+ - files/ruby/rspec/expert/custom_formatter_plugin.md
2692
+ - files/ruby/rspec/expert/flaky_spec_auto_retry.md
2693
+ - files/ruby/rspec/middle/rspec_contexts_subject.md.md
2694
+ - files/ruby/rspec/middle/rspec_custom_matchers.md.md
2695
+ - files/ruby/rspec/middle/rspec_let_vs_let_bang.md.md
2696
+ - files/ruby/rspec/middle/rspec_shared_examples.md.md
2697
+ - files/ruby/serialization/advanced/marshal_custom_versioning.md
2698
+ - files/ruby/serialization/advanced/oj_serialization_tuning.md
2699
+ - files/ruby/serialization/advanced/streaming_large_json.md
2700
+ - files/ruby/serialization/beginner/json_serialization.md
2701
+ - files/ruby/serialization/beginner/marshal_serialization.md
2702
+ - files/ruby/serialization/beginner/yaml_serialization.md
2703
+ - files/ruby/serialization/expert/hybrid_msgpack_json.md
2704
+ - files/ruby/serialization/expert/oj_object_hooks.md
2705
+ - files/ruby/serialization/expert/versioned_marshal.md
2706
+ - files/ruby/serialization/middle/active_model_serializer_example.md
2707
+ - files/ruby/serialization/middle/customizing_to_json_example.md
2708
+ - files/ruby/serialization/middle/using_oj_for_high_performance.md
2709
+ - files/ruby/set/advanced/set_key_extractor.md
2710
+ - files/ruby/set/advanced/set_thread_safe.md
2711
+ - files/ruby/set/advanced/set_transitive_closure.md
2712
+ - files/ruby/set/beginner/basic_set_operations.md
2713
+ - files/ruby/set/beginner/initialize_set.md
2714
+ - files/ruby/set/beginner/manage_set_elements.md
2715
+ - files/ruby/set/expert/custom_hash_eql.md.md
2716
+ - files/ruby/set/expert/lazy_unique_filter.md.md
2717
+ - files/ruby/set/expert/thread_safe_set.md.md
2718
+ - files/ruby/set/middle/custom_object_set.md
2719
+ - files/ruby/set/middle/initialize_and_modify_set.md
2720
+ - files/ruby/set/middle/set_algebra_operations.md
2721
+ - files/ruby/sockets/advanced/non_blocking_io_select.md
2722
+ - files/ruby/sockets/advanced/ssl_tls_with_openssl.md
2723
+ - files/ruby/sockets/advanced/unix_socket_fd_passing.md
2724
+ - files/ruby/sockets/beginner/tcp_client_basics.md
2725
+ - files/ruby/sockets/beginner/tcp_server_basics.md
2726
+ - files/ruby/sockets/beginner/udp_socket_basics.md
2727
+ - files/ruby/sockets/expert/custom_tls_alpn_ocsp.md
2728
+ - files/ruby/sockets/expert/fiber_scheduler_socket_server.md
2729
+ - files/ruby/sockets/expert/zero_copy_sendfile.md
2730
+ - files/ruby/sockets/middle/socket_select_multiplex.md
2731
+ - files/ruby/sockets/middle/tcp_client_basic.md
2732
+ - files/ruby/sockets/middle/tcp_server_basic.md
2733
+ - files/ruby/strings/advanced/advanced_interpolation.md
2734
+ - files/ruby/strings/advanced/binary_encoding_manipulation.md
2735
+ - files/ruby/strings/advanced/complex_escapes.md
2736
+ - files/ruby/strings/advanced/emoji_handling.md
2737
+ - files/ruby/strings/advanced/freezing_and_symbols.md
2738
+ - files/ruby/strings/advanced/literals_stacking.md
2739
+ - files/ruby/strings/advanced/percent_quoting_variants.md
2740
+ - files/ruby/strings/advanced/regex_match_performance.md
2741
+ - files/ruby/strings/advanced/safe_concat.md
2742
+ - files/ruby/strings/advanced/strip_margin_heredoc.md
2743
+ - files/ruby/strings/advanced/unicode_normalization.md
2744
+ - files/ruby/strings/beginner/common_string_methods.md
2745
+ - files/ruby/strings/beginner/heredoc_string.md
2746
+ - files/ruby/strings/beginner/length_and_empty.md
2747
+ - files/ruby/strings/beginner/shovel_operator.md
2748
+ - files/ruby/strings/beginner/string_concatenation.md
2749
+ - files/ruby/strings/beginner/string_duplication.md
2750
+ - files/ruby/strings/beginner/string_indexing.md
2751
+ - files/ruby/strings/beginner/string_interpolation.md
2752
+ - files/ruby/strings/beginner/string_slicing.md
2753
+ - files/ruby/strings/beginner/substring_replacement.md
2754
+ - files/ruby/strings/expert/advanced_named_captures.md
2755
+ - files/ruby/strings/expert/ast_pattern_strings.md
2756
+ - files/ruby/strings/expert/binary_data_handling_string_b.md
2757
+ - files/ruby/strings/expert/binary_parsing_with_unpack_pack.md
2758
+ - files/ruby/strings/expert/deep_dup.md
2759
+ - files/ruby/strings/expert/demo_continue.md
2760
+ - files/ruby/strings/expert/drb_string_marshalling_hash.md
2761
+ - files/ruby/strings/expert/fiber_storage_usage.md
2762
+ - files/ruby/strings/expert/freeze_dedupe_strings.md
2763
+ - files/ruby/strings/expert/fstring_eval.md
2764
+ - files/ruby/strings/expert/functional_fstrings.md
2765
+ - files/ruby/strings/expert/gb_string_increment.md
2766
+ - files/ruby/strings/expert/grapheme_cluster_counting.md
2767
+ - files/ruby/strings/expert/handle_invalid_bytes_with_scrub.md
2768
+ - files/ruby/strings/expert/heredoc_inheritance.md
2769
+ - files/ruby/strings/expert/in_memory_io_with_stringio.md
2770
+ - files/ruby/strings/expert/opengl_strings.md
2771
+ - files/ruby/strings/expert/override_dup_with_initialize_copy.md
2772
+ - files/ruby/strings/expert/regex_named_captures.md
2773
+ - files/ruby/strings/expert/regex_performance.md
2774
+ - files/ruby/strings/expert/reuse_string_buffers_replace.md
2775
+ - files/ruby/strings/expert/sprintf_named.md
2776
+ - files/ruby/strings/expert/stateful_sub",{.md
2777
+ - files/ruby/strings/expert/strict_encodings.md
2778
+ - files/ruby/strings/expert/string_gc_optimizations.md
2779
+ - files/ruby/strings/expert/zero_copy_substring.md
2780
+ - files/ruby/strings/middle/demo.json.md
2781
+ - files/ruby/strings/middle/dynamic_gsub_blocks.md
2782
+ - files/ruby/strings/middle/encoding_force_encode.md
2783
+ - files/ruby/strings/middle/heredoc_squiggly.md
2784
+ - files/ruby/strings/middle/logging_demos.md.md
2785
+ - files/ruby/strings/middle/mutable_string_concatenation.md
2786
+ - files/ruby/strings/middle/nested_interpolation.md
2787
+ - files/ruby/strings/middle/percent_string_literals.md
2788
+ - files/ruby/strings/middle/regex_named_captures.md
2789
+ - files/ruby/strings/middle/scrub_invalid_bytes.md
2790
+ - files/ruby/strings/middle/session_parse.md
2791
+ - files/ruby/strings/middle/string_formatting_sprintf.md
2792
+ - files/ruby/strings/middle/string_slicing_ranges.md
2793
+ - files/ruby/symbols/advanced/symbol_dynamic_memoization.md
2794
+ - files/ruby/symbols/advanced/symbol_pattern_matching.md
2795
+ - files/ruby/symbols/advanced/symbol_to_proc.md
2796
+ - files/ruby/symbols/beginner/dynamic_symbol_creation.md
2797
+ - files/ruby/symbols/beginner/symbol_as_method_identifier.md
2798
+ - files/ruby/symbols/beginner/symbol_vs_string.md
2799
+ - files/ruby/symbols/expert/dsl_metaprogramming_with_symbols.md
2800
+ - files/ruby/symbols/expert/secure_dynamic_symbol_creation.md
2801
+ - files/ruby/symbols/expert/symbol_garbage_collection_inspection.md
2802
+ - files/ruby/symbols/middle/dynamic_method_definition.md
2803
+ - files/ruby/symbols/middle/dynamic_method_invocation.md
2804
+ - files/ruby/symbols/middle/symbol_to_proc_enumeration.md
2805
+ - files/ruby/syntax/advanced/define_method_with_closure.md
2806
+ - files/ruby/syntax/advanced/endless_method_definition.md
2807
+ - files/ruby/syntax/advanced/flip_flop_operator.md
2808
+ - files/ruby/syntax/advanced/keyword_splat_destructuring.md
2809
+ - files/ruby/syntax/advanced/numbered_block_parameters.md
2810
+ - files/ruby/syntax/advanced/pattern_matching_destructuring.md
2811
+ - files/ruby/syntax/advanced/refinement_scoping.md
2812
+ - files/ruby/syntax/advanced/singleton_class_eval.md
2813
+ - files/ruby/syntax/advanced/to_proc_shorthand.md
2814
+ - files/ruby/syntax/advanced/trace_point_debugging.md
2815
+ - files/ruby/syntax/beginner/adding_comments.md
2816
+ - files/ruby/syntax/beginner/array_basics.md
2817
+ - files/ruby/syntax/beginner/defining_methods.md
2818
+ - files/ruby/syntax/beginner/hash_basics.md
2819
+ - files/ruby/syntax/beginner/iterating_with_each.md
2820
+ - files/ruby/syntax/beginner/simple_conditionals.md
2821
+ - files/ruby/syntax/beginner/string_interpolation.md
2822
+ - files/ruby/syntax/beginner/symbols_vs_strings.md
2823
+ - files/ruby/syntax/beginner/understanding_blocks.md
2824
+ - files/ruby/syntax/beginner/using_variables.md
2825
+ - files/ruby/syntax/expert/dynamic_define_method.md
2826
+ - files/ruby/syntax/expert/eigenclass_dsl.md
2827
+ - files/ruby/syntax/expert/endless_method_definitions.md
2828
+ - files/ruby/syntax/expert/infinite_enumerator.md
2829
+ - files/ruby/syntax/expert/keyword_arg_forwarding.md
2830
+ - files/ruby/syntax/expert/nested_hash_pattern.md
2831
+ - files/ruby/syntax/expert/numbered_parameters.md
2832
+ - files/ruby/syntax/expert/pattern_matching_guards.md
2833
+ - files/ruby/syntax/expert/scoped_refinements.md
2834
+ - files/ruby/syntax/expert/yield_self_then.md
2835
+ - files/ruby/syntax/middle/array_tally.md
2836
+ - files/ruby/syntax/middle/destructuring_assignment.md
2837
+ - files/ruby/syntax/middle/dig_method.md
2838
+ - files/ruby/syntax/middle/frozen_string_literal.md
2839
+ - files/ruby/syntax/middle/hash_transform_methods.md
2840
+ - files/ruby/syntax/middle/numbered_block_parameters.md
2841
+ - files/ruby/syntax/middle/pattern_matching_case_in.md
2842
+ - files/ruby/syntax/middle/safe_navigation_operator.md
2843
+ - files/ruby/syntax/middle/symbol_to_proc.md
2844
+ - files/ruby/syntax/middle/tap_debugging.md
2845
+ - files/ruby/tempfiles/advanced/atomic_tempfile_replacement.md
2846
+ - files/ruby/tempfiles/advanced/encrypted_tempfile_openssl.md
2847
+ - files/ruby/tempfiles/beginner/tempfile_basic_creation.md
2848
+ - files/ruby/tempfiles/beginner/tempfile_with_block_cleanup.md
2849
+ - files/ruby/tempfiles/expert/otmpfile_anonymous.md
2850
+ - files/ruby/tempfiles/expert/secure_wipe_tempfile.md
2851
+ - files/ruby/tempfiles/middle/tempfile_auto_cleanup.md
2852
+ - files/ruby/tempfiles/middle/tempfile_custom_extension_and_dir.md
2853
+ - files/ruby/threads/advanced/graceful_thread_shutdown.md
2854
+ - files/ruby/threads/advanced/prioritized_queue_and_conditionvariable.md
2855
+ - files/ruby/threads/advanced/thread_local_memoization.md
2856
+ - files/ruby/threads/advanced/thread_pool_executor_concurrent_ruby.md
2857
+ - files/ruby/threads/beginner/thread_basic_creation.md
2858
+ - files/ruby/threads/beginner/thread_joining.md
2859
+ - files/ruby/threads/beginner/thread_mutex_usage.md
2860
+ - files/ruby/threads/beginner/thread_passing_arguments.md
2861
+ - files/ruby/threads/expert/barrier_synchronization_with_conditionvariable.md
2862
+ - files/ruby/threads/expert/thread_pool_with_sized_queue.md
2863
+ - files/ruby/threads/expert/thread_safe_lru_cache_with_monitor.md
2864
+ - files/ruby/threads/expert/timeout_handling_with_thread_handle_interrupt.md
2865
+ - files/ruby/threads/middle/graceful_thread_lifecycle.md
2866
+ - files/ruby/threads/middle/mutex_synchronize_shared_data.md
2867
+ - files/ruby/threads/middle/queue_producer_consumer.md
2868
+ - files/ruby/threads/middle/thread_local_variables.md
2869
+ - files/ruby/uri/advanced/custom_uri_scheme.md
2870
+ - files/ruby/uri/advanced/idn_support_punycode.md
2871
+ - files/ruby/uri/advanced/query_param_merging.md
2872
+ - files/ruby/uri/beginner/build_url_with_query.md
2873
+ - files/ruby/uri/beginner/encode_decode_query.md
2874
+ - files/ruby/uri/beginner/parse_url.md
2875
+ - files/ruby/uri/expert/advanced_uri_merging.md
2876
+ - files/ruby/uri/expert/custom_percent_encoding.md
2877
+ - files/ruby/uri/expert/custom_uri_scheme.md
2878
+ - files/ruby/uri/middle/constructing_uris_with_encoding.md
2879
+ - files/ruby/uri/middle/merging_and_resolving_relative_uris.md
2880
+ - files/ruby/uri/middle/parsing_modifying_query_params.md
2881
+ - files/ruby/variables/advanced/dynamic_instance_variables.md
2882
+ - files/ruby/variables/advanced/dynamic_local_variables.md
2883
+ - files/ruby/variables/advanced/thread_local_variables.md
2884
+ - files/ruby/variables/beginner/clear_variable_naming.md
2885
+ - files/ruby/variables/beginner/multiple_assignment.md
2886
+ - files/ruby/variables/beginner/string_interpolation.md
2887
+ - files/ruby/variables/expert/binding_local_variable_manipulation_expert.md
2888
+ - files/ruby/variables/expert/dynamic_constant_management_expert.md
2889
+ - files/ruby/variables/expert/thread_fiber_local_variables_expert.md
2890
+ - files/ruby/variables/middle/block_vs_method_variable_scope.md
2891
+ - files/ruby/variables/middle/memoization_with_or_equal.md
2892
+ - files/ruby/variables/middle/parallel_assignment_and_splat.md
2893
+ - files/ruby/xml/advanced/high_performance_ox.md
2894
+ - files/ruby/xml/advanced/sax_streaming_large_xml.md
2895
+ - files/ruby/xml/advanced/xpath_with_namespaces.md
2896
+ - files/ruby/xml/beginner/basic_parsing_with_rexml.md
2897
+ - files/ruby/xml/beginner/building_xml_with_nokogiri_builder.md
2898
+ - files/ruby/xml/beginner/parsing_xml_with_nokogiri.md
2899
+ - files/ruby/xml/expert/custom_sax_handler_performance.md
2900
+ - files/ruby/xml/expert/nokogiri_builder_namespaces_schema.md
2901
+ - files/ruby/xml/expert/nokogiri_xml_reader_streaming.md
2902
+ - files/ruby/xml/middle/build_xml_with_builder.md
2903
+ - files/ruby/xml/middle/modify_xml_nodes_nokogiri.md
2904
+ - files/ruby/xml/middle/parse_xml_with_namespaces.md
2905
+ - files/ruby/yaml/advanced/custom_yaml_serialization.md
2906
+ - files/ruby/yaml/advanced/secure_yaml_safe_load.md
2907
+ - files/ruby/yaml/advanced/streaming_yaml_parsing.md
2908
+ - files/ruby/yaml/beginner/dump_to_yaml.md
2909
+ - files/ruby/yaml/beginner/load_yaml_file.md
2910
+ - files/ruby/yaml/beginner/safe_parse_yaml_string.md
2911
+ - files/ruby/yaml/expert/custom_psych_domain_type.md
2912
+ - files/ruby/yaml/expert/secure_yaml_safe_load.md
2913
+ - files/ruby/yaml/expert/streaming_yaml_parser.md
2914
+ - files/ruby/yaml/middle/custom_yaml_serialization.md
2915
+ - files/ruby/yaml/middle/safe_load_yaml.md
2916
+ - files/ruby/yaml/middle/yaml_aliases_anchors.md
2917
+ - files/sql/general/advanced/expression_and_partial_indexes.md
2918
+ - files/sql/general/advanced/full_text_search_configurations.md
2919
+ - files/sql/general/advanced/jsonb_indexed_queries.md
2920
+ - files/sql/general/advanced/lateral_joins_for_dynamic_subqueries.md
2921
+ - files/sql/general/advanced/materialized_views_optimization.md
2922
+ - files/sql/general/advanced/merge_upsert_statements.md
2923
+ - files/sql/general/advanced/optimizer_hints_and_plans.md
2924
+ - files/sql/general/advanced/pivot_queries_crosstab.md
2925
+ - files/sql/general/advanced/recursive_cte_hierarchical_queries.md
2926
+ - files/sql/general/advanced/window_functions_row_number.md
2927
+ - files/sql/general/beginner/basic_inner_join.md
2928
+ - files/sql/general/beginner/count_rows.md
2929
+ - files/sql/general/beginner/filter_with_where.md
2930
+ - files/sql/general/beginner/group_by_clause.md
2931
+ - files/sql/general/beginner/insert_into_table.md
2932
+ - files/sql/general/beginner/limit_results.md
2933
+ - files/sql/general/beginner/select_specific_columns.md
2934
+ - files/sql/general/beginner/sort_results_order_by.md
2935
+ - files/sql/general/beginner/update_and_delete_records.md
2936
+ - files/sql/general/beginner/use_column_aliases.md
2937
+ - files/sql/general/expert/explain_analyze_tuning.md
2938
+ - files/sql/general/expert/jsonb_indexing.md
2939
+ - files/sql/general/expert/lateral_joins.md
2940
+ - files/sql/general/expert/materialized_views_refresh.md
2941
+ - files/sql/general/expert/partition_pruning.md
2942
+ - files/sql/general/expert/pivot_unpivot.md
2943
+ - files/sql/general/expert/recursive_cte_hierarchies.md
2944
+ - files/sql/general/expert/row_level_security.md
2945
+ - files/sql/general/expert/upsert_on_conflict.md
2946
+ - files/sql/general/expert/window_function_advanced_analytics.md
2947
+ - files/sql/general/middle/batch_inserts_updates.md
2948
+ - files/sql/general/middle/cte_for_complex_queries.md
2949
+ - files/sql/general/middle/full_text_search.md
2950
+ - files/sql/general/middle/index_usage_monitoring.md
2951
+ - files/sql/general/middle/join_performance_tips.md
2952
+ - files/sql/general/middle/jsonb_querying.md
2953
+ - files/sql/general/middle/parameterized_queries_security.md
2954
+ - files/sql/general/middle/query_plan_analysis.md
2955
+ - files/sql/general/middle/upsert_with_on_conflict.md
2956
+ - files/sql/general/middle/window_functions_usage.md
2957
+ - files/sql/mysql/advanced/cte_recursive.md
2958
+ - files/sql/mysql/advanced/explain_analyze.md
2959
+ - files/sql/mysql/advanced/fulltext_boolean_weights.md
2960
+ - files/sql/mysql/advanced/generated_columns.md
2961
+ - files/sql/mysql/advanced/json_functions.md
2962
+ - files/sql/mysql/advanced/partitioning_range.md
2963
+ - files/sql/mysql/advanced/performance_schema.md
2964
+ - files/sql/mysql/advanced/spatial_index.md
2965
+ - files/sql/mysql/advanced/transaction_isolation.md
2966
+ - files/sql/mysql/advanced/window_running_total.md
2967
+ - files/sql/mysql/beginner/count_aggregate.md
2968
+ - files/sql/mysql/beginner/delete_records.md
2969
+ - files/sql/mysql/beginner/filter_with_where.md
2970
+ - files/sql/mysql/beginner/group_by_results.md
2971
+ - files/sql/mysql/beginner/inner_join.md
2972
+ - files/sql/mysql/beginner/insert_data.md
2973
+ - files/sql/mysql/beginner/limit_results.md
2974
+ - files/sql/mysql/beginner/order_by_clause.md
2975
+ - files/sql/mysql/beginner/select_all_columns.md
2976
+ - files/sql/mysql/beginner/update_records.md
2977
+ - files/sql/mysql/expert/advanced_partition_pruning.md
2978
+ - files/sql/mysql/expert/extended_statistics_multicolumn_selectivity.md
2979
+ - files/sql/mysql/expert/generated_columns_json_optimization.md
2980
+ - files/sql/mysql/expert/invisible_indexes_testing.md
2981
+ - files/sql/mysql/expert/optimizer_hints_query_forcing.md
2982
+ - files/sql/mysql/expert/performance_schema_query_profiling.md
2983
+ - files/sql/mysql/expert/recursive_cte_hierarchies.md
2984
+ - files/sql/mysql/expert/user_defined_functions_extending.md
2985
+ - files/sql/mysql/expert/window_functions_running_totals.md
2986
+ - files/sql/mysql/middle/ctes_common_table_expressions.md
2987
+ - files/sql/mysql/middle/explain_query.md
2988
+ - files/sql/mysql/middle/fulltext_search.md
2989
+ - files/sql/mysql/middle/group_concat_usage.md
2990
+ - files/sql/mysql/middle/index_usage.md
2991
+ - files/sql/mysql/middle/json_functions.md
2992
+ - files/sql/mysql/middle/limit_offset_performance.md
2993
+ - files/sql/mysql/middle/regex_search.md
2994
+ - files/sql/mysql/middle/user_variables.md
2995
+ - files/sql/mysql/middle/window_functions.md
2996
+ - files/sql/postgresql/advanced/declarative_partitioning_range.md
2997
+ - files/sql/postgresql/advanced/full_text_search_tsvector.md
2998
+ - files/sql/postgresql/advanced/jsonb_path_query.md
2999
+ - files/sql/postgresql/advanced/lateral_joins.md
3000
+ - files/sql/postgresql/advanced/materialized_view_concurrent_refresh.md
3001
+ - files/sql/postgresql/advanced/parallel_query_execution.md
3002
+ - files/sql/postgresql/advanced/partial_expression_index.md
3003
+ - files/sql/postgresql/advanced/recursive_cte_hierarchy.md
3004
+ - files/sql/postgresql/advanced/upsert_on_conflict.md
3005
+ - files/sql/postgresql/advanced/window_function_rank.md
3006
+ - files/sql/postgresql/beginner/aggregate_functions.md
3007
+ - files/sql/postgresql/beginner/basic_join.md
3008
+ - files/sql/postgresql/beginner/connect_to_db.md
3009
+ - files/sql/postgresql/beginner/create_table.md
3010
+ - files/sql/postgresql/beginner/delete_data.md
3011
+ - files/sql/postgresql/beginner/insert_data.md
3012
+ - files/sql/postgresql/beginner/order_by_limit.md
3013
+ - files/sql/postgresql/beginner/select_basic.md
3014
+ - files/sql/postgresql/beginner/update_data.md
3015
+ - files/sql/postgresql/beginner/where_clause.md
3016
+ - files/sql/postgresql/expert/autovacuum_and_bloat_analysis.md
3017
+ - files/sql/postgresql/expert/dynamic_sql_in_plpgsql.md
3018
+ - files/sql/postgresql/expert/jsonb_gin_expression_indexes.md
3019
+ - files/sql/postgresql/expert/logical_replication_setup.md
3020
+ - files/sql/postgresql/expert/parallel_query_tuning.md
3021
+ - files/sql/postgresql/expert/partition_pruning_and_wise_joins.md
3022
+ - files/sql/postgresql/expert/postgres_fdw_foreign_data_wrapper.md
3023
+ - files/sql/postgresql/expert/recursive_cte_graph_traversal.md
3024
+ - files/sql/postgresql/expert/window_function_filter_clause.md
3025
+ - files/sql/postgresql/middle/full_text_search.md
3026
+ - files/sql/postgresql/middle/jsonb_query_indexing.md
3027
+ - files/sql/postgresql/middle/lateral_joins_subqueries.md
3028
+ - files/sql/postgresql/middle/materialized_views.md
3029
+ - files/sql/postgresql/middle/partial_indexes.md
3030
+ - files/sql/postgresql/middle/plpgsql_triggers_audit.md
3031
+ - files/sql/postgresql/middle/recursive_cte_hierarchy.md
3032
+ - files/sql/postgresql/middle/table_partitioning_range.md
3033
+ - files/sql/postgresql/middle/upsert_on_conflict.md
3034
+ - files/sql/postgresql/middle/window_functions_running_totals.md
3035
+ - files/sql/sqlite/advanced/explain_query_planner.md
3036
+ - files/sql/sqlite/advanced/fts5_full_text_search.md
3037
+ - files/sql/sqlite/advanced/json1_extension.md
3038
+ - files/sql/sqlite/advanced/partial_indexes.md
3039
+ - files/sql/sqlite/advanced/pragma_performance_tuning.md
3040
+ - files/sql/sqlite/advanced/recursive_ctes.md
3041
+ - files/sql/sqlite/advanced/rtree_spatial_indexing.md
3042
+ - files/sql/sqlite/advanced/upsert_on_conflict.md
3043
+ - files/sql/sqlite/advanced/wal_journal_mode.md
3044
+ - files/sql/sqlite/advanced/window_functions.md
3045
+ - files/sql/sqlite/beginner/aggregate_functions.md
3046
+ - files/sql/sqlite/beginner/basic_crud_operations.md
3047
+ - files/sql/sqlite/beginner/creating_a_database.md
3048
+ - files/sql/sqlite/beginner/creating_indexes.md
3049
+ - files/sql/sqlite/beginner/limiting_results.md
3050
+ - files/sql/sqlite/beginner/ordering_results.md
3051
+ - files/sql/sqlite/beginner/selecting_specific_columns.md
3052
+ - files/sql/sqlite/beginner/sqlite_installation.md
3053
+ - files/sql/sqlite/beginner/using_transactions.md
3054
+ - files/sql/sqlite/beginner/using_where_clause.md
3055
+ - files/sql/sqlite/expert/custom_sql_functions_c.md
3056
+ - files/sql/sqlite/expert/explain_query_plan_optimization.md
3057
+ - files/sql/sqlite/expert/fts5_custom_tokenizer.md
3058
+ - files/sql/sqlite/expert/json1_complex_queries.md
3059
+ - files/sql/sqlite/expert/partial_expression_indexes.md
3060
+ - files/sql/sqlite/expert/pragma_low_level_optimization.md
3061
+ - files/sql/sqlite/expert/recursive_cte_hierarchical_queries.md
3062
+ - files/sql/sqlite/expert/virtual_tables_external.md
3063
+ - files/sql/sqlite/expert/wal_checkpoint_tuning.md
3064
+ - files/sql/sqlite/expert/window_functions_analytics.md
3065
+ - files/sql/sqlite/middle/common_table_expressions.md
3066
+ - files/sql/sqlite/middle/fts5_full_text_search.md
3067
+ - files/sql/sqlite/middle/json_functions.md
3068
+ - files/sql/sqlite/middle/partial_indexes.md
3069
+ - files/sql/sqlite/middle/pragma_performance_tuning.md
3070
+ - files/sql/sqlite/middle/recursive_cte_hierarchy.md
3071
+ - files/sql/sqlite/middle/timestamp_triggers.md
3072
+ - files/sql/sqlite/middle/transaction_batching.md
3073
+ - files/sql/sqlite/middle/upsert_on_conflict.md
3074
+ - files/sql/sqlite/middle/window_functions_row_number.md
3075
+ - lib/generators/get/smart/install_generator.rb
3076
+ - lib/generators/get/smart/templates/get_smart.rb
3077
+ - lib/get/smart.rb
3078
+ - lib/get/smart/ai/generator.rb
3079
+ - lib/get/smart/app_context.rb
3080
+ - lib/get/smart/collection.rb
3081
+ - lib/get/smart/learning_path.rb
3082
+ - lib/get/smart/logic.rb
3083
+ - lib/get/smart/memory.rb
3084
+ - lib/get/smart/railtie.rb
3085
+ - lib/get/smart/tip.rb
3086
+ - lib/get/smart/topic.rb
3087
+ - lib/get/smart/topics.rb
3088
+ - lib/get/smart/version.rb
3089
+ - lib/tasks/get/smart_tasks.rake
3090
+ homepage: https://github.com/igorkasyanchuk/get-smart
3091
+ licenses:
3092
+ - MIT
3093
+ metadata:
3094
+ allowed_push_host: https://rubygems.org
3095
+ homepage_uri: https://github.com/igorkasyanchuk/get-smart
3096
+ source_code_uri: https://github.com/igorkasyanchuk/get-smart
3097
+ changelog_uri: https://github.com/igorkasyanchuk/get-smart/blob/main/CHANGELOG.md
3098
+ rdoc_options: []
3099
+ require_paths:
3100
+ - lib
3101
+ required_ruby_version: !ruby/object:Gem::Requirement
3102
+ requirements:
3103
+ - - ">="
3104
+ - !ruby/object:Gem::Version
3105
+ version: '0'
3106
+ required_rubygems_version: !ruby/object:Gem::Requirement
3107
+ requirements:
3108
+ - - ">="
3109
+ - !ruby/object:Gem::Version
3110
+ version: '0'
3111
+ requirements: []
3112
+ rubygems_version: 3.6.3
3113
+ specification_version: 4
3114
+ summary: Learn Ruby and Rails by examples
3115
+ test_files: []