karafka 1.4.12 → 2.2.10

Sign up to get free protection for your applications and to get access to all the features.
Files changed (359) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +0 -0
  3. data/.github/FUNDING.yml +1 -0
  4. data/.github/ISSUE_TEMPLATE/bug_report.md +10 -9
  5. data/.github/workflows/ci.yml +169 -31
  6. data/.rspec +4 -0
  7. data/.ruby-version +1 -1
  8. data/CHANGELOG.md +716 -607
  9. data/CONTRIBUTING.md +10 -19
  10. data/Gemfile +7 -0
  11. data/Gemfile.lock +69 -92
  12. data/LICENSE +17 -0
  13. data/LICENSE-COMM +89 -0
  14. data/LICENSE-LGPL +165 -0
  15. data/README.md +48 -47
  16. data/bin/benchmarks +99 -0
  17. data/bin/create_token +22 -0
  18. data/bin/integrations +310 -0
  19. data/bin/karafka +5 -14
  20. data/bin/record_rss +50 -0
  21. data/bin/rspecs +6 -0
  22. data/bin/scenario +29 -0
  23. data/bin/stress_many +13 -0
  24. data/bin/stress_one +13 -0
  25. data/bin/verify_license_integrity +37 -0
  26. data/bin/wait_for_kafka +24 -0
  27. data/certs/cert_chain.pem +26 -0
  28. data/certs/karafka-pro.pem +11 -0
  29. data/config/locales/errors.yml +97 -0
  30. data/config/locales/pro_errors.yml +59 -0
  31. data/docker-compose.yml +19 -11
  32. data/karafka.gemspec +26 -22
  33. data/lib/active_job/karafka.rb +17 -0
  34. data/lib/active_job/queue_adapters/karafka_adapter.rb +32 -0
  35. data/lib/karafka/active_job/consumer.rb +49 -0
  36. data/lib/karafka/active_job/current_attributes/loading.rb +36 -0
  37. data/lib/karafka/active_job/current_attributes/persistence.rb +28 -0
  38. data/lib/karafka/active_job/current_attributes.rb +42 -0
  39. data/lib/karafka/active_job/dispatcher.rb +69 -0
  40. data/lib/karafka/active_job/job_extensions.rb +34 -0
  41. data/lib/karafka/active_job/job_options_contract.rb +32 -0
  42. data/lib/karafka/admin.rb +313 -0
  43. data/lib/karafka/app.rb +47 -23
  44. data/lib/karafka/base_consumer.rb +260 -29
  45. data/lib/karafka/cli/base.rb +67 -36
  46. data/lib/karafka/cli/console.rb +18 -12
  47. data/lib/karafka/cli/help.rb +24 -0
  48. data/lib/karafka/cli/info.rb +47 -12
  49. data/lib/karafka/cli/install.rb +23 -14
  50. data/lib/karafka/cli/server.rb +101 -44
  51. data/lib/karafka/cli/topics.rb +146 -0
  52. data/lib/karafka/cli.rb +24 -27
  53. data/lib/karafka/connection/client.rb +553 -90
  54. data/lib/karafka/connection/consumer_group_coordinator.rb +48 -0
  55. data/lib/karafka/connection/listener.rb +294 -38
  56. data/lib/karafka/connection/listeners_batch.rb +40 -0
  57. data/lib/karafka/connection/messages_buffer.rb +84 -0
  58. data/lib/karafka/connection/pauses_manager.rb +46 -0
  59. data/lib/karafka/connection/proxy.rb +98 -0
  60. data/lib/karafka/connection/raw_messages_buffer.rb +101 -0
  61. data/lib/karafka/connection/rebalance_manager.rb +105 -0
  62. data/lib/karafka/contracts/base.rb +17 -0
  63. data/lib/karafka/contracts/config.rb +130 -11
  64. data/lib/karafka/contracts/consumer_group.rb +32 -187
  65. data/lib/karafka/contracts/server_cli_options.rb +80 -19
  66. data/lib/karafka/contracts/topic.rb +65 -0
  67. data/lib/karafka/contracts.rb +1 -1
  68. data/lib/karafka/embedded.rb +36 -0
  69. data/lib/karafka/env.rb +46 -0
  70. data/lib/karafka/errors.rb +37 -21
  71. data/lib/karafka/helpers/async.rb +33 -0
  72. data/lib/karafka/helpers/colorize.rb +26 -0
  73. data/lib/karafka/helpers/multi_delegator.rb +2 -2
  74. data/lib/karafka/instrumentation/callbacks/error.rb +39 -0
  75. data/lib/karafka/instrumentation/callbacks/rebalance.rb +64 -0
  76. data/lib/karafka/instrumentation/callbacks/statistics.rb +51 -0
  77. data/lib/karafka/instrumentation/logger_listener.rb +303 -0
  78. data/lib/karafka/instrumentation/monitor.rb +13 -61
  79. data/lib/karafka/instrumentation/notifications.rb +79 -0
  80. data/lib/karafka/instrumentation/proctitle_listener.rb +7 -16
  81. data/lib/karafka/instrumentation/vendors/appsignal/base.rb +30 -0
  82. data/lib/karafka/instrumentation/vendors/appsignal/client.rb +122 -0
  83. data/lib/karafka/instrumentation/vendors/appsignal/dashboard.json +222 -0
  84. data/lib/karafka/instrumentation/vendors/appsignal/errors_listener.rb +30 -0
  85. data/lib/karafka/instrumentation/vendors/appsignal/metrics_listener.rb +331 -0
  86. data/lib/karafka/instrumentation/vendors/datadog/dashboard.json +1 -0
  87. data/lib/karafka/instrumentation/vendors/datadog/logger_listener.rb +155 -0
  88. data/lib/karafka/instrumentation/vendors/datadog/metrics_listener.rb +264 -0
  89. data/lib/karafka/instrumentation/vendors/kubernetes/liveness_listener.rb +176 -0
  90. data/lib/karafka/licenser.rb +78 -0
  91. data/lib/karafka/messages/batch_metadata.rb +52 -0
  92. data/lib/karafka/messages/builders/batch_metadata.rb +60 -0
  93. data/lib/karafka/messages/builders/message.rb +40 -0
  94. data/lib/karafka/messages/builders/messages.rb +36 -0
  95. data/lib/karafka/{params/params.rb → messages/message.rb} +20 -13
  96. data/lib/karafka/messages/messages.rb +71 -0
  97. data/lib/karafka/{params → messages}/metadata.rb +4 -6
  98. data/lib/karafka/messages/parser.rb +14 -0
  99. data/lib/karafka/messages/seek.rb +12 -0
  100. data/lib/karafka/patches/rdkafka/bindings.rb +122 -0
  101. data/lib/karafka/patches/rdkafka/opaque.rb +36 -0
  102. data/lib/karafka/pro/active_job/consumer.rb +47 -0
  103. data/lib/karafka/pro/active_job/dispatcher.rb +86 -0
  104. data/lib/karafka/pro/active_job/job_options_contract.rb +45 -0
  105. data/lib/karafka/pro/cleaner/errors.rb +27 -0
  106. data/lib/karafka/pro/cleaner/messages/message.rb +46 -0
  107. data/lib/karafka/pro/cleaner/messages/messages.rb +42 -0
  108. data/lib/karafka/pro/cleaner.rb +41 -0
  109. data/lib/karafka/pro/contracts/base.rb +23 -0
  110. data/lib/karafka/pro/contracts/server_cli_options.rb +111 -0
  111. data/lib/karafka/pro/encryption/cipher.rb +58 -0
  112. data/lib/karafka/pro/encryption/contracts/config.rb +79 -0
  113. data/lib/karafka/pro/encryption/errors.rb +27 -0
  114. data/lib/karafka/pro/encryption/messages/middleware.rb +46 -0
  115. data/lib/karafka/pro/encryption/messages/parser.rb +56 -0
  116. data/lib/karafka/pro/encryption/setup/config.rb +48 -0
  117. data/lib/karafka/pro/encryption.rb +47 -0
  118. data/lib/karafka/pro/iterator/expander.rb +95 -0
  119. data/lib/karafka/pro/iterator/tpl_builder.rb +155 -0
  120. data/lib/karafka/pro/iterator.rb +170 -0
  121. data/lib/karafka/pro/loader.rb +106 -0
  122. data/lib/karafka/pro/performance_tracker.rb +84 -0
  123. data/lib/karafka/pro/processing/collapser.rb +62 -0
  124. data/lib/karafka/pro/processing/coordinator.rb +147 -0
  125. data/lib/karafka/pro/processing/filters/base.rb +61 -0
  126. data/lib/karafka/pro/processing/filters/delayer.rb +70 -0
  127. data/lib/karafka/pro/processing/filters/expirer.rb +51 -0
  128. data/lib/karafka/pro/processing/filters/inline_insights_delayer.rb +78 -0
  129. data/lib/karafka/pro/processing/filters/throttler.rb +84 -0
  130. data/lib/karafka/pro/processing/filters/virtual_limiter.rb +52 -0
  131. data/lib/karafka/pro/processing/filters_applier.rb +105 -0
  132. data/lib/karafka/pro/processing/jobs/consume_non_blocking.rb +39 -0
  133. data/lib/karafka/pro/processing/jobs/revoked_non_blocking.rb +37 -0
  134. data/lib/karafka/pro/processing/jobs_builder.rb +50 -0
  135. data/lib/karafka/pro/processing/partitioner.rb +69 -0
  136. data/lib/karafka/pro/processing/scheduler.rb +75 -0
  137. data/lib/karafka/pro/processing/strategies/aj/dlq_ftr_lrj_mom.rb +70 -0
  138. data/lib/karafka/pro/processing/strategies/aj/dlq_ftr_lrj_mom_vp.rb +76 -0
  139. data/lib/karafka/pro/processing/strategies/aj/dlq_ftr_mom.rb +72 -0
  140. data/lib/karafka/pro/processing/strategies/aj/dlq_ftr_mom_vp.rb +76 -0
  141. data/lib/karafka/pro/processing/strategies/aj/dlq_lrj_mom.rb +66 -0
  142. data/lib/karafka/pro/processing/strategies/aj/dlq_lrj_mom_vp.rb +70 -0
  143. data/lib/karafka/pro/processing/strategies/aj/dlq_mom.rb +64 -0
  144. data/lib/karafka/pro/processing/strategies/aj/dlq_mom_vp.rb +69 -0
  145. data/lib/karafka/pro/processing/strategies/aj/ftr_lrj_mom.rb +38 -0
  146. data/lib/karafka/pro/processing/strategies/aj/ftr_lrj_mom_vp.rb +66 -0
  147. data/lib/karafka/pro/processing/strategies/aj/ftr_mom.rb +38 -0
  148. data/lib/karafka/pro/processing/strategies/aj/ftr_mom_vp.rb +58 -0
  149. data/lib/karafka/pro/processing/strategies/aj/lrj_mom.rb +37 -0
  150. data/lib/karafka/pro/processing/strategies/aj/lrj_mom_vp.rb +82 -0
  151. data/lib/karafka/pro/processing/strategies/aj/mom.rb +36 -0
  152. data/lib/karafka/pro/processing/strategies/aj/mom_vp.rb +52 -0
  153. data/lib/karafka/pro/processing/strategies/base.rb +26 -0
  154. data/lib/karafka/pro/processing/strategies/default.rb +105 -0
  155. data/lib/karafka/pro/processing/strategies/dlq/default.rb +137 -0
  156. data/lib/karafka/pro/processing/strategies/dlq/ftr.rb +61 -0
  157. data/lib/karafka/pro/processing/strategies/dlq/ftr_lrj.rb +75 -0
  158. data/lib/karafka/pro/processing/strategies/dlq/ftr_lrj_mom.rb +71 -0
  159. data/lib/karafka/pro/processing/strategies/dlq/ftr_lrj_mom_vp.rb +43 -0
  160. data/lib/karafka/pro/processing/strategies/dlq/ftr_lrj_vp.rb +41 -0
  161. data/lib/karafka/pro/processing/strategies/dlq/ftr_mom.rb +69 -0
  162. data/lib/karafka/pro/processing/strategies/dlq/ftr_mom_vp.rb +41 -0
  163. data/lib/karafka/pro/processing/strategies/dlq/ftr_vp.rb +40 -0
  164. data/lib/karafka/pro/processing/strategies/dlq/lrj.rb +64 -0
  165. data/lib/karafka/pro/processing/strategies/dlq/lrj_mom.rb +65 -0
  166. data/lib/karafka/pro/processing/strategies/dlq/lrj_mom_vp.rb +36 -0
  167. data/lib/karafka/pro/processing/strategies/dlq/lrj_vp.rb +39 -0
  168. data/lib/karafka/pro/processing/strategies/dlq/mom.rb +68 -0
  169. data/lib/karafka/pro/processing/strategies/dlq/mom_vp.rb +37 -0
  170. data/lib/karafka/pro/processing/strategies/dlq/vp.rb +40 -0
  171. data/lib/karafka/pro/processing/strategies/ftr/default.rb +111 -0
  172. data/lib/karafka/pro/processing/strategies/ftr/vp.rb +40 -0
  173. data/lib/karafka/pro/processing/strategies/lrj/default.rb +85 -0
  174. data/lib/karafka/pro/processing/strategies/lrj/ftr.rb +69 -0
  175. data/lib/karafka/pro/processing/strategies/lrj/ftr_mom.rb +67 -0
  176. data/lib/karafka/pro/processing/strategies/lrj/ftr_mom_vp.rb +40 -0
  177. data/lib/karafka/pro/processing/strategies/lrj/ftr_vp.rb +39 -0
  178. data/lib/karafka/pro/processing/strategies/lrj/mom.rb +77 -0
  179. data/lib/karafka/pro/processing/strategies/lrj/mom_vp.rb +38 -0
  180. data/lib/karafka/pro/processing/strategies/lrj/vp.rb +36 -0
  181. data/lib/karafka/pro/processing/strategies/mom/default.rb +46 -0
  182. data/lib/karafka/pro/processing/strategies/mom/ftr.rb +53 -0
  183. data/lib/karafka/pro/processing/strategies/mom/ftr_vp.rb +37 -0
  184. data/lib/karafka/pro/processing/strategies/mom/vp.rb +35 -0
  185. data/lib/karafka/pro/processing/strategies/vp/default.rb +124 -0
  186. data/lib/karafka/pro/processing/strategies.rb +22 -0
  187. data/lib/karafka/pro/processing/strategy_selector.rb +84 -0
  188. data/lib/karafka/pro/processing/virtual_offset_manager.rb +147 -0
  189. data/lib/karafka/pro/routing/features/active_job/builder.rb +45 -0
  190. data/lib/karafka/pro/routing/features/active_job.rb +26 -0
  191. data/lib/karafka/pro/routing/features/base.rb +24 -0
  192. data/lib/karafka/pro/routing/features/dead_letter_queue/contracts/topic.rb +53 -0
  193. data/lib/karafka/pro/routing/features/dead_letter_queue.rb +27 -0
  194. data/lib/karafka/pro/routing/features/delaying/config.rb +27 -0
  195. data/lib/karafka/pro/routing/features/delaying/contracts/topic.rb +41 -0
  196. data/lib/karafka/pro/routing/features/delaying/topic.rb +59 -0
  197. data/lib/karafka/pro/routing/features/delaying.rb +29 -0
  198. data/lib/karafka/pro/routing/features/expiring/config.rb +27 -0
  199. data/lib/karafka/pro/routing/features/expiring/contracts/topic.rb +41 -0
  200. data/lib/karafka/pro/routing/features/expiring/topic.rb +59 -0
  201. data/lib/karafka/pro/routing/features/expiring.rb +27 -0
  202. data/lib/karafka/pro/routing/features/filtering/config.rb +40 -0
  203. data/lib/karafka/pro/routing/features/filtering/contracts/topic.rb +44 -0
  204. data/lib/karafka/pro/routing/features/filtering/topic.rb +51 -0
  205. data/lib/karafka/pro/routing/features/filtering.rb +27 -0
  206. data/lib/karafka/pro/routing/features/inline_insights/config.rb +32 -0
  207. data/lib/karafka/pro/routing/features/inline_insights/contracts/topic.rb +41 -0
  208. data/lib/karafka/pro/routing/features/inline_insights/topic.rb +52 -0
  209. data/lib/karafka/pro/routing/features/inline_insights.rb +26 -0
  210. data/lib/karafka/pro/routing/features/long_running_job/config.rb +28 -0
  211. data/lib/karafka/pro/routing/features/long_running_job/contracts/topic.rb +40 -0
  212. data/lib/karafka/pro/routing/features/long_running_job/topic.rb +42 -0
  213. data/lib/karafka/pro/routing/features/long_running_job.rb +28 -0
  214. data/lib/karafka/pro/routing/features/patterns/builder.rb +38 -0
  215. data/lib/karafka/pro/routing/features/patterns/config.rb +54 -0
  216. data/lib/karafka/pro/routing/features/patterns/consumer_group.rb +72 -0
  217. data/lib/karafka/pro/routing/features/patterns/contracts/consumer_group.rb +62 -0
  218. data/lib/karafka/pro/routing/features/patterns/contracts/pattern.rb +46 -0
  219. data/lib/karafka/pro/routing/features/patterns/contracts/topic.rb +41 -0
  220. data/lib/karafka/pro/routing/features/patterns/detector.rb +71 -0
  221. data/lib/karafka/pro/routing/features/patterns/pattern.rb +95 -0
  222. data/lib/karafka/pro/routing/features/patterns/patterns.rb +35 -0
  223. data/lib/karafka/pro/routing/features/patterns/topic.rb +50 -0
  224. data/lib/karafka/pro/routing/features/patterns/topics.rb +53 -0
  225. data/lib/karafka/pro/routing/features/patterns.rb +33 -0
  226. data/lib/karafka/pro/routing/features/pausing/contracts/topic.rb +51 -0
  227. data/lib/karafka/pro/routing/features/pausing/topic.rb +44 -0
  228. data/lib/karafka/pro/routing/features/pausing.rb +25 -0
  229. data/lib/karafka/pro/routing/features/throttling/config.rb +32 -0
  230. data/lib/karafka/pro/routing/features/throttling/contracts/topic.rb +44 -0
  231. data/lib/karafka/pro/routing/features/throttling/topic.rb +69 -0
  232. data/lib/karafka/pro/routing/features/throttling.rb +30 -0
  233. data/lib/karafka/pro/routing/features/virtual_partitions/config.rb +30 -0
  234. data/lib/karafka/pro/routing/features/virtual_partitions/contracts/topic.rb +55 -0
  235. data/lib/karafka/pro/routing/features/virtual_partitions/topic.rb +56 -0
  236. data/lib/karafka/pro/routing/features/virtual_partitions.rb +27 -0
  237. data/lib/karafka/pro.rb +13 -0
  238. data/lib/karafka/process.rb +24 -8
  239. data/lib/karafka/processing/coordinator.rb +181 -0
  240. data/lib/karafka/processing/coordinators_buffer.rb +62 -0
  241. data/lib/karafka/processing/executor.rb +155 -0
  242. data/lib/karafka/processing/executors_buffer.rb +72 -0
  243. data/lib/karafka/processing/expansions_selector.rb +22 -0
  244. data/lib/karafka/processing/inline_insights/consumer.rb +41 -0
  245. data/lib/karafka/processing/inline_insights/listener.rb +19 -0
  246. data/lib/karafka/processing/inline_insights/tracker.rb +128 -0
  247. data/lib/karafka/processing/jobs/base.rb +55 -0
  248. data/lib/karafka/processing/jobs/consume.rb +45 -0
  249. data/lib/karafka/processing/jobs/idle.rb +24 -0
  250. data/lib/karafka/processing/jobs/revoked.rb +22 -0
  251. data/lib/karafka/processing/jobs/shutdown.rb +23 -0
  252. data/lib/karafka/processing/jobs_builder.rb +28 -0
  253. data/lib/karafka/processing/jobs_queue.rb +150 -0
  254. data/lib/karafka/processing/partitioner.rb +24 -0
  255. data/lib/karafka/processing/result.rb +42 -0
  256. data/lib/karafka/processing/scheduler.rb +22 -0
  257. data/lib/karafka/processing/strategies/aj_dlq_mom.rb +44 -0
  258. data/lib/karafka/processing/strategies/aj_mom.rb +21 -0
  259. data/lib/karafka/processing/strategies/base.rb +52 -0
  260. data/lib/karafka/processing/strategies/default.rb +158 -0
  261. data/lib/karafka/processing/strategies/dlq.rb +88 -0
  262. data/lib/karafka/processing/strategies/dlq_mom.rb +49 -0
  263. data/lib/karafka/processing/strategies/mom.rb +29 -0
  264. data/lib/karafka/processing/strategy_selector.rb +47 -0
  265. data/lib/karafka/processing/worker.rb +93 -0
  266. data/lib/karafka/processing/workers_batch.rb +27 -0
  267. data/lib/karafka/railtie.rb +141 -0
  268. data/lib/karafka/routing/activity_manager.rb +84 -0
  269. data/lib/karafka/routing/builder.rb +45 -19
  270. data/lib/karafka/routing/consumer_group.rb +56 -20
  271. data/lib/karafka/routing/consumer_mapper.rb +1 -12
  272. data/lib/karafka/routing/features/active_job/builder.rb +33 -0
  273. data/lib/karafka/routing/features/active_job/config.rb +15 -0
  274. data/lib/karafka/routing/features/active_job/contracts/topic.rb +44 -0
  275. data/lib/karafka/routing/features/active_job/proxy.rb +14 -0
  276. data/lib/karafka/routing/features/active_job/topic.rb +33 -0
  277. data/lib/karafka/routing/features/active_job.rb +13 -0
  278. data/lib/karafka/routing/features/base/expander.rb +59 -0
  279. data/lib/karafka/routing/features/base.rb +71 -0
  280. data/lib/karafka/routing/features/dead_letter_queue/config.rb +19 -0
  281. data/lib/karafka/routing/features/dead_letter_queue/contracts/topic.rb +46 -0
  282. data/lib/karafka/routing/features/dead_letter_queue/topic.rb +41 -0
  283. data/lib/karafka/routing/features/dead_letter_queue.rb +16 -0
  284. data/lib/karafka/routing/features/declaratives/config.rb +18 -0
  285. data/lib/karafka/routing/features/declaratives/contracts/topic.rb +33 -0
  286. data/lib/karafka/routing/features/declaratives/topic.rb +44 -0
  287. data/lib/karafka/routing/features/declaratives.rb +14 -0
  288. data/lib/karafka/routing/features/inline_insights/config.rb +15 -0
  289. data/lib/karafka/routing/features/inline_insights/contracts/topic.rb +27 -0
  290. data/lib/karafka/routing/features/inline_insights/topic.rb +31 -0
  291. data/lib/karafka/routing/features/inline_insights.rb +40 -0
  292. data/lib/karafka/routing/features/manual_offset_management/config.rb +15 -0
  293. data/lib/karafka/routing/features/manual_offset_management/contracts/topic.rb +27 -0
  294. data/lib/karafka/routing/features/manual_offset_management/topic.rb +35 -0
  295. data/lib/karafka/routing/features/manual_offset_management.rb +18 -0
  296. data/lib/karafka/routing/proxy.rb +22 -21
  297. data/lib/karafka/routing/router.rb +24 -10
  298. data/lib/karafka/routing/subscription_group.rb +110 -0
  299. data/lib/karafka/routing/subscription_groups_builder.rb +65 -0
  300. data/lib/karafka/routing/topic.rb +87 -24
  301. data/lib/karafka/routing/topics.rb +46 -0
  302. data/lib/karafka/runner.rb +52 -0
  303. data/lib/karafka/serialization/json/deserializer.rb +7 -15
  304. data/lib/karafka/server.rb +113 -37
  305. data/lib/karafka/setup/attributes_map.rb +348 -0
  306. data/lib/karafka/setup/config.rb +256 -175
  307. data/lib/karafka/status.rb +54 -7
  308. data/lib/karafka/templates/example_consumer.rb.erb +16 -0
  309. data/lib/karafka/templates/karafka.rb.erb +33 -55
  310. data/lib/karafka/time_trackers/base.rb +14 -0
  311. data/lib/karafka/time_trackers/pause.rb +122 -0
  312. data/lib/karafka/time_trackers/poll.rb +69 -0
  313. data/lib/karafka/version.rb +1 -1
  314. data/lib/karafka.rb +91 -17
  315. data/renovate.json +9 -0
  316. data.tar.gz.sig +0 -0
  317. metadata +330 -168
  318. metadata.gz.sig +0 -0
  319. data/MIT-LICENCE +0 -18
  320. data/certs/mensfeld.pem +0 -25
  321. data/config/errors.yml +0 -41
  322. data/lib/karafka/assignment_strategies/round_robin.rb +0 -13
  323. data/lib/karafka/attributes_map.rb +0 -63
  324. data/lib/karafka/backends/inline.rb +0 -16
  325. data/lib/karafka/base_responder.rb +0 -226
  326. data/lib/karafka/cli/flow.rb +0 -48
  327. data/lib/karafka/cli/missingno.rb +0 -19
  328. data/lib/karafka/code_reloader.rb +0 -67
  329. data/lib/karafka/connection/api_adapter.rb +0 -158
  330. data/lib/karafka/connection/batch_delegator.rb +0 -55
  331. data/lib/karafka/connection/builder.rb +0 -23
  332. data/lib/karafka/connection/message_delegator.rb +0 -36
  333. data/lib/karafka/consumers/batch_metadata.rb +0 -10
  334. data/lib/karafka/consumers/callbacks.rb +0 -71
  335. data/lib/karafka/consumers/includer.rb +0 -64
  336. data/lib/karafka/consumers/responders.rb +0 -24
  337. data/lib/karafka/consumers/single_params.rb +0 -15
  338. data/lib/karafka/contracts/consumer_group_topic.rb +0 -19
  339. data/lib/karafka/contracts/responder_usage.rb +0 -54
  340. data/lib/karafka/fetcher.rb +0 -42
  341. data/lib/karafka/helpers/class_matcher.rb +0 -88
  342. data/lib/karafka/helpers/config_retriever.rb +0 -46
  343. data/lib/karafka/helpers/inflector.rb +0 -26
  344. data/lib/karafka/instrumentation/stdout_listener.rb +0 -140
  345. data/lib/karafka/params/batch_metadata.rb +0 -26
  346. data/lib/karafka/params/builders/batch_metadata.rb +0 -30
  347. data/lib/karafka/params/builders/params.rb +0 -38
  348. data/lib/karafka/params/builders/params_batch.rb +0 -25
  349. data/lib/karafka/params/params_batch.rb +0 -60
  350. data/lib/karafka/patches/ruby_kafka.rb +0 -47
  351. data/lib/karafka/persistence/client.rb +0 -29
  352. data/lib/karafka/persistence/consumers.rb +0 -45
  353. data/lib/karafka/persistence/topics.rb +0 -48
  354. data/lib/karafka/responders/builder.rb +0 -36
  355. data/lib/karafka/responders/topic.rb +0 -55
  356. data/lib/karafka/routing/topic_mapper.rb +0 -53
  357. data/lib/karafka/serialization/json/serializer.rb +0 -31
  358. data/lib/karafka/setup/configurators/water_drop.rb +0 -36
  359. data/lib/karafka/templates/application_responder.rb.erb +0 -11
