Skip to content

All versions since 0.7.0.20241113.1

0.7.0.20241113.1

API version: 7.1.0

Convenience wrappers:

  • expose wrapped hco for Job, WorkFlow and ProcessingStep. Rename e.g. job._job -> job.job_hco
  • on delete of Job, WorkFlow and ProcessingStep the internal HCO will be set to None, added checks for better error messages
  • from_hco() functions no longer require a client, the one from the hco is extracted
  • Job.delete_subjobs_with_data() now is recursive. It calls itself for subjobs (with same parameters)

Link:

  • All Link now have a exists() function which returns true if the resource can be retrieved
  • Link equality now uses target URL for comparison (not object reference)

Misc:

  • Added media types for workflows WORKFLOW_DEFINITION and WORKFLOW_REPORT
  • Fix job_hco now exposes current parameters of the job

0.8.0

API version: 7.2.0

  • Adapt to new API
  • Extend ProcessingStep registration and editing parameters to allow versions to be set and edited
  • ProcessingStep versions are now used everywhere

0.9.0.20241203.1

API version: 7.3.0

  • Adapt to new capabilities in API version 7.3.0

0.9.1.20241213.2

API version: 7.3.1

  • Fix missing Name property for DataSlots in Job
  • Fix: relax deserialization so additional fields can be ignored (for DataSlots)

0.9.2.20250317.3

API version: 7.3.1

  • Refactored import structure in __init__.py files to ease usage
  • Bugfixes in integration tests
  • Added integration tests for API helpers in ProCon
  • Added version selection for Job.select_processing()

0.9.2.20250403.1

API version: 7.4.0

  • Expose owner id on WorkData, Job and ProcessingStep

0.9.2.20250506.42

API version: 7.5.0

  • Adapt to new capabilities in API version 7.5.0
  • Can hide processing steps, ability to query processing steps by IsConfigured parameter
  • Job now keeps track of its started time, if it has been started

0.9.2.20250515.43

API version: 7.6.0

  • Adapt to new capabilities in API version 7.6.0
  • Can execute new action RapidJobSetup to create and configure the job in a single request.
  • Add helper function in job helper to execute this action and return Job instance.
  • Add a new function ‘wait_for_completion’ in job convenience class to wait for job completion
  • Uploaded WorkData file can now have non-ascii characters in its filename

0.9.2.20250728.45

API version: 8.0.0

  • Add organizaion_id to InfoHco
  • Rename user groups to user grants everywhere

0.9.2.20250827.46

API version: 8.1.0

  • Can copy WorkData and Processing steps from organization to user and conversely user to organization.

0.9.2.20250828.47

API version: 8.2.0

  • Can delete Processing step if the step is not used by any job.

0.9.2.20250908.48

API version: 8.3.0

  • Separate admin and normal query for used tags for Jobs, steps and Workdatas.
  • Fix for select_processing function in job convenience class in case multiple processing steps with same name exist

0.9.2.20251028.52

API version: 8.5.0

  • Processing steps can now be deprecated. Jobs using deprecated processing steps can not be started.

0.10.0.20251104.57

API version: 8.6.0

  • Integrate API events into client
    • Wait for job completion will now use API events (SSE) removing the need for polling
    • Extend and improve JobGroup to use API event for monitoring the progress
      • new function: wait_any()
      • Use set to ensure uniqueness of monitored jobs
      • better error messages
  • Add client side caching so some long lived resources (determined by cache headers of API)
  • Timeouts are now provided in seconds
  • Expose endpoints for API events and image registry in Info endpoint

0.10.3rc1

API version: 8.8.0

  • Adapt to new jma api with processing step deployment features.

0.10.4rc1

API version: 8.8.0

  • Add deployment properties to ProcessingStep HCO
  • Add remote endpoint to Info->Remote
  • Add missing name property to In/OutputDataSlotHco
  • Fix naming processing_step_hco.deprecated_on -> processing_step_hco.deprecated_at

0.10.5rc1

API version: 9.0.0

  • Adopt to new API (query and sort by version, new register action for ProcessingSteps)
  • Add missing properties in ProcessingStep HCO
  • Handle error on upload

0.10.6rc1

API version: 9.1.0

  • Allow filtering ProcessingSteps by ProCon version property, by exact string match
  • Improved some error messages

1.0.0

API version: 9.1.0

  • Refactoring to have a “module” based import: from pinexq.client.<...>

1.1.0

API version: 9.2.0

  • Adapt to API version
  • Jobs, WorkData and ProcessingSteps HCOs now have TagDetails

1.2.0

API version: 9.3.0

  • Add query convenience classes for Job, ProcessingStep and WorkData for easier querying
  • Introduce new resource presets for deployment: xsmalland XXLarge

1.3.0

API version: 9.4.0

  • Adapt to new API with secret workdata.

1.4.0

API version: 9.5.0

  • Adapt to new API with Logs and metrics.

1.5.0

API version: 9.6.0

  • Allow Job, WorkData and ProcessingStep queries to use TQL (Task Query Language)
  • Adapt convenience query methods to allow TQL

1.5.2

API version: 9.6.0

  • Fix for searching processing steps by name and version

1.6.0

API version: 9.7.0

  • Adapt to API version 9.7.0.
  • Add HCOs for the new Action root, Action Templates and Action Triggers.
  • Add convenience wrappers ActionTemplate, ActionTemplateQuery, CronTrigger and CronTriggerQuery.

1.7.0

API version: 9.7.0

  • Add DataSlot support for Action templates.

1.8.0

API version: 9.7.0

  • Adapt Action Trigger helpers and models to support time zones, optional start dates and optional expiry dates.
  • Add Action Template TQL query support, matching the existing TQL support for Jobs, ProcessingSteps and WorkData.

