Skip to content

Releases: fasteiner/xurrent-python

Release v0.12.0-preview.1

13 Apr 20:58

Choose a tag to compare

Pre-release

Added

  • Docs: added CLAUDE.md with setup instructions, test commands, architecture overview, and changelog requirements for Claude Code.
  • Products: added Product class with ProductPredefinedFilter and ProductDepreciationMethod enums; supports CRUD, enable/disable, and CI listing.
  • ProductCategories: added ProductCategory class with ProductCategoryRuleSet enum; supports CRUD and enable/disable.
  • Organizations: added Organization class with OrganizationPredefinedFilter enum; supports CRUD, enable/disable, archive/trash/restore, people and child org listing.
  • Sites: added Site class with SitePredefinedFilter enum; supports CRUD, enable/disable, archive/trash/restore.
  • OutOfOfficePeriods: added OutOfOfficePeriod class with OutOfOfficePeriodPredefinedFilter enum; supports CRUD and DELETE.
  • Holidays: added Holiday class; supports CRUD.
  • CustomCollections: added CustomCollection class with CustomCollectionPredefinedFilter enum; supports CRUD, enable/disable, and element listing.
  • CustomCollectionElements: added CustomCollectionElement class with CustomCollectionElementPredefinedFilter enum; supports CRUD and enable/disable.
  • ShopArticleCategories: added ShopArticleCategory class with ShopArticleCategoryPredefinedFilter enum; supports CRUD.
  • ShopArticles: added ShopArticle class with ShopArticlePredefinedFilter and ShopArticleRecurringPeriod enums; supports CRUD and enable/disable.
  • ShopOrderLines: added ShopOrderLine class with ShopOrderLinePredefinedFilter, ShopOrderLineStatus, and ShopOrderLineRecurringPeriod enums; supports CRUD.
  • Services: added Service class with ServicePredefinedFilter enum; supports CRUD and enable/disable.
  • Calendars: added Calendar class with CalendarPredefinedFilter enum; supports CRUD and enable/disable.
  • TimeAllocations: added TimeAllocation class with TimeAllocationPredefinedFilter and category enums; supports CRUD and enable/disable.
  • EffortClasses: added EffortClass class with EffortClassPredefinedFilter enum; supports CRUD and enable/disable.
  • RequestTemplates: added RequestTemplate class with RequestTemplatePredefinedFilter, RequestTemplateCategory, RequestTemplateStatus, and RequestTemplateImpact enums; supports CRUD and enable/disable.
  • UiExtensions: added UiExtension class with UiExtensionCategory enum; supports CRUD and enable/disable.
  • WorkflowTemplates: added WorkflowTemplate class with WorkflowTemplatePredefinedFilter and WorkflowTemplateCategory enums; supports CRUD and enable/disable.

Changed

  • People: Person now deserializes site (→ Site) and organization (→ Organization) references; also fixed a People.from_data typo in update().
  • ConfigurationItems: ConfigurationItem now deserializes the product reference (→ Product).
  • Products: Product now deserializes the category reference (→ ProductCategory).
  • CI: updated GitHub Actions in release.ymlGitTools/actions v0v3 (latest version compatible with GitVersion 5.x; v4+ requires GitVersion ≥6.1), stefanzweifel/git-auto-commit-action v5v7, softprops/action-gh-release v1v2.
  • CI: updated python-package.ymlactions/setup-python v3v5; added pip install . so the package itself is installed before tests run; added a flake8 lint step (syntax errors and undefined names only); split test run into separate Unit tests and Integration tests steps so unit tests always run regardless of credentials; added Python 3.14 to the test matrix.

Release v0.11.0

13 Apr 20:11

Choose a tag to compare

Added

  • Core: support OAuth client credentials authentication via client_id and client_secret in XurrentApiHelper while maintaining API key compatibility.
  • Core: The OAuth token endpoint now dynamically determines the domain from base_url, preserving any regional subdomains to ensure consistency between API and OAuth endpoints.
  • Core: When using OAuth, if a 401 Unauthorized error is received, the token is automatically refreshed and the API call is retried once. If authentication still fails after token refresh, an explicit HTTPError is raised.

Release v0.11.0-preview.4

09 Oct 14:10

Choose a tag to compare

Pre-release

