GeezerVisonThe World Wide Web, restored to 800 pixels of glory. | ||||||
| Home|About|Gaming cabinet|Archives|How it works|Starter sites | ||||||
GeezerVison is showing github.com — Update Cruise Control External Task Type by luke-e-schaefer · Pull Request #105 · scaleapi/scaleapi-python-client Conversation
|
| Filename | Overview |
|---|---|
| scaleapi/tasks.py | Renames enum member CruiseControl → Federal2dVideoAnnotation and updates its value from "cruisecontrol" to "federal2dvideoannotation" to match the new backend API type name; this is a breaking change for existing SDK consumers who reference TaskType.CruiseControl. |
| scaleapi/_version.py | Bumps version from 2.18.2 to 2.18.3; given the breaking enum rename in tasks.py, a patch bump understates the severity of the change per semver conventions. |
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A["SDK Consumer calls\nTaskType.CruiseControl"] -->|Before PR| B["Value: 'cruisecontrol'\nAPI endpoint: /task/cruisecontrol"]
A -->|After PR - AttributeError| E["❌ AttributeError: CruiseControl not found"]
C["SDK Consumer calls\nTaskType.Federal2dVideoAnnotation"] -->|After PR| D["Value: 'federal2dvideoannotation'\nAPI endpoint: /task/federal2dvideoannotation"]
style E fill:#ff6b6b,color:#fff
style D fill:#51cf66,color:#fff
This is a comment left during a code review. Path: scaleapi/tasks.py Line: 38 Comment: **Breaking change warrants a higher version bump** Renaming `TaskType.CruiseControl` to `TaskType.Federal2dVideoAnnotation` removes a public enum member entirely. Any downstream code that references `TaskType.CruiseControl` will raise an `AttributeError` after upgrading. This is a **breaking API change** for existing SDK consumers. Per semantic versioning, removing or renaming a public symbol qualifies as a breaking change and should increment the **minor** version at minimum (e.g. `2.19.0`) or the **major** version (e.g. `3.0.0`) if the project treats the public API as stable. The current bump to `2.18.3` (a patch release) signals only a backwards-compatible bug fix, which is misleading to consumers who rely on the changelog and version number to decide when to upgrade. If backward compatibility is a concern, consider keeping the old member as a deprecated alias alongside the new one: ```python Federal2dVideoAnnotation = "federal2dvideoannotation" CruiseControl = "federal2dvideoannotation" # Deprecated alias; use Federal2dVideoAnnotation ``` This allows existing users to migrate without immediately breaking. How can I resolve this? If you propose a fix, please make it concise.
Last reviewed commit: "bump version"
Context used:
Learnt From
scaleapi/scaleapi#127157
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was a problem hiding this comment.
The reason will be displayed to describe this comment to others. Learn more.
can you bump the version https://github.com/scaleapi/scaleapi-python-client/blob/master/scaleapi/_version.py?
after it's merged, it has to be deployed
Sorry, something went wrong.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
There was an error while loading. Please reload this page.
Successfully merging this pull request may close these issues.
There was an error while loading. Please reload this page.