Change Log

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

v5.4.0

Release Date: 2023-11-01

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

  • Updated the khoros.structures.boards.get_all_messages() function to include the where_filter and descending parameters to further filter the LiQL query that is performed.

  • Removed the redundant return statement from the following functions:
    • khoros.objects.messages._verify_required_fields()

    • khoros.objects.messages._confirm_field_supplied()

Fixed

Primary Modules

Fixes to the primary modules.

  • Converted some unnecessary f-strings into standard strings in the khoros.structures.boards._structure_label_settings() function.

  • Converted an unnecessary f-string into a standard string in the khoros.objects.messages.parse_v2_response() function.

General

  • Bumped urllib3 from 1.26.16 to 1.26.17 to address CVE-2023-43804.



v5.3.0

Release Date: 2023-08-08

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Changed

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

General

  • Bumped Certifi from 2022.12.7 to 2023.7.22 to address the security vulnerability CVE-2023-37920.



v5.2.2

Release Date: 2023-05-23

Added

General

  • Updated requests to v2.31.0 to address the security vulnerability CVE-2023-32681.

  • Updated the pyproject.toml and poetry.lock files accordingly.



v5.2.1

Release Date: 2023-01-02

Added

General

  • Added poetry support by adding the pyproject.toml and poetry.lock files.

  • Updated pytest to v7.2.0 to address the security vulnerability CVE-2022-42969.

  • Addressed the security vulnerability CVE-2022-40897.

  • Disabled the bandit.yml workflow as it is experiencing unknown runtime errors.



v5.2.0

Release Date: 2022-12-05

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Changed

Primary Modules

Changes to the primary modules.

  • Improved the error handling in the khoros.bulk_data.query() function to display the response text in the raised exception when available.

Supporting Modules

Changes to the supporting modules.

General

  • Changed the setuptools version in requirements.txt to be 65.5.1 in order to mitigate the Regular Expression Denial of Service vulnerability identified by Snyk in Pull Request #62.

  • Changed the versions for the Sphinx-related packages in requirements.txt to be more current.



v5.1.3

Release Date: 2022-10-28

Fixed

Core Object

Fixes in the Khoros Core Object.

Primary Modules

Fixes in the primary modules.

Supporting Modules

Fixes in the supporting modules.



v5.1.2

Release Date: 2022-10-04

Added

Supporting Modules

Additions to the supporting modules.

Changed

Supporting Modules

Changes to the supporting modules.

Fixed

Supporting Modules

Fixes in the supporting modules.



v5.1.1

Release Date: 2022-09-29

Added

Supporting Modules

Additions to the supporting modules.

Changed

Supporting Modules

Changes to the supporting modules.

Fixed

Primary Modules

Fixes in the primary modules.

Removed

Supporting Modules

Removals in the supporting modules.

  • Removed the khoros.utils.tests.test_categores.get_control_data() and khoros.utils.tests.test_categories.get_core_object() functions that became obsolete.



v5.1.0

Release Date: 2022-09-28

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Fixed

Primary Modules

Fixes to the primary modules.



v5.0.0

Release Date: 2022-09-20

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

General

  • Added the bulk_data section to the examples/helper.yml file.

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

  • Added a function call in khoros.utils.helper._get_connection_info() to parse the Bulk Data API connection information when applicable.

  • Merged two if statements in the khoros.utils.version.warn_when_not_latest() function.

  • Made a minor change to the docstring for khoros.errors.handlers._exceptions_module_imported().

General

  • Updated the Security Policy to add support for version 5.0.x and to remove support for version 3.x.x.

Fixed

Core Object

Fixes to the Khoros Core Object.

Primary Modules

Fixes to the primary modules.

Supporting Modules

Fixes to the supporting modules.



v4.5.0

Release Date: 2022-01-16

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Changed

Core Object

Changes to the Khoros Core Object.

  • Replaced the phrase “This function” with “This method” in all of the core method docstrings.



v4.4.0

Release Date: 2021-10-12

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.



v4.3.0.post1

Release Date: 2021-10-10

Changed

General

  • Added Python version 3.10 to setup.py.



v4.3.0

Release Date: 2021-10-10

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

