App and Python library for parsing, writing, and validation of the STAND013 file format.

Overview

python-stand013

python-stand013 is a Python app and library for parsing, writing, and validation of the STAND013 file format.

Features

The following is a list of python-stand013's existing and planned features.

  • Validation
    • ORDERS purchase orders
    • ORDRSP purchase order responses
    • DESADV delivery notes
  • Parsing
    • ORDERS purchase orders
    • ORDRSP purchase order responses
    • DESADV delivery notes
  • Writing
    • ORDERS purchase orders
    • ORDRSP purchase order responses
    • DESADV delivery notes

Installation

python-stand013 requires Python 3.7 or newer. It can be installed from PyPI using e.g. pip:

python3 -m pip install stand013

Usage as command line tool

The stand013 executable can be used to validate ORDERS, ORDRSP, and DESADV files. The file type to validate is automatically detected.

Example of successful validation:

❯ stand013 validate tests/examples/ordrsp.xml
File: tests/examples/ordrsp.xml
Document type: ORDRSP
XML Schema validation: passed
❯

Example of unrecognized file format:

❯ stand013 validate /etc/passwd
File: /etc/passwd
Document type: Failed to detect
❯

Example of invalid file:

❯ stand013 validate DESADV-failing.xml
File: DESADV-failing.xml
Document type: DESADV
XML Schema validation: failed

  failed validating {} with XsdAttributeGroup(['MessageOwner', 'MessageType', 'MessageVersion']):

  Reason: missing required attribute 'MessageOwner'

  Schema:

    <xsd:complexType xmlns:xsd="http://www.w3.org/2001/XMLSchema" name="DeliveryNoteType">
      <xsd:sequence>
        <xsd:element name="MessageNumber" type="xsd:string" minOccurs="0">
          <xsd:annotation>
            <xsd:documentation>Unikt nr som identifiserer meldingen innenfor en utveksling</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="MessageTimestamp" type="xsd:dateTime">
          <xsd:annotation>
            <xsd:documentation>Meldingens dato (YYYY-MM-DDTHH:MM:SS) Sendetidspunkt</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="DeliveryNoteHeader" type="DeliveryNoteHeaderType">
          <xsd:annotation>
            <xsd:documentation>Pakkseddel hode</xsd:documentation>
          </xsd:annotation>
        </xsd:element>
        <xsd:element name="DeliveryNoteDetails" type="DeliveryNoteDetailsType" maxOccurs="unbounded">
          <xsd:annotation>
            <xsd:documentation>Pakkseddel detaljer</xsd:documentation>
      ...
      ...
    </xsd:complexType>

  Instance:

    <DeliveryNote xmlns="http://www.ean-nor.no/schemas/eannor">
      <MessageOwner>GS1NOR</MessageOwner>
      <MessageType>DELIVERYNOTE</MessageType>
      <MessageVersion>STAND013 v.1.0</MessageVersion>
      <MessageTimestamp>2021-05-31T09:49:00</MessageTimestamp>
      ...
      ...
    </DeliveryNote>

  Path: /Interchange/DeliveryNote

❯

Usage as library

TODO: Pending support for parsing and writing STAND013 files.

XML schema changes

The bundled XML schemas in src/stand013/schemas/ have been retrieved from https://stand.no/en/home/downloads/. We're currently including the May 2020 revision of the XML schemas.

We've done the following changes to the XML schemas to make them work for our use case.

  • Commit 7bdb761d378a4ec2922a1ea14048b614e4cd08e1: Fix references to the STAND013-Components_v1p1.xsd file. This file is in the same directory as the other schemas, not in ../Components/. This is true both for the Zip file at stand.no and in python-stand013.

  • Commit bd9e138ac6275ccabe7ce0907157a3a83d0b5ea1: Renamed STAND013 DeliveryNote_v1p1.xsd to STAND013-DeliveryNote_v1p1.xsd so that the reference from STAND013-DeliveryNote_Interchange_v1p1.xsd works, and the file name matches the other XML schemas.

  • Commit 955dfb86974d78f64d4da1dfdc72b0e27897a2a4: Change type for ORDERS' Interchange/Order/OrderHeader/OrderResponse from MessageResponseType (an enum with the values AC, AE, or NE) to a new OrderResponseType enum with Z1 as the only possible value. This matches the format documentation, and is necessary to be able to validate any ORDERS using the XML schemas.

