Funcx-common

Latest version: v0.0.25

Safety actively analyzes 642295 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 4

0.0.16

Added

- Add `queue_name` field to `RedisTask`. This specifies the name of the AMQP
queue where this task's result will be put or found. If not set, this task's
result will not be placed into an AMQP queue.

0.0.15

Added

- Added a `.status_log` property to the RedisTask object. The state log
requires an atomic append, so this cannot be implemented as another field in
the RedisTask hash. Instead, it is implemented as a top-level array.

0.0.14

Changed

- `Task` messages no longer require `container_id`, in support of running tasks that don't require containers.

Added

- An `sdk_version_sharing` module for centralizing the behavior where the SDK sends its version string to the Web Service for logging.

- A new error class has been added, `messagepack.WrongMessageTypeError`

- All `messagepack.Message` objects now support a new method,
`assert_one_of_types`, which takes `Message` subclasses as arguments and
raises a `WrongMessageTypeError` if `isinstance(..., message_types)` does not
pass

0.0.13

Added

- `funcx_common.messagepack` now provides a default `MessagePacker` instance,
created at import time. This also allows for `pack` and `unpack` methods to
be provided as functions from the package. The following names are now
available for import and use:

- `funcx_common.messagepack.DEFAULT_MESSAGE_PACKER`
- `funcx_common.messagepack.pack`
- `funcx_common.messagepack.unpack`

- `funcx_common.messagepack.message_types.Result` now supports two new
optional attributes: `exec_start_ms` and `exec_end_ms`, for execution timing
info in milliseconds since epoch.

- `funcx_common.messagepack.message_types.Result` has a computed property
`exec_duration_ms` which takes `exec_end_ms - exec_start_ms`

0.0.12

Added

- `InvalidAuthToken` and `InsufficientAuthScope` error classes were added for auth errors that occur in the web service

- Implementation of v1 of the `funcx.messagepack` protocol.
See [the readme](src/funcx_common/messagepack/) for more info

- The following message types have been added to `messagepack`: `Result`,
`TaskCancel`

- `Result` defines an additional model for de/serializing errors:
`funcx_common.messagepack.message_types.ResultErrorDetails`. The
`ResultErrorDetails` object is used to wrap a string code and a user-facing
message

- `TaskCancel` is defined only to have the `task_id` field

Removed

- Remove the v0 implementation of `funcx.messagepack`

- The following message types have been removed from `messagepack`:
`Heartbeat`, `HeartbeatReq`, `ResultsAck`

Changed

- `pydantic>=1,<2` is now required by `funcx-common`

- Messages in the `funcx.messagepack` subpackage are now pydantic models, and their
members have changed. The `message_type` is now a `str`, not an enum

0.0.11

Added

- A new class, `funcx_common.redis_task.RedisTask` has been added, which
implements the `TaskProtocol` backed with `RedisField` attributes. This
follows the pattern of existing implementations.

- `RedisTask.load` is added as a classmethod for loading tasks from Redis with
the requirement that the task must exist in Redis

- A new enum has been added, `funcx_common.tasks.InternalTaskState`, for
task `internal_status` values

- `funcx_common.task_storage.TaskStorage` and its child classes (`ImplicitRedisStorage` and
`RedisS3Storage`) now support `store_payload` and `get_payload` methods.

Page 2 of 4

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.