{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":62256097,"defaultBranch":"develop","name":"Ocelot","ownerLogin":"ThreeMammals","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2016-06-29T20:35:24.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/25903473?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716804348.0","currentOid":""},"activityList":{"items":[{"before":"34cb3ebf9768ac8cd8d2c75139da2123e23fdba4","after":"cc8f5c5dfc7c56e4446a2e80d97391429c8b364d","ref":"refs/heads/develop","pushedAt":"2024-05-28T13:11:43.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Ocelot NuGet package README file (#2074)\n\n* Add Ocelot.csproj README.md link\r\n\r\n* Code review\r\n\r\n---------\r\n\r\nCo-authored-by: Raman Maksimchuk ","shortMessageHtmlLink":"Ocelot NuGet package README file (#2074)"}},{"before":"7bb76e363279cc0ec3eef157759f45fd252921c1","after":null,"ref":"refs/heads/raman-m/954","pushedAt":"2024-05-27T10:05:48.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"}},{"before":"573a9d98e3eb730a53a555d881df15de9017b43d","after":"34cb3ebf9768ac8cd8d2c75139da2123e23fdba4","ref":"refs/heads/develop","pushedAt":"2024-05-27T10:03:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"#954 #957 #1026 Customize Consul services creation in `Consul` service discovery provider (#2067)\n\n* Interfaces folder and namespace\r\n\r\n* `IConsulServiceBuilder` interface vs `ConsulServiceBuilder` class\r\n\r\n* Inject services into `ConsulServiceBuilder`\r\n\r\n* Extend `IConsulServiceBuilder` interface\r\n\r\n* Finalize design of the customization.\r\nNo JSON options because `ServiceDiscoveryProvider` are generalized for all types of providers\r\n\r\n* Remove BDDfy in favor of AAA pattern\r\n\r\n* Refactor original unit tests\r\n\r\n* Rename to `DefaultConsulServiceBuilder`\r\n\r\n* Update src/Ocelot.Provider.Consul/DefaultConsulServiceBuilder.cs\r\n\r\nUpdate `IsValid(ServiceEntry entry)`\r\n\r\nCo-authored-by: Raynald Messié \r\n\r\n* Code review by @RaynaldM\r\n\r\n* Read the node instance from `ServiceEntry`.\r\nIf it is null, search for a node in the common collection.\r\n\r\n* Refactor `OcelotBuilderExtensionsTests`\r\n\r\n* The generic `AddConsul(IOcelotBuilder)` method\r\n\r\n* Rename to `ConsulTests`\r\n\r\n* Unit tests: 100% coverage\r\n\r\n* Move to `ServiceDiscovery` folder\r\n\r\n* DRY: GivenServiceEntry, GivenRoute\r\n\r\n* Convert to file-scoped namespace\r\n\r\n* Inherit from `Steps`\r\n\r\n* Refactor acceptance tests\r\n\r\n* Acceptance test for #954 user scenario\r\n\r\n* Move \"Store Configuration in Consul\" to \"Service Discovery\"\r\n\r\n* Feature docs\r\n\r\n---------\r\n\r\nCo-authored-by: Raynald Messié ","shortMessageHtmlLink":"#954 #957 #1026 Customize Consul services creation in Consul servic…"}},{"before":"8073a9947c66eb32623b53d8e859c031ac1235b2","after":"7bb76e363279cc0ec3eef157759f45fd252921c1","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-25T18:13:09.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Feature docs","shortMessageHtmlLink":"Feature docs"}},{"before":"0666accb9363f6ea2d2dd07cd9bde57429e88503","after":"8073a9947c66eb32623b53d8e859c031ac1235b2","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-25T15:38:57.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Move \"Store Configuration in Consul\" to \"Service Discovery\"","shortMessageHtmlLink":"Move \"Store Configuration in Consul\" to \"Service Discovery\""}},{"before":"8dcaf7433a90d14d6eb16ef5404ed24e1e5d406d","after":"0666accb9363f6ea2d2dd07cd9bde57429e88503","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-25T15:35:30.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Review SD docs.\nMove \"Store Configuration in Consul\" to \"Service Discovery\"","shortMessageHtmlLink":"Review SD docs."}},{"before":"aa292fa2394d6ad46b5f6622854708bee7041d77","after":"8dcaf7433a90d14d6eb16ef5404ed24e1e5d406d","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-24T17:35:58.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Acceptance test for #954 user scenario","shortMessageHtmlLink":"Acceptance test for #954 user scenario"}},{"before":"8bd99eb6a5b32b52421d0e4adda6eeb21161fb74","after":"aa292fa2394d6ad46b5f6622854708bee7041d77","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-23T18:25:09.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Refactor acceptance tests","shortMessageHtmlLink":"Refactor acceptance tests"}},{"before":"6e9a975fae3b26229c3f0b3c1a475a7b05e95fee","after":"573a9d98e3eb730a53a555d881df15de9017b43d","ref":"refs/heads/develop","pushedAt":"2024-05-23T18:03:46.000Z","pushType":"push","commitsCount":3,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"#738 #1990 Route Metadata as custom properties (#1843)\n\n* feat(configuration): adding route metadata\n\n* feat(configuration): update docs\n\n* feat(configuration): replace Dictionary<> by IDictionary<>, code cleaning\n\n* feat(configuration): replace Dictionary<> by IDictionary<>\n\n* feat(configuration): replace Dictionary<> by IDictionary<>\n\n* feat(configuration): update the data type of FileDynamicRoute Metadata\n\n* formatting\n\n* feat(configuration): fix integration tests\n\n* feat !1843 add extension methods for DownstreamRoute to get metadata\n\n* feat !1843 add extension methods for DownstreamRoute\n\n* feat !1843 update docs\n\n* feat !1843 update docs\n\n* feat !1843 cleanup split string logic\n\n* SA1505: An opening brace should not be followed by a blank line\n\n* IDE1006: Naming rule violation: These words must begin with upper case characters: should_xxx\n\n* Fix compile errors after rebasing\n\n* Fix unit tests + AAA pattern\n\n* First Version, providing a generic extension method GetMetadata with global configuration\n\n* Adding ConvertToNumericType method to be able to use the NumberStyles enum\n\n* adding first acceptance tests\n\n* The tests are now passing again...\n\n* adding latest test cases. That should be enough (includes global configuration changes too)\n\n* Update metadata.rst\n\n* adding the xml docs for IMetadataCreator and MetadataCreator\n\n* renaming MetadataCreator to DefaultMetadataCreator\n\n* number tests for .net 6 too\n\n* Moving Metadata specific downstream route extensions to the Metadata folder\n\n* cleanup\n\n* applying some of the requested changes\n\n* Final code review by @raman-m\n\n* Add traits\n\n* Fix docs build error\n\n---------\n\nCo-authored-by: Raman Maksimchuk \nCo-authored-by: Guillaume Gnaegi <58469901+ggnaegi@users.noreply.github.com>","shortMessageHtmlLink":"#738 #1990 Route Metadata as custom properties (#1843)"}},{"before":"140f9b5ca07689943a46858f3394065094987634","after":"4f7b46dcd397bf8b869a3eb532a45182eaa2941a","ref":"refs/heads/release/24.0","pushedAt":"2024-05-21T20:06:21.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ggnaegi","name":"Guillaume Gnaegi","path":"/ggnaegi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/58469901?s=80&v=4"},"commit":{"message":"#738 #1990 Route Metadata as custom properties (#1843)\n\n* feat(configuration): adding route metadata\r\n\r\n* feat(configuration): update docs\r\n\r\n* feat(configuration): replace Dictionary<> by IDictionary<>, code cleaning\r\n\r\n* feat(configuration): replace Dictionary<> by IDictionary<>\r\n\r\n* feat(configuration): replace Dictionary<> by IDictionary<>\r\n\r\n* feat(configuration): update the data type of FileDynamicRoute Metadata\r\n\r\n* formatting\r\n\r\n* feat(configuration): fix integration tests\r\n\r\n* feat !1843 add extension methods for DownstreamRoute to get metadata\r\n\r\n* feat !1843 add extension methods for DownstreamRoute\r\n\r\n* feat !1843 update docs\r\n\r\n* feat !1843 update docs\r\n\r\n* feat !1843 cleanup split string logic\r\n\r\n* SA1505: An opening brace should not be followed by a blank line\r\n\r\n* IDE1006: Naming rule violation: These words must begin with upper case characters: should_xxx\r\n\r\n* Fix compile errors after rebasing\r\n\r\n* Fix unit tests + AAA pattern\r\n\r\n* First Version, providing a generic extension method GetMetadata with global configuration\r\n\r\n* Adding ConvertToNumericType method to be able to use the NumberStyles enum\r\n\r\n* adding first acceptance tests\r\n\r\n* The tests are now passing again...\r\n\r\n* adding latest test cases. That should be enough (includes global configuration changes too)\r\n\r\n* Update metadata.rst\r\n\r\n* adding the xml docs for IMetadataCreator and MetadataCreator\r\n\r\n* renaming MetadataCreator to DefaultMetadataCreator\r\n\r\n* number tests for .net 6 too\r\n\r\n* Moving Metadata specific downstream route extensions to the Metadata folder\r\n\r\n* cleanup\r\n\r\n* applying some of the requested changes\r\n\r\n* Final code review by @raman-m\r\n\r\n* Add traits\r\n\r\n* Fix docs build error\r\n\r\n---------\r\n\r\nCo-authored-by: Raman Maksimchuk \r\nCo-authored-by: Guillaume Gnaegi <58469901+ggnaegi@users.noreply.github.com>","shortMessageHtmlLink":"#738 #1990 Route Metadata as custom properties (#1843)"}},{"before":"c5de8a56a3872f21aa5a5d5b21ae6cf739ffdba3","after":"8bd99eb6a5b32b52421d0e4adda6eeb21161fb74","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-21T15:37:30.000Z","pushType":"push","commitsCount":5,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Refactor acceptance tests","shortMessageHtmlLink":"Refactor acceptance tests"}},{"before":"414d8dc3085d32028e4b9aebeee6c74845cb5d74","after":"c5de8a56a3872f21aa5a5d5b21ae6cf739ffdba3","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-18T18:40:19.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Unit tests: 100% coverage","shortMessageHtmlLink":"Unit tests: 100% coverage"}},{"before":"04351656865e8fe694fdcc621f776e1f376aaefa","after":"414d8dc3085d32028e4b9aebeee6c74845cb5d74","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-18T11:05:35.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"The generic `AddConsul(IOcelotBuilder)` method","shortMessageHtmlLink":"The generic AddConsul<TServiceBuilder>(IOcelotBuilder) method"}},{"before":"347503a52ca665ed66c27af809bfc5a65f79e2ac","after":"04351656865e8fe694fdcc621f776e1f376aaefa","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-17T13:23:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Read the node instance from `ServiceEntry`.\nIf it is null, search for a node in the common collection.","shortMessageHtmlLink":"Read the node instance from ServiceEntry."}},{"before":"18f44b9e8db8b4559affc615cf0341b538f9d605","after":"347503a52ca665ed66c27af809bfc5a65f79e2ac","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-17T12:58:14.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Code review by @RaynaldM","shortMessageHtmlLink":"Code review by @RaynaldM"}},{"before":"da741b4931d881a9224a6ce2936e157ab961a150","after":"18f44b9e8db8b4559affc615cf0341b538f9d605","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-17T12:44:47.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Update src/Ocelot.Provider.Consul/DefaultConsulServiceBuilder.cs\r\n\r\nUpdate `IsValid(ServiceEntry entry)`\n\nCo-authored-by: Raynald Messié ","shortMessageHtmlLink":"Update src/Ocelot.Provider.Consul/DefaultConsulServiceBuilder.cs"}},{"before":"acb7f3b8ba67686c1a6daae31dac8bedba622e16","after":"da741b4931d881a9224a6ce2936e157ab961a150","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-16T15:48:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Rename to `DefaultConsulServiceBuilder`","shortMessageHtmlLink":"Rename to DefaultConsulServiceBuilder"}},{"before":"9389501db7c900c01c4d526c50251ef44e8575fb","after":"acb7f3b8ba67686c1a6daae31dac8bedba622e16","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-15T17:36:48.000Z","pushType":"push","commitsCount":2,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Refactor original unit tests","shortMessageHtmlLink":"Refactor original unit tests"}},{"before":"36479c9191549f8c2a75ecb1457a0e33d00ad34b","after":"9389501db7c900c01c4d526c50251ef44e8575fb","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-15T13:08:35.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Finalize design of the customization.\nNo JSON options because `ServiceDiscoveryProvider` are generalized for all types of providers","shortMessageHtmlLink":"Finalize design of the customization."}},{"before":"d959e88e2841c971d278e22cc6aa8747424e0bf6","after":"36479c9191549f8c2a75ecb1457a0e33d00ad34b","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-15T12:40:07.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Extend `IConsulServiceBuilder` interface","shortMessageHtmlLink":"Extend IConsulServiceBuilder interface"}},{"before":null,"after":"d959e88e2841c971d278e22cc6aa8747424e0bf6","ref":"refs/heads/raman-m/954","pushedAt":"2024-05-14T10:05:46.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"Inject services into `ConsulServiceBuilder`","shortMessageHtmlLink":"Inject services into ConsulServiceBuilder"}},{"before":"0320a8076d949e6f6090ce7f4e7ef87da5149757","after":null,"ref":"refs/heads/feature/issue-#737-pluggable-route-variables","pushedAt":"2024-05-14T08:48:18.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"}},{"before":"aef3e6b9f53ad8c8aa8c9ade92a572f60d0672a1","after":"6e9a975fae3b26229c3f0b3c1a475a7b05e95fee","ref":"refs/heads/develop","pushedAt":"2024-05-13T19:03:44.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"ggnaegi","name":"Guillaume Gnaegi","path":"/ggnaegi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/58469901?s=80&v=4"},"commit":{"message":"#2054 #2059 Manage `EnableContentHashing` setting by global `CacheOptions` (#2058)\n\n* EnableContentHashing not being considered from appsettings\r\n\r\n* Adding CacheOptionsCreator, Injected IRegionCreator as Singleton. Should still add some acceptance tests that are definitely missing!\r\n\r\n* Adding caching global configuration since we messed up, ignoring an important breaking change with EnableContentHashing set to false by default\r\n\r\n* Adding some further acceptance tests, validating EnableContentHashing, validating global config too.\r\n\r\n* removing some debug content\r\n\r\n* TtlSeconds must be set\r\n\r\n* updating documentation\r\n\r\n* Update docs/features/caching.rst\r\n\r\nCo-authored-by: Raman Maksimchuk \r\n\r\n* Update docs/features/caching.rst\r\n\r\nCo-authored-by: Raman Maksimchuk \r\n\r\n* Removing RegionCreator, moving service collection extension method to dependencyInjection\\Features etc.\r\n\r\n* adding unit tests for FileCacheOptions\r\n\r\n* some more null tests...\r\n\r\n* slight refactoring, updating ICacheOptionsCreator signature\r\n\r\n* some more design refactoring\r\n\r\n* Update src/Ocelot/Configuration/Creator/CacheOptionsCreator.cs\r\n\r\nCo-authored-by: Raman Maksimchuk \r\n\r\n* Code review by @raman-m\r\n\r\n* Rename `FileCacheOptions` -> `CacheOptions`\r\n\r\n* Subtly transition to `CacheOptions`, ensuring compatibility with `FileCacheOptions` to avoid a breaking change\r\n\r\n* Not obsolete\r\n\r\n---------\r\n\r\nCo-authored-by: Guillaume Gnaegi <58469901+ggnaegi@users.noreply.github.com>\r\nCo-authored-by: Raman Maksimchuk ","shortMessageHtmlLink":"#2054 #2059 Manage EnableContentHashing setting by global `CacheOpt…"}},{"before":"0b247afdf0c9cba7fd37f603102d151dc7e74487","after":"aef3e6b9f53ad8c8aa8c9ade92a572f60d0672a1","ref":"refs/heads/develop","pushedAt":"2024-05-07T11:09:19.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"#1590 Use correct interval for request counting (#1592)\n\n* Use correct interval for request counting\r\n\r\n* Minor fixes, return correct counter value when ban period elapsed\r\n\r\n* Revert \"Use correct interval for request counting\"\r\n\r\nThis reverts commit 7d232c7042f789d5ea32834f8c33d1adfb92ec24.\r\n\r\n* Revert \"Artificial commit, initiate CI\"\r\n\r\nThis reverts commit e723dfac839f78961eb4ce0068c36eb0ab52e30c.\r\n\r\n* CA1822 Member 'XYZ' does not access instance data and can be marked as static\r\n\r\n* Quick code review by @raman-m\r\n\r\n* Rate Limiting feature name should match folder name\r\n\r\n* namespace `Ocelot.RateLimiting`\r\n\r\n* Extract `IRateLimitCore` interface\r\n\r\n* Remove useless `ClientRateLimitProcessor` class\r\n\r\n* Rename to `IRateLimitStorage` and dev docs\r\n\r\n* Wrap services as a feature\r\n\r\n* Review `IRateLimitCore` interface and dev docs\r\n\r\n* The middleware class prefix should match the feature name\r\n\r\n* Add some basic `RateLimitCoreTests`\r\n\r\n* Rename to `IRateLimiting`\r\n\r\n* Refactor rate limiting core\r\n\r\n* Remove redundant `SaveCounter` from the interface\r\n\r\n* Thread safe storage operations\r\n\r\n* Coalesce in return statement\r\n\r\n* Convert to file-scoped namespace\r\n\r\n* Use expression body\r\n\r\n* Unit tests for #1590 user scenario\r\n\r\n* Move test class to separate feature folder\r\n\r\n* Inherit from `Steps`\r\n\r\n* Refactoring: Follow the DRY principle\r\n\r\n* Acceptance test for #1590 user scenario\r\n\r\n* Update feature docs\r\n\r\n---------\r\n\r\nCo-authored-by: raman-m ","shortMessageHtmlLink":"#1590 Use correct interval for request counting (#1592)"}},{"before":"991d7badbe329b5c4c8d60024b1c7bfb547fb90f","after":null,"ref":"refs/heads/feat/route-metadata","pushedAt":"2024-05-03T11:38:44.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ggnaegi","name":"Guillaume Gnaegi","path":"/ggnaegi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/58469901?s=80&v=4"}},{"before":"991d7badbe329b5c4c8d60024b1c7bfb547fb90f","after":null,"ref":"refs/heads/pr/1843","pushedAt":"2024-05-03T11:38:21.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"ggnaegi","name":"Guillaume Gnaegi","path":"/ggnaegi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/58469901?s=80&v=4"}},{"before":null,"after":"991d7badbe329b5c4c8d60024b1c7bfb547fb90f","ref":"refs/heads/feat/route-metadata","pushedAt":"2024-05-03T11:37:21.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ggnaegi","name":"Guillaume Gnaegi","path":"/ggnaegi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/58469901?s=80&v=4"},"commit":{"message":"Update metadata.rst","shortMessageHtmlLink":"Update metadata.rst"}},{"before":null,"after":"991d7badbe329b5c4c8d60024b1c7bfb547fb90f","ref":"refs/heads/pr/1843","pushedAt":"2024-05-03T11:34:28.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"ggnaegi","name":"Guillaume Gnaegi","path":"/ggnaegi","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/58469901?s=80&v=4"},"commit":{"message":"Update metadata.rst","shortMessageHtmlLink":"Update metadata.rst"}},{"before":"bc0fe7cacf501bfb93eed65aee135b3d76773752","after":null,"ref":"refs/heads/raman-m/1967","pushedAt":"2024-04-26T15:39:30.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"}},{"before":"233f87a43f5e2fbb1857f17bb6181fbd05de03bc","after":"0b247afdf0c9cba7fd37f603102d151dc7e74487","ref":"refs/heads/develop","pushedAt":"2024-04-26T15:38:54.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"raman-m","name":"Raman Maksimchuk","path":"/raman-m","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/10501504?s=80&v=4"},"commit":{"message":"#1967 Customize K8s services creation in `Kube` service discovery provider (#2052)\n\n* Initial refactoring\r\n\r\n* Interfaces namespace\r\n\r\n* `IKubeServiceBuilder` interface vs `KubeServiceBuilder` class\r\n\r\n* `IKubeServiceCreator` interface vs `KubeServiceCreator` class\r\n\r\n* Customize K8s services creation\r\n\r\n* Add logger\r\n\r\n* namespace Ocelot.AcceptanceTests.ServiceDiscovery\r\n\r\n* Add `KubernetesServiceDiscoveryTests`\r\n\r\n* Unit tests\r\n\r\n* AAA pattern\r\n\r\n* Acceptance tests\r\n\r\n* Update kubernetes.rst\r\n\r\n* Check docs","shortMessageHtmlLink":"#1967 Customize K8s services creation in Kube service discovery pro…"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEVd9KrQA","startCursor":null,"endCursor":null}},"title":"Activity · ThreeMammals/Ocelot"}