metadata CHANGED
@@ -1,174 +1,103 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: karafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.4.12
4
+ version: 2.2.10
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maciej Mensfeld
8
- - Pavlo Vavruk
9
- - Adam Gwozdowski
10
8
  autorequire:
11
9
  bindir: bin
12
10
  cert_chain:
13
11
  - |
14
12
  -----BEGIN CERTIFICATE-----
15
- MIIEODCCAqCgAwIBAgIBATANBgkqhkiG9w0BAQsFADAjMSEwHwYDVQQDDBhtYWNp
16
- ZWovREM9bWVuc2ZlbGQvREM9cGwwHhcNMjEwODExMTQxNTEzWhcNMjIwODExMTQx
17
- NTEzWjAjMSEwHwYDVQQDDBhtYWNpZWovREM9bWVuc2ZlbGQvREM9cGwwggGiMA0G
18
- CSqGSIb3DQEBAQUAA4IBjwAwggGKAoIBgQDV2jKH4Ti87GM6nyT6D+ESzTI0MZDj
19
- ak2/TEwnxvijMJyCCPKT/qIkbW4/f0VHM4rhPr1nW73sb5SZBVFCLlJcOSKOBdUY
20
- TMY+SIXN2EtUaZuhAOe8LxtxjHTgRHvHcqUQMBENXTISNzCo32LnUxweu66ia4Pd
21
- 1mNRhzOqNv9YiBZvtBf7IMQ+sYdOCjboq2dlsWmJiwiDpY9lQBTnWORnT3mQxU5x
22
- vPSwnLB854cHdCS8fQo4DjeJBRZHhEbcE5sqhEMB3RZA3EtFVEXOxlNxVTS3tncI
23
- qyNXiWDaxcipaens4ObSY1C2HTV7OWb7OMqSCIybeYTSfkaSdqmcl4S6zxXkjH1J
24
- tnjayAVzD+QVXGijsPLE2PFnJAh9iDET2cMsjabO1f6l1OQNyAtqpcyQcgfnyW0z
25
- g7tGxTYD+6wJHffM9d9txOUw6djkF6bDxyqB8lo4Z3IObCx18AZjI9XPS9QG7w6q
26
- LCWuMG2lkCcRgASqaVk9fEf9yMc2xxz5o3kCAwEAAaN3MHUwCQYDVR0TBAIwADAL
27
- BgNVHQ8EBAMCBLAwHQYDVR0OBBYEFBqUFCKCOe5IuueUVqOB991jyCLLMB0GA1Ud
28
- EQQWMBSBEm1hY2llakBtZW5zZmVsZC5wbDAdBgNVHRIEFjAUgRJtYWNpZWpAbWVu
29
- c2ZlbGQucGwwDQYJKoZIhvcNAQELBQADggGBADD0/UuTTFgW+CGk2U0RDw2RBOca
30
- W2LTF/G7AOzuzD0Tc4voc7WXyrgKwJREv8rgBimLnNlgmFJLmtUCh2U/MgxvcilH
31
- yshYcbseNvjkrtYnLRlWZR4SSB6Zei5AlyGVQLPkvdsBpNegcG6w075YEwzX/38a
32
- 8V9B/Yri2OGELBz8ykl7BsXUgNoUPA/4pHF6YRLz+VirOaUIQ4JfY7xGj6fSOWWz
33
- /rQ/d77r6o1mfJYM/3BRVg73a3b7DmRnE5qjwmSaSQ7u802pJnLesmArch0xGCT/
34
- fMmRli1Qb+6qOTl9mzD6UDMAyFR4t6MStLm0mIEqM0nBO5nUdUWbC7l9qXEf8XBE
35
- 2DP28p3EqSuS+lKbAWKcqv7t0iRhhmaod+Yn9mcrLN1sa3q3KSQ9BCyxezCD4Mk2
36
- R2P11bWoCtr70BsccVrN8jEhzwXngMyI2gVt750Y+dbTu1KgRqZKp/ECe7ZzPzXj
37
- pIy9vHxTANKYVyI4qj8OrFdEM5BQNu8oQpL0iQ==
13
+ MIIEcDCCAtigAwIBAgIBATANBgkqhkiG9w0BAQsFADA/MRAwDgYDVQQDDAdjb250
14
+ YWN0MRcwFQYKCZImiZPyLGQBGRYHa2FyYWZrYTESMBAGCgmSJomT8ixkARkWAmlv
15
+ MB4XDTIzMDgyMTA3MjU1NFoXDTI0MDgyMDA3MjU1NFowPzEQMA4GA1UEAwwHY29u
16
+ dGFjdDEXMBUGCgmSJomT8ixkARkWB2thcmFma2ExEjAQBgoJkiaJk/IsZAEZFgJp
17
+ bzCCAaIwDQYJKoZIhvcNAQEBBQADggGPADCCAYoCggGBAOuZpyQKEwsTG9plLat7
18
+ 8bUaNuNBEnouTsNMr6X+XTgvyrAxTuocdsyP1sNCjdS1B8RiiDH1/Nt9qpvlBWon
19
+ sdJ1SYhaWNVfqiYStTDnCx3PRMmHRdD4KqUWKpN6VpZ1O/Zu+9Mw0COmvXgZuuO9
20
+ wMSJkXRo6dTCfMedLAIxjMeBIxtoLR2e6Jm6MR8+8WYYVWrO9kSOOt5eKQLBY7aK
21
+ b/Dc40EcJKPg3Z30Pia1M9ZyRlb6SOj6SKpHRqc7vbVQxjEw6Jjal1lZ49m3YZMd
22
+ ArMAs9lQZNdSw5/UX6HWWURLowg6k10RnhTUtYyzO9BFev0JFJftHnmuk8vtb+SD
23
+ 5VPmjFXg2VOcw0B7FtG75Vackk8QKfgVe3nSPhVpew2CSPlbJzH80wChbr19+e3+
24
+ YGr1tOiaJrL6c+PNmb0F31NXMKpj/r+n15HwlTMRxQrzFcgjBlxf2XFGnPQXHhBm
25
+ kp1OFnEq4GG9sON4glRldkwzi/f/fGcZmo5fm3d+0ZdNgwIDAQABo3cwdTAJBgNV
26
+ HRMEAjAAMAsGA1UdDwQEAwIEsDAdBgNVHQ4EFgQUPVH5+dLA80A1kJ2Uz5iGwfOa
27
+ 1+swHQYDVR0RBBYwFIESY29udGFjdEBrYXJhZmthLmlvMB0GA1UdEgQWMBSBEmNv
28
+ bnRhY3RAa2FyYWZrYS5pbzANBgkqhkiG9w0BAQsFAAOCAYEAnpa0jcN7JzREHMTQ
29
+ bfZ+xcvlrzuROMY6A3zIZmQgbnoZZNuX4cMRrT1p1HuwXpxdpHPw7dDjYqWw3+1h
30
+ 3mXLeMuk7amjQpYoSWU/OIZMhIsARra22UN8qkkUlUj3AwTaChVKN/bPJOM2DzfU
31
+ kz9vUgLeYYFfQbZqeI6SsM7ltilRV4W8D9yNUQQvOxCFxtLOetJ00fC/E7zMUzbK
32
+ IBwYFQYsbI6XQzgAIPW6nGSYKgRhkfpmquXSNKZRIQ4V6bFrufa+DzD0bt2ZA3ah
33
+ fMmJguyb5L2Gf1zpDXzFSPMG7YQFLzwYz1zZZvOU7/UCpQsHpID/YxqDp4+Dgb+Y
34
+ qma0whX8UG/gXFV2pYWpYOfpatvahwi+A1TwPQsuZwkkhi1OyF1At3RY+hjSXyav
35
+ AnG1dJU+yL2BK7vaVytLTstJME5mepSZ46qqIJXMuWob/YPDmVaBF39TDSG9e34s
36
+ msG3BiCqgOgHAnL23+CN3Rt8MsuRfEtoTKpJVcCfoEoNHOkc
38
37
  -----END CERTIFICATE-----
