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
    A pure python implementation of multicast DNS service discovery

    python-zeroconf Documentation. This is fork of pyzeroconf, Multicast DNS Service Discovery for Python, originally by Paul Scott-Murphy (https://github

    Jakub Stasiak 483 Dec 29, 2022
    gRPC typing stubs for Python

    gRPC Typing Stubs for Python This is a PEP-561-compliant stub-only package which provides type information of gRPC. Install using pip: pip install grp

    Blake Williams 27 Dec 20, 2022
    IPE is a simple tool for analyzing IP addresses. With IPE you can find out the server region, city, country, longitude and latitude and much more in seconds.

    IPE is a simple tool for analyzing IP addresses. With IPE you can find out the server region, city, country, longitude and latitude and much more in seconds.

    Paul 0 Jun 11, 2022
    Tool to transfer credential files from Firefox to your local machine to decrypt offline.

    Firefox-Dumper Firefox Dumper identifies the current user's Firefox profile directory and exfiltrates the credential files to the attacker's FTP serve

    Joe Helle 22 Sep 10, 2022
    GhostVPN - Simple and lightweight TUI application for CyberGhostVPN

    GhostVPN Simple and lightweight TUI application for CyberGhostVPN. Screenshot Us

    Mehmet Ali KERİMOĞLU 5 Jul 27, 2022
    🌐 Tools for Networking

    🌐 Network Tools Tools for Networking This repository contains the tools needed to make networking easier. Make sure to download all of the requiremen

    Tornaido 1 Jan 15, 2022
    Multi-vendor library to simplify CLI connections to network devices

    Netmiko Multi-vendor library to simplify CLI connections to network devices Why Netmiko? Network automation to screen-scraping devices is primarily co

    Kirk Byers 3k Jan 01, 2023
    Malcolm is a powerful, easily deployable network traffic analysis tool suite for full packet capture artifacts (PCAP files) and Zeek logs.

    Malcolm is a powerful, easily deployable network traffic analysis tool suite for full packet capture artifacts (PCAP files) and Zeek logs.

    Cybersecurity and Infrastructure Security Agency 1.3k Jan 08, 2023
    A SOCKS proxy server implemented with the powerful python cooperative concurrency framework asyncio.

    asyncio-socks-server A SOCKS proxy server implemented with the powerful python cooperative concurrency framework asyncio. Features Supports both TCP a

    Amaindex 164 Dec 30, 2022
    PcapXray - A Network Forensics Tool - To visualize a Packet Capture offline as a Network Diagram

    PcapXray - A Network Forensics Tool - To visualize a Packet Capture offline as a Network Diagram including device identification, highlight important communication and file extraction

    Srinivas P G 1.4k Dec 28, 2022
    These scripts send notifications to a Webex space when a new IP is banned by Expressway, and allow to request more info or change the ban status

    Spam Call and Toll Fraud Mitigation Cisco Expressway release X14 is able to mitigate spam calls and toll fraud attempts by jailing the spam IP address

    Luca Pellegrini 6 Aug 05, 2022
    A python socket.io client for Roboteur

    Roboteur Client Example TODO Basic setup Install the requirements: $ pip install -r requirements.txt Run the application: $ python -m roboteur_client

    Barry Buck 1 Oct 13, 2021
    A script to automatically update the github's proxy IP in hosts file.

    updateHostsGithub A script to automatically update the github's proxy IP in hosts file. Now only Mac and Linux are supported. (脚本自动更新本地hosts文件,目前仅支持Ma

    2 Jul 06, 2022
    Secure connection between tenhou Window client and server.

    tenhou-secure The tenhou Windows client looks awesome. However, the traffic between the client and tenhou server is NOT encrypted, including your uniq

    1 Nov 11, 2021
    Bittensor - an open, decentralized, peer-to-peer network that functions as a market system for the development of artificial intelligence

    At Bittensor, we are creating an open, decentralized, peer-to-peer network that functions as a market system for the development of artificial intelligence.

    Opentensor 169 Dec 30, 2022
    Share clipboards between two devices in a network

    Shared Clipboard I felt the need for sharing clipboard texts between virtual machines but I didn't find any reliable solutions for this (I use HyperV)

    Teja Swaroop 9 Jun 10, 2022
    Python tutorial for implementing Oxylabs' Residential Proxies with AIOHTTP

    Integrating Oxylabs' Residential Proxies with AIOHTTP Requirements for the Integration For the integration to work you'll need to install aiohttp libr

    Oxylabs.io 6 Sep 14, 2022
    Juniper SNMP Migrations For Python

    Juniper SNMP Migrations This example will show how to use the PyEZ plugin for Nornir to build a NETCONF connection to a remote device validate that SN

    Calvin Remsburg 1 Jan 07, 2022
    An open source bias lighting program which syncs up colored lights to the contents of your screen.

    About Firelight Firelight is an open source bias lighting program which syncs up colored lights to the contents of your screen or TV, providing an imm

    Roshan 18 Dec 18, 2022
    GNS3 Graphical Network Simulator

    GNS3-gui GNS3 GUI repository.

    GNS3 1.7k Dec 29, 2022