1.9.0

API version: 9.8.0

  • Adaptation to new API (internal)

1.10.0

API version: 9.10.0

  • Adapt to new API with folder support.

1.11.0

API version: 9.10.0

  • Add TenantId to the Info model, so reading Info from JMA 1.0.0 or later no longer logs an “extra properties” warning.

2.0.0

API version: 10.0.0

  • Adapt to JMA 2.0.0 (API 10.0.0).
  • Breaking: ProcessingStep.copy_from_user_to_org() and ProcessingStep.copy_from_org_to_user() are removed, together with their HCO actions, because JMA no longer copies ProcessingSteps. Register the step under the destination owner instead.
  • Breaking: The folder-source parameters of a Job input DataSlot (SetDataSlotFolderSourceParameters) take folder_url (the URL of an existing folder, or None for the owner’s root) instead of a folder path.
  • Add Job.create(name, folder=...) to create a Job inside a folder.
  • Add Job.set_output_folder(index, folder_path) to file an output DataSlot’s WorkData into a folder.
  • Add Job.resolve_input_dataslot(index) and Job.clear_resolved_input_dataslot(index) for folder-sourced input DataSlots.
  • Add ActionTemplate.set_dataslot_folder_source(slot_index, folder, recursive=True), ActionTemplate.resolve_dataslot(slot_index) and ActionTemplate.clear_resolved_dataslot(slot_index).
  • Fix: a required action parameter set to None on purpose (for example the owner’s root folder) is sent as null instead of being left out.

2.1.0

API version: 10.1.0

Added

  • WorkData.create() takes folder, tags and secret and creates the WorkData with them in one request; WorkDataUploadAction.execute() takes an optional UploadWorkDataParameters. JMA rejects an unknown folder or an invalid tag before it stores any content. Without parameters the request is unchanged, so uploads keep working against an older JMA.
  • WorkData.create()’s folder accepts a Folder, a FolderHco or a FolderLink.
  • Upload actions classed FileUploadActionWithParameter are accepted.

Changed

  • A failed upload raises a ClientException carrying the server’s problem details instead of only “Upload did not respond with location”.

2.2.0

API version: 10.2.0

Added

  • File Action Templates and Cron Triggers in folders: ActionTemplate and CronTrigger take an optional folder on create, get move_to_folder() and a folder filter on their query helpers. Their HCOs expose folder_path, parent_folder_link and move_to_folder_action.
  • Folder contents list Action Templates and Cron Triggers in action_templates and action_triggers; FoldableItemType gains ACTION_TEMPLATE and ACTION_TRIGGER.
  • ActionTemplate.set_job_folder() sets the folder for Jobs created from the template; the template HCO exposes job_folder and set_job_folder_action.

Changed

  • An output DataSlot without a target folder files its WorkData into the Job’s folder instead of the owner’s root (JMA #202); "/" is an explicit root target. Docstrings of set_output_folder and OutputDataSlotSetFolderAction describe the new default.

2.3.0

API version: 10.4.0

Added

  • ActionTemplate.set_job_folder() accepts date placeholders such as {{date+1@Europe/Berlin}}, filled in when a Job is created from the template (UTC by default).
  • Models for the JMA statistics (API 10.3.0).

2.4.0

API version: 10.5.0

Added

  • JobHco.scheduled_at: the UTC time a Job moved from ReadyForProcessing to Pending. It is None until the Job is scheduled, and for Jobs scheduled before JMA 2.7.0 that never started.

2.5.0

API version: 11.0.1

Added

  • Models for the statistics of JMA API 11: StatisticsRootHtoOpenApi, the windows uploaded_from and processing_steps_from in StatisticsQueryParameters, and in StatisticsHtoOpenApiProperties the windows a result covers plus work_data_per_user, work_data_per_kind, upload_days, processing_steps and the new per-day fields of CompletionDayHto (compute_ms, time_to_start_p50_ms, time_to_start_p90_ms, produced_bytes).

Changed

  • Generated from JMA API 11.0.1 (JMA 2.8.1): enter_jma() against JMA 2.8 no longer warns about an API version mismatch.

2.5.1

API version: 11.0.1

Fixed

  • set_tags and uploads with tags= accept tag values that are not ISO 8601 timestamps, such as Version=1.7.0, against JMA 2.8.2 and later. Earlier JMA versions read such a value as a date (1.7.0 as 2000-01-07) and rejected it with 400 “Detected timestamp without defining time zone”. The fix is in JMA; this package is unchanged apart from integration tests for it.

2.6.0

API version: 11.1.0

Added

  • ProcessingStep.configure_deployment() takes resources=ResourcesConfiguration(cpu_millicores=..., memory_mi_b=..., disk_gi_b=...) as an alternative to resource_preset=. Pass exactly one of the two, otherwise the call raises ApiException; so do values that are not greater than zero or exceed the platform’s resource ceiling. resource_preset= keeps working as before and now stands for fixed values: xsmall 250/512/3, small 500/1024/5, medium 1000/4096/10, large 3000/14336/70, xlarge 6000/28672/200, xxlarge 14000/60416/300 (millicores/MiB/GiB). The deployment of a ProcessingStep (processing_step_hco.deployment) shows cpu_millicores, memory_mi_b and disk_gi_b; resource_preset is set only when the values are exactly those of a preset. Needs JMA API 11.1.

2.6.1 Latest

API version: 11.1.0

Fixed

  • Published to PyPI. 2.6.0 reached only the internal package feed: its release pipeline failed before the PyPI upload. 2.6.1 contains the same code, so its changes are those listed under 2.6.0 below; use 2.6.1 instead of 2.6.0.