A library for interacting with APNs and VoIP using HTTP/2.

Overview

kalyke

Test Maintainability Codacy Badge Code style: black

PyPI Package version Python Supported versions PyPI status wheel format implementation LICENSE

A library for interacting with APNs and VoIP using HTTP/2.

Installation

kalyke requires python 3.6 or later.

$ pip install kalyke-apns

Usage

APNs

from kalyke.client import APNsClient
from kalyke.payload import PayloadAlert, Payload


payload_alert = PayloadAlert(title="YOUR TITLE", body="YOUR BODY")
alert = Payload(alert=payload_alert, badge=1, sound="default")

client = APNsClient(
    team_id="YOUR_TEAM_ID", auth_key_id="AUTH_KEY_ID", auth_key_filepath="/path/to/AuthKey_AUTH_KEY_ID.p8",
    bundle_id="com.example.App", use_sandbox=True, force_proto="h2"
)
# or background push
"""
client = APNsClient(
    team_id="YOUR_TEAM_ID", auth_key_id="AUTH_KEY_ID", auth_key_filepath="/path/to/AuthKey_AUTH_KEY_ID.p8",
    bundle_id="com.example.App", use_sandbox=True, force_proto="h2", apns_push_type="background"
)
"""

# Send single push notification

registration_id = "a8a799ba6c21e0795b07b577b562b8537418570c0fb8f7a64dca5a86a5a3b500"

result = client.send_message(registration_id, alert)

# Send multiple push notifications
registration_ids = [
    "87b0a5ab7b91dce26ea2c97466f7b3b82b5dda4441003a2d8782fffd76515b73",
    "22a1b20cb67a43da4a8f006176788aa20271ac2e3ac0da0375ae3dc1db0de210"
]

results = client.send_bulk_message(registration_ids, alert)

VoIP

from kalyke.client import VoIPClient


client = VoIPClient(
    auth_key_filepath="/path/to/YOUR_VOIP_CERTIFICATE.pem",
    bundle_id="com.example.App.voip", use_sandbox=True
)

alert = {
    "key": "value"
}

# Send single VoIP notification

registration_id = "14924adeeabaacc8b38cfd766965abffd0ee572a5a89e7ee26e6009a3f1a8e8a"

result = client.send_message(registration_id, alert)

# Send multiple VoIP notifications

registration_ids = [
    "84b7120bf190d171ff904bc943455d6081274714b32c486fa28814be7ee921fb",
    "afaa8dcedc99d420e35f7435edad4821dbad3c8c7d5071b2697da9bd7a5037ad"
]

results = client.send_bulk_message(registration_ids, alert)

Todo

  • Tests

License

This software is licensed under the MIT License (See LICENSE).