39
- date: 2022-01-13 00:00:00.000000000 Z
38
+ date: 2023-11-02 00:00:00.000000000 Z
40
39
  dependencies:
41
40
  - !ruby/object:Gem::Dependency
42
- name: dry-configurable
41
+ name: karafka-core
43
42
  requirement: !ruby/object:Gem::Requirement
44
43
  requirements:
45
- - - "~>"
46
- - !ruby/object:Gem::Version
47
- version: '0.13'
48
- type: :runtime
49
- prerelease: false
50
- version_requirements: !ruby/object:Gem::Requirement
51
- requirements:
52
- - - "~>"
53
- - !ruby/object:Gem::Version
54
- version: '0.13'
55
- - !ruby/object:Gem::Dependency
56
- name: dry-inflector
57
- requirement: !ruby/object:Gem::Requirement
58
- requirements:
59
- - - "~>"
60
- - !ruby/object:Gem::Version
61
- version: '0.2'
62
- type: :runtime
63
- prerelease: false
64
- version_requirements: !ruby/object:Gem::Requirement
65
- requirements:
66
- - - "~>"
67
- - !ruby/object:Gem::Version
68
- version: '0.2'
69
- - !ruby/object:Gem::Dependency
70
- name: dry-monitor
71
- requirement: !ruby/object:Gem::Requirement
72
- requirements:
73
- - - "~>"
74
- - !ruby/object:Gem::Version
75
- version: '0.5'
76
- type: :runtime
77
- prerelease: false
78
- version_requirements: !ruby/object:Gem::Requirement
79
- requirements:
80
- - - "~>"
81
- - !ruby/object:Gem::Version
82
- version: '0.5'
83
- - !ruby/object:Gem::Dependency
84
- name: dry-validation
85
- requirement: !ruby/object:Gem::Requirement
86
- requirements:
87
- - - "~>"
88
- - !ruby/object:Gem::Version
89
- version: '1.7'
90
- type: :runtime
91
- prerelease: false
92
- version_requirements: !ruby/object:Gem::Requirement
93
- requirements:
94
- - - "~>"
44
+ - - ">="
95
45
  - !ruby/object:Gem::Version
