Skip to content

Releases: viperior/python-project-template

Panda Update

04 Mar 23:28
Compare
Choose a tag to compare

Summary

The panda is known for its clear separation between different parts of its habitat. This release focuses on improving the user experience and simplifying the project's dependency management while maintaining a clear separation between different parts of the project.

It also adds pandas to the project to demonstrate maintaining dev and user requirements independently.

image

New features

  • Dev and user requirements are now maintained in separate files: dev-requirements.in and requirements.in (closes #60)
  • A third-party dependency, pandas, was added to the template's example code to support clear separation between dev and user requirements (closes #90)

Issues fixed

  • Resolved ValueError - int not callable when running flake8 by updating project dependency versions and modifying the package installation process in the GitHub Actions test workflow (closes #108)

Improvements

  • Changed from static dependency versions to minimum versions (foopackage==3.2.7 => foopackage>=3.2)
  • Remove pytest-xdist as a default dependency. Users can add this to their projects when needed and if they are okay with the added complexity. In the future, pytest-xdist could be an option to include in a template wizard.
  • Remove CodeQL as a default CI/CD workflow. Users can add this to their projects when needed and if they are okay with the added complexity. CodeQL does not work well with private repositories, which makes its default inclusion an immediate hurdle for users who want to use the template in a new private repository. In the future, CodeQL could be an option to include in a template wizard. (closes #111)
  • Improve pytest exception testing approach using pytest.raises() (closes #77)

Maintenance

  • Updated project dependency versions

Closed pull requests

Full Changelog: v1.2.0...v2.0.0

Minor style and configuration update

02 Sep 15:58
c59966d
Compare
Choose a tag to compare

What's Changed

  • Code style and documentation improvements by @viperior
  • Limit code line length to 80 characters by @viperior in #74
  • Use squash and merge by @viperior in #82
  • Dependency version updates

Full Changelog: v1.1.0...v1.2.0

Age of Dependabot

27 Jun 21:24
84a1fd2
Compare
Choose a tag to compare

Summary

This release upgrades the Dependabot integration by allowing it to check for updates to GitHub Actions in addition to pip packages. It also includes an improvement to the project's structure, better documentation, and some minor bugfixes.

New features

  • Configure dependabot to update GitHub Actions (closes #64)

Issues fixed

  • Resolve the pylint import error encountered during the GitHub Action workflow execution (closes #58)

Improvements

  • Move the tests related to the example module into example/tests (closes #36)
  • Rename the build workflow to test (closes #52)
  • Simplify the import statement in the coin flip test case
  • Ignore .venv directory when linting with flake8 (closes #53)
  • Dependency updates

Documentation and testing improvements

06 May 00:19
188cf09
Compare
Choose a tag to compare

New features

  • Configure the setuptools build tool by creating the required metadata files

Improvements

  • Move pylint usage from the pytest test suite to a GitHub Actions workflow
  • Document universally important project aspects in readme (closes #13)
  • Update reference to build.yaml file in badge URL (closes #38)

Code Coverage Analysis

26 Feb 21:32
v0.7.0
fca891d
Compare
Choose a tag to compare

Improvements

  • Measure code coverage using coverage and require 100% code coverage to pass PR checks (closes #9)

Testing

  • Improve the design of the test_flip_coins_function to use parametrized test input data and run multiple times with a range of coin count inputs
  • Exclude pylint success/failure reporting from code coverage measurement
  • Achieve 100% code coverage ✨

Enforce Flake8 Rules

25 Feb 23:05
v0.6.0
460c8b3
Compare
Choose a tag to compare

Improvements

  • Enforce Flake8 Rules (closes #11)
  • Modify max code line length to 100 characters in flake8 command

Fail Faster During Testing

25 Feb 22:53
v0.5.0
f176e21
Compare
Choose a tag to compare

Improvements

  • Fail faster when running the pytest test suite by running the test suite asynchronously and halting on the first error encountered using pytest's -x option (closes #12)
  • Bump pylint from 2.12.1 to 2.12.2 (#16)
  • Bump pytest from 6.2.5 to 7.0.1 (#17)

Automated Dependency Management

25 Feb 21:58
v0.4.0
985588f
Compare
Choose a tag to compare

New features

  • Configure Dependabot to automate the management of the project's dependencies (closes #10)

Changelog Template

25 Feb 21:43
v0.3.0
bdd70bf
Compare
Choose a tag to compare

New features

  • Changelog template with standard categories and PR/issue footnotes (closes #8)

CI/CD via GitHub Actions

25 Feb 21:28
v0.2.0
4cc89df
Compare
Choose a tag to compare

New features

  • Configure a FUNDING.yml that integrates with GitHub's Sponsors functionality (#2)
  • Configure a GitHub Action that runs the test suite using pytest (#3)
  • Display a badge in the project readme with the status of the latest GitHub Actions build workflow (#6)
  • Configure a GitHub Actions workflow that performs CodeQL analysis (#7)

Issues fixed

  • Remove static reference to project name (#5)

Improvements

  • Rename the GitHub actions workflow to build from Python application