{"id":"src_w46U2W0-_MzuKgrjlBDLI","slug":"shopify-toxiproxy","name":"toxiproxy","type":"github","url":"https://github.com/Shopify/toxiproxy","orgId":"org_Uv0BDmmpHcUIIQibY6Lxx","org":{"slug":"shopify","name":"Shopify"},"isPrimary":false,"isHidden":true,"discovery":"on_demand","metadata":"{\"lookup\":{\"coordinate\":\"Shopify/toxiproxy\",\"fetchedAt\":\"2026-05-02T17:28:28.874Z\",\"lastRefreshedAt\":\"2026-05-02T17:28:28.874Z\",\"emptyResult\":false}}","releaseCount":32,"releasesLast30Days":0,"avgReleasesPerWeek":0,"latestVersion":"v2.12.0","latestDate":"2025-03-18T13:12:45.000Z","changelogUrl":null,"hasChangelogFile":false,"lastFetchedAt":null,"lastPolledAt":null,"trackingSince":"2015-01-07T16:33:15.000Z","releases":[{"id":"rel_E52T_BIbhK9o0wjsTXB8i","version":"v2.12.0","type":"feature","title":"v2.12.0","summary":"- Update go version to 1.23.0 (#628)\n- Do not restart proxies when using hostnames to specify listen address when updating a proxy\n  and populating a ...","content":"- Update go version to 1.23.0 (#628)\n- Do not restart proxies when using hostnames to specify listen address when updating a proxy\n  and populating a collection (#631, @robinbrandt)\n- Update various go packages\n\n","publishedAt":"2025-03-18T13:12:45.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.12.0","media":[]},{"id":"rel_xBZvm2UHI7syZtf1b8MyB","version":"v2.11.0","type":"feature","title":"v2.11.0","summary":"- Do not pin minimum patch version in module (#595, @jaimem88)\n\n","content":"- Do not pin minimum patch version in module (#595, @jaimem88)\n\n","publishedAt":"2024-10-16T19:26:12.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.11.0","media":[]},{"id":"rel_nVPFzSY_wjxH2-fGh8tT0","version":"v2.10.0","type":"feature","title":"v2.10.0","summary":"- Update various go packages\n- Update go version to 1.22.8 (#594, @abecevello)\n\n","content":"- Update various go packages\n- Update go version to 1.22.8 (#594, @abecevello)\n\n","publishedAt":"2024-10-08T17:50:37.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.10.0","media":[]},{"id":"rel_WjqJFkVv1S82RmXXuOOB-","version":"v2.9.0","type":"feature","title":"v2.9.0","summary":"- Updated go version to 1.22.1 to fix 3 CVEs (#559, @dianadevasia)\n- Updated the version of golangci to 1.56.2 and disabled depguard rule in golangci ...","content":"- Updated go version to 1.22.1 to fix 3 CVEs (#559, @dianadevasia)\n- Updated the version of golangci to 1.56.2 and disabled depguard rule in golangci (#559, @dianadevasia)\n\n","publishedAt":"2024-03-12T18:35:45.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.9.0","media":[]},{"id":"rel_R772vRKZnMhqMgORpms_A","version":"v2.8.0","type":"feature","title":"v2.8.0","summary":"* toxiproxy-cli - sortedAttributes sort by attribute.key instead attribute.value (#543, @jesseward)\n\n","content":"* toxiproxy-cli - sortedAttributes sort by attribute.key instead attribute.value (#543, @jesseward)\n\n","publishedAt":"2024-02-27T20:31:13.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.8.0","media":[]},{"id":"rel_hpnKZEz6bc_pjZsgOi9Wu","version":"v2.7.0","type":"feature","title":"v2.7.0","summary":"* Fix invalid JSON in /version endpoint response (#538, @whatyouhide)\n* Update minimum supported Go version 1.19. (@abecevello)\n\n","content":"* Fix invalid JSON in /version endpoint response (#538, @whatyouhide)\n* Update minimum supported Go version 1.19. (@abecevello)\n\n","publishedAt":"2023-10-25T15:03:55.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.7.0","media":[]},{"id":"rel_eaD06bGKU-fSuYOF2ZnNq","version":"v2.6.0","type":"feature","title":"v2.6.0","summary":"* Gracefull shutdown of HTTP server. (#439, @miry)\n* Support PATCH HTTP method for Proxy update(`PATCH /proxies/{proxy}`) and\n  Toxic update(`PATCH /p...","content":"* Gracefull shutdown of HTTP server. (#439, @miry)\n* Support PATCH HTTP method for Proxy update(`PATCH /proxies/{proxy}`) and\n  Toxic update(`PATCH /proxies/{proxy}/toxics/{toxic}`) endpoints.\n  Deprecat POST HTTP method for those endpoints. (@miry)\n* Client does not parse response body in case of errors for Populate.\n  Requires to get current proxies with new command. (#441, @miry)\n* Client specifies `User-Agent` HTTP header for all requests as\n  \"toxiproxy-cli/<version> <os>/<runtime>\".\n  Specifies client request content type as `application/json`. (#441, @miry)\n* Replace Api.Listen parameters `host` and `port` with single `addr`. (#445, @miry)\n\n","publishedAt":"2023-08-22T16:02:08.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.6.0","media":[]},{"id":"rel_MjnRWHuoqSXiGMlASn5h8","version":"v2.5.0","type":"feature","title":"v2.5.0","summary":"## Changes\r\n* Update Release steps. (#369, @neufeldtech)\r\n* Migrate off probot-CLA to new GitHub Action. (#405, @cursedcoder)\r\n* Support go 1.18, 1.19...","content":"## Changes\r\n* Update Release steps. (#369, @neufeldtech)\r\n* Migrate off probot-CLA to new GitHub Action. (#405, @cursedcoder)\r\n* Support go 1.18, 1.19. (#415, @miry)\r\n* `toxiproxy.NewProxy` now accepts `name`, `listen addr` and `upstream addr`. (#418, @miry)\r\n* Replace logrus with zerolog. (#413, @miry)\r\n* Log HTTP requests to API server. (#413, #421, @miry)\r\n* Add TimeoutHandler for the HTTP API server. (#420, @miry)\r\n* Set Write and Read timeouts for HTTP API server connections. (#423, @miry)\r\n* Show unique request id in API HTTP response. (#425, @miry)\r\n* Add method to parse `stream.Direction` from a string.\r\n  Allow converting `stream.Direction` to string. (#430, @miry)\r\n* Add the possibility to write to Output with a deadline.\r\n  On interrupting Bandwidth toxic, use non-blocking writes. (#436, @miry)\r\n* Update minimum supported Go version 1.17. (#438, @miry)\r\n\r\n## New Contributors\r\n* @waseem made their first contribution in https://github.com/Shopify/toxiproxy/pull/402\r\n* @cursedcoder made their first contribution in https://github.com/Shopify/toxiproxy/pull/405\r\n\r\n**Full Changelog**: https://github.com/Shopify/toxiproxy/compare/v2.4.0...v2.5.0\r\n\r\n## Docker images\r\n\r\n- `docker pull ghcr.io/shopify/toxiproxy:2.5.0`\r\n\r\n## Homebrew\r\n\r\n- `brew install shopify/shopify/toxiproxy`","publishedAt":"2022-09-10T12:10:32.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.5.0","media":[]},{"id":"rel_ZbcCCC1exDmXzc0BYpkiR","version":"v2.4.0","type":"feature","title":"v2.4.0","summary":"* Verify git tag on release (#347, @miry)\n* Fix MacOS 12 tests for go17 with -race flag (#351, @strech)\n* Rename `testing/` and `bin/` folders (#354, ...","content":"* Verify git tag on release (#347, @miry)\n* Fix MacOS 12 tests for go17 with -race flag (#351, @strech)\n* Rename `testing/` and `bin/` folders (#354, @strech)\n* Added verbose error on proxy upstream dialing (#355, @f-dg)\n* Improve server startup message (#358, @areveny)\n* Introduce yaml linter. (#362, @miry)\n* Handle slicer toxic with zero `SizeVariation` and fix slicing randomization (#359, @areveny)\n* Added /metrics endpoint for exposing Prometheus-compatible internal metrics (#366, @neufeldtech)\n\n\n## Docker images\n\n- `docker pull ghcr.io/shopify/toxiproxy:2.4.0`\n","publishedAt":"2022-03-07T16:23:51.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.4.0","media":[]},{"id":"rel_zUXUMMqNkv7GssFVAl-Wp","version":"v2.3.0","type":"feature","title":"v2.3.0","summary":"* Store all the executable `main` packages in `cmd` folder. (#335, @miry)\n* Extract common test helpers to own files. (#336, @miry)\n* Client: Allow HT...","content":"* Store all the executable `main` packages in `cmd` folder. (#335, @miry)\n* Extract common test helpers to own files. (#336, @miry)\n* Client: Allow HTTPS endpoints. (#338, @chen-anders)\n* client.Populate assign client to proxy. (#291, @hellodudu)\n* fix: The release-test task is always success.\n  add: Allow to run release-test on arm machines. (#340, @miry)\n* Upgrade `goreleaser`. Support `armv7` and `armv6` oses. (#339, @mitchellrj)\n* Allow to change log level for server. (#346, @miry)\n\n\n## Docker images\n\n- `docker pull ghcr.io/shopify/toxiproxy:2.3.0`\n","publishedAt":"2021-12-23T12:22:50.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.3.0","media":[]},{"id":"rel_zntUghK6KlkKIqzxWJtQz","version":"v2.2.0","type":"feature","title":"v2.2.0","summary":"* Update linux packages to use `/usr/bin` folder as binary destination and change the executable names to\n  exclude ARCH and OS names. New pathes:\n  `...","content":"* Update linux packages to use `/usr/bin` folder as binary destination and change the executable names to\n  exclude ARCH and OS names. New pathes:\n  ```\n  /usr/bin/toxiproxy-cli\n  /usr/bin/toxiproxy-server\n  ```\n  (#331, @miry)\n* A new toxic to simulate TCP RESET (Connection reset by peer) on the connections by closing\n  the stub Input immediately or after a timeout. (#247 and #333, @chaosbox)\n\n\n## Docker images\n\n- `docker pull ghcr.io/shopify/toxiproxy:2.2.0`\n","publishedAt":"2021-10-17T16:32:33.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.2.0","media":[]},{"id":"rel_cenPjE5FsZxmeT05SGFbv","version":"v2.1.7","type":"feature","title":"v2.1.7","summary":"* Set the valid version during the build process.\n  Verify the correct verion of the built binaries with `make release-dry` (#328, @miry)\n\n\n## Docker ...","content":"* Set the valid version during the build process.\n  Verify the correct verion of the built binaries with `make release-dry` (#328, @miry)\n\n\n## Docker images\n\n- `docker pull ghcr.io/shopify/toxiproxy:2.1.7`\n","publishedAt":"2021-09-23T15:00:38.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.7","media":[]},{"id":"rel_80Tir2_gIAAqSX8XPXc8f","version":"v2.1.6","type":"feature","title":"v2.1.6","summary":"* Use CHANGELOG.md for release description (#306, @miry)\n* Dependency updates in #294 introduced a breaking change in CLI argument parsing.\n  Now [fla...","content":"* Use CHANGELOG.md for release description (#306, @miry)\n* Dependency updates in #294 introduced a breaking change in CLI argument parsing.\n  Now [flags must be specified before arguments](https://github.com/urfave/cli/blob/master/docs/migrate-v1-to-v2.md#flags-before-args).\n  Previously, arguments could be specified prior to flags.\n  Update usage help text and documentation. (#308, @miry)\n* Run e2e tests to validate the command line and basic features of server,\n  client and application (#309, @miry)\n* Add /v2 suffix to module import path (#311, @dnwe)\n* Setup automated checking source code for security vulnerabilities (#312, @miry)\n* Setup code linter (#314, @miry)\n  * Max line length is 100 characters (#316, @miry)\n  * Linter to check whether HTTP response body is closed successfully (#317, @miry)\n  * Make sure the function are not big (#318, @miry)\n    * Extract client flags specs to seprate methods.\n      Introduce a new way to manage toxics with `ToxicOptions` sturcture (#321, @miry)\n    * Split `Proxy.server` to multiple small (#322, @miry)\n    * Extract initializetion of fake upstream server to test helper (#323, @miry)\n    * Support a list of well knonwn linters (#326, @miry)\n* `--host` flag uses `TOXIPROXY_URL` if it is set (#319, @maaslalani)\n* Run benchmarks in CI/CD (#320, @miry)\n* Use scratch docker base image instead of alpine (#325, @miry)\n\n\n## Docker images\n\n- `docker pull ghcr.io/shopify/toxiproxy:2.1.6`\n","publishedAt":"2021-09-23T12:35:53.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.6","media":[]},{"id":"rel_iXQAxS18WP1P-t7IIKyNQ","version":"v2.1.5","type":"feature","title":"v2.1.5","summary":"## Changelog\r\n\r\n* Move to Go Modules from godeps (#253, @epk)\r\n* Update the example in `client/README.md` (#251, @nothinux)\r\n* Update TOC in `README.m...","content":"## Changelog\r\n\r\n* Move to Go Modules from godeps (#253, @epk)\r\n* Update the example in `client/README.md` (#251, @nothinux)\r\n* Update TOC in `README.md` (4ca1eddddfcd0c50c8f6dfb97089bb68e6310fd9, @dwradcliffe)\r\n* Add an example of `config.json` file to `README.md` (#260, @JesseEstum)\r\n* Add Link to Elixir Client (#287, @Jcambass)\r\n* Add Rust client link (#293, @itarato)\r\n* Renovations: formatting code, update dependicies, make govet/staticcheck pass (#294, @dnwe)\r\n* Remove `openssl` from `dev.yml` to use `dev` tool (#298, @pedro-stanaka)\r\n* Update `go` versions in development (#299, @miry)\r\n* Mention `MacPorts` in `README.md` (#290, @amake)\r\n* Fix some typos in `README.md` and `CHANGELOG.md` (#222, @jwilk)\r\n* Replace TravisCI with Github Actions to run tests (#303, @miry)\r\n* Build and release binaries with `goreleaser`. Support `arm64` and BSD oses. (#301, @miry)\r\n* Automate release with Github actions (#304, @miry)\r\n\r\n### Commits\r\n\r\neb81bfd Add Elixir Client to Readme\r\nf1070b0 Add Rust client link.\r\n18165c8 Add example config.json file to README.md\r\n653f495 Automate release with Github actions (#302)\r\n8029ed1 Create releases with goreleaser (#301)\r\n916f03a Fix typos\r\nd26384f Fixing dev.yml to allow running dev up\r\n5321df3 Mention MacPorts in readme\r\n8474b0e Merge branch 'master' into add_toxiproxy_elixir\r\nb0ba1c8 Merge pull request #1 from Shopify/master\r\n07d7b63 Merge pull request #241 from Shopify/v2.1.4\r\n10f0561 Merge pull request #251 from nothinux/master\r\n0ba0d2b Merge pull request #253 from Shopify/updates\r\ncfe8289 Merge pull request #260 from JesseEstum/example_config\r\nc262ed0 Merge pull request #287 from Jcambass/add_toxiproxy_elixir\r\n115744c Merge pull request #293 from Shopify/feature/PA-Add-rust-client\r\n335da76 Merge pull request #294 from dnwe/dnwe/renovations\r\n769a33c Merge pull request #297 from Shopify/update-bundler-2.2.22-1\r\n047ab7f Merge pull request #298 from Shopify/dev-compat\r\n9134ef6 Move to go modules\r\n758c1e5 Release 2.1.5 (#305)\r\n0653399 Run tests for master and pull requests (#303)\r\n5e860e5 Support solaris platform (#304)\r\n517a128 Update build badge to Travis CI\r\n9e1d709 Update bundler to 2.2.22\r\n82715a0 Upgrade Golang and Ruby versions (#299)\r\nfebff58 chore: fix some minor govet/staticheck failures\r\nad7d9e2 chore: gofmt -s -w\r\nf135051 chore: renovate dependencies\r\n4ca1edd fix TOC in readme\r\n5bb6b89 update docs\r\n\r\n\r\n## Docker images\r\n\r\n- `docker pull ghcr.io/shopify/toxiproxy:2.1.5`\r\n","publishedAt":"2021-09-01T16:00:02.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.5","media":[]},{"id":"rel_oQY_F3RxncQRaC7Nmhk83","version":"v2.1.5-pre","type":"feature","title":"v2.1.5-pre","summary":"## Changelog\r\n\r\n* Move to Go Modules from godeps (#253, @epk)\r\n* Update the example in `client/README.md` (#251, @nothinux)\r\n* Update TOC in `README.m...","content":"## Changelog\r\n\r\n* Move to Go Modules from godeps (#253, @epk)\r\n* Update the example in `client/README.md` (#251, @nothinux)\r\n* Update TOC in `README.md` (4ca1eddddfcd0c50c8f6dfb97089bb68e6310fd9, @dwradcliffe)\r\n* Add an example of `config.json` file to `README.md` (#260, @JesseEstum)\r\n* Add Link to Elixir Client (#287, @Jcambass)\r\n* Add Rust client link (#293, @itarato)\r\n* Renovations: formatting code, update dependicies, make govet/staticcheck pass (#294, @dnwe)\r\n* Remove `openssl` from `dev.yml` to use `dev` tool (#298, @pedro-stanaka)\r\n* Update `go` versions in development (#299, @miry)\r\n* Mention `MacPorts` in `README.md` (#290, @amake)\r\n* Fix some typos in `README.md` and `CHANGELOG.md` (#222, @jwilk)\r\n* Replace TravisCI with Github Actions to run tests (#303, @miry)\r\n* Build and release binaries with `goreleaser`. Support `arm64` and BSD oses. (#301, @miry)\r\n* Automate release with Github actions (#304, @miry)\r\n\r\n### Commits\r\n\r\neb81bfd Add Elixir Client to Readme\r\nf1070b0 Add Rust client link.\r\n18165c8 Add example config.json file to README.md\r\n653f495 Automate release with Github actions (#302)\r\n8029ed1 Create releases with goreleaser (#301)\r\n916f03a Fix typos\r\nd26384f Fixing dev.yml to allow running dev up\r\n5321df3 Mention MacPorts in readme\r\n8474b0e Merge branch 'master' into add_toxiproxy_elixir\r\nb0ba1c8 Merge pull request #1 from Shopify/master\r\n07d7b63 Merge pull request #241 from Shopify/v2.1.4\r\n10f0561 Merge pull request #251 from nothinux/master\r\n0ba0d2b Merge pull request #253 from Shopify/updates\r\ncfe8289 Merge pull request #260 from JesseEstum/example_config\r\nc262ed0 Merge pull request #287 from Jcambass/add_toxiproxy_elixir\r\n115744c Merge pull request #293 from Shopify/feature/PA-Add-rust-client\r\n335da76 Merge pull request #294 from dnwe/dnwe/renovations\r\n769a33c Merge pull request #297 from Shopify/update-bundler-2.2.22-1\r\n047ab7f Merge pull request #298 from Shopify/dev-compat\r\n9134ef6 Move to go modules\r\n57dea59 Release 2.1.5 (#305)\r\n0653399 Run tests for master and pull requests (#303)\r\n5e860e5 Support solaris platform (#304)\r\n517a128 Update build badge to Travis CI\r\n9e1d709 Update bundler to 2.2.22\r\n82715a0 Upgrade Golang and Ruby versions (#299)\r\nfebff58 chore: fix some minor govet/staticheck failures\r\nad7d9e2 chore: gofmt -s -w\r\nf135051 chore: renovate dependencies\r\n4ca1edd fix TOC in readme\r\n5bb6b89 update docs\r\n\r\n\r\n## Docker images\r\n\r\n- `docker pull ghcr.io/shopify/toxiproxy:2.1.5-pre`\r\n\r\n[2.1.5]: https://github.com/Shopify/toxiproxy/compare/v2.1.4...v2.1.5","publishedAt":"2021-09-01T11:15:45.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.5-pre","media":[]},{"id":"rel_Tty1kDQIPGd3yCtbkw5eg","version":"v2.1.4","type":"feature","title":"v2.1.4","summary":"- Bug fix: Fix OOM with #232\r\n- Documentation updates.\r\n- CI and testing updates.","content":"- Bug fix: Fix OOM with #232\r\n- Documentation updates.\r\n- CI and testing updates.","publishedAt":"2019-01-22T15:27:12.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.4","media":[]},{"id":"rel_54sA2O8zbB_jSE42WqkDR","version":"v2.1.3","type":"feature","title":"v2.1.3","summary":"# 2.1.3\r\n\r\n* Update `/version` endpoint to also return a charset of utf-8. #204\r\n* Bug fix: Double http concatination. #191\r\n* Update cli examples to ...","content":"# 2.1.3\r\n\r\n* Update `/version` endpoint to also return a charset of utf-8. #204\r\n* Bug fix: Double http concatination. #191\r\n* Update cli examples to be more accurate. #187\r\n\r\nAlso updated docker hub for the first time in a while!!","publishedAt":"2018-03-05T23:45:13.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.3","media":[]},{"id":"rel_c7ZEL4SMxbN9p2Wp-_AX7","version":"v2.1.2","type":"feature","title":"v2.1.2","summary":" * go 1.8, make Sirupsen lower case, update godeps (issue #179)\r\n* Handle SIGTERM to exit cleanly (issue #180)\r\n* Address security issue by disallowin...","content":" * go 1.8, make Sirupsen lower case, update godeps (issue #179)\r\n* Handle SIGTERM to exit cleanly (issue #180)\r\n* Address security issue by disallowing browsers from accessing API","publishedAt":"2017-07-10T13:42:37.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.2","media":[]},{"id":"rel_hfFMlGf_tUsMizqO7JfIe","version":"v2.1.2rc1","type":"feature","title":"v2.1.2rc1","summary":"**This is a test release, do not use in production**\r\n\r\n * go 1.8, make Sirupsen lower case, update godeps (issue #179)\r\n* Handle SIGTERM to exit clea...","content":"**This is a test release, do not use in production**\r\n\r\n * go 1.8, make Sirupsen lower case, update godeps (issue #179)\r\n* Handle SIGTERM to exit cleanly (issue #180)\r\n* Address security issue by disallowing browsers from accessing API","publishedAt":"2017-06-29T17:47:23.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.2rc1","media":[]},{"id":"rel_fDclHem7c7y7UwmCzJbKZ","version":"v2.1.1","type":"feature","title":"v2.1.1","summary":"Fixes timeout hang bug from issue #159.","content":"Fixes timeout hang bug from issue #159.","publishedAt":"2017-05-16T17:30:44.000Z","url":"https://github.com/Shopify/toxiproxy/releases/tag/v2.1.1","media":[]}],"pagination":{"page":1,"pageSize":20,"totalPages":2,"totalItems":32},"summaries":{"rolling":null,"monthly":[]}}