96
- version: '1.7'
97
- - !ruby/object:Gem::Dependency
98
- name: envlogic
99
- requirement: !ruby/object:Gem::Requirement
100
- requirements:
101
- - - "~>"
46
+ version: 2.2.2
47
+ - - "<"
102
48
  - !ruby/object:Gem::Version
103
- version: '1.1'
49
+ version: 2.3.0
104
50
  type: :runtime
105
51
  prerelease: false
106
52
  version_requirements: !ruby/object:Gem::Requirement
107
- requirements:
108
- - - "~>"
109
- - !ruby/object:Gem::Version
110
- version: '1.1'
111
- - !ruby/object:Gem::Dependency
112
- name: ruby-kafka
113
- requirement: !ruby/object:Gem::Requirement
114
53
  requirements:
115
54
  - - ">="
116
55
  - !ruby/object:Gem::Version
117
- version: 1.3.0
118
- type: :runtime
119
- prerelease: false
120
- version_requirements: !ruby/object:Gem::Requirement
121
- requirements:
122
- - - ">="
56
+ version: 2.2.2
57
+ - - "<"
123
58
  - !ruby/object:Gem::Version
124
- version: 1.3.0
59
+ version: 2.3.0
125
60
  - !ruby/object:Gem::Dependency
126
- name: thor
61
+ name: waterdrop
127
62
  requirement: !ruby/object:Gem::Requirement