Added

  • Core: support OAuth client credentials authentication via client_id and client_secret in XurrentApiHelper while maintaining API key compatibility.
  • Core: OAuth token endpoint TLD is now dynamically derived from the API base URL, ensuring the same top-level domain is used for both API and OAuth.
  • Core: When using OAuth, if a 401 Unauthorized error is received, the token is automatically refreshed and the API call is retried once. If authentication still fails after token refresh, an explicit HTTPError is raised.

Release v0.11.0-preview.10

09 Oct 14:34

Choose a tag to compare

Pre-release

Added

  • Core: support OAuth client credentials authentication via client_id and client_secret in XurrentApiHelper while maintaining API key compatibility.
  • Core: The OAuth token endpoint now dynamically determines the domain from base_url, preserving any regional subdomains to ensure consistency between API and OAuth endpoints.
  • Core: When using OAuth, if a 401 Unauthorized error is received, the token is automatically refreshed and the API call is retried once. If authentication still fails after token refresh, an explicit HTTPError is raised.

Release v0.10.0

16 Aug 09:46

Choose a tag to compare

Added

  • Core: Added bulk_export() function to dowload bulk record data

Changed

  • Core: Switched to a requests.session object to enable persistent connection recycling.
  • Core: Provide options to disable pagination and prevent api result's JSON parsing (in association with bulk_export).

Fixed

  • Core: do not prepend the base_url to the uri of an api_call if a protocol is already included (i.e. uri is already fully-formed).

Release v0.7.0

13 Jun 12:50

Choose a tag to compare

Added

.devcontainer/devcontainer.json

  • Introduced a new Visual Studio Code development container configuration to streamline the development environment.
    • Uses the base Ubuntu image from Microsoft's devcontainers.
    • Adds common development utilities via common-utils feature.
    • Installs VS Code extensions:
      • elagil.pre-commit-helper
      • ms-python.python
    • Runs .devcontainer/setup.sh post container creation for environment setup.

.devcontainer/setup.sh

  • Added a setup script for the development container:
    • Installs Poetry package manager.
    • Installs all project dependencies, including development dependencies.
    • Activates the Poetry virtual environment and opens a shell.
    • Installs pre-commit hooks for code quality enforcement.

Changed

Contributing.md

  • Updated instructions for activating the Poetry virtual environment:
    • Changed from poetry shell to eval $(poetry env activate) for improved shell compatibility and automation.

README.md

  • Added badges to the top of the README for enhanced project visibility:
    • PyPI version badge.
    • PyPI downloads badge.
    • GPL v3 License badge.

pyproject.toml

  • Added new dependency:
    • shell package (^1.0.1) for enhanced shell scripting and command execution capabilities within the project.

Release v0.7.0-preview.2

13 Jun 12:46

Choose a tag to compare

Pre-release

Added

.devcontainer/devcontainer.json

  • Introduced a new Visual Studio Code development container configuration to streamline the development environment.
    • Uses the base Ubuntu image from Microsoft's devcontainers.
    • Adds common development utilities via common-utils feature.
    • Installs VS Code extensions:
      • elagil.pre-commit-helper
      • ms-python.python
    • Runs .devcontainer/setup.sh post container creation for environment setup.

.devcontainer/setup.sh

  • Added a setup script for the development container:
    • Installs Poetry package manager.
    • Installs all project dependencies, including development dependencies.
    • Activates the Poetry virtual environment and opens a shell.
    • Installs pre-commit hooks for code quality enforcement.

Changed

Contributing.md

  • Updated instructions for activating the Poetry virtual environment:
    • Changed from poetry shell to eval $(poetry env activate) for improved shell compatibility and automation.

README.md

  • Added badges to the top of the README for enhanced project visibility:
    • PyPI version badge.
    • PyPI downloads badge.
    • GPL v3 License badge.

pyproject.toml

  • Added new dependency:
    • shell package (^1.0.1) for enhanced shell scripting and command execution capabilities within the project.

Release v0.6.0

24 Feb 14:11

Choose a tag to compare

Changed

  • Ensure that version numbers in ChangeLog and releases are in sync

Release v0.6.0-preview.11

24 Feb 14:09

Choose a tag to compare

Pre-release

Changed

  • Ensure that version numbers in ChangeLog and releases are in sync

Release v0.5.0

24 Feb 13:50

Choose a tag to compare

Changed

  • Corrected ReadMe links