feat(databases): add description field to fork lineage - #199
hotdata-automation[bot] wants to merge 1 commit into
Conversation
|
|
||
| ### Changed | ||
|
|
||
| - feat(databases): add description field to fork lineage |
There was a problem hiding this comment.
The [Unreleased] entry does not describe this regeneration. This PR removes two public methods and adds four public methods, and neither group is recorded.
Removed from ConnectionsApi:
purge_connection_cache(DELETE /v1/connections/{connection_id}/cache)purge_table_cache(DELETE /v1/connections/{connection_id}/tables/{schema}/{table}/cache)
Failure scenario: a user on 0.11.0 upgrades and calls connections_api.purge_connection_cache(cid). Python raises AttributeError: 'ConnectionsApi' object has no attribute 'purge_connection_cache'. The CHANGELOG offers no explanation, so the user cannot tell an SDK bug from an intentional API retirement.
The 0.11.0 entry records the equivalent endpoint retirements under a ### Removed heading with a **Breaking:** prefix. Follow that convention here.
Also add the new surface under ### Added:
DatabasesApi.get_database_lineage,DatabasesApi.lookup_database_by_name,DatabasesApi.set_database_table_constant_per_keyConnectionsApi.set_managed_table_constant_per_key- models
DatabaseLineageResponse,ForkedFromInfo,LineageAncestorInfo,LineageForkInfo,ManagedTableConstantPerKeyResponse,UpdateManagedTableRequest LoadManagedTableRequest.modenow acceptsdelete,update, andupsert
There was a problem hiding this comment.
Review
Context disclosure: the full diff was omitted from the review prompt because of its size. gh pr diff 199 returned 460 KB, too large to read in one pass. Review is based on that diff file searched by path and hunk, plus direct reads of CHANGELOG.md, hotdata/models/database_lineage_response.py, hotdata/models/forked_from_info.py, hotdata/models/lineage_fork_info.py, hotdata/models/update_managed_table_request.py, hotdata/models/managed_table_constant_per_key_response.py, hotdata/api/databases_api.py, hotdata/api/connections_api.py, tests/integration/test_connections_read.py, tests/integration/test_database_fork.py, tests/integration/test_managed_tables_lifecycle.py, .github/workflows/integration-tests.yml, and .github/workflows/check-release.yml. Every new generated model was read in full.
The generated code itself is consistent. Both blocking issues concern surrounding files that the regeneration left behind.
Blocking Issues
-
CHANGELOG.md:12— the entry omits two breaking removals and four new endpoints. See the inline comment. This PR deletesConnectionsApi.purge_connection_cacheandConnectionsApi.purge_table_cache. The CHANGELOG records onlyfeat(databases): add description field to fork lineage. -
tests/integration/test_connections_read.py:32— the test calls a method this PR deletes. Line 32 callsconnections_api.purge_connection_cache(connection_id).hotdata/api/connections_api.pyno longer defines that method. Failure scenario: the@pytest.mark.skipon line 15 hides this today, so theIntegration Tests / integrationjob stays green. The skip reason says to re-enable once the seeded connection is restored. On that day the test raisesAttributeError: ConnectionsApi object has no attribute purge_connection_cacheinstead of testing the connection. Fix: delete lines 31-32, and update the module docstring on line 4, which still lists cache purge as covered behavior.
Action Required
- Rewrite the
[Unreleased]CHANGELOG section. Add aRemovedblock marked**Breaking:**for the two purge methods, matching the 0.11.0 entry. Add anAddedblock for the new endpoints and models. - Remove the
purge_connection_cachecall and the stale docstring line fromtests/integration/test_connections_read.py.
Note on tests/integration/test_managed_tables_lifecycle.py:17: the docstring mentions a purge_table_cache step that the scenario skips. No code depends on it, so it is safe to leave, but it now names a method the SDK does not expose.
Auto-generated from the updated HotData OpenAPI spec.
Source: https://github.com/hotdata-dev/www/pull/432