128
63
  requirements:
129
64
  - - ">="
130
65
  - !ruby/object:Gem::Version
131
- version: '1.1'
66
+ version: 2.6.10
67
+ - - "<"
68
+ - !ruby/object:Gem::Version
69
+ version: 3.0.0
132
70
  type: :runtime
133
71
  prerelease: false
134
72
  version_requirements: !ruby/object:Gem::Requirement
135
73
  requirements:
136
74
  - - ">="
137
75
  - !ruby/object:Gem::Version
138
- version: '1.1'
139
- - !ruby/object:Gem::Dependency
140
- name: waterdrop
141
- requirement: !ruby/object:Gem::Requirement
142
- requirements:
143
- - - "~>"
144
- - !ruby/object:Gem::Version
145
- version: '1.4'
146
- type: :runtime
147
- prerelease: false
148
- version_requirements: !ruby/object:Gem::Requirement
149
- requirements:
150
- - - "~>"
76
+ version: 2.6.10
77
+ - - "<"
151
78
  - !ruby/object:Gem::Version
152
- version: '1.4'
79
+ version: 3.0.0
153
80
  - !ruby/object:Gem::Dependency
154
81
  name: zeitwerk
155
82
  requirement: !ruby/object:Gem::Requirement
156
83
  requirements:
157
84
  - - "~>"
158
85
  - !ruby/object:Gem::Version
159
- version: '2.4'
86
+ version: '2.3'
160
87
  type: :runtime
161
88
  prerelease: false
162
89
  version_requirements: !ruby/object:Gem::Requirement
163
90
  requirements:
164
91
  - - "~>"
165
92
  - !ruby/object:Gem::Version
166
- version: '2.4'
167
- description: Framework used to simplify Apache Kafka based Ruby applications development
93
+ version: '2.3'
94
+ description: |2
95
+ Karafka is Ruby and Rails efficient Kafka processing framework.
96
+
97
+ Karafka allows you to capture everything that happens in your systems in large scale,
98
+ without having to focus on things that are not your business domain.
168
99
  email:
169
- - maciej@mensfeld.pl
170
- - pavlo.vavruk@gmail.com
171
- - adam99g@gmail.com
100
+ - contact@karafka.io
172
101
  executables:
173
102
  - karafka
174
103
  extensions: []
@@ -177,6 +106,7 @@ files:
177
106
  - ".coditsu/ci.yml"
178
107
  - ".console_irbrc"
179
108
  - ".diffend.yml"
109
+ - ".github/FUNDING.yml"
180
110
  - ".github/ISSUE_TEMPLATE/bug_report.md"
181
111
  - ".github/ISSUE_TEMPLATE/feature_request.md"
182
112
  - ".github/workflows/ci.yml"
@@ -189,94 +119,326 @@ files:
189
119
  - CONTRIBUTING.md
190
120
  - Gemfile
191
121
  - Gemfile.lock
