Sitelet https://github.com/crowdin/crowdin-api-client-python/issues/286
Skip to content

v2 release planning #286

Description

@andrii-bodnar

Remove deprecated code

  • The AI custom placeholder methods, upload_translation, and the Enterprise project-level report settings templates.
  • The misspelled edit_applicatoin_installation, legacy report types, and translateUntranslatedOnly, splitFiles, glossaryAccess, preTranslationAiPromptId.
  • Dead enum values: /url in the webhook patch paths, /shortcuts in AI settings, SPLIT_FILES, BundlePatchPath.DESCRIPTION, and the ScopeType.GRPOUP typo.
  • The QA revalidation calls without revalidationId.

Make the API consistent

  • Naming: use camelCase parameters everywhere. BranchesResource, StringCorrectionsResource, import_translations and the report methods still use project_id-style names.
  • Project ID: make projectId optional, falling back to the client's project, on every project-scoped method.
  • Branches: keep one implementation. The branch methods currently exist on both BranchesResource and SourceFilesResource.
  • Argument order: move parameters that the API made optional (fileIds, languageIds, format, exportPattern, task fileIds/type) behind keyword-only arguments.
  • Required fields: enforce fields the spec now requires, such as config when adding a field.
  • Renames: rename preTranslationId to jobIdentifier, and turn ContributionMode into a real Enum.

Change the requester

  • Nulls: stop stripping None from request bodies, or give callers a way to send null. Right now you can't clear a key-value TTL or store nulls in app data.
  • Dates in query params: serialize them as ISO-8601. Today they go out with a space instead of T, and dates without a timezone crash.
  • List params: comma-join lists, tuples and sets in one place instead of in each method.

Drop Python 3.8

  • It is end-of-life. Dropping it would allow X | Y unions and the typing.TypedDict import directly.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions