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)sync client for sms.ru with pydantic responses

    🚧 aioSMSru Send SMS Check SMS status Get SMS cost Get balance Get limit Get free limit Get my senders Check login/password Add to stoplist Remove fro

    Eugene Mayer 4 Jul 03, 2022
    Data Exfiltration without ever making a connection. Using TCP header space.

    TCPwned PoC toy code to exfiltrate data without ever making a TCP connection. This will never show up in firewall logs, much less, actually be monitor

    2 Nov 21, 2022
    Python 3 tool for finding unclaimed groups on Roblox. Supports multi-threading, multi-processing and HTTP proxies.

    roblox-group-scanner Python 3 tool for finding unclaimed groups on Roblox. Supports multi-threading, multi-processing and HTTP proxies. Usage usage: s

    h0nda 43 May 11, 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
    Py script to aid in setting up the boot chime in OpenCore.

    BootChime Py script to aid in setting up the boot chime in OpenCore. It does so by helping you locate your IOHDACodecDevices, IOHDACodecAddress values

    CorpNewt 7 Sep 19, 2022
    Tool written on Python that locate all up host on your subnet

    HOSTSCAN Easy to use command line network host scanner. From noob to noobs. Dependencies Nmap 7.92 or superior Python 3.9 or superior All requirements

    NexCreep 4 Feb 27, 2022
    The Delegate Network: An Interactive Voice Response Delegative Democracy Implementation of Liquid Democracy

    The Delegate Network Overview The delegate network is a completely transparent, easy-to-use and understand version of what is sometimes called liquid

    James Bowery 2 Feb 25, 2022
    The C based gRPC (C++, Python, Ruby, Objective-C, PHP, C#)

    gRPC - An RPC library and framework gRPC is a modern, open source, high-performance remote procedure call (RPC) framework that can run anywhere. gRPC

    grpc 36.6k Dec 30, 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
    Tsunami-Fi is simple multi-tool bash application for Wi-Fi attacks

    🪴 Tsunami-Fi 🪴 Русская версия README 🌿 Description 🌿 Tsunami-Fi is simple multi-tool bash application for Wi-Fi WPS PixieDust and NullPIN attack,

    【Kiko】 35 Dec 09, 2022
    This is a zeep based SOAP client wrapper for simple communication with the Bricknode SOAP API.

    This is a zeep based SOAP client wrapper for simple communication with the Bricknode SOAP API.

    Nord Fondkommission AB 2 Dec 15, 2021
    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
    Building a Robust IOT device which is customizable, encrypted, secure and user friendly

    Building a Robust IOT device which is customizable, encrypted, secure and user friendly, which uses a single GPIO pin to extract multiple sensor values

    1 Jan 03, 2022
    TLD records archive. Revisiting the original TLDR project by mandatoryprogrammer, on the hunt for more root nameserver changes.

    tldr A(nother) continuously updated historical TLD records archive. This repository is updated approximately every three hours with the results from D

    Chris Partridge 11 Dec 14, 2022
    Discord RPC Generator With Python

    Discord-RPC-Generator Thank you for using this Discord Custom RP Generator. This is 100% safe and open source. Download Discord for your computer here

    1 Nov 09, 2021
    A simple port scanner for Web/ip scanning Port 0/500 editable inside the .py file

    Simple-Port-Scanner a simple port scanner for Web/ip scanning Port 0/500 editable inside the .py file Open Cmd/Terminal Cmd Downloads Run Command: pip

    YABOI 1 Nov 22, 2021
    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
    A simple implementation of an RPC toolkit

    Simple RPC With Raw Sockets Repository for the Data network course project: Introduction In this project, you will attempt to code a simple implementa

    Milad Samimifar 1 Mar 25, 2022
    A simple and lightweight server that allows clients to connect and launch a shell remotely through a browser.

    carrotsh A simple and lightweight server that allows clients to connect and launch a shell remotely through a browser. Uses xterm.js for the frontend

    V9 31 Dec 27, 2022
    Apple Store Stock Notifier monitors the availability of selected Apple devices in selected Apple stores, and sends you a notification when devices are available!

    Apple Store Stock Notifier This software will immediately send you a notification via Telegram when one of your coveted Apple Devices is available in

    Floris-Jan Willemsen 25 Dec 05, 2022