General

  • Created the GitHub issue template .github/ISSUE_TEMPLATE/documentation_request.md.

Changed

Core Object

Changes to the Khoros Core Object.

  • Added support for the full_payload parameter in the khoros.core.Khoros.Message.create() method to implement the enhancement request #46.

  • Added support for the wrap_json parameter in the khoros.core.Khoros.Tag.structure_tags_for_message() function to implement the enhancement request #47.

  • Updated the __init__ module for the core object class to define the ssl_verify_disabled global variable in the khoros.api module as True when the ssl_verify flag in the core settings are explicitly set to False. (See line 186)

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

General

  • Updated the GitHub issue template .github/ISSUE_TEMPLATE/bug_report.md to be more intuitive.

  • Added quotes in pythonpackage.yml to avoid issue referenced in actions/setup-python#160.

  • Added Python v3.10 to pythonpackage.yml.

  • Refactored pythonpackage.yml to perform macOS builds in order to ensure support for Python v3.10 per request #50.

Fixed

Core Object

Fixes in the Khoros Core Object.

  • Fixed some incorrect information in the docstring for khoros.core.Khoros.User.get_username().

  • Fixed an issue in the __init__ method of the core object where the ssl_verify parameter was being mostly disregarded.

  • Fixed an issue in the __init__ method of the core object where the auto_connect parameter defined via the defined_settings parameter was being disregarded.

Primary Modules

Fixes in the primary modules.

Supporting Modules

Fixes in the supporting modules.



v4.2.1

Release Date: 2021-09-24

Fixed

Primary Modules

Fixes to the primary modules.



v4.2.0

Release Date: 2021-09-13

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

General

  • Added the defusedxml package to requirements.txt and as a required install package in setup.py.

Fixed

Core Object

Fixes to the Khoros Core Object.



v4.1.1

Release Date: 2021-08-05

Changed

Primary Modules

Changes to the primary modules.



v4.1.0

Release Date: 2021-06-29

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

  • Some minor docstring adjustments were made in the khoros.objects.archives.archive and khoros.objects.archives.unarchive functions.

  • Explicitly set the full_response flag in the khoros.objects.archives.archive() and khoros.objects.archives.unarchive() functions because of unique response format and subsequently removed the following parameters: full_response, return_id, return_url, return_api_url, return_http_code, return_status, return_error_messages and split_errors

  • Introduced the optional aggregate_results parameter in the khoros.objects.archives.archive and khoros.objects.archives.unarchive functions.

  • Introduced the return_items parameter in the khoros.liql.perform_query() function to automatically reduce the JSON response to only the returned items when desired. (False by default)

  • Imported the khoros.objects.tags module within the __init__ file for the khoros.objects module and added tags to the __all__ special variable.

Supporting Modules

Changes to the supporting modules.

Documentation

General

  • Adjusted the Sphinx-related package versions in requirements.txt.

Fixed

Core Object

Fixes to the Khoros Core Object.

Primary Modules

Fixes to the primary modules.

  • Fixed an issue with the khoros.objects.archives.structure_archive_payload() function call in the khoros.objects.archives.archive() function.

  • Renamed the incorrect JSON field messageID to be messageId instead in the khoros.objects.archives._format_single_archive_entry() function to prevent the following error from getting returned:

    {
      'status': 'error',
      'message': 'A possible invalid request has been made.
                  Make sure you are following the API spec and have used the correct URL,
                  are included all required parameters and if a request payload is required
                  you have included one.',
      'data': {
        'type': 'error_data',
        'code': 309,
        'developer_message': '',
        'more_info': ''
      },
      'metadata': {}
    }
    
  • Added a missing section of the docstring for the khoros.objects.tags.structure_tags_for_message() function.



v4.0.0

Release Date: 2021-05-20

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

General

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

Documentation

Changes to the documentation.

General

  • Moved the PyYAML, urllib3, requests and setuptools packages from the requirements.txt file to the setup.py file within the install_requires list to address Issue #28.

    Note

    This change was introduced by truthbyron via Pull Request #31.

Fixed

Primary Modules

Fixes to the primary modules.



v3.5.0