Comments
  • build(deps-dev): update mypy requirement from ^0.910 to ^0.921

    build(deps-dev): update mypy requirement from ^0.910 to ^0.921

    Updates the requirements on mypy to permit the latest version.

    Commits

    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
  • build(deps-dev): update mypy requirement from ^0.910 to ^0.920

    build(deps-dev): update mypy requirement from ^0.910 to ^0.920

    Updates the requirements on mypy to permit the latest version.

    Commits

    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
  • Open-source this project

    Open-source this project

    I'd like to open-source the python-stand013 app/library under the Apache Licence, version 2.0, or the MIT license.

    The scope of python-stand013 is to be a Python app and library for parsing, writing, and validating the STAND013 file format. Currently, only validation is implemented.

    Pros:

    • There's nothing proprietary to Oda in the project as-is or in the project's scope, as defined above.
    • If the industry gets better tools to work with its custom file formats, Oda will benefit too.
    • An opportunity to display how we try to be "brilliant at the basics" when building Oda :infinity:

    Cons:

    • Nothing that I can think of.
    opened by jodal 1
  • build(deps-dev): update mypy requirement from ^0.982 to ^0.990

    build(deps-dev): update mypy requirement from ^0.982 to ^0.990

    Updates the requirements on mypy to permit the latest version.

    Commits

    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] 0
  • build(deps): update typer requirement from >=0.3.2,<0.7.0 to >=0.3.2,<0.8.0

    build(deps): update typer requirement from >=0.3.2,<0.7.0 to >=0.3.2,<0.8.0

    Updates the requirements on typer to permit the latest version.

    Release notes

    Sourced from typer's releases.

    0.7.0

    Features

    Fixes

    Docs

    • 📝 Add note about how subcommands with function names using underscores are converted to dashes. PR #403 by @​targhs.
    • 📝 Fix typo in docs at docs/tutorial/commands/help.md. PR #466 by @​fepegar.
    • ✏ Fix link in docs to datetime.strptime(). PR #464 by @​Kobu.
    • ✏ Update first-steps.md, clarify distinction between parameter and argument. PR #176 by @​mccarthysean.
    • ✏ Fix broken plac link. PR #275 by @​mgielda.

    Internal

    Changelog

    Sourced from typer's changelog.

    0.7.0

    Features

    Fixes

    Docs

    • 📝 Add note about how subcommands with function names using underscores are converted to dashes. PR #403 by @​targhs.
    • 📝 Fix typo in docs at docs/tutorial/commands/help.md. PR #466 by @​fepegar.
    • ✏ Fix link in docs to datetime.strptime(). PR #464 by @​Kobu.
    • ✏ Update first-steps.md, clarify distinction between parameter and argument. PR #176 by @​mccarthysean.
    • ✏ Fix broken plac link. PR #275 by @​mgielda.

    Internal

    0.6.1

    Fixes

    0.6.0

    This release adds deep integrations with Rich. ✨

    rich is an optional dependency, you can install it directly or it will be included when you install with:

    $ pip install "typer[all]"
    </tr></table> 
    

    ... (truncated)

    Commits
    • 6c5698f 🔖 Release version 0.7.0
    • aaf3cdd 📝 Update release notes
    • 24d3c39 📝 Update release notes
    • c1ddf1d ✅ Add extra tests just for coverage because monkeypatching with strange impor...
    • 5e46deb 📝 Update release notes
    • 8999df2 📝 Update release notes
    • 36e4080 ✨ Make typer.run() not add completion scripts by default, it only makes sen...
    • bd7dd4c 📝 Update release notes
    • a6f28a7 ✨ Add support for Python 3.11, tests in CI and official marker (#487)
    • 2b0aa71 📝 Update release notes
    • Additional commits viewable in compare view

    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] 0
  • build(deps-dev): update flake8-isort requirement from ^4.0.0 to ^5.0.0

    build(deps-dev): update flake8-isort requirement from ^4.0.0 to ^5.0.0

    Updates the requirements on flake8-isort to permit the latest version.

    Changelog

    Sourced from flake8-isort's changelog.

    5.0.0 (2022-10-08)

    • Update dependencies. [gforcada]

    • Revamp GitHub actions. [gforcada]

    • Drop python 3.6, and add python 3.10. [gforcada]

    • Use linters and formatters to keep code sane and beautiful. [gforcada]

    4.2.0 (2022-08-04)

    • Fix compatibility with flake8 version 5. [nhymxu]

    4.1.2.post0 (2022-07-25)

    • Release it as a wheel as well. [gforcada]

    4.1.2 (2022-07-25)

    • The package no longer depends on testfixtures.

    4.1.1 (2021-10-14)

    • Release py3 only wheels..

    4.1.0 (2021-10-14)

    • Support flake8 4.x [g-as]

    • Switch from travis-ci to github actions. [g-as]

    • Drop python 2.7 support and 3.5 as well [g-as]

    4.0.0 (2020-08-11)

    • Nothing changed yet.

    ... (truncated)

    Commits

    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] 0
  • build(deps-dev): update mypy requirement from ^0.981 to ^0.982

    build(deps-dev): update mypy requirement from ^0.981 to ^0.982

    Updates the requirements on mypy to permit the latest version.

    Commits

    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] 0
  • build(deps-dev): update pytest-cov requirement from ^3.0.0 to ^4.0.0

    build(deps-dev): update pytest-cov requirement from ^3.0.0 to ^4.0.0

    Updates the requirements on pytest-cov to permit the latest version.

    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>_.

    3.0.0 (2021-10-04)

    Note that this release drops support for Python 2.7 and Python 3.5.

    • Added support for Python 3.10 and updated various test dependencies. Contributed by Hugo van Kemenade in [#500](https://github.com/pytest-dev/pytest-cov/issues/500) <https://github.com/pytest-dev/pytest-cov/pull/500>_.
    • Switched from Travis CI to GitHub Actions. Contributed by Hugo van Kemenade in [#494](https://github.com/pytest-dev/pytest-cov/issues/494) <https://github.com/pytest-dev/pytest-cov/pull/494>_ and [#495](https://github.com/pytest-dev/pytest-cov/issues/495) <https://github.com/pytest-dev/pytest-cov/pull/495>_.
    • Add a --cov-reset CLI option. Contributed by Danilo Šegan in [#459](https://github.com/pytest-dev/pytest-cov/issues/459) <https://github.com/pytest-dev/pytest-cov/pull/459>_.
    • Improved validation of --cov-fail-under CLI option. Contributed by ... Ronny Pfannschmidt's desire for skark in [#480](https://github.com/pytest-dev/pytest-cov/issues/480) <https://github.com/pytest-dev/pytest-cov/pull/480>_.
    • Dropped Python 2.7 support.

    ... (truncated)

    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 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] 0
  • build(deps-dev): update mypy requirement from ^0.971 to ^0.981

    build(deps-dev): update mypy requirement from ^0.971 to ^0.981

    Updates the requirements on mypy to permit the latest version.

    Commits

    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] 0
  • build(deps-dev): update flake8 requirement from ^4.0.1 to ^5.0.4

    build(deps-dev): update flake8 requirement from ^4.0.1 to ^5.0.4

    Updates the requirements on flake8 to permit the latest version.

    Commits
    • 6027577 Release 5.0.4
    • 213e006 Merge pull request #1653 from asottile/lower-bound-importlib-metadata
    • e94ee2b require sufficiently new importlib-metadata
    • 318a86a Merge pull request #1646 from televi/main
    • 7b8b374 Clarify entry point naming
    • 7160561 Merge pull request #1649 from PyCQA/pre-commit-ci-update-config
    • 84d56a8 [pre-commit.ci] pre-commit autoupdate
    • ff6569b Release 5.0.3
    • e76b59a Merge pull request #1648 from PyCQA/invalid-syntax-partial-parse
    • 25e8ff1 ignore config files that partially parse as flake8 configs
    • Additional commits viewable in compare view

    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] 0
  • build(deps-dev): update mypy requirement from ^0.961 to ^0.971

    build(deps-dev): update mypy requirement from ^0.961 to ^0.971

    Updates the requirements on mypy to permit the latest version.

    Commits

    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] 0