Comments
  • SSL error when trying to use Voip

    SSL error when trying to use Voip

    File "/home/ubuntu/venv/lib/python3.6/site-packages/kalyke/client.py", line 67, in send_message
      result = loop.run_until_complete(self._send_message(registration_id, alert, **kwargs))
      File "uvloop/loop.pyx", line 1456, in uvloop.loop.Loop.run_until_complete
       File "/home/ubuntu/venv/lib/python3.6/site-packages/kalyke/client.py", line 187, in _send_message
        with closing(self._create_connection()) as connection:
       File "/home/ubuntu/venv/lib/python3.6/site-packages/kalyke/client.py", line 280, in _create_connection
    ssl.SSLError: [SSL] PEM lib (_ssl.c:3524)
    

    I have downloaded voip "pem" file from my developer dashboard and I am using absolute path of pem file , what might be the issue?

    opened by ipranjal 4
  • Bump mypy from 0.910 to 0.930

    Bump mypy from 0.910 to 0.930

    Bumps mypy from 0.910 to 0.930.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.

    Dependabot will merge this PR once CI passes on it, as requested by @nnsnodnb.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 3
  • Bump cryptography from 2.6.1 to 3.4.7

    Bump cryptography from 2.6.1 to 3.4.7

    Bumps cryptography from 2.6.1 to 3.4.7.

    Changelog

    Sourced from cryptography's changelog.

    3.4.7 - 2021-03-25

    
    * Updated Windows, macOS, and ``manylinux`` wheels to be compiled with
      OpenSSL 1.1.1k.
    

    .. _v3-4-6:

    3.4.6 - 2021-02-16

    • Updated Windows, macOS, and manylinux wheels to be compiled with OpenSSL 1.1.1j.

    .. _v3-4-5:

    3.4.5 - 2021-02-13

    
    * Various improvements to type hints.
    * Lower the minimum supported Rust version (MSRV) to >=1.41.0. This change
      improves compatibility with system-provided Rust on several Linux
      distributions.
    * ``cryptography`` will be switching to a new versioning scheme with its next
      feature release. More information is available in our
      :doc:`/api-stability` documentation.
    

    .. _v3-4-4:

    3.4.4 - 2021-02-09

    • Added a py.typed file so that mypy will know to use our type annotations.
    • Fixed an import cycle that could be triggered by certain import sequences.

    .. _v3-4-3:

    3.4.3 - 2021-02-08

    
    * Specify our supported Rust version (>=1.45.0) in our ``setup.py`` so users
      on older versions will get a clear error message.
    

    .. _v3-4-2:

    3.4.2 - 2021-02-08

    • Improvements to make the rust transition a bit easier. This includes some

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 2
  • Bump actions/setup-python from 2 to 4

    Bump actions/setup-python from 2 to 4

    Bumps actions/setup-python from 2 to 4.

    Release notes

    Sourced from actions/setup-python's releases.

    v4.0.0

    What's Changed

    • Support for python-version-file input: #336

    Example of usage:

    - uses: actions/[email protected]
      with:
        python-version-file: '.python-version' # Read python version from a file
    - run: python my_script.py
    

    There is no default python version for this setup-python major version, the action requires to specify either python-version input or python-version-file input. If the python-version input is not specified the action will try to read required version from file from python-version-file input.

    • Use pypyX.Y for PyPy python-version input: #349

    Example of usage:

    - uses: actions/[email protected]
      with:
        python-version: 'pypy3.9' # pypy-X.Y kept for backward compatibility
    - run: python my_script.py
    
    • RUNNER_TOOL_CACHE environment variable is equal AGENT_TOOLSDIRECTORY: #338

    • Bugfix: create missing pypyX.Y symlinks: #347

    • PKG_CONFIG_PATH environment variable: #400

    • Added python-path output: #405 python-path output contains Python executable path.

    • Updated zeit/ncc to vercel/ncc package: #393

    • Bugfix: fixed output for prerelease version of poetry: #409

    • Made pythonLocation environment variable consistent for Python and PyPy: #418

    • Bugfix for 3.x-dev syntax: #417

    • Other improvements: #318 #396 #384 #387 #388

    Update actions/cache version to 2.0.2

    In scope of this release we updated actions/cache package as the new version contains fixes related to GHES 3.5 (actions/setup-python#382)

    Add "cache-hit" output and fix "python-version" output for PyPy

    This release introduces new output cache-hit (actions/setup-python#373) and fix python-version output for PyPy (actions/setup-python#365)

    The cache-hit output contains boolean value indicating that an exact match was found for the key. It shows that the action uses already existing cache or not. The output is available only if cache is enabled.

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies github_actions 
    opened by dependabot[bot] 1
  • Bump reviewdog/action-black from 2 to 3

    Bump reviewdog/action-black from 2 to 3

    Bumps reviewdog/action-black from 2 to 3.

    Release notes

    Sourced from reviewdog/action-black's releases.

    Release v3.0.0

    v3.0.0: PR #43 - composite action like reviewdog/action-flake8

    Release v2.3.0

    v2.3.0: PR #41 - chore(deps): update reviewdog to 0.13.0

    Release v2.2.1

    No release notes provided.

    Release v2.2.0

    v2.2.0: PR #40 - chore(deps): update reviewdog to 0.12.0-nightly20210629+ef98b6a

    Release v2.1.0

    v2.1.0: PR #39 - chore(deps): update reviewdog to 0.12.0-nightly20210627+4216c7e

    Release v2.0.1

    v2.0.1: PR #37 - [fixed] product version for readme

    Changelog

    Sourced from reviewdog/action-black's changelog.

    Changelog

    All notable changes to this project will be documented in this file. Dates are displayed in UTC.

    Generated by auto-changelog.

    v1.3.7

    3 January 2021

    v1.3.6

    1 January 2021

    • :memo: Updates CHANGELOG e414a5e
    • :bug: Fixes fail_on_error catch behavoir 8119b8a

    v1.3.5

    30 December 2020

    v1.3.4

    30 December 2020

    v1.3.3

    28 December 2020

    • :loud_sound: Fixes stdout log syntax error e0022cd

    v1.3.2

    28 December 2020

    • :memo: Updates changelog a075d2a
    • :twisted_rightwards_arrows: Merge branch 'master' of github.com:reviewdog/action-black a87842e
    • :twisted_rightwards_arrows: Merge branch 'fixes_error_catch_behavoir' f133a93

    ... (truncated)

    Commits
    • 1c01a3f fix: github-pr-review path's black_check_output value (#57)
    • 752e8a2 Merge pull request #54 from reviewdog/depup/reviewdog
    • 510e264 chore(deps): update reviewdog to 0.14.1
    • d0363f5 chore(deps): update peter-evans/create-pull-request action to v4 (#53)
    • cf3c8a5 Update actions/checkout action to v3 (#52)
    • d4f7b5d Merge pull request #51 from reviewdog/depup/reviewdog
    • 2bb517e chore(deps): update reviewdog to 0.14.0
    • ff94a61 chore(deps): update reviewdog to 0.13.1 (#50)
    • 0d6daa0 ci: replace 'create-release action' with gh cli (#49)
    • e95a7c6 Jupyter notebook support (#44)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies github_actions 
    opened by dependabot[bot] 1
  • Bump cryptography from 38.0.1 to 39.0.0

    Bump cryptography from 38.0.1 to 39.0.0

    Bumps cryptography from 38.0.1 to 39.0.0.

    Changelog

    Sourced from cryptography's changelog.

    39.0.0 - 2023-01-01

    
    * **BACKWARDS INCOMPATIBLE:** Support for OpenSSL 1.1.0 has been removed.
      Users on older version of OpenSSL will need to upgrade.
    * **BACKWARDS INCOMPATIBLE:** Dropped support for LibreSSL < 3.5. The new
      minimum LibreSSL version is 3.5.0. Going forward our policy is to support
      versions of LibreSSL that are available in versions of OpenBSD that are
      still receiving security support.
    * **BACKWARDS INCOMPATIBLE:** Removed the ``encode_point`` and
      ``from_encoded_point`` methods on
      :class:`~cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicNumbers`,
      which had been deprecated for several years.
      :meth:`~cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKey.public_bytes`
      and
      :meth:`~cryptography.hazmat.primitives.asymmetric.ec.EllipticCurvePublicKey.from_encoded_point`
      should be used instead.
    * **BACKWARDS INCOMPATIBLE:** Support for using MD5 or SHA1 in
      :class:`~cryptography.x509.CertificateBuilder`, other X.509 builders, and
      PKCS7 has been removed.
    * **BACKWARDS INCOMPATIBLE:** Dropped support for macOS 10.10 and 10.11, macOS
      users must upgrade to 10.12 or newer.
    * **ANNOUNCEMENT:** The next version of ``cryptography`` (40.0) will change
      the way we link OpenSSL. This will only impact users who build
      ``cryptography`` from source (i.e., not from a ``wheel``), and specify their
      own version of OpenSSL. For those users, the ``CFLAGS``, ``LDFLAGS``,
      ``INCLUDE``, ``LIB``, and ``CRYPTOGRAPHY_SUPPRESS_LINK_FLAGS`` environment
      variables will no longer be respected. Instead, users will need to
      configure their builds `as documented here`_.
    * Added support for
      :ref:`disabling the legacy provider in OpenSSL 3.0.x<legacy-provider>`.
    * Added support for disabling RSA key validation checks when loading RSA
      keys via
      :func:`~cryptography.hazmat.primitives.serialization.load_pem_private_key`,
      :func:`~cryptography.hazmat.primitives.serialization.load_der_private_key`,
      and
      :meth:`~cryptography.hazmat.primitives.asymmetric.rsa.RSAPrivateNumbers.private_key`.
      This speeds up key loading but is :term:`unsafe` if you are loading potentially
      attacker supplied keys.
    * Significantly improved performance for
      :class:`~cryptography.hazmat.primitives.ciphers.aead.ChaCha20Poly1305`
      when repeatedly calling ``encrypt`` or ``decrypt`` with the same key.
    * Added support for creating OCSP requests with precomputed hashes using
      :meth:`~cryptography.x509.ocsp.OCSPRequestBuilder.add_certificate_by_hash`.
    * Added support for loading multiple PEM-encoded X.509 certificates from
      a single input via :func:`~cryptography.x509.load_pem_x509_certificates`.
    

    .. _v38-0-4:

    38.0.4 - 2022-11-27 </tr></table>

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies python 
    opened by dependabot[bot] 1
  • Bump certifi from 2020.11.8 to 2022.12.7

    Bump certifi from 2020.11.8 to 2022.12.7

    Bumps certifi from 2020.11.8 to 2022.12.7.

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the Security Alerts page.
    dependencies 
    opened by dependabot[bot] 1
  • Bump cryptography from 36.0.1 to 38.0.4

    Bump cryptography from 36.0.1 to 38.0.4

    Bumps cryptography from 36.0.1 to 38.0.4.

    Changelog

    Sourced from cryptography's changelog.

    38.0.4 - 2022-11-27

    
    * Fixed compilation when using LibreSSL 3.6.0.
    * Fixed error when using ``py2app`` to build an application with a
      ``cryptography`` dependency.
    

    .. _v38-0-3:

    38.0.3 - 2022-11-01

    • Updated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.0.7, which resolves CVE-2022-3602 and CVE-2022-3786.

    .. _v38-0-2:

    38.0.2 - 2022-10-11 (YANKED)

    
    .. attention::
    
    This release was subsequently yanked from PyPI due to a regression in OpenSSL.
    
    • Updated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.0.6.

    .. _v38-0-1:

    38.0.1 - 2022-09-07

    
    * Fixed parsing TLVs in ASN.1 with length greater than 65535 bytes (typically
      seen in large CRLs).
    

    .. _v38-0-0:

    38.0.0 - 2022-09-06

    • Final deprecation of OpenSSL 1.1.0. The next release of cryptography will drop support.
    • We no longer ship manylinux2010 wheels. Users should upgrade to the latest pip to ensure this doesn't cause issues downloading wheels on their platform. We now ship manylinux_2_28 wheels for users on new enough platforms.
    • Updated the minimum supported Rust version (MSRV) to 1.48.0, from 1.41.0. Users with the latest pip will typically get a wheel and not need Rust installed, but check :doc:/installation for documentation on installing a newer rustc if required. </tr></table>

... (truncated)

Commits

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
dependencies 
opened by dependabot[bot] 1
  • Bump cryptography from 36.0.1 to 38.0.3

    Bump cryptography from 36.0.1 to 38.0.3

    Bumps cryptography from 36.0.1 to 38.0.3.

    Changelog

    Sourced from cryptography's changelog.

    38.0.3 - 2022-11-01

    
    * Updated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.0.7,
      which resolves *CVE-2022-3602* and *CVE-2022-3786*.
    

    .. _v38-0-2:

    38.0.2 - 2022-10-11 (YANKED)

    .. attention::

    This release was subsequently yanked from PyPI due to a regression in OpenSSL.
    
    • Updated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.0.6.

    .. _v38-0-1:

    38.0.1 - 2022-09-07

    
    * Fixed parsing TLVs in ASN.1 with length greater than 65535 bytes (typically
      seen in large CRLs).
    

    .. _v38-0-0:

    38.0.0 - 2022-09-06

    • Final deprecation of OpenSSL 1.1.0. The next release of cryptography will drop support.
    • We no longer ship manylinux2010 wheels. Users should upgrade to the latest pip to ensure this doesn't cause issues downloading wheels on their platform. We now ship manylinux_2_28 wheels for users on new enough platforms.
    • Updated the minimum supported Rust version (MSRV) to 1.48.0, from 1.41.0. Users with the latest pip will typically get a wheel and not need Rust installed, but check :doc:/installation for documentation on installing a newer rustc if required.
    • :meth:~cryptography.fernet.Fernet.decrypt and related methods now accept both str and bytes tokens.
    • Parsing CertificateSigningRequest restores the behavior of enforcing that the Extension critical field must be correctly encoded DER. See the issue <https://github.com/pyca/cryptography/issues/6368>_ for complete details.
    • Added two new OpenSSL functions to the bindings to support an upcoming pyOpenSSL release.
    • When parsing :class:~cryptography.x509.CertificateRevocationList and

    ... (truncated)

    Commits

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump pytest-cov from 3.0.0 to 4.0.0

    Bump pytest-cov from 3.0.0 to 4.0.0

    Bumps pytest-cov from 3.0.0 to 4.0.0.

    Changelog

    Sourced from pytest-cov's changelog.

    4.0.0 (2022-09-28)

    Note that this release drops support for multiprocessing.

    • --cov-fail-under no longer causes pytest --collect-only to fail Contributed by Zac Hatfield-Dodds in [#511](https://github.com/pytest-dev/pytest-cov/issues/511) <https://github.com/pytest-dev/pytest-cov/pull/511>_.

    • Dropped support for multiprocessing (mostly because issue 82408 <https://github.com/python/cpython/issues/82408>_). This feature was mostly working but very broken in certain scenarios and made the test suite very flaky and slow.

      There is builtin multiprocessing support in coverage and you can migrate to that. All you need is this in your .coveragerc::

      [run] concurrency = multiprocessing parallel = true sigterm = true

    • Fixed deprecation in setup.py by trying to import setuptools before distutils. Contributed by Ben Greiner in [#545](https://github.com/pytest-dev/pytest-cov/issues/545) <https://github.com/pytest-dev/pytest-cov/pull/545>_.

    • Removed undesirable new lines that were displayed while reporting was disabled. Contributed by Delgan in [#540](https://github.com/pytest-dev/pytest-cov/issues/540) <https://github.com/pytest-dev/pytest-cov/pull/540>_.

    • Documentation fixes. Contributed by Andre Brisco in [#543](https://github.com/pytest-dev/pytest-cov/issues/543) <https://github.com/pytest-dev/pytest-cov/pull/543>_ and Colin O'Dell in [#525](https://github.com/pytest-dev/pytest-cov/issues/525) <https://github.com/pytest-dev/pytest-cov/pull/525>_.

    • Added support for LCOV output format via --cov-report=lcov. Only works with coverage 6.3+. Contributed by Christian Fetzer in [#536](https://github.com/pytest-dev/pytest-cov/issues/536) <https://github.com/pytest-dev/pytest-cov/issues/536>_.

    • Modernized pytest hook implementation. Contributed by Bruno Oliveira in [#549](https://github.com/pytest-dev/pytest-cov/issues/549) <https://github.com/pytest-dev/pytest-cov/pull/549>_ and Ronny Pfannschmidt in [#550](https://github.com/pytest-dev/pytest-cov/issues/550) <https://github.com/pytest-dev/pytest-cov/pull/550>_.

    Commits
    • 28db055 Bump version: 3.0.0 → 4.0.0
    • 57e9354 Really update the changelog.
    • 56b810b Update chagelog.
    • f7fced5 Add support for LCOV output
    • 1211d31 Fix flake8 error
    • b077753 Use modern approach to specify hook options
    • 00713b3 removed incorrect docs on data_file.
    • b3dda36 Improve workflow with a collecting status check. (#548)
    • 218419f Prevent undesirable new lines to be displayed when report is disabled
    • 60b73ec migrate build command from distutils to setuptools
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Bump cryptography from 36.0.1 to 38.0.1

    Bump cryptography from 36.0.1 to 38.0.1

    Bumps cryptography from 36.0.1 to 38.0.1.

    Changelog

    Sourced from cryptography's changelog.

    38.0.1 - 2022-09-07

    
    * Fixed parsing TLVs in ASN.1 with length greater than 65535 bytes (typically
      seen in large CRLs).
    

    .. _v38-0-0:

    38.0.0 - 2022-09-06

    • Final deprecation of OpenSSL 1.1.0. The next release of cryptography will drop support.
    • We no longer ship manylinux2010 wheels. Users should upgrade to the latest pip to ensure this doesn't cause issues downloading wheels on their platform. We now ship manylinux_2_28 wheels for users on new enough platforms.
    • Updated the minimum supported Rust version (MSRV) to 1.48.0, from 1.41.0. Users with the latest pip will typically get a wheel and not need Rust installed, but check :doc:/installation for documentation on installing a newer rustc if required.
    • :meth:~cryptography.fernet.Fernet.decrypt and related methods now accept both str and bytes tokens.
    • Parsing CertificateSigningRequest restores the behavior of enforcing that the Extension critical field must be correctly encoded DER. See the issue <https://github.com/pyca/cryptography/issues/6368>_ for complete details.
    • Added two new OpenSSL functions to the bindings to support an upcoming pyOpenSSL release.
    • When parsing :class:~cryptography.x509.CertificateRevocationList and :class:~cryptography.x509.CertificateSigningRequest values, it is now enforced that the version value in the input must be valid according to the rules of :rfc:2986 and :rfc:5280.
    • Using MD5 or SHA1 in :class:~cryptography.x509.CertificateBuilder and other X.509 builders is deprecated and support will be removed in the next version.
    • Added additional APIs to :class:~cryptography.x509.certificate_transparency.SignedCertificateTimestamp, including :attr:~cryptography.x509.certificate_transparency.SignedCertificateTimestamp.signature_hash_algorithm, :attr:~cryptography.x509.certificate_transparency.SignedCertificateTimestamp.signature_algorithm, :attr:~cryptography.x509.certificate_transparency.SignedCertificateTimestamp.signature, and :attr:~cryptography.x509.certificate_transparency.SignedCertificateTimestamp.extension_bytes.
    • Added :attr:~cryptography.x509.Certificate.tbs_precertificate_bytes, allowing users to access the to-be-signed pre-certificate data needed for signed certificate timestamp verification.
    • :class:~cryptography.hazmat.primitives.kdf.kbkdf.KBKDFHMAC and :class:~cryptography.hazmat.primitives.kdf.kbkdf.KBKDFCMAC now support :attr:~cryptography.hazmat.primitives.kdf.kbkdf.CounterLocation.MiddleFixed counter location.
    • Fixed :rfc:4514 name parsing to reverse the order of the RDNs according

    ... (truncated)

    Commits
    • 3ff5218 Backport tlv fix, 38.0.1 bump (#7576)
    • 52d6f1a version bump for 38 release (#7567)
    • 8c687e6 Bump rust-asn1 to 0.12.1 (#7564)
    • aca4b10 Bump rust-asn1 to 0.12.0 (#7563)
    • 1742975 support setting more PKCS12 serialization encryption options (#7560)
    • abb1f54 Bump once_cell from 1.13.1 to 1.14.0 in /src/rust (#7559)
    • 01a0e3b Bump BoringSSL version to 8462a367bb57e9524c3d8eca9c62733c63a63cf4 (#7558)
    • 35a965f Bump ouroboros from 0.15.3 to 0.15.4 in /src/rust (#7557)
    • 9a208e1 Bump BoringSSL version to 19009c51bff0706362e824f66a0b189326a1c27d (#7555)
    • b342224 Bump iana-time-zone from 0.1.46 to 0.1.47 in /src/rust (#7552)
    • Additional commits viewable in compare view

    Dependabot compatibility score

    Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


    Dependabot commands and options

    You can trigger Dependabot actions by commenting on this PR:

    • @dependabot rebase will rebase this PR
    • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
    • @dependabot merge will merge this PR after your CI passes on it
    • @dependabot squash and merge will squash and merge this PR after your CI passes on it
    • @dependabot cancel merge will cancel a previously requested merge and block automerging
    • @dependabot reopen will reopen this PR if it is closed
    • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
    • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
    • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
    dependencies 
    opened by dependabot[bot] 1
  • Releases(0.2.0)
    • 0.2.0(Jan 2, 2023)

      Breaking Update

      • Replace httpx from hyper by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/82

      Please see examples folder.

      What's Changed

      • Bump mypy from 0.930 to 0.931 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/61
      • Bump ipython from 7.16.2 to 7.16.3 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/62
      • Bump pytest from 6.2.5 to 7.0.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/63
      • Bump pyjwt from 2.3.0 to 2.4.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/72
      • Bump pytest from 7.0.0 to 7.0.1 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/64
      • Renewal by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/83
      • Add github-actions in dependabot by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/84
      • Bump actions/checkout from 2 to 3 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/90
      • Bump actions/cache from 2 to 3 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/89
      • Update certifi by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/86
      • Bump actions/setup-python from 2 to 4 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/88
      • Bump reviewdog/action-black from 2 to 3 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/87
      • Update coveralls by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/93
      • Bump cryptography from 38.0.1 to 39.0.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/85
      • Bump pyjwt from 2.4.0 to 2.6.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/92
      • Bump httpx from 0.23.0 to 0.23.1 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/91
      • Update pytest by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/94
      • Update .coveragerc by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/95
      • Update pyproject.toml by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/96

      Full Changelog: https://github.com/nnsnodnb/kalyke/compare/0.1.8...0.2.0

      Source code(tar.gz)
      Source code(zip)
    • 0.1.8(Jan 2, 2022)

      What's Changed

      • Update poetry 1.1.11 by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/50
      • Update linter.yml by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/58
      • Bump coveralls from 3.2.0 to 3.3.1 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/52
      • Bump ipython from 7.16.1 to 7.16.2 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/54
      • Bump cryptography from 35.0.0 to 36.0.1 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/56
      • Bump coverage from 5.5 to 6.2 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/59
      • Bump mypy from 0.910 to 0.930 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/57
      • Update version by @nnsnodnb in https://github.com/nnsnodnb/kalyke/pull/60

      Full Changelog: https://github.com/nnsnodnb/kalyke/compare/0.1.7...0.1.8

      Source code(tar.gz)
      Source code(zip)
    • 0.1.7(Nov 1, 2021)

      What's Changed

      • Bump pytest from 6.2.4 to 6.2.5 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/41
      • Bump cryptography from 3.4.8 to 35.0.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/42
      • Bump pytest-cov from 2.12.1 to 3.0.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/43
      • Bump flake8 from 3.9.2 to 4.0.1 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/46
      • Bump pygments from 2.7.2 to 2.7.4 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/49
      • Bump urllib3 from 1.26.2 to 1.26.5 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/48
      • Bump py from 1.9.0 to 1.10.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/47
      • Bump pyjwt from 2.1.0 to 2.3.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/45
      • Bump coveralls from 2.1.2 to 3.2.0 by @dependabot in https://github.com/nnsnodnb/kalyke/pull/33

      Full Changelog: https://github.com/nnsnodnb/kalyke/compare/0.1.6...0.1.7

      Source code(tar.gz)
      Source code(zip)
    • 0.1.6(Sep 4, 2021)

    • 0.1.5(Jun 9, 2021)

    • 0.1.4(Dec 24, 2020)

    Owner
    Yuya Oka
    iOS applications and ServerSide Developer (Python) I love Python 🐍
    Yuya Oka
    This tool is for finding more detailed information of an IP Address.

    This tool is for finding more detailed information of an IP Address.

    3 Oct 08, 2021
    A Python framework for interacting with Solana's Pyth network.

    Pyth Network A basic Python framework for reading and decoding data regarding the Pyth network

    1 Nov 29, 2021
    A live streaming chatroom involving multiple modalities, such as voice, gesture, and facial expression

    HiLive A live streaming chatroom involving multiple modalities, such as voice, gesture, and facial expression. Introduction We focus on demonstrating

    Ryan Yen 2 Dec 02, 2021
    A protocol or procedure that connects an ever-changing IP address to a fixed physical machine address

    p0znMITM ARP Poisoning Tool What is ARP? Address Resolution Protocol (ARP) is a protocol or procedure that connects an ever-changing IP address to a f

    Furkan OZKAN 9 Sep 18, 2022
    Jogo da forca simples com conexão entre cliente e servidor utilizando TCP.

    JogoDaForcaTCP Um jogo da forca simples com conexão entre cliente e servidor utilizando o protocólo TCP. Como jogar: Habilite a porta 20000, inicie o

    Kelvin Santos 1 Dec 01, 2021
    This script helps us to add IP, host name entry in hosts file and create directory run nmap scan and directory scan with your favourite tools

    A python script to automate your set-up for Hack The Box, It sets up Workspace, Opens TMUX session, connects to OpenVPN, Runs Nmap and many more...

    Cognizance 7 Mar 25, 2022
    Network monitoring tool

    netmeter If you are looking for a tool to monitor your network interfaces, here you are. See netmeter-exporter to export Prometheus metrics. Installat

    Saeid Bostandoust 97 Dec 03, 2022
    Take a list of domains and probe for working HTTP and HTTPS servers

    httprobe Take a list of domains and probe for working http and https servers. Install ▶ go get -u github.com/tomnomnom/httprobe Basic Usage httprobe

    Tom Hudson 2.3k Dec 28, 2022
    Huawei firewall automatically updates Chinese ip to target IP group.

    Huawei firewall automatically updates Chinese ip to target IP group.

    Lundaa 0 Jan 11, 2022
    syncio: asyncio, without await

    syncio: asyncio, without await asyncio can look very intimidating to newcomers, because of the async/await syntax. Even experienced programmers can ge

    David Brochart 10 Nov 21, 2022
    Remote vanilla PDB (over TCP sockets) done right: no extras, proper handling around connection failures and CI.

    Overview docs tests package Remote vanilla PDB (over TCP sockets) done right: no extras, proper handling around connection failures and CI. Based on p

    Ionel Cristian Mărieș 227 Dec 27, 2022
    Ultimate transformation library that supports validation, contexts and aiohttp.

    Trafaret Ultimate transformation library that supports validation, contexts and aiohttp. Trafaret is rigid and powerful lib to work with foreign data,

    Mikhail Krivushin 174 Nov 27, 2022
    Flashes keyboard leds on incoming/outgoing network packets

    LED Net Capture Flashes keyboard leds on incoming/outgoing network packets Usage Requires root priviledges to run usage: ledcapture.py [-h] --keyboard

    Dan Habot 56 Oct 27, 2022
    Base on browser-time to get har from network, and use python to analyze the data .

    base on browser-time to get har from network, and use python to analyze the data

    1 Dec 20, 2021
    The OUCH Project - OUCH Server/Client

    This software simulates OUCH Server/Client communication through a script which initialises a central server and another script which simulates clients connecting to the server.

    Jahin Z. 2 Dec 10, 2022
    基于多线程快速端口扫描脚本,支持目标批量导入、结果导出。

    JWS_portscan 基于多线程快速端口扫描脚本,支持目标批量导入、结果导出。如果扫描公网资产,为了提升扫描的精准性,建议放到服务器运行。 用法 依赖安装:pip3 install -r requriement.txt 支持参数:python3 JWS_portscan.py --help 脚本

    jammny 5 Apr 12, 2022
    ip2domain - get ip to domain, Know the domian corresponding to the local network connection IP

    What is Sometimes, we need to know what connections our local machine has, and what are their IP, domain name, program and parameters? get ip to domai

    51pwn 4 Sep 30, 2022
    PetrickScanner is a simple Python OOP TCP Port Scanner

    PetrickScanner PetrickScanner is a simple Python OOP TCP Port Scanner Functions Python TCP Port Scanner DNS Resolver Random Scanner PLEASE ANY PROBLEM

    11 Nov 30, 2021
    An ftp syncing python package that I use to sync pokemon saves between my hacked 3ds running ftpd and my server

    Sync file pairs over ftp and apply patches to them. Useful for using ftpd to transfer ROM save files to and from your DS if you also play on an emulator. Setup a cron job to check for your DS's ftp s

    17 Jan 04, 2023
    An ansible playbook to set up wireguard server.

    Poor man's VPN (pay for only what you need) An ansible playbook to quickly set up Wireguard server for occasional personal use. It takes around five m

    Amrit Bera 613 Dec 25, 2022