Change Log

This page documents the additions, changes, fixes, deprecations and removals made in each release.

v3.0.0.dev0

Release Date: TBD

Added

Core Object

Additions to the FreshPy Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules are listed below.

General

  • Added the new .github/workflows/ci.yml CI workflow to follow best practices and improve deployments

  • Added the .readthedocs.yaml file to manage the integration with the ReadTheDocs documentation

  • Added the AGENTS.md file to define agent guidelines with the package

Changed

Core Object

Changes to the FreshPy Core Object.

  • Improved and standardized the handling of SSL verification when performing API calls
    • Added the verify_ssl parameter to the object instantiation method (which defaults to True if not defined) which allows SSL verification to be enabled or disabled at the object-level

    • Added the freshpy.core.FreshPy._determine_ssl_verification() method and called it in relevant core object methods to determine the appropriate SSL verification setting

    • Changed the default value of the verify_ssl parameter in core methods to be None rather than True

  • Introduced the ability to utilize environment variables instead of passing in settings with parameters
    • Added the freshpy.core.FreshPy._get_env_variable_names() method to get the environment variable names

    • Added the freshpy.core.FreshPy._get_env_variables() method to retrieve the defined environment variables

  • Added the parameters params and timeout to the freshpy.core.FreshPy.get() method

Primary Modules

Changes to the primary modules.

  • Updated the freshpy.api.get_request_with_retries() function to return the full Response object if the response cannot be successfully converted to JSON rather than just returning error details

  • Added the parameters params and timeout to the freshpy.api.get_request_with_retries() function

  • Updated the freshpy.api._report_failed_attempt() function to use the logging functionality

  • Updated the freshpy.api._raise_exception_for_repeated_timeouts() function to use the logging functionality

Supporting Modules

Changes to the supporting modules are listed below.

General

  • Updated the pyproject.toml file to follow best practices and to include the following changes:
    • Changed the minimum supported Python version to be 3.9

    • Added hyperlinks to available resources and documentation

    • Added Trove classifiers for PyPI

    • Switched from setuptools to poetry

    • Moved pytest to a dev dependency group

    • Removed setuptools and urllib3 from runtime dependencies

    • Updated dependency versions to mitigate known vulnerabilities found in earlier versions

    • Added bandit with SARIF support to the dev dependencies

  • Updated the requirements.txt file to be runtime-only and mirror the pyproject.toml file

  • Moved the tests/ directory from the root level to under src/freshpy/utils/ instead

  • Updated the Sphinx configuration (docs/conf.py) to follow recommendations and best practices

Removed

General

  • Removed the setup.py file as it is no longer needed for this package

  • Removed .github/workflows/codeql-analysis.yml (replaced by .github/workflows/ci.yml)

  • Removed the .readthedocs.yml file (replaced by .readthedocs.yaml)



v2.0.0

Release Date: 2025-01-29

Added

Core Object

Additions to the FreshPy Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Changed

Primary Modules

Changes to the primary modules.

  • Added error handling to the freshpy.api.get_request_with_retries() function.

  • Replaced a generic py:exc:Exception with a py:exc:RuntimeError exception in the py:func:freshpy.api._report_failed_attempt function.

  • Removed an unnecessary return statement from the freshpy.api._report_failed_attempt() function.



v1.1.1

Release Date: 2023-05-08

Changed

General

  • Updated the required packages in the requirements.txt file.

  • Adjusted the required install packages in the setup.py script.



v1.1.0

Release Date: 2021-01-05

Added

Supporting Modules

Additions to the supporting modules.

Documentation

The documentation was fully created and hosted.

Changed

Core Object

Changes to the FreshPy Core Object.

Primary Modules

Changes to the primary modules.