{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":173350441,"defaultBranch":"main","name":"web_pipe","ownerLogin":"waiting-for-dev","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-03-01T18:34:17.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/52650?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1702288587.0","currentOid":""},"activityList":{"items":[{"before":"6a69fa54927cd85cbae2109744408789b961e271","after":null,"ref":"refs/heads/waiting-for-dev/dry_auto_inject","pushedAt":"2023-12-11T09:56:27.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"}},{"before":"8129f127892d09b2410c2bd8a1974459aefe5d75","after":"21815c700547ee387e04ca91e9732551256c4581","ref":"refs/heads/main","pushedAt":"2023-12-11T09:56:26.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Make web_pipe compatible with dry-auto_inject\n\nWe remove the built-in resolution of plugs from a container and instead\nrely on the common mechanism provided by dry-auto_inject.\n\nAs we're already allowing the injection of plugs and middlewares through\nkeyword arguents given on `#initialize`, web_pipe remains compatible\nwith the keyword arguments strategy of dry-auto_inject. We make sure\nthat the order of inclusion of either web_pipe or dry-auto_inject is\nirrelevant for a correct behavior via dispatching any extra keyword\narguments to `super`.\n\n```ruby\nWebPipe.load_extensions(:params)\n\nclass CreateUserApp\n include WebPipe\n include Deps[:create_user]\n\n plug :html, WebPipe::Plugs::ContentType.('text/html')\n plug :create\n\n private\n\n def create(conn)\n create_user.(conn.params)\n end\nend\n```","shortMessageHtmlLink":"Make web_pipe compatible with dry-auto_inject"}},{"before":"79f6c53b603c94c2856088df3106a015e23132b1","after":"6a69fa54927cd85cbae2109744408789b961e271","ref":"refs/heads/waiting-for-dev/dry_auto_inject","pushedAt":"2023-12-11T09:55:41.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Make web_pipe compatible with dry-auto_inject\n\nWe remove the built-in resolution of plugs from a container and instead\nrely on the common mechanism provided by dry-auto_inject.\n\nAs we're already allowing the injection of plugs and middlewares through\nkeyword arguents given on `#initialize`, web_pipe remains compatible\nwith the keyword arguments strategy of dry-auto_inject. We make sure\nthat the order of inclusion of either web_pipe or dry-auto_inject is\nirrelevant for a correct behavior via dispatching any extra keyword\narguments to `super`.\n\n```ruby\nWebPipe.load_extensions(:params)\n\nclass CreateUserApp\n include WebPipe\n include Deps[:create_user]\n\n plug :html, WebPipe::Plugs::ContentType.('text/html')\n plug :create\n\n private\n\n def create(conn)\n create_user.(conn.params)\n end\nend\n```","shortMessageHtmlLink":"Make web_pipe compatible with dry-auto_inject"}},{"before":"00926c5d291ad48cb72cd64a51845f3b990287a5","after":"79f6c53b603c94c2856088df3106a015e23132b1","ref":"refs/heads/waiting-for-dev/dry_auto_inject","pushedAt":"2023-12-11T09:52:52.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Make web_pipe compatible with dry-auto_inject\n\nWe remove the built-in resolution of plugs from a container and instead\nrely on the common mechanism provided by dry-auto_inject.\n\nAs we're already allowing the injection of plugs and middlewares through\nkeyword arguents given on `#initialize`, web_pipe remains compatible\nwith the keyword arguments strategy of dry-auto_inject. We make sure\nthat the order of inclusion of either web_pipe or dry-auto_inject is\nirrelevant for a correct behavior via dispatching any extra keyword\narguments to `super`.\n\n```ruby\nWebPipe.load_extensions(:params)\n\nclass CreateUserApp\n include WebPipe\n include Deps[:create_user]\n\n plug :html, WebPipe::Plugs::ContentType.('text/html')\n plug :create\n\n private\n\n def create(conn)\n create_user.(conn.params)\n end\nend\n```","shortMessageHtmlLink":"Make web_pipe compatible with dry-auto_inject"}},{"before":"513ba150348909b9423ef53a669b0cbd9e569b33","after":"00926c5d291ad48cb72cd64a51845f3b990287a5","ref":"refs/heads/waiting-for-dev/dry_auto_inject","pushedAt":"2023-12-11T09:50:44.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Make web_pipe compatible with dry-auto_inject\n\nWe remove the built-in resolution of plugs from a container and instead\nrely on the common mechanism provided by dry-auto_inject.\n\nAs we're already allowing the injection of plugs and middlewares through\nkeyword arguents given on `#initialize`, web_pipe remains compatible\nwith the keyword arguments strategy of dry-auto_inject. We make sure\nthat the order of inclusion of either web_pipe or dry-auto_inject is\nirrelevant for a correct behavior via dispatching any extra keyword\narguments to `super`.\n\n```ruby\nWebPipe.load_extensions(:params)\n\nclass CreateUserApp\n include WebPipe\n include Deps[:create_user]\n\n plug :html, WebPipe::Plugs::ContentType.('text/html')\n plug :create\n\n private\n\n def create(conn)\n create_user.(conn.params)\n end\nend\n```","shortMessageHtmlLink":"Make web_pipe compatible with dry-auto_inject"}},{"before":"5ea5ffafd733412b641b3c64d8bf81a7dbe23622","after":"513ba150348909b9423ef53a669b0cbd9e569b33","ref":"refs/heads/waiting-for-dev/dry_auto_inject","pushedAt":"2023-12-11T09:48:30.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Make web_pipe compatible with dry-auto_inject\n\nWe remove the built-in resolution of plugs from a container and instead\nrely on the common mechanism provided by dry-auto_inject.\n\nAs we're already allowing the injection of plugs and middlewares through\nkeyword arguents given on `#initialize`, web_pipe remains compatible\nwith the keyword arguments strategy of dry-auto_inject. We make sure\nthat the order of inclusion of either web_pipe or dry-auto_inject is\nirrelevant for a correct behavior via dispatching any extra keyword\narguments to `super`.\n\n```ruby\nWebPipe.load_extensions(:params)\n\nclass CreateUserApp\n include WebPipe\n include Deps[:create_user]\n\n plug :html, WebPipe::Plugs::ContentType.('text/html')\n plug :create\n\n private\n\n def create(conn)\n create_user.(conn.params)\n end\nend\n```","shortMessageHtmlLink":"Make web_pipe compatible with dry-auto_inject"}},{"before":null,"after":"5ea5ffafd733412b641b3c64d8bf81a7dbe23622","ref":"refs/heads/waiting-for-dev/dry_auto_inject","pushedAt":"2023-12-11T09:46:52.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Make web_pipe compatible with dry-auto_inject\n\nWe remove the built-in resolution of plugs from a container and instead\nrely on the common mechanism provided by dry-auto_inject.\n\nAs we're already allowing the injection of plugs and middlewares through\nkeyword arguents given on `#initialize`, web_pipe remains compatible\nwith the keyword arguments strategy of dry-auto_inject. We make sure\nthat the order of inclusion of either web_pipe or dry-auto_inject is\nirrelevant for a correct behavior via dispatching any extra keyword\narguments to `super`.","shortMessageHtmlLink":"Make web_pipe compatible with dry-auto_inject"}},{"before":"6404777ef2a9e306037f8b35be60157e1e9b2df8","after":null,"ref":"refs/heads/waiting-for-dev/zeitwerk","pushedAt":"2023-11-14T10:24:06.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"}},{"before":"96dfe10da585879abc310cf4524329801dd54b4d","after":"8129f127892d09b2410c2bd8a1974459aefe5d75","ref":"refs/heads/main","pushedAt":"2023-11-14T10:24:06.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Use Zeitwerk for autoloading\n\nThis commit introduces Zeitwerk [1] as the autoloader for WebPipe.\n\nWe eager-load in a test example to ensure the setup is correct.\n\n[1] - https://github.com/fxn/zeitwerk","shortMessageHtmlLink":"Use Zeitwerk for autoloading"}},{"before":null,"after":"6404777ef2a9e306037f8b35be60157e1e9b2df8","ref":"refs/heads/waiting-for-dev/zeitwerk","pushedAt":"2023-11-14T10:22:00.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Use Zeitwerk for autoloading\n\nThis commit introduces Zeitwerk [1] as the autoloader for WebPipe.\n\nWe eager-load in a test example to ensure the setup is correct.\n\n[1] - https://github.com/fxn/zeitwerk","shortMessageHtmlLink":"Use Zeitwerk for autoloading"}},{"before":"47423ce591c754afc20de8f75548424f669c2be4","after":"96dfe10da585879abc310cf4524329801dd54b4d","ref":"refs/heads/main","pushedAt":"2023-10-26T08:41:56.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Ignore commit updating rubocop config in git-blame","shortMessageHtmlLink":"Ignore commit updating rubocop config in git-blame"}},{"before":"30ea6aaf26009e73e2ad962ca2071365bcea867d","after":null,"ref":"refs/heads/waiting-for-dev/update_rubocop","pushedAt":"2023-10-26T08:40:15.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"}},{"before":"357a6ab5ea95ee4b6008b30183f32a95864346e0","after":"47423ce591c754afc20de8f75548424f669c2be4","ref":"refs/heads/main","pushedAt":"2023-10-26T08:40:14.000Z","pushType":"pr_merge","commitsCount":2,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Ignore commit updating rubocop config in git-blame","shortMessageHtmlLink":"Ignore commit updating rubocop config in git-blame"}},{"before":null,"after":"30ea6aaf26009e73e2ad962ca2071365bcea867d","ref":"refs/heads/waiting-for-dev/update_rubocop","pushedAt":"2023-10-26T08:37:32.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Ignore commit updating rubocop config in git-blame","shortMessageHtmlLink":"Ignore commit updating rubocop config in git-blame"}},{"before":"8b4f19c1368a6cb416fa73252b595a5ee5d09607","after":null,"ref":"refs/heads/waiting-for-dev/rubocop","pushedAt":"2023-10-26T04:52:34.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"}},{"before":"7a15d309bb9c30cccdd2e4d4d58ad80f4d23f2df","after":"357a6ab5ea95ee4b6008b30183f32a95864346e0","ref":"refs/heads/main","pushedAt":"2023-10-26T04:52:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Modernize gemspec and Gemfile files\n\nInclude them under rubocop checks. Require MFA.","shortMessageHtmlLink":"Modernize gemspec and Gemfile files"}},{"before":null,"after":"8b4f19c1368a6cb416fa73252b595a5ee5d09607","ref":"refs/heads/waiting-for-dev/rubocop","pushedAt":"2023-10-26T04:51:44.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Modernize gemspec and Gemfile files\n\nInclude them under rubocop checks. Require MFA.","shortMessageHtmlLink":"Modernize gemspec and Gemfile files"}},{"before":"e71ede08e6a09d6f52a4caf6e1a4ec9f9f619833","after":null,"ref":"refs/heads/waiting-for-dev/gh_actions","pushedAt":"2023-10-26T04:32:13.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"}},{"before":"ffecd9ea2a772089a52fa9fe26b2169ff37d103a","after":"7a15d309bb9c30cccdd2e4d4d58ad80f4d23f2df","ref":"refs/heads/main","pushedAt":"2023-10-26T04:32:12.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Switch to GH Actions for CI and add coverage reporting","shortMessageHtmlLink":"Switch to GH Actions for CI and add coverage reporting"}},{"before":"cf20b0d40fac36b338cf22993775b0fd9b16a070","after":"e71ede08e6a09d6f52a4caf6e1a4ec9f9f619833","ref":"refs/heads/waiting-for-dev/gh_actions","pushedAt":"2023-10-26T04:26:46.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Switch to GH Actions for CI and add coverage reporting","shortMessageHtmlLink":"Switch to GH Actions for CI and add coverage reporting"}},{"before":"10cc8fa76b3a9cc27a9d5894be85c2e90385a366","after":"cf20b0d40fac36b338cf22993775b0fd9b16a070","ref":"refs/heads/waiting-for-dev/gh_actions","pushedAt":"2023-10-26T04:25:12.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Switch to GH Actions for CI and add coverage reporting","shortMessageHtmlLink":"Switch to GH Actions for CI and add coverage reporting"}},{"before":"b8dc9d85a19918f924d78fadd2b43702dd98786d","after":"10cc8fa76b3a9cc27a9d5894be85c2e90385a366","ref":"refs/heads/waiting-for-dev/gh_actions","pushedAt":"2023-10-26T04:23:30.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Switch to GH Actions for CI and add coverage reporting","shortMessageHtmlLink":"Switch to GH Actions for CI and add coverage reporting"}},{"before":null,"after":"b8dc9d85a19918f924d78fadd2b43702dd98786d","ref":"refs/heads/waiting-for-dev/gh_actions","pushedAt":"2023-10-26T04:21:24.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Switch to GH Actions for CI and add coverage reporting","shortMessageHtmlLink":"Switch to GH Actions for CI and add coverage reporting"}},{"before":"135e8ad7ca5fbb4caf417f5ce7cf142c11448767","after":null,"ref":"refs/heads/waiting-for-dev/update_code","pushedAt":"2023-10-25T15:03:55.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"}},{"before":"eb2c4ddca883941f77226f23ed84775327101cfb","after":"ffecd9ea2a772089a52fa9fe26b2169ff37d103a","ref":"refs/heads/main","pushedAt":"2023-10-25T15:03:54.000Z","pushType":"pr_merge","commitsCount":3,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Update hanami-view extension to work with the 2.1 beta\n\n`Hanami::View::Context` no longer supports `#with`, as it's encouraged\nfor a single instance to be used for the whole request [1].\n\nWe use the same approach as hanami [2], where users can configure a\ndefault context class and it's expected to be initialized with keyword\narguments. In our case, the default context class is a noop and we\nexpect users to implement it. It can be configured in the\n`view_context_class` setting, while the initialize options can be\ncreated from the connection struct through a lambda configured in the\n`view_context_options` setting.\n\n[1] - https://github.com/hanami/view/pull/223\n[2] - https://github.com/hanami/hanami/pull/1359","shortMessageHtmlLink":"Update hanami-view extension to work with the 2.1 beta"}},{"before":"5dff181a5294b1655a5a3af8792313a1485d58c1","after":"135e8ad7ca5fbb4caf417f5ce7cf142c11448767","ref":"refs/heads/waiting-for-dev/update_code","pushedAt":"2023-10-25T15:01:53.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Update hanami-view extension to work with the 2.1 beta\n\n`Hanami::View::Context` no longer supports `#with`, as it's encouraged\nfor a single instance to be used for the whole request [1].\n\nWe use the same approach as hanami [2], where users can configure a\ndefault context class and it's expected to be initialized with keyword\narguments. In our case, the default context class is a noop and we\nexpect users to implement it. It can be configured in the\n`view_context_class` setting, while the initialize options can be\ncreated from the connection struct through a lambda configured in the\n`view_context_options` setting.\n\n[1] - https://github.com/hanami/view/pull/223\n[2] - https://github.com/hanami/hanami/pull/1359","shortMessageHtmlLink":"Update hanami-view extension to work with the 2.1 beta"}},{"before":null,"after":"5dff181a5294b1655a5a3af8792313a1485d58c1","ref":"refs/heads/waiting-for-dev/update_code","pushedAt":"2023-10-25T15:01:06.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"waiting-for-dev","name":"Marc Busqué","path":"/waiting-for-dev","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/52650?s=80&v=4"},"commit":{"message":"Update hanami-view extension to work with the 2.1 beta\n\n`Hanami::View::Context` no longer supports `#with`, as it's encouraged\nfor a single instance to be used for the whole request [1].\n\nWe use the same approach as hanami [2], where users can configure a\ndefault context class and it's expected to be initialized with keyword\narguments. In our case, the default context class is a noop and we\nexpect users to implement it. It can be configured in the\n`view_context_class` setting, while the initialize options can be\ncreated from the connection struct through a lambda configured in the\n`view_context_options` setting.\n\n[1] - https://github.com/hanami/view/pull/223\n[2] - https://github.com/hanami/hanami/pull/1359","shortMessageHtmlLink":"Update hanami-view extension to work with the 2.1 beta"}}],"hasNextPage":false,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAADxxNrrgA","startCursor":null,"endCursor":null}},"title":"Activity · waiting-for-dev/web_pipe"}