Release Date: 2021-03-26

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

  • Added a badge for the latest beta / release candidate (RC) release on the README page.

  • Added badges for the security audits (bandit and PyCharm Python Security Scanner) to the README page.

  • Added a badge for the CodeFactor Grade on the README page.

General

  • Added the .github/workflows/bandit.yml GitHub Action workflow configuration file to leverage the Python security check using Bandit action to perform security audits with each push event.

  • Added badges in the README page.

  • Added comments in multiple scripts within the library to address how the bandit GitHub Action will identify users.

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

General

  • Removed the stale branch 3.0.0 from the .github/workflows/codeql-analysis.yml file.

  • Removed requests_toolbelt from requirements.txt.

Fixed

Core Object

Fixes to the Khoros Core Object.

  • Updated the khoros.core.Khoros.post() function so that the query_url no longer gets prefixed with a slash (/) if the relative_url parameter is set to False.

Primary Modules

Fixes in the primary modules.



v3.4.0

Release Date: 2021-03-06

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Changed

Core Object

Changes to the Khoros Core Object.

  • Updated the __init__ method for the khoros.core.Khoros object class to include the ssl_verify parameter and to establish a key-value pair for it in the core_settings dictionary.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.



v3.3.3

Release Date: 2021-01-25

Fixed

Primary Modules

Fixes in the primary modules.

  • Added error handling in the khoros.objects.settings._get_v2_node_setting() function to prevent an AttributeError exception from being raised.



v3.3.2

Release Date: 2021-01-08

Added

Core Object

Additions to the Khoros Core Object.

  • Added the optional skip_env_variables argument to the __init__ method of the khoros.core.Khoros class to explicitly ignore valid environment variables when instantiating the core object.

  • Added the optional empty argument to the __init__ method of the khoros.core.Khoros class to instantiate an empty core object with default values.

  • Added the method khoros.core.Khoros._populate_empty_object() to populates necessary fields to allow an empty object to be instantiated successfully.

  • Logging (via the khoros.utils.log_utils module) was introduced in methods throughout the khoros.core module.

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

Documentation

Changes to the documentation.

  • Merged the release notes for version 3.3.0.post0 into those for the subsequent stable version 3.3.1.

  • Added an example function call in the header block of the khoros.utils.log_utils module.

  • Made further improvements to the documentation styling in the custom.css file.

Fixed

Core Object

Fixes in the Khoros Core Object.

  • Updated the __init__ method for the khoros.core.Khoros class to only skip method arguments when they explicitly have a None value and are not just implicitly False.

Primary Modules

Fixes in the primary modules.



v3.3.1

Release Date: 2021-01-06

Added

Documentation

Additions to the documentation.

Changed

Documentation

Changes to the documentation.

Fixed

Primary Modules

Fixes in the primary modules.

  • Fixed an issue with the khoros.api.make_v1_request() function call within the khoros.objects.settings._get_v2_node_setting() that was resulting in IndexError exceptions.

  • Fixed an issue in khoros.objects.settings._get_v2_node_setting() resulting in an IndexError exception if the setting field is not found, and made changes to return a None value in that situation.

Documentation

Fixes in the documentation.



v3.3.0

Release Date: 2020-12-26

Added

Core Object

Additions to the Khoros Core Object.

  • Defined the version variable within the khoros.core.Khoros core object to make it easy to determine the current version of the package after having instantiated said object.

Changed

General

  • Added Khoros to the __all__ dictionary in the primary __init__.py file.

Core Object

Changes to the Khoros Core Object.

  • Renamed the _settings dictionary (private) to be core_settings (public) in the core object to avoid warning messages being displayed in PyCharm and other IDEs as reported in Issue #26.

  • Renamed the settings argument in the __init__ method for the khoros.core.Khoros object to be defined_settings to avoid conflicting with the khoros.core.Khoros.Settings() method.

  • Made some minor PEP8 compliance-related adjustments in the khoros.core module.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

Return to Top



v3.2.0

Release Date: 2020-12-23

Added

General

  • Created the dev-requirements.txt to indicate which packages may be required for contributors, whereas the requirements.txt file now only contains the absolute necessities to use the package.

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Changed