Releases(v0.1.0)
Owner
Oda
We exist to build the world’s most effective retail system to create a society where people have more space for life.
Oda
Python Classes Without Boilerplate

attrs is the Python package that will bring back the joy of writing classes by relieving you from the drudgery of implementing object protocols (aka d

The attrs Cabal 4.6k Jan 02, 2023
Бэкапалка таблиц mysql 8 через брокер сообщений nats

nats-mysql-tables-backup Бэкап таблиц mysql 8 через брокер сообщений nats (проверено и работает в ubuntu 20.04, при наличии python 3.8) ПРИМЕРЫ: Ниже

Constantine 1 Dec 13, 2021
Empresas do Brasil (CNPJs)

Biblioteca em Python que coleta informações cadastrais de empresas do Brasil (CNPJ) obtidas de fontes oficiais (Receita Federal) e exporta para um formato legível por humanos (CSV ou JSON).

BR-API: Democratizando dados do Brasil. 8 Aug 17, 2022
A novel dual model approach for categorization of unbalanced skin lesion image classes (Presented technical paper 📃)

A novel dual model approach for categorization of unbalanced skin lesion image classes (Presented technical paper 📃)

1 Jan 19, 2022
A free micro-blog written in Python and powered by Heroku. *Merge requests are appreciated!*

Background Hobo is an ultra-lightweight blog engine written in Python. It has two dependencies, fully integrated into the codebase with no additional

Andrew Nelder 48 Jan 28, 2021
Gives criticality score for an open source project

Open Source Project Criticality Score (Beta) This project is maintained by members of the Securing Critical Projects WG. Goals Generate a criticality

Open Source Security Foundation (OpenSSF) 1.1k Dec 23, 2022
Media Cloud Outlet Filtering

Using ABYZ and Media-Bias Fact-Check outlet databases, I've provided outlet CSV files for both and scripts to intended to match Media Cloud files to respective outlets.

Stephen Scarano 1 Feb 02, 2022
A function decorator for enforcing function signatures

A function decorator for enforcing function signatures

Emmanuel I. Obi 0 Dec 08, 2021
Rick Astley Language is a rick roll oriented, dynamic, strong, esoteric programming language.

Rick Roll Language / Rick Astley Language A rick roll oriented, dynamic, strong, esoteric programming language. Prolegomenon The reasons that I made t

Rick Roll Programming Language 658 Jan 09, 2023
Scripts for hosting urbit in production-ish

Urbit Sysops Contains some helpful scripts for hosting Urbit. There are two variants included in this repo: one using docker, and one using plain syst

Jōshin 12 Sep 25, 2022
Python library for the Unmand APIs.

Unmand Python SDK This is a simple package to aid in consuming the Unmand APIs. For more help, see our docs. Getting Started Create virtual environmen

Unmand 4 Jul 22, 2022
This is a Saleae Logic custom high level analyzer that allows you to search and mark specific packets.

SaleaePacketParser This is a Saleae Logic custom high level analyzer that allows you to search and mark specific packets. Field "Search For" is used f

1 Dec 16, 2021
Pacman - A suite of tools for manipulating debian packages

Overview Repository is a suite of tools for manipulating debian packages. At a h

Pardis Pashakhanloo 1 Feb 24, 2022
Make creating Excel XLSX files fun again

Poi: Make creating Excel XLSX files fun again. Poi helps you write Excel sheet in a declarative way, ensuring you have a better Excel writing experien

Ryan Wang 11 Apr 01, 2022
Shopify Backend Developer Intern Challenge - Summer 2022

Shopify Backend Developer Intern The task is build an inventory tracking web application for a logistics company. The detailed task details can be fou

Meet Gandhi 11 Oct 08, 2022
Sigma coding youtube - This is a collection of all the code that can be found on my YouTube channel Sigma Coding.

Sigma Coding Tutorials & Resources YouTube • Facebook Support Sigma Coding Patreon • GitHub Sponsor • Shop Amazon Table of Contents Overview Topics Re

Alex Reed 927 Jan 08, 2023
Free version of Okuru selfbot, okuru.xyz

Indigo Selfbot Free OpenSource selfbot, Premium version can be found at https://okuru.xyz (5$.) Usage python[3] main.py Installation To install you ca

Dimitri Demarkus 31 Aug 07, 2022
A python package template that can be adapted for RAP projects

Warning - this repository is a snapshot of a repository internal to NHS Digital. This means that links to videos and some URLs may not work. Repositor

NHS Digital 3 Nov 08, 2022
Your self-hosted bookmark archive. Free and open source.

Your self-hosted bookmark archive. Free and open source. Contents About LinkAce Support Setup Contribution About LinkAce LinkAce is a self-hosted arch

Kevin Woblick 1.7k Jan 03, 2023
通过简单的卷积神经网络直接预测出验证码图片中滑块的位置

使用说明 1. 在本地测试 运行python3 prdict_one.py即可,默认需要预测的图片路径位于testImg文件夹下的test1.png 运行python3 predict_folder.py预测testImg下的所有图片 2. 部署到服务器 运行python3 run_a_server

12 Mar 08, 2022