Abhinav Singh
009935b29b
v2.4.0rc3 ( #882 )
...
* Merge pull request #840 from abhinavsingh/release-schedule-notes
Add release schedule under FAQ
* Green CI (#841 )
* Cleanup parser & url classes (#843 )
* Optimize parser logic
* Add `is_complete` property
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* pre commit fixes
* We need `ValueError`
* wuff
* useless
* flake8
* Simplify url
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* pip prod(deps): bump twine from 3.6.0 to 3.7.0 (#845 )
Bumps [twine](https://github.com/pypa/twine ) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/pypa/twine/releases )
- [Changelog](https://github.com/pypa/twine/blob/main/docs/changelog.rst )
- [Commits](https://github.com/pypa/twine/compare/3.6.0...3.7.0 )
---
updated-dependencies:
- dependency-name: twine
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* npm: bump jasmine from 3.6.3 to 3.10.0 in /dashboard (#844 )
Bumps [jasmine](https://github.com/jasmine/jasmine-npm ) from 3.6.3 to 3.10.0.
- [Release notes](https://github.com/jasmine/jasmine-npm/releases )
- [Commits](https://github.com/jasmine/jasmine-npm/compare/v3.6.3...v3.10.0 )
---
updated-dependencies:
- dependency-name: jasmine
dependency-type: direct:development
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* npm: bump chrome-devtools-frontend in /dashboard (#846 )
Bumps [chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend ) from 1.0.944903 to 1.0.947377.
- [Release notes](https://github.com/ChromeDevTools/devtools-frontend/releases )
- [Changelog](https://github.com/ChromeDevTools/devtools-frontend/blob/main/docs/release_management.md )
- [Commits](https://github.com/ChromeDevTools/devtools-frontend/commits )
---
updated-dependencies:
- dependency-name: chrome-devtools-frontend
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* pip prod(deps): bump coverage from 6.1.2 to 6.2 (#847 )
Bumps [coverage](https://github.com/nedbat/coveragepy ) from 6.1.2 to 6.2.
- [Release notes](https://github.com/nedbat/coveragepy/releases )
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst )
- [Commits](https://github.com/nedbat/coveragepy/compare/6.1.2...6.2 )
---
updated-dependencies:
- dependency-name: coverage
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* Fix GHA check-gate to properly identify failures (#849 )
* pip prod(deps): bump pylint from 2.12.1 to 2.12.2 (#851 )
Bumps [pylint](https://github.com/PyCQA/pylint ) from 2.12.1 to 2.12.2.
- [Release notes](https://github.com/PyCQA/pylint/releases )
- [Changelog](https://github.com/PyCQA/pylint/blob/main/ChangeLog )
- [Commits](https://github.com/PyCQA/pylint/compare/v2.12.1...v2.12.2 )
---
updated-dependencies:
- dependency-name: pylint
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* npm: bump @types/js-cookie from 2.2.6 to 3.0.1 in /dashboard (#850 )
Bumps [@types/js-cookie](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/js-cookie ) from 2.2.6 to 3.0.1.
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/js-cookie )
---
updated-dependencies:
- dependency-name: "@types/js-cookie"
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* pip prod(deps): bump sphinx from 4.3.0 to 4.3.1 (#853 )
Bumps [sphinx](https://github.com/sphinx-doc/sphinx ) from 4.3.0 to 4.3.1.
- [Release notes](https://github.com/sphinx-doc/sphinx/releases )
- [Changelog](https://github.com/sphinx-doc/sphinx/blob/4.x/CHANGES )
- [Commits](https://github.com/sphinx-doc/sphinx/compare/v4.3.0...v4.3.1 )
---
updated-dependencies:
- dependency-name: sphinx
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* pip prod(deps): bump paramiko from 2.8.0 to 2.8.1 (#855 )
* npm: bump ws from 7.4.6 to 8.3.0 in /dashboard (#854 )
* pip prod(deps): bump uvicorn from 0.15.0 to 0.16.0 (#857 )
Bumps [uvicorn](https://github.com/encode/uvicorn ) from 0.15.0 to 0.16.0.
- [Release notes](https://github.com/encode/uvicorn/releases )
- [Changelog](https://github.com/encode/uvicorn/blob/master/CHANGELOG.md )
- [Commits](https://github.com/encode/uvicorn/compare/0.15.0...0.16.0 )
---
updated-dependencies:
- dependency-name: uvicorn
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* npm: bump chrome-devtools-frontend in /dashboard (#856 )
Bumps [chrome-devtools-frontend](https://github.com/ChromeDevTools/devtools-frontend ) from 1.0.947377 to 1.0.949424.
- [Release notes](https://github.com/ChromeDevTools/devtools-frontend/releases )
- [Changelog](https://github.com/ChromeDevTools/devtools-frontend/blob/main/docs/release_management.md )
- [Commits](https://github.com/ChromeDevTools/devtools-frontend/commits )
---
updated-dependencies:
- dependency-name: chrome-devtools-frontend
dependency-type: direct:development
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* Process `--enable-*` flags before loading plugins (#860 )
* Process `--enable-*` flags before loading plugins
* Fix spelling
* Ignore RST299 and RST499
* npm: bump http-server from 0.12.3 to 14.0.0 in /dashboard (#858 )
Bumps [http-server](https://github.com/http-party/http-server ) from 0.12.3 to 14.0.0.
- [Release notes](https://github.com/http-party/http-server/releases )
- [Commits](https://github.com/http-party/http-server/compare/v0.12.3...v14.0.0 )
---
updated-dependencies:
- dependency-name: http-server
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* pip prod(deps): bump furo from 2021.11.15 to 2021.11.23 (#859 )
Bumps [furo](https://github.com/pradyunsg/furo ) from 2021.11.15 to 2021.11.23.
- [Release notes](https://github.com/pradyunsg/furo/releases )
- [Changelog](https://github.com/pradyunsg/furo/blob/main/docs/changelog.md )
- [Commits](https://github.com/pradyunsg/furo/compare/2021.11.15...2021.11.23 )
---
updated-dependencies:
- dependency-name: furo
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* Update web log context fields to match proxy log context fields (#861 )
* Update web log context fields to match those with proxy log context for consistency
* Fix spell
* Fix `DEFAULT_WEB_ACCESS_LOG_FORMAT`
* pip prod(deps): bump pytest-xdist from 2.4.0 to 2.5.0 (#864 )
Bumps [pytest-xdist](https://github.com/pytest-dev/pytest-xdist ) from 2.4.0 to 2.5.0.
- [Release notes](https://github.com/pytest-dev/pytest-xdist/releases )
- [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v2.4.0...v2.5.0 )
---
updated-dependencies:
- dependency-name: pytest-xdist
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
* npm: bump eslint-plugin-node from 10.0.0 to 11.1.0 in /dashboard (#863 )
Bumps [eslint-plugin-node](https://github.com/mysticatea/eslint-plugin-node ) from 10.0.0 to 11.1.0.
- [Release notes](https://github.com/mysticatea/eslint-plugin-node/releases )
- [Commits](https://github.com/mysticatea/eslint-plugin-node/compare/v10.0.0...v11.1.0 )
---
updated-dependencies:
- dependency-name: eslint-plugin-node
dependency-type: direct:development
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* Fix broken TLS interception & CacheResponsesPlugin because UID is no longer a UUID (#866 )
* Fix broken TLS interception because uid is now no longer a UUID
* Give enough context to work id for them to be unique within a `proxy.py` instance
* Use --port=0 by default within `proxy.TestCase`
* Attempt to fix weird buildx issue
* Add makefile targets within workflow
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
* Order?
* Write scm file for make
* Fetch depth
* Quote patch
* Try with sudo?
* https://github.com/docker/buildx/issues/850
* Remove sudo hack
* https://github.com/docker/buildx/issues/850\#issuecomment-973270625
* Add explicit deps
* Add `requirements-testing.txt` during linting phase
* Pin buildx to v0.7.1
* Pin buildx to v0.7.0
* Revert back unnecessary change to dockerignore
* Skip container within make workflow (because GHA lacks support for docker on macOS by default)
* Repurpose make into developer workflow
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
* Integrate showing unreleased changelog draft (#873 )
* pip prod(deps): bump types-paramiko from 2.8.2 to 2.8.4 (#868 )
* npm: bump @types/jasmine from 3.6.1 to 3.10.2 in /dashboard (#867 )
* pip prod(deps): bump py-spy from 0.3.10 to 0.3.11 (#875 )
Bumps [py-spy](https://github.com/benfred/py-spy ) from 0.3.10 to 0.3.11.
- [Release notes](https://github.com/benfred/py-spy/releases )
- [Changelog](https://github.com/benfred/py-spy/blob/master/CHANGELOG.md )
- [Commits](https://github.com/benfred/py-spy/compare/v0.3.10...v0.3.11 )
---
updated-dependencies:
- dependency-name: py-spy
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Abhinav Singh <126065+abhinavsingh@users.noreply.github.com>
* [GHA] Add container integration test & publish containers to GHCR (#818 )
* Handle KBI in threadless
* Remove line-length disable clause
* Move `Set PROXYPY_CONTAINER_VERSION env` within pre-setup
* Use step output
* Use review suggestion
* Break line at less essential places
* Possibly fix?
* alignment necessary?
* :)
* Fix integration
* Add `v` prefix
* Load buildx image within docker for integration tests to work
* Run container in detached mode
* Enable web server for integration test to work
* Push to GHCR after successful tests
* Tag & Push to GHCR
* Add package permission
* Login to GHCR
* Login to GHCR
* Login to GHCR
* Explicitly use ghcr.io registry
* Add a ghcr manifest creation step which depends upon docker step
* Probably we need all images (tags) locally
* arm not amd
* Fix syntax
* Fix typo
* `Unable to find image ghcr.io/abhinavsingh/proxy.py:latest locally`
* GHCR doesnt support manifest?
* Publish multi-platform containers on GHCR (#877 )
* Build containers without matrix based strategy. Helps with buildx based manifest generation
* Use buildx directly in workflows
* Add PROXYPY_PKG_PATH arg
* Add missing .
* --push from buildx
* Also add latest tag for GHCR
* Fix typo
* Explain differences between latest tag on DockerHub (stable) and GHCR (develop)
* Publish multi-platform containers to DockerHub (#878 )
* Use `--local-executor` flag by default for Docker container (#880 )
* Benchmark gets packaged within wheel if set as a package
* Use `--local-executor` flag by default for Docker containers
* Dockerfile update
* Fix mypy issues
* Remove conflicting dir names
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Sviatoslav Sydorenko <wk@sydorenko.org.ua>
2021-12-19 21:30:43 +05:30
Abhinav Singh
fd838ca64e
DEFAULT_CA_FILE is now certifi/cacert.pem ( #691 )
...
* Add FAQ: OSError when wrapping client for TLS Interception
* Silence exception log for several valid "cert verification failed" by client during tls interception
* Lint checks
* Move exception handling within wrap_server/wrap_client methods
* Lint fixes
* Use certifi/cacert.pem as default --ca-file flag value
* Address tests after DEFAULT_CA_FILE change
* [pre-commit.ci] auto fixes from pre-commit.com hooks
for more information, see https://pre-commit.ci
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2021-11-07 02:50:11 +05:30
Sviatoslav Sydorenko
05a78567ac
Enable the `add-trailing-comma` pre-commit fixer ( #661 )
...
Co-authored-by: Abhinav Singh <mailsforabhinav@gmail.com>
2021-11-04 16:58:36 +05:30
Abhinav Singh
0744cd8e7f
Go flagless to allow custom user defined flags. ( #452 )
...
* Go flagless to allow custom user defined flags. Fixes #301
* Add --cache-dir flag for cache plugin (when used with on-disk store)
* Enable discovery of flags from external plugins, example those that reside outside of proxy.py package and loaded on demand. This also allows external flags to surface in --help section
* Define --filtered-client-ips flag for FilterByClientIpPlugin
2020-10-14 10:51:56 +05:30
Bénouare
12de12d2a7
( #258 ) Fix generation of certif -> chg Time.time() to self.uid.int ( #258 )
...
Co-authored-by: Abhinav Singh <mailsforabhinav@gmail.com>
2020-02-01 08:51:25 -08:00
Abhinav Singh
ae92adc432
autopep8 ( #196 )
...
* autopep8
* Update TestCase section
2019-11-26 22:43:05 -08:00
Abhinav Singh
093e852df5
Make connection queue / recv work with memoryview to avoid copies ( #192 )
...
* connection.recv now returns a memoryview
* Make connection.queue also memoryview compliant
* autopep8
* wrap in memoryview as necessary
* Add default timeout for socket_connection and test_embed urllib
* Fix tests
* Skip TestProxyPyEmbedded for now, verifying GitHub actions
* Add timeout for wait_for_server and skip only if GITHUB_ACTIONS env variable is set
* Verify if GitHub Action fails due to wait_for_server spinning forever
* Add test for wait_for_server timeout error exception
* GitHub action hangs irrespective of wait_for_server timeout, disable TestEmbed for GitHub actions
2019-11-26 17:59:26 -08:00
Abhinav Singh
0c4e1cbda9
Testing support improvements ( #185 )
...
* Introduce proxy.Proxy context manager.
This is similar to already existing context manager `start` but
`proxy.Proxy` is a class with __enter__ and __exit__ methods. This
allows usage of `proxy.Proxy` both as context manager and for manually
setup and teardown of `proxy.py` during test setUpClass and
teardownClass methods.
* Gracefully shutdown threadless processes
* Update tests and add a VCR method. See #184
* Refactor routes
* Add Proxy to __all__
* Move TestCase under proxy.testing and test_embed.py under tests.embed module to avoid conflict with http module due to a http directory under proxy folder
* Add a base cache plugin class which can be customized for custom cache behaviors
* See #184 . Add VCRPlugin which can be enabled within tests using a context manager, e.g. with self.vcr(): ...
* Make cache plugin pluggable + make cache storage pluggable
* Make dashboard npm module agnostic of top level directory
* Symlink dashboard public folder
* Dump devtools within dashboard public folder
* Remove unused 3rd party js
2019-11-21 21:16:01 -08:00