Repository navigation
Docs: Clarify original Python SDK vs SDK 2.0 and fix broken SDK examples - #604
Conversation
…les (#589) Add a "Which Python SDK Should I Use?" section and an SDK 2.0 quick start to the Python SDK pages, and label the original client examples. Rewrite Python, Java, and Go examples across the API reference and SDK pages so they use methods that exist and run against real servers: - replace missing calls (delete_by_name, votes, profiler, get_client, Topics, MlModelServices, fluent Java statics, Go Rest client) - use filters={} and .entities for list calls, .root for wrapped values - require /api in configure(host=...) and use authProvider="openmetadata" - fix invalid field names, profiler paths, and payload shapes - use a valid status in v1.13.x data contracts and a placeholder for the joins startDate Applied to v1.13.x, v2.0.x, and v2.1.x-SNAPSHOT.
|
Preview deployment for your docs. Learn more about Mintlify Previews.
💡 Tip: Enable Automations to automatically generate PRs for you. |
- Parse get_versions results with json.loads on all versions pages - Use .entities and .owners.root in list examples; fix indexes typo - Use domains and plain data product names across data product pages - Align test suite examples on basic, logical, and one example FQN - Use client.topics() in the Topics Java example; explain restore in service delete examples; use a valid UUID literal in vote examples - Reword the getting-started note to cover the Topics pages - Style fixes: Oxford commas, contractions, headings, parentheticals
- Keep the data product domain filter key consistent across examples - State that data product names are unique across all data products - Use the full data contract name in create and retrieve responses - Fix missing or wrong Java imports in the SDK info and lineage pages - Note that the Java AI SDK builder uses skills instead of abilities - Expand JWT and OIDC on first use; replace Latin abbreviations - Align Java and Python fields for service retrieve examples
- Use the full data contract name in by-name examples and responses - Define the joins startDate placeholder and align dayCount - Title-case the Go method headings; expand CA on first use - Use domains in the database services retrieve example - Align the glossary term Java filter ID with the cURL example
- Add the client setup comment to Java examples that use client - Add missing imports, intro sentences, and link wording - Use domains in database retrieve and list field descriptions - Remove the SLA validation example from v1.13.x contract validation - Describe the contract SLA fields accurately
- Use the domains array for create and update body fields and responses - Replace e.g. with for example in API reference text - Print wrapped values with .root and enum values with .value - Remove a duplicate client comment; add intro text under headings
ayush-shah
left a comment
There was a problem hiding this comment.
Reviewed commit 28b82b523ace6e64178a3083772397760f069848. No validated P0–P2 defect introduced or materially exposed by this diff was found. The release/runtime verification and any merge conflicts recorded in the review remain outstanding.
…-docs-fix # Conflicts: # v1.13.x/api-reference/data-quality/test-definitions/create.mdx # v2.0.x/api-reference/data-quality/test-definitions/create.mdx # v2.1.x-SNAPSHOT/api-reference/data-quality/test-definitions/create.mdx
Review ReportContent type: Documentation Reviewed revision: 166239d Automated review skipped because the PR exceeds the size limit. This is not a pass: no findings were assessed. View job · skipped: 285 files > 50 |
Addresses #589. Not marked as closing it because engineering has not yet confirmed the SDK recommendation (see below).
Summary
A customer on 1.13.x could not tell whether to use the original Python SDK or SDK 2.0, and found the SDK 2.0 examples wrong or incomplete. This PR adds the missing guidance and fixes the examples. It applies to v1.13.x, v2.0.x, and v2.1.x-SNAPSHOT.
Guidance added
configure()plus create, update, delete), shared throughsnippets/sdk/.api-reference/getting-started.mdxnow uses SDK 2.0 in both steps, with a note explaining the split.Examples fixed
I ran the Python, Java, and Go examples against real servers (2.0.3 and 1.13.6) and fixed what failed:
delete_by_name, votes, profiler helpers,get_client, the PythonTopicsandMlModelServicesclasses, fluent Java static methods that don't exist (for exampleTables.retrieve), and the GoRestclient. Topics and ML model services now use the original client.configure(host=...)needs a URL ending in/api(Go is the opposite: no/api).authProvider="collate"is invalid and is now"openmetadata".filters={}and.entities. Wrapped values print with.root.fieldsvalues (owner,domain), wrong profiler paths, vote keys, sample data, observability and data model payloads were corrected.Activeis not a valid status and is replaced withApproved. The joinsstartDateuses a placeholder because it must fall within the past 30 days.How this was checked
go buildandgo vet, and run live. There is no 2.0.3 Go tag, so they were checked against the 1.13.0 client.mint broken-linkswith external, snippet, and redirect checks on the changed files: no broken links.scripts/check-release-consistency.sh: no newCHECKlines compared withmain.Needs follow-up
snippets/sdk/python-sdk-choice.mdx, so changing them is a single-file edit.domainbody field where the server expectsdomains.retrievereturnsNonefor a missing entity, andget_versionsreturns JSON strings.sdk/python.mdxtutorial, and the v2.1.x-SNAPSHOT Maven coordinates that still show 2.0.5.