192
- - MIT-LICENCE
122
+ - LICENSE
123
+ - LICENSE-COMM
124
+ - LICENSE-LGPL
193
125
  - README.md
126
+ - bin/benchmarks
127
+ - bin/create_token
128
+ - bin/integrations
194
129
  - bin/karafka
195
- - certs/mensfeld.pem
196
- - config/errors.yml
130
+ - bin/record_rss
131
+ - bin/rspecs
132
+ - bin/scenario
133
+ - bin/stress_many
134
+ - bin/stress_one
135
+ - bin/verify_license_integrity
136
+ - bin/wait_for_kafka
137
+ - certs/cert_chain.pem
138
+ - certs/karafka-pro.pem
139
+ - config/locales/errors.yml
140
+ - config/locales/pro_errors.yml
197
141
  - docker-compose.yml
198
142
  - karafka.gemspec
143
+ - lib/active_job/karafka.rb
144
+ - lib/active_job/queue_adapters/karafka_adapter.rb
199
145
  - lib/karafka.rb
146
+ - lib/karafka/active_job/consumer.rb
147
+ - lib/karafka/active_job/current_attributes.rb
148
+ - lib/karafka/active_job/current_attributes/loading.rb
149
+ - lib/karafka/active_job/current_attributes/persistence.rb
150
+ - lib/karafka/active_job/dispatcher.rb
151
+ - lib/karafka/active_job/job_extensions.rb
152
+ - lib/karafka/active_job/job_options_contract.rb
153
+ - lib/karafka/admin.rb
200
154
  - lib/karafka/app.rb
201
- - lib/karafka/assignment_strategies/round_robin.rb
202
- - lib/karafka/attributes_map.rb
203
- - lib/karafka/backends/inline.rb
204
155
  - lib/karafka/base_consumer.rb
205
- - lib/karafka/base_responder.rb
206
156
  - lib/karafka/cli.rb
207
157
  - lib/karafka/cli/base.rb
208
158
  - lib/karafka/cli/console.rb
209
- - lib/karafka/cli/flow.rb
159
+ - lib/karafka/cli/help.rb
210
160
  - lib/karafka/cli/info.rb
211
161
  - lib/karafka/cli/install.rb
212
- - lib/karafka/cli/missingno.rb
213
162
  - lib/karafka/cli/server.rb
214
- - lib/karafka/code_reloader.rb
215
- - lib/karafka/connection/api_adapter.rb
216
- - lib/karafka/connection/batch_delegator.rb
217
- - lib/karafka/connection/builder.rb
163
+ - lib/karafka/cli/topics.rb
218
164
  - lib/karafka/connection/client.rb
165
+ - lib/karafka/connection/consumer_group_coordinator.rb
219
166
  - lib/karafka/connection/listener.rb
220
- - lib/karafka/connection/message_delegator.rb
221
- - lib/karafka/consumers/batch_metadata.rb
222
- - lib/karafka/consumers/callbacks.rb
223
- - lib/karafka/consumers/includer.rb
224
- - lib/karafka/consumers/responders.rb
225
- - lib/karafka/consumers/single_params.rb
167
+ - lib/karafka/connection/listeners_batch.rb
168
+ - lib/karafka/connection/messages_buffer.rb
169
+ - lib/karafka/connection/pauses_manager.rb
170
+ - lib/karafka/connection/proxy.rb
171
+ - lib/karafka/connection/raw_messages_buffer.rb
172
+ - lib/karafka/connection/rebalance_manager.rb
226
173
  - lib/karafka/contracts.rb
174
+ - lib/karafka/contracts/base.rb
227
175
  - lib/karafka/contracts/config.rb
228
176
  - lib/karafka/contracts/consumer_group.rb
229
- - lib/karafka/contracts/consumer_group_topic.rb
230
- - lib/karafka/contracts/responder_usage.rb
231
177
  - lib/karafka/contracts/server_cli_options.rb
178
+ - lib/karafka/contracts/topic.rb
179
+ - lib/karafka/embedded.rb
180
+ - lib/karafka/env.rb
232
181
  - lib/karafka/errors.rb
233
- - lib/karafka/fetcher.rb
234
- - lib/karafka/helpers/class_matcher.rb
235
- - lib/karafka/helpers/config_retriever.rb
236
- - lib/karafka/helpers/inflector.rb
182
+ - lib/karafka/helpers/async.rb
183
+ - lib/karafka/helpers/colorize.rb
237
184
  - lib/karafka/helpers/multi_delegator.rb
185
+ - lib/karafka/instrumentation/callbacks/error.rb
186
+ - lib/karafka/instrumentation/callbacks/rebalance.rb
187
+ - lib/karafka/instrumentation/callbacks/statistics.rb
238
188
  - lib/karafka/instrumentation/logger.rb
189
+ - lib/karafka/instrumentation/logger_listener.rb
239
190
  - lib/karafka/instrumentation/monitor.rb
191
+ - lib/karafka/instrumentation/notifications.rb
240
192
  - lib/karafka/instrumentation/proctitle_listener.rb