General

  • Updated setup.py to enable support for Python v3.8.x and v3.9.x now that compatibility testing has been performed and no issues have been identified.

  • Updated the Development Status classifier in setup.py to be 5 - Production/Stable.

  • Added some additional Topic classifiers in setup.py.

  • Significantly cleaned up the requirements.txt file to only include the absolute necessities.

  • Updated requirements.txt to replace == with >= to be less strict on dependency versions as long as they meet a minimum version requirement.

  • Made a minor adjustment to the README.md file relating to documentation.

  • Updated the docs/conf.py file to require Sphinx version 3.4.0.

  • Re-added the Sphinx-related dependencies to requirements.txt to allow ReadTheDocs builds to be successful.

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

Fixed

Core Object

Fixes in the Khoros Core Object.

Primary Modules

Fixes in the primary modules.

  • Added a missing docstring for the khoros.api.payload_request_with_retries() function.

  • Updated the function khoros.api.make_v1_request() to pass the query parameters in the message body to avoid exceeding the URI limit and receiving responses with 413 or 414 status codes.

  • Fixed an issue where v1 GET requests were not appending the restapi.response_format=json query string when a JSON response has been requested.

Supporting Modules

Fixes in the supporting modules.

Return to Top



v3.1.1

Release Date: 2020-11-02

Fixed

Core Object

Fixes to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Return to Top



v3.1.0

Release Date: 2020-10-28

Added

Core Object

Additions to the Khoros Core Object.

  • Added the khoros.get() method to perform simple GET requests that leverage the core object authorization headers where necessary.

  • Added the khoros.post() method to perform simple POST requests that leverage the core object authorization headers where necessary.

  • Added the khoros.put() method to perform simple PUT requests that leverage the core object authorization headers where necessary.

Primary Modules

Additions to the primary modules.

Documentation

Additions to the documentation.

Changed

Primary Modules

Changes to the primary modules.

Return to Top



v3.0.0

Release Date: 2020-10-19

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Changed

Core Object

Changes to the Khoros Core Object.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

General

  • Updated the Sphinx configuration file (conf.py) to suppress the duplicate label warnings.

  • Added version 3.0.x to the SECURITY.md file under Supported.

Return to Top

Fixed

General

  • Changed the pyYAML version in requirements.txt to be 5.3.1 rather than 5.3 in order to avoid the CI build failure in GitHub Actions.

Deprecated

Core Object

Deprecations in the Khoros Core Object.

Return to Top



v2.8.0

Release Date: 2020-07-06

Added

Core Object

Additions to the Khoros Core Object.

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

General

  • Added the file v2_message_attachment_update_payload.json to the examples/example_output directory.

Changed

Core Object

Additions to the Khoros Core Object.

  • Introduced the ignore_non_string_tags, return_status, return_error_messages and split_errors arguments in the khoros.core.Khoros.Message.create() method, and changed the default value of the full_response, return_id, return_url, return_api_url and return_http_code arguments to None rather than False.

  • Added support for the translate_errors Helper setting and any other future top-level setting within the khoros.core.Khoros._parse_helper_settings() method.

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

  • Updated the khoros.utils.helper.get_helper_settings() function to capture the translate_errors value when defined in the configuration file.

  • Refactored the khoros.utils.helper._get_construct_info() function to leverage the khoros.utils.helper._collect_values() function.

Documentation

Changes to the documentation.

General

  • Updated the examples/helper.yml file to include the translate_errors setting.

  • Added the KHOROS_TRANSLATE_ERRORS environment variable to the examples/custom_env_variables.yml and examples/custom_env_variables.json files.

Return to Top



v2.7.6

Release Date: 2020-06-25

Added

Documentation

Additions to the documentation.

General

  • Added the two files below to the examples/example_output/ directory.
    • v2_message_attachment_create_payload.json

    • v2_message_attachment_create_success.json

Changed

Documentation

Changes to the documentation.

Fixed

Primary Modules

