Skip to content

Releases: sandialabs/reverse_argparse

v2.0.6

09 Jun 14:42
Compare
Choose a tag to compare

Patch

  • patch: Sign semantic release commits/tags (e7dcfc3)

v2.0.5

27 May 15:46
Compare
Choose a tag to compare

Patch

  • patch: Omit pre-commit updates from CHANGELOG (b6298d8)

    I thought 1aa9022 was sufficient for
    this, but apparently not. Trying again.

v2.0.4

27 May 13:24
Compare
Choose a tag to compare

Patch

  • patch: Omit dependency auto-updates from CHANGELOG (1aa9022)

    This is marked at a patch release to ensure the change works, and
    regenerate the CHANGELOG without the noisy entries.

v2.0.3

22 May 17:35
Compare
Choose a tag to compare

Chores

  • chore: Update security notice (4d51098)

    The Best Practices Badge App suggests we should document what users can
    expect from our project in terms of security.

Documentation

  • docs: Switch to project_copyright (d0a21d5)

    Using this alias means we're no longer overshadowing the copyright
    built-in, so we can remove the comment to ignore that Ruff linting rule.

Patch

  • patch: Replace deprecated GitHub Action (e5f4256)

    Marking this as a patch release to test out the new action and make sure
    it works.

    Closes #255.

v2.0.2

17 Dec 17:49
Compare
Choose a tag to compare

Bug fixes

  • fix: Switch import location (7948fc2)

    In Python 3.9, typing.Sequence was deprecated in favor of
    collections.abc.Sequence (see PEP 585).

v2.0.1

17 Dec 17:37
Compare
Choose a tag to compare

Patch

  • patch: Support Python 3.13 (453fd05)

v2.0.0

03 Dec 19:18
Compare
Choose a tag to compare

Chores

  • chore!: Drop support for Python 3.8 (5c448ec)

    • Use the type-hinting provided out of the box in 3.9.
    • Remove version guards around argparse.BooleanOptionalAction.
    • Update documentation and CI accordingly.
  • chore: Tweak dependabot again (1af1398)

  • chore: Tweak dependabot (c4c9252)

    Run weekly instead of daily, and group updates into a single PR for each
    packaging ecosystem.

  • chore: Update LICENSE/COPYRIGHT info (aae82e5)

Continuous integration

  • ci: Change documentation coverage file name (c487d94)

  • ci: Restrict token permissions (dfb85fd)

    https://github.com/sandialabs/reverse_argparse/security/code-scanning/21

  • ci: Tweak automated suggestions (3a73bda)

  • ci: Apply security best practices (27fd558)

    Signed-off-by: StepSecurity Bot bot@stepsecurity.io

  • ci: Don't fix Ruff issues (6fb3b58)

    Remove the --fix argument from the ruff check in the pre-commit
    configuration. We don't want automated commits pushed to PRs, because
    we want to encourage contributors to clean up their branches before
    merging. Additionally, when pre-commit doesn't automatically fix files,
    it shows the user what the issues are, thereby training them to avoid
    them in the future.

Documentation

  • docs: Fix highlighting in examples (149e48c)

    I never noticed when we added the license and copyright information to
    the top of all the source files that we didn't account for the
    lines highlighted in the included examples. This adjusts things such
    that (1) we don't include all that header stuff when generating the
    docs, and only include the lines of code that are really relevant to
    share on the examples page, and (2) the appropriate lines are
    highlighted.

  • docs: Slight tweaks to contributing guidelines (6e2ddc9)

Testing

  • test: Remove unnecessary parentheses (7c7d39a)

    To align with updated ruff rules.

  • test: Ignore subprocess warning in test file (90e3cad)

    This test file uses subprocess.run() to run the examples and check
    their output. The input to run() has been verified and is not a
    security vulnerability.

v1.0.8

13 May 13:50
Compare
Choose a tag to compare

Chore

  • chore: Remove commitizen configuration (73ceec1)

  • chore: Remove commitizen pre-commit hook (18c274f)

    In order to enable a faster development workflow, remove the commitizen
    pre-commit hook to allow commits messages that don't adhere to the
    Conventional Commits specification. Commit messages are still checked
    in the Continuous Integration workflow, though, so a branch will need to
    be clean before merging.

Documentation

  • docs: Fix license/copyright text in file (1d496c1)

    Should have been included in b355341,
    but was overlooked.

  • docs: Reword Conventional Commits guidelines (6659b11)

  • docs: Add code lines badge (9e4953d)

Patch

  • patch: Indicate that the package is typed (bd89c55)

    According to PEP 561, we need to add this file to static type checkers
    can infer the types from the package.

Test

  • test: Ignore assert warnings in test files (01f97d0)