241
- - lib/karafka/instrumentation/stdout_listener.rb
242
- - lib/karafka/params/batch_metadata.rb
243
- - lib/karafka/params/builders/batch_metadata.rb
244
- - lib/karafka/params/builders/params.rb
245
- - lib/karafka/params/builders/params_batch.rb
246
- - lib/karafka/params/metadata.rb
247
- - lib/karafka/params/params.rb
248
- - lib/karafka/params/params_batch.rb
249
- - lib/karafka/patches/ruby_kafka.rb
250
- - lib/karafka/persistence/client.rb
251
- - lib/karafka/persistence/consumers.rb
252
- - lib/karafka/persistence/topics.rb
193
+ - lib/karafka/instrumentation/vendors/appsignal/base.rb
194
+ - lib/karafka/instrumentation/vendors/appsignal/client.rb
195
+ - lib/karafka/instrumentation/vendors/appsignal/dashboard.json
196
+ - lib/karafka/instrumentation/vendors/appsignal/errors_listener.rb
197
+ - lib/karafka/instrumentation/vendors/appsignal/metrics_listener.rb
198
+ - lib/karafka/instrumentation/vendors/datadog/dashboard.json
199
+ - lib/karafka/instrumentation/vendors/datadog/logger_listener.rb
200
+ - lib/karafka/instrumentation/vendors/datadog/metrics_listener.rb
201
+ - lib/karafka/instrumentation/vendors/kubernetes/liveness_listener.rb
202
+ - lib/karafka/licenser.rb
203
+ - lib/karafka/messages/batch_metadata.rb
204
+ - lib/karafka/messages/builders/batch_metadata.rb
205
+ - lib/karafka/messages/builders/message.rb
206
+ - lib/karafka/messages/builders/messages.rb
207
+ - lib/karafka/messages/message.rb
208
+ - lib/karafka/messages/messages.rb
209
+ - lib/karafka/messages/metadata.rb
210
+ - lib/karafka/messages/parser.rb
211
+ - lib/karafka/messages/seek.rb
212
+ - lib/karafka/patches/rdkafka/bindings.rb
213
+ - lib/karafka/patches/rdkafka/opaque.rb
214
+ - lib/karafka/pro.rb
215
+ - lib/karafka/pro/active_job/consumer.rb
216
+ - lib/karafka/pro/active_job/dispatcher.rb
217
+ - lib/karafka/pro/active_job/job_options_contract.rb
218
+ - lib/karafka/pro/cleaner.rb
219
+ - lib/karafka/pro/cleaner/errors.rb
220
+ - lib/karafka/pro/cleaner/messages/message.rb
221
+ - lib/karafka/pro/cleaner/messages/messages.rb
222
+ - lib/karafka/pro/contracts/base.rb
223
+ - lib/karafka/pro/contracts/server_cli_options.rb
224
+ - lib/karafka/pro/encryption.rb
225
+ - lib/karafka/pro/encryption/cipher.rb
226
+ - lib/karafka/pro/encryption/contracts/config.rb
227
+ - lib/karafka/pro/encryption/errors.rb
228
+ - lib/karafka/pro/encryption/messages/middleware.rb
229
+ - lib/karafka/pro/encryption/messages/parser.rb
230
+ - lib/karafka/pro/encryption/setup/config.rb
231
+ - lib/karafka/pro/iterator.rb
232
+ - lib/karafka/pro/iterator/expander.rb
233
+ - lib/karafka/pro/iterator/tpl_builder.rb
234
+ - lib/karafka/pro/loader.rb
235
+ - lib/karafka/pro/performance_tracker.rb
236
+ - lib/karafka/pro/processing/collapser.rb
237
+ - lib/karafka/pro/processing/coordinator.rb
238
+ - lib/karafka/pro/processing/filters/base.rb
239
+ - lib/karafka/pro/processing/filters/delayer.rb
240
+ - lib/karafka/pro/processing/filters/expirer.rb
241
+ - lib/karafka/pro/processing/filters/inline_insights_delayer.rb
242
+ - lib/karafka/pro/processing/filters/throttler.rb
243
+ - lib/karafka/pro/processing/filters/virtual_limiter.rb
244
+ - lib/karafka/pro/processing/filters_applier.rb
245
+ - lib/karafka/pro/processing/jobs/consume_non_blocking.rb
246
+ - lib/karafka/pro/processing/jobs/revoked_non_blocking.rb
247
+ - lib/karafka/pro/processing/jobs_builder.rb
248
+ - lib/karafka/pro/processing/partitioner.rb
249
+ - lib/karafka/pro/processing/scheduler.rb
250
+ - lib/karafka/pro/processing/strategies.rb
251
+ - lib/karafka/pro/processing/strategies/aj/dlq_ftr_lrj_mom.rb
252
+ - lib/karafka/pro/processing/strategies/aj/dlq_ftr_lrj_mom_vp.rb
253
+ - lib/karafka/pro/processing/strategies/aj/dlq_ftr_mom.rb
254
+ - lib/karafka/pro/processing/strategies/aj/dlq_ftr_mom_vp.rb
255
+ - lib/karafka/pro/processing/strategies/aj/dlq_lrj_mom.rb
256
+ - lib/karafka/pro/processing/strategies/aj/dlq_lrj_mom_vp.rb
257
+ - lib/karafka/pro/processing/strategies/aj/dlq_mom.rb
258
+ - lib/karafka/pro/processing/strategies/aj/dlq_mom_vp.rb
259
+ - lib/karafka/pro/processing/strategies/aj/ftr_lrj_mom.rb
260
+ - lib/karafka/pro/processing/strategies/aj/ftr_lrj_mom_vp.rb
261
+ - lib/karafka/pro/processing/strategies/aj/ftr_mom.rb
262
+ - lib/karafka/pro/processing/strategies/aj/ftr_mom_vp.rb
263
+ - lib/karafka/pro/processing/strategies/aj/lrj_mom.rb
264
+ - lib/karafka/pro/processing/strategies/aj/lrj_mom_vp.rb
265
+ - lib/karafka/pro/processing/strategies/aj/mom.rb
266
+ - lib/karafka/pro/processing/strategies/aj/mom_vp.rb
267
+ - lib/karafka/pro/processing/strategies/base.rb
268
+ - lib/karafka/pro/processing/strategies/default.rb
269
+ - lib/karafka/pro/processing/strategies/dlq/default.rb
270
+ - lib/karafka/pro/processing/strategies/dlq/ftr.rb
271
+ - lib/karafka/pro/processing/strategies/dlq/ftr_lrj.rb
272
+ - lib/karafka/pro/processing/strategies/dlq/ftr_lrj_mom.rb
273
+ - lib/karafka/pro/processing/strategies/dlq/ftr_lrj_mom_vp.rb
274
+ - lib/karafka/pro/processing/strategies/dlq/ftr_lrj_vp.rb
275
+ - lib/karafka/pro/processing/strategies/dlq/ftr_mom.rb
276
+ - lib/karafka/pro/processing/strategies/dlq/ftr_mom_vp.rb
277
+ - lib/karafka/pro/processing/strategies/dlq/ftr_vp.rb
278
+ - lib/karafka/pro/processing/strategies/dlq/lrj.rb
279
+ - lib/karafka/pro/processing/strategies/dlq/lrj_mom.rb
280
+ - lib/karafka/pro/processing/strategies/dlq/lrj_mom_vp.rb
281
+ - lib/karafka/pro/processing/strategies/dlq/lrj_vp.rb
282
+ - lib/karafka/pro/processing/strategies/dlq/mom.rb
283
+ - lib/karafka/pro/processing/strategies/dlq/mom_vp.rb
284
+ - lib/karafka/pro/processing/strategies/dlq/vp.rb
285
+ - lib/karafka/pro/processing/strategies/ftr/default.rb
286
+ - lib/karafka/pro/processing/strategies/ftr/vp.rb
287
+ - lib/karafka/pro/processing/strategies/lrj/default.rb
288
+ - lib/karafka/pro/processing/strategies/lrj/ftr.rb
289
+ - lib/karafka/pro/processing/strategies/lrj/ftr_mom.rb
290
+ - lib/karafka/pro/processing/strategies/lrj/ftr_mom_vp.rb
291
+ - lib/karafka/pro/processing/strategies/lrj/ftr_vp.rb
292
+ - lib/karafka/pro/processing/strategies/lrj/mom.rb
293
+ - lib/karafka/pro/processing/strategies/lrj/mom_vp.rb
294
+ - lib/karafka/pro/processing/strategies/lrj/vp.rb
295
+ - lib/karafka/pro/processing/strategies/mom/default.rb
296
+ - lib/karafka/pro/processing/strategies/mom/ftr.rb
297
+ - lib/karafka/pro/processing/strategies/mom/ftr_vp.rb
298
+ - lib/karafka/pro/processing/strategies/mom/vp.rb
299
+ - lib/karafka/pro/processing/strategies/vp/default.rb
300
+ - lib/karafka/pro/processing/strategy_selector.rb
301
+ - lib/karafka/pro/processing/virtual_offset_manager.rb
302
+ - lib/karafka/pro/routing/features/active_job.rb
303
+ - lib/karafka/pro/routing/features/active_job/builder.rb
304
+ - lib/karafka/pro/routing/features/base.rb
305
+ - lib/karafka/pro/routing/features/dead_letter_queue.rb
306
+ - lib/karafka/pro/routing/features/dead_letter_queue/contracts/topic.rb
307
+ - lib/karafka/pro/routing/features/delaying.rb
308
+ - lib/karafka/pro/routing/features/delaying/config.rb
309
+ - lib/karafka/pro/routing/features/delaying/contracts/topic.rb
310
+ - lib/karafka/pro/routing/features/delaying/topic.rb
311
+ - lib/karafka/pro/routing/features/expiring.rb
312
+ - lib/karafka/pro/routing/features/expiring/config.rb
313
+ - lib/karafka/pro/routing/features/expiring/contracts/topic.rb
314
+ - lib/karafka/pro/routing/features/expiring/topic.rb
315
+ - lib/karafka/pro/routing/features/filtering.rb
316
+ - lib/karafka/pro/routing/features/filtering/config.rb
317
+ - lib/karafka/pro/routing/features/filtering/contracts/topic.rb
318
+ - lib/karafka/pro/routing/features/filtering/topic.rb
319
+ - lib/karafka/pro/routing/features/inline_insights.rb
320
+ - lib/karafka/pro/routing/features/inline_insights/config.rb
321
+ - lib/karafka/pro/routing/features/inline_insights/contracts/topic.rb
322
+ - lib/karafka/pro/routing/features/inline_insights/topic.rb
323
+ - lib/karafka/pro/routing/features/long_running_job.rb
324
+ - lib/karafka/pro/routing/features/long_running_job/config.rb
325
+ - lib/karafka/pro/routing/features/long_running_job/contracts/topic.rb
326
+ - lib/karafka/pro/routing/features/long_running_job/topic.rb
327
+ - lib/karafka/pro/routing/features/patterns.rb
328
+ - lib/karafka/pro/routing/features/patterns/builder.rb
329
+ - lib/karafka/pro/routing/features/patterns/config.rb
330
+ - lib/karafka/pro/routing/features/patterns/consumer_group.rb
331
+ - lib/karafka/pro/routing/features/patterns/contracts/consumer_group.rb
332
+ - lib/karafka/pro/routing/features/patterns/contracts/pattern.rb
333
+ - lib/karafka/pro/routing/features/patterns/contracts/topic.rb
334
+ - lib/karafka/pro/routing/features/patterns/detector.rb
335
+ - lib/karafka/pro/routing/features/patterns/pattern.rb
336
+ - lib/karafka/pro/routing/features/patterns/patterns.rb
337
+ - lib/karafka/pro/routing/features/patterns/topic.rb
338
+ - lib/karafka/pro/routing/features/patterns/topics.rb
339
+ - lib/karafka/pro/routing/features/pausing.rb
340
+ - lib/karafka/pro/routing/features/pausing/contracts/topic.rb
341
+ - lib/karafka/pro/routing/features/pausing/topic.rb
342
+ - lib/karafka/pro/routing/features/throttling.rb
343
+ - lib/karafka/pro/routing/features/throttling/config.rb
344
+ - lib/karafka/pro/routing/features/throttling/contracts/topic.rb
345
+ - lib/karafka/pro/routing/features/throttling/topic.rb
346
+ - lib/karafka/pro/routing/features/virtual_partitions.rb
347
+ - lib/karafka/pro/routing/features/virtual_partitions/config.rb
348
+ - lib/karafka/pro/routing/features/virtual_partitions/contracts/topic.rb
349
+ - lib/karafka/pro/routing/features/virtual_partitions/topic.rb
253
350
  - lib/karafka/process.rb