Fixes in the primary modules.

  • Fixed the “Exception objects instantiated but not raised” issue reported in GitHub. (Issue #2)

Return to Top



v2.7.5

Release Date: 2020-06-18

Added

General

  • Added the v2_error_not_authorized.json file to the examples/example_output directory.

Changed

Primary Modules

Changes to the primary modules.

Fixed

Primary Modules

Fixes to the primary modules.

  • Updated the khoros.api._normalize_headers() function to ensure that authentication/authorization tokens would not be altered.

Return to Top



v2.7.4

Release Date: 2020-06-18

Added

Primary Modules

Additions to the primary modules.

  • Added the khoros.api._normalize_headers() function to normalize the HTTP headers.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

Changed

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

Return to Top



v2.7.3

Release Date: 2020-06-17

Added

Supporting Modules

Additions to the supporting modules.

Changed

Primary Modules

Changes to the primary modules.

  • Added the debug_mode Boolean argument (False by default) to the __init__ method for the khoros.core.Khoros class which populates within the _settings protected dictionary.

General

  • Added dist.old/ to the .gitignore file in the root directory of the repository.

Fixed

Primary Modules

Fixes to the primary modules.

Return to Top



v2.7.2

Release Date: 2020-06-17

Fixed

Primary Modules

Fixes to the primary modules.

Documentation

Fixes to the documentation.

Return to Top



v2.7.1

Release Date: 2020-06-17

Fixed

Primary Modules

Fixes to the primary modules.

General

  • Added several API v1 output examples in the examples/example_output directory.

Return to Top



v2.7.0

Release Date: 2020-06-12

Added

Primary Modules

Additions to the primary modules.

Changed

Primary Modules

Changes to the primary modules.

Return to Top



v2.6.0

Release Date: 2020-05-31

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

General

  • Added the helper.yml file in the examples/ directory of the repository using the syntax found on the Introduction page of the documentation.

  • Added the discussion_styles list to the examples/helper.yml file.

Changed

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

  • Updated the khoros.utils.helper.get_helper_settings() function to capture the enabled discussion styles via the khoros.utils.helper._get_discussion_styles() function.

  • Updated the khoros.core.Khoros class to define the enabled discussion styles even if a helper configuration file is not supplied.

Documentation

Changes to the documentation.

Deprecated

Return to Top



v2.5.2

Release Date: 2020-05-25

Added

Primary Modules

Additions to the primary modules.

Documentation

Additions to the documentation.

Changed

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

  • Renamed the khoros.utils.core_utils.__is_zero_length() function to be khoros.utils.core_utils._is_zero_length() instead.

  • Renamed the khoros.utils.core_utils.__structure_query_string() function to be khoros.utils.core_utils._structure_query_string() instead.

Documentation

Changes to the documentation.

Return to Top



v2.5.1

Release Date: 2020-05-20

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

Changed

Documentation

Changes to the documentation.

Return to Top



v2.5.0

Release Date: 2020-05-18

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

Changed

Primary Modules

Changes to the primary modules.

Deprecated

Primary Modules

Deprecations in the primary modules.

Return to Top



v2.4.0

Release Date: 2020-05-11

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

General

  • Added a code coverage section to the pythonpackage.yml file.

  • Added the codecov.yml file for coverage reports.

Changed

General

  • Changed the PyPI Development Status in setup.py to be Development Status :: 4 - Beta.

Fixed

Primary Modules

Fixes to the primary modules.

  • Fixed how and when values are cast to integers in khoros.objects.users._get_user_identifier().

  • Added missing method calls for the khoros.core.Khoros._import_message_class() and khoros.core.Khoros._import_album_class() methods in the initialization method for the khoros.core.Khoros class.

Return to Top



v2.3.0

Release Date: 2020-05-08

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

General

  • Added requests-toolbelt==0.9.1 to the requirements.txt file.

Changed

Primary Modules

Changes to the primary modules.

Documentation

Changes to the documentation.

  • Added a full docstring to the khoros.api._api_request_with_payload() function.

Fixed

Primary Modules

Fixes to the primary modules.

  • Removed the Aurea reference from the failure message in khoros.api._api_request_with_payload.

Supporting Modules

Fixes to the supporting modules.

  • Changed “v1” to “v2” in the full error message string within the khoros.errors.handlers._get_v2_error_from_json() function.

Return to Top



v2.2.0

Release Date: 2020-04-26

Added

Primary Modules

Additions to the primary modules.

  • Added the ability to use environmental variables to initialize the khoros.core.Khoros object.
    • Added the khoros.core.Khoros._parse_env_settings() method to parse the environmental variables.

  • Added the khoros.core.Khoros._session_auth_credentials_defined() method to automatically set the auth_type value in the _settings attribute to be session_auth if a session authentication username and password have been defined.

Supporting Modules

Additions to the supporting modules.

Examples

New additions to the example files for the library.

  • Added the custom_env_variables.json file.

  • Added the custom_env_variables.yml file.

Documentation

Additions to the documentation.

General

  • Added the encrypted YAML Helper configuration file khoros_helper.yml.gpg in the khoros/utils/tests/ directory for use with pytest.

  • Added the shell script decrypt_helper.sh in the .github/scripts/ directory per GitHub guidelines.

  • Updated the pythonpackage.yml workflow for GitHub Actions to decrypt the helper configuration file (YAML) and utilize environment variables.

Changed

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

  • Replaced the yaml.load() function call with yaml.safe_load() in khoros.utils.helper.import_yaml_file() as it is a better security practice.

  • Introduced support for JSON formatted helper configuration files in khoros.utils.helper.

  • Removed the extra preceding underscore in private functions within khoros.utils.helper.

Documentation

Changes to the documentation.

  • Added :special-members: __init__ to the khoros and khoros.core modules to display the docstrings for the __init__ method in the khoros.core.Khoros object class.

  • Replaced NoneType with None in function and method docstrings to use proper syntax and to comply with PEP 287.

Return to Top



v2.1.0

Release Date: 2020-04-23

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

Changed

Primary Modules

Changes to the primary modules.

Fixed

Primary Modules

Fixes to the primary modules.

Documentation

Fixes to the documentation.

Supporting Modules

Additions to the supporting modules.

Return to Top



v2.0.0

Release Date: 2020-04-10

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

General

Changed

Primary Modules

Changes to the primary modules.

  • Updated the khoros.liql.perform_query() function to allow a raw LiQL query to be passed rather than only pre-formatted query URLs.

  • Updated the khoros.liql.perform_query() function to include an optional verify_success argument which verifies that the API query was successful and raises the khoros.errors.exceptions.GETRequestError exception if not.

  • Removed the unnecessary import requests line in the khoros.liql module.

  • Renamed the khoros.core.Khoros.__connect_with_session_key() method to be khoros.core.Khoros._connect_with_session_key() (single underscore prefix) instead.

  • Renamed the khoros.core.Khoros.__define_url_settings() method to be khoros.core.Khoros._define_url_settings() (single underscore prefix) instead.

  • Renamed the khoros.core.Khoros.__parse_helper_settings() method to be khoros.core.Khoros._parse_helper_settings() (single underscore prefix) instead.

  • Renamed the khoros.core.Khoros.__populate_auth_settings() method to be khoros.core.Khoros._populate_auth_settings() (single underscore prefix) instead.

  • Renamed the khoros.core.Khoros.__populate_construct_settings() method to be khoros.core.Khoros._populate_construct_settings() (single underscore prefix) instead.

  • Renamed the khoros.core.Khoros.__populate_core_settings() method to be khoros.core.Khoros._populate_core_settings() (single underscore prefix) instead.

  • Renamed the khoros.core.Khoros.__validate_base_url() method to be khoros.core.Khoros._validate_base_url() (single underscore prefix) instead.

Supporting Modules

Changes to the supporting modules.

Documentation

Changes to the documentation.

General

  • Changed the Development Status in setup.py to be 3 - Alpha.

Fixed

Primary Modules

Fixes in the primary modules.

  • Updated the khoros.liql.format_query() function to properly encode the double-quote (") character and several other special characters.

Documentation

Fixes in the documentation.

Return to Top



v1.2.0

Release Date: 2020-03-22

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

Changed

Primary Modules

Changes to the primary modules.

Supporting Modules

Changes to the supporting modules.

Return to Top



v1.1.0

Release Date: 2020-03-17

Added

Primary Modules

Additions to the primary modules.

Supporting Modules

Additions to the supporting modules.

Documentation

Additions to the documentation.

Return to Top