v1.0.7

22 Apr 22:04
Compare
Choose a tag to compare

Chore

  • chore: Ignore security findings in tests/examples (f18ece4)

  • chore: Switch to Ruff (6112943)

    Use Ruff to replace a variety of linters/formatters.

  • chore: Fix badge URLs (2c8dda1)

    Somehow it looks like some hidden character wound up copy/pasted in the
    middle of the https.

  • chore: Add PR template (eb0b3b8)

Continuous Integration

Documentation

  • docs: Add docstrings to test/example files (f0b7eb9)

  • docs: Add OpenSSF Scorecard badge to ReadTheDocs (91c5557)

  • docs: Add CodeFactor badge (105a394)

  • docs: Adopt Conventional Comments (9d16c0c)

    Try to encourage effective communication via issues/PRs.

  • docs: Update link to latest GMS release (af2ce45)

  • docs: Move copyright/license text to comments (b355341)

    In all source files, move the copyright and license text from the module
    docstring to comments immediately below it. This is to avoid processing
    this text when Sphinx is automatically generating documentation from
    docstrings.

  • docs: Add contributor license agreement (9531c94)

  • docs: Update copyright text in source files (4cba3d0)

    Per guidance from Sandia Technology Transfer, the recommended text from
    the Linux Foundation is insufficient for our purposes.

  • docs: Update copyright/license info (4d1d42a)

    Update the copyright years in the LICENSE.md file and add copyright
    and license information to all source files (part of the Gold level
    OpenSSF Best Practices).

  • docs: Add coverage job steps (3b20a84)

    Add steps to the CI job to compute the documentation coverage for the
    package and archive the results.

Patch

  • patch: Force prefer_short to be keyword-only (f02c7f2)

    Turning on flake8-boolean-trap linting via Ruff resulted in the
    following findings:

    reverse_argparse/reverse_argparse.py:242:31:
    FBT002 Boolean default positional argument in function definition
    reverse_argparse/reverse_argparse.py:242:31:
    FBT001 Boolean-typed positional argument in function definition
    Found 2 errors.
    

    Switching prefer_short from a positional to a keyword-only argument
    addresses the problem.

    Note that this is technically a breaking change, but only for a
    "private" method, not in the package's public API. Therefore the change
    is not registered as a breaking change via Conventional Commit syntax,
    and no major version update will be created. Instead, this commit will
    force the creation of a patch release. If users were relying on the
    prior behavior of this internal method, they can simply switch to the
    keyword syntax when calling it.

Refactor

  • refactor: Address Ruff-specific lint findings (076e199)

  • refactor: Address Pylint findings (862bc62)

  • refactor: Ignore particular type error (9d412dd)

  • refactor: Remove unnecessary shebang lines (a7ae1f6)

  • refactor: Assign exception messages to variables (844c71a)

    Running flake8-errmsg via Ruff yielded the following findings:

    reverse_argparse/reverse_argparse.py:143:17:
    EM102 Exception must not use an f-string literal, assign to variable
    first
    reverse_argparse/reverse_argparse.py:461:17:
    EM102 Exception must not use an f-string literal, assign to variable
    first
    Found 2 errors.
    

    This changes resolves the issues.

  • refactor: Don't override Python builtins (9006adb)

Test

  • test: Use tuples for parametrize variables (25d9be8)

  • test: Use UTC timezone with datetime (25ff30f)

    Running flake8-datetimez via Ruff yielded the following findings:

    example/test_examples.py:88:25:
    DTZ005 `datetime.datetime.now()` called without a `tz` argument
    example/test_examples.py:89:25:
    DTZ007 Naive datetime constructed using
    `datetime.datetime.strptime()` without %z
    example/test_examples.py:125:13:
    DTZ005 `datetime.datetime.now()` called without a `tz` argument
    example/test_examples.py:126:25:
    DTZ007 Naive datetime constructed using
    `datetime.datetime.strptime()` without %z
    Found 4 errors.
    

    Specifying timezone info resolves the issues.

v1.0.6

15 Jan 19:16
Compare
Choose a tag to compare

Documentation

  • docs: Add more badges (629857d)

    Add additional badges to capture things like contributions, the
    conda-forge release channel, etc.

  • docs: Include badges in ReadTheDocs (e30fc68)

    Include the badges from the README in the index page of our
    documentation so this information is visible on ReadTheDocs in addition
    to GitHub and PyPI.

    Closes #81.

  • docs: Private vulnerability reporting (9d6a758)

    Remove the security issue template and instead direct people to file a
    private security advisory.

Patch

  • patch: Add a badge for the CodeQL action (2d77837)

    Create a patch release to push all these new badges out to PyPI.