254
- - lib/karafka/responders/builder.rb
255
- - lib/karafka/responders/topic.rb
351
+ - lib/karafka/processing/coordinator.rb
352
+ - lib/karafka/processing/coordinators_buffer.rb
353
+ - lib/karafka/processing/executor.rb
354
+ - lib/karafka/processing/executors_buffer.rb
355
+ - lib/karafka/processing/expansions_selector.rb
356
+ - lib/karafka/processing/inline_insights/consumer.rb
357
+ - lib/karafka/processing/inline_insights/listener.rb
358
+ - lib/karafka/processing/inline_insights/tracker.rb
359
+ - lib/karafka/processing/jobs/base.rb
360
+ - lib/karafka/processing/jobs/consume.rb
361
+ - lib/karafka/processing/jobs/idle.rb
362
+ - lib/karafka/processing/jobs/revoked.rb
363
+ - lib/karafka/processing/jobs/shutdown.rb
364
+ - lib/karafka/processing/jobs_builder.rb
365
+ - lib/karafka/processing/jobs_queue.rb
366
+ - lib/karafka/processing/partitioner.rb
367
+ - lib/karafka/processing/result.rb
368
+ - lib/karafka/processing/scheduler.rb
369
+ - lib/karafka/processing/strategies/aj_dlq_mom.rb
370
+ - lib/karafka/processing/strategies/aj_mom.rb
371
+ - lib/karafka/processing/strategies/base.rb
372
+ - lib/karafka/processing/strategies/default.rb
373
+ - lib/karafka/processing/strategies/dlq.rb
374
+ - lib/karafka/processing/strategies/dlq_mom.rb
375
+ - lib/karafka/processing/strategies/mom.rb
376
+ - lib/karafka/processing/strategy_selector.rb
377
+ - lib/karafka/processing/worker.rb
378
+ - lib/karafka/processing/workers_batch.rb
379
+ - lib/karafka/railtie.rb
380
+ - lib/karafka/routing/activity_manager.rb
256
381
  - lib/karafka/routing/builder.rb
257
382
  - lib/karafka/routing/consumer_group.rb
258
383
  - lib/karafka/routing/consumer_mapper.rb
384
+ - lib/karafka/routing/features/active_job.rb
385
+ - lib/karafka/routing/features/active_job/builder.rb
386
+ - lib/karafka/routing/features/active_job/config.rb
387
+ - lib/karafka/routing/features/active_job/contracts/topic.rb
388
+ - lib/karafka/routing/features/active_job/proxy.rb
389
+ - lib/karafka/routing/features/active_job/topic.rb
390
+ - lib/karafka/routing/features/base.rb
391
+ - lib/karafka/routing/features/base/expander.rb
392
+ - lib/karafka/routing/features/dead_letter_queue.rb
393
+ - lib/karafka/routing/features/dead_letter_queue/config.rb
394
+ - lib/karafka/routing/features/dead_letter_queue/contracts/topic.rb
395
+ - lib/karafka/routing/features/dead_letter_queue/topic.rb
396
+ - lib/karafka/routing/features/declaratives.rb
397
+ - lib/karafka/routing/features/declaratives/config.rb
398
+ - lib/karafka/routing/features/declaratives/contracts/topic.rb
399
+ - lib/karafka/routing/features/declaratives/topic.rb
400
+ - lib/karafka/routing/features/inline_insights.rb
401
+ - lib/karafka/routing/features/inline_insights/config.rb
402
+ - lib/karafka/routing/features/inline_insights/contracts/topic.rb
403
+ - lib/karafka/routing/features/inline_insights/topic.rb
404
+ - lib/karafka/routing/features/manual_offset_management.rb
405
+ - lib/karafka/routing/features/manual_offset_management/config.rb
406
+ - lib/karafka/routing/features/manual_offset_management/contracts/topic.rb
407
+ - lib/karafka/routing/features/manual_offset_management/topic.rb
259
408
  - lib/karafka/routing/proxy.rb
260
409
  - lib/karafka/routing/router.rb
410
+ - lib/karafka/routing/subscription_group.rb
411
+ - lib/karafka/routing/subscription_groups_builder.rb
261
412
  - lib/karafka/routing/topic.rb
262
- - lib/karafka/routing/topic_mapper.rb
413
+ - lib/karafka/routing/topics.rb
414
+ - lib/karafka/runner.rb
263
415
  - lib/karafka/serialization/json/deserializer.rb
264
- - lib/karafka/serialization/json/serializer.rb
265
416
  - lib/karafka/server.rb
417
+ - lib/karafka/setup/attributes_map.rb
266
418
  - lib/karafka/setup/config.rb
267
- - lib/karafka/setup/configurators/water_drop.rb
268
419
  - lib/karafka/setup/dsl.rb
269
420
  - lib/karafka/status.rb
270
421
  - lib/karafka/templates/application_consumer.rb.erb
271
- - lib/karafka/templates/application_responder.rb.erb
422
+ - lib/karafka/templates/example_consumer.rb.erb
272
423
  - lib/karafka/templates/karafka.rb.erb
424
+ - lib/karafka/time_trackers/base.rb
425
+ - lib/karafka/time_trackers/pause.rb
426
+ - lib/karafka/time_trackers/poll.rb
273
427
  - lib/karafka/version.rb
274
428
  - log/.gitkeep
429
+ - renovate.json
275
430
  homepage: https://karafka.io
276
431
  licenses:
277
- - MIT
432
+ - LGPL-3.0
433
+ - Commercial
278
434
  metadata:
435
+ funding_uri: https://karafka.io/#become-pro
436
+ homepage_uri: https://karafka.io
437
+ changelog_uri: https://karafka.io/docs/Changelog-Karafka
438
+ bug_tracker_uri: https://github.com/karafka/karafka/issues
279
439
  source_code_uri: https://github.com/karafka/karafka
440
+ documentation_uri: https://karafka.io/docs
441
+ rubygems_mfa_required: 'true'
280
442
  post_install_message:
281
443
  rdoc_options: []
282
444
  require_paths:
@@ -285,15 +447,15 @@ required_ruby_version: !ruby/object:Gem::Requirement
285
447
  requirements:
286
448
  - - ">="
287
449
  - !ruby/object:Gem::Version
288
- version: 2.6.0
450
+ version: '0'
289
451
  required_rubygems_version: !ruby/object:Gem::Requirement
290
452
  requirements:
291
453
  - - ">="
292
454
  - !ruby/object:Gem::Version
293
455
  version: '0'
294
456
  requirements: []
295
- rubygems_version: 3.3.4
457
+ rubygems_version: 3.4.19
296
458
  signing_key:
297
459
  specification_version: 4
298
- summary: Ruby based framework for working with Apache Kafka
460
+ summary: Karafka is Ruby and Rails efficient Kafka processing framework.
299
461
  test_files: []
metadata.gz.sig CHANGED
Binary file
data/MIT-LICENCE DELETED
@@ -1,18 +0,0 @@
1
- Permission is hereby granted, free of charge, to any person obtaining
2
- a copy of this software and associated documentation files (the
3
- "Software"), to deal in the Software without restriction, including
4
- without limitation the rights to use, copy, modify, merge, publish,
5
- distribute, sublicense, and/or sell copies of the Software, and to
6
- permit persons to whom the Software is furnished to do so, subject to
7
- the following conditions:
8
-
9
- The above copyright notice and this permission notice shall be
10
- included in all copies or substantial portions of the Software.
11
-
12
- THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
13
- EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
14
- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
15
- NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE
16
- LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION
17
- OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION
18
- WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.