diff --git a/.bumpversion.toml b/.bumpversion.toml index e50d6af..783b185 100644 --- a/.bumpversion.toml +++ b/.bumpversion.toml @@ -12,7 +12,7 @@ # limitations under the License. [tool.bumpversion] -current_version = "2.0.0" +current_version = "3.0.0-rc.1" commit = true message = "Update version {current_version} -> {new_version}" ignore_missing_version = true diff --git a/.secrets.baseline b/.secrets.baseline index e1737e6..6a81058 100644 --- a/.secrets.baseline +++ b/.secrets.baseline @@ -3,7 +3,7 @@ "files": "^.secrets.baseline$", "lines": null }, - "generated_at": "2026-04-09T04:39:13Z", + "generated_at": "2026-05-11T09:05:52Z", "plugins_used": [ { "name": "AWSKeyDetector" @@ -301,6 +301,66 @@ "verified_result": null } ], + "docs/chapters/05_dph_services/overview.rst": [ + { + "hashed_secret": "45d676e7c6ab44cf4b8fa366ef2d8fccd3e6d6e6", + "is_secret": false, + "is_verified": false, + "line_number": 123, + "type": "Secret Keyword", + "verified_result": null + } + ], + "docs/chapters/05_dph_services/usage_guide.rst": [ + { + "hashed_secret": "11fa7c37d697f30e6aee828b4426a10f83ab2380", + "is_secret": false, + "is_verified": false, + "line_number": 63, + "type": "Secret Keyword", + "verified_result": null + } + ], + "docs/chapters/06_odcs_generator/collibra_integration.rst": [ + { + "hashed_secret": "564e340cd48437d2dfe876ee154cc99dc4d0d137", + "is_secret": false, + "is_verified": false, + "line_number": 97, + "type": "Secret Keyword", + "verified_result": null + } + ], + "docs/chapters/06_odcs_generator/examples.rst": [ + { + "hashed_secret": "564e340cd48437d2dfe876ee154cc99dc4d0d137", + "is_secret": false, + "is_verified": false, + "line_number": 61, + "type": "Secret Keyword", + "verified_result": null + } + ], + "docs/chapters/06_odcs_generator/index.rst": [ + { + "hashed_secret": "564e340cd48437d2dfe876ee154cc99dc4d0d137", + "is_secret": false, + "is_verified": false, + "line_number": 93, + "type": "Secret Keyword", + "verified_result": null + } + ], + "docs/chapters/06_odcs_generator/informatica_integration.rst": [ + { + "hashed_secret": "564e340cd48437d2dfe876ee154cc99dc4d0d137", + "is_secret": false, + "is_verified": false, + "line_number": 77, + "type": "Secret Keyword", + "verified_result": null + } + ], "examples/auth_provider_usage.py": [ { "hashed_secret": "df5cc5832dc34a455c18662ac84587ea19cf2435", diff --git a/CHANGELOG.md b/CHANGELOG.md index 2aff2e4..a4b05d2 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,61 @@ +# [3.0.0-rc.1](https://github.com/IBM/data-intelligence-sdk/compare/v2.0.0...v3.0.0-rc.1) (2026-05-12) + + +### Perf + +* Sync from enterprise 4e91aee (via .ignore) on 2026-04-17 ([#7](https://github.com/IBM/data-intelligence-sdk/issues/7)) ([eeeffba](https://github.com/IBM/data-intelligence-sdk/commit/eeeffba17ce0e399446099d47352f7738259feae)) + + +### BREAKING CHANGES + +* Bug fixes for Data Quality and addition of Data Product Hub modules + +Signed-off-by: Koichi Nishitani + +* fix relative path of Actions scripts + +Signed-off-by: Koichi Nishitani + +* fix script condition + +Signed-off-by: Koichi Nishitani + +* fix script condition again + +Signed-off-by: Koichi Nishitani + +* add missing Makefile and fix documentation + +Signed-off-by: Koichi Nishitani + +* add dq tests and upgrade python + +Signed-off-by: Koichi Nishitani + +* try to extend build timeout + +Signed-off-by: Koichi Nishitani + +* upgrade to python 3.10 as 3.9 is EOL + +Signed-off-by: Koichi Nishitani + +* modify constraint_model to use custom StrEnum in python 3.10 + +Signed-off-by: Koichi Nishitani + +* add pylint + +Signed-off-by: Koichi Nishitani + +* skip linting until ready + +Signed-off-by: Koichi Nishitani + +* make sure to build before checking + +Signed-off-by: Koichi Nishitani + # [2.0.0](https://github.com/IBM/data-intelligence-sdk/compare/v1.0.0...v2.0.0) (2026-04-23) diff --git a/README.md b/README.md index 9040d1a..3d23332 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ See the License for the specific language governing permissions and limitations under the License. --> -# IBM watsonx.data intelligence SDK Version 2.0.0 +# IBM watsonx.data intelligence SDK Version 3.0.0-rc.1 A comprehensive Python SDK for data intelligence operations including: - **Data Quality Validation**: Validate streaming data records, Pandas DataFrames, and PySpark DataFrames @@ -295,7 +295,7 @@ container_response = dph_service.initialize( # Create a data product data_product = dph_service.create_data_product( drafts=[{ - 'version': '2.0.0', + 'version': '3.0.0-rc.1', 'name': 'My Data Product', 'description': 'A sample data product', 'asset': { @@ -1186,5 +1186,5 @@ For issues, questions, or contributions, please open an issue on GitHub. - pytest-cov >= 4.0.0 - pytest-mock >= 3.7.0 - black >= 26.3.1 -- mypy >= 2.0.0 +- mypy >= 3.0.0-rc.1 diff --git a/docs/api/data_product_recommender/index.rst b/docs/api/data_product_recommender/index.rst index 713e0f5..1f853a9 100644 --- a/docs/api/data_product_recommender/index.rst +++ b/docs/api/data_product_recommender/index.rst @@ -18,14 +18,12 @@ Data Product Recommender Reference =================================== -Class reference for the Data Product Recommender module. +The data product recommender module provides query-log analysis and platform-specific parsers. Core Classes ------------ -.. currentmodule:: wxdi.data_product_recommender.recommender - -.. autoclass:: DataProductRecommender +.. automodule:: wxdi.data_product_recommender.recommender :members: :undoc-members: :show-inheritance: @@ -33,24 +31,7 @@ Core Classes Platform Parsers ---------------- -.. currentmodule:: wxdi.data_product_recommender.platforms - -.. autoclass:: SnowflakeQueryParser - :members: - :undoc-members: - :show-inheritance: - -.. autoclass:: DatabricksQueryParser - :members: - :undoc-members: - :show-inheritance: - -.. autoclass:: BigQueryQueryParser - :members: - :undoc-members: - :show-inheritance: - -.. autoclass:: WatsonxDataQueryParser +.. automodule:: wxdi.data_product_recommender.platforms :members: :undoc-members: :show-inheritance: @@ -58,9 +39,7 @@ Platform Parsers Base Classes ------------ -.. currentmodule:: wxdi.data_product_recommender.base - -.. autoclass:: QueryLogParser +.. automodule:: wxdi.data_product_recommender.base :members: :undoc-members: :show-inheritance: diff --git a/docs/api/dph_services/core.rst b/docs/api/dph_services/core.rst index 2009b39..2c8c645 100644 --- a/docs/api/dph_services/core.rst +++ b/docs/api/dph_services/core.rst @@ -18,40 +18,20 @@ Core Classes ============ -Main service class and data models for Data Product Hub Services. +The core DPH services API provides the main service client and its available operations. + +.. currentmodule:: wxdi.dph_services.dph_v1 DphV1 Service ------------- -.. currentmodule:: wxdi.dph_services +DphV1 +~~~~~ -.. autoclass:: DphV1 +.. autoclass:: wxdi.dph_services.dph_v1.DphV1 :members: :undoc-members: :show-inheritance: :inherited-members: -Common Models -------------- - -.. autoclass:: wxdi.dph_services.common.DataProduct - :members: - :undoc-members: - :show-inheritance: - -.. autoclass:: wxdi.dph_services.common.DataProductDraft - :members: - :undoc-members: - :show-inheritance: - -.. autoclass:: wxdi.dph_services.common.ContractTerms - :members: - :undoc-members: - :show-inheritance: - -.. autoclass:: wxdi.dph_services.common.Domain - :members: - :undoc-members: - :show-inheritance: - .. Made with Bob \ No newline at end of file diff --git a/docs/api/dph_services/index.rst b/docs/api/dph_services/index.rst index d9adaa6..791166a 100644 --- a/docs/api/dph_services/index.rst +++ b/docs/api/dph_services/index.rst @@ -18,91 +18,29 @@ DPH Services API ================ -API reference for the Data Product Hub Services module. +The DPH services module provides the main client for Data Product Hub Services operations. .. toctree:: :maxdepth: 2 core +.. currentmodule:: wxdi.dph_services.dph_v1 + Main Service Class ------------------ -.. currentmodule:: wxdi.dph_services +DphV1 +~~~~~ + +The DphV1 class provides access to all Data Product Hub Services operations. +For detailed API reference including all methods, see :ref:`api_dph_services_core`. -.. autoclass:: DphV1 +.. autoclass:: wxdi.dph_services.dph_v1.DphV1 :members: :undoc-members: :show-inheritance: :special-members: __init__ - -Container Operations --------------------- - -.. automethod:: DphV1.initialize -.. automethod:: DphV1.get_initialize_status -.. automethod:: DphV1.get_service_id_credentials -.. automethod:: DphV1.manage_api_keys - -Data Product Operations ------------------------ - -.. automethod:: DphV1.create_data_product -.. automethod:: DphV1.list_data_products -.. automethod:: DphV1.list_data_products_with_pager -.. automethod:: DphV1.get_data_product -.. automethod:: DphV1.update_data_product -.. automethod:: DphV1.delete_data_product - -Draft Operations ----------------- - -.. automethod:: DphV1.create_data_product_draft -.. automethod:: DphV1.list_data_product_drafts -.. automethod:: DphV1.get_data_product_draft -.. automethod:: DphV1.update_data_product_draft -.. automethod:: DphV1.delete_data_product_draft -.. automethod:: DphV1.publish_data_product_draft - -Release Operations ------------------- - -.. automethod:: DphV1.list_data_product_releases -.. automethod:: DphV1.get_data_product_release -.. automethod:: DphV1.update_data_product_release -.. automethod:: DphV1.retire_data_product_release - -Contract Terms Operations -------------------------- - -.. automethod:: DphV1.create_draft_contract_terms_document -.. automethod:: DphV1.get_data_product_draft_contract_terms -.. automethod:: DphV1.update_draft_contract_terms_document -.. automethod:: DphV1.delete_draft_contract_terms_document - -Domain Operations ------------------ - -.. automethod:: DphV1.list_data_product_domains -.. automethod:: DphV1.create_data_product_domain -.. automethod:: DphV1.create_data_product_subdomain -.. automethod:: DphV1.get_domain -.. automethod:: DphV1.update_data_product_domain -.. automethod:: DphV1.delete_domain - -Asset Visualization Operations -------------------------------- - -.. automethod:: DphV1.create_data_asset_visualization -.. automethod:: DphV1.reinitiate_data_asset_visualization - -Contract Template Operations ----------------------------- - -.. automethod:: DphV1.create_contract_template -.. automethod:: DphV1.list_data_product_contract_template -.. automethod:: DphV1.get_contract_template -.. automethod:: DphV1.update_data_product_contract_template -.. automethod:: DphV1.delete_data_product_contract_template + :no-index: .. Made with Bob \ No newline at end of file diff --git a/docs/api/odcs_generator/index.rst b/docs/api/odcs_generator/index.rst index d7e3203..c56af78 100644 --- a/docs/api/odcs_generator/index.rst +++ b/docs/api/odcs_generator/index.rst @@ -18,34 +18,38 @@ ODCS Generator Reference ======================== -Class reference for the ODCS Generator module. +The ODCS generator module provides integrations for generating ODCS YAML from supported catalog platforms. + +.. currentmodule:: wxdi.odcs_generator.generate_odcs_from_collibra Collibra Integration -------------------- -.. currentmodule:: wxdi.odcs_generator.generate_odcs_from_collibra +CollibraClient +~~~~~~~~~~~~~~ -.. autoclass:: CollibraClient +.. autoclass:: wxdi.odcs_generator.generate_odcs_from_collibra.CollibraClient :members: :undoc-members: :show-inheritance: -.. autoclass:: ODCSGenerator +ODCSGenerator +~~~~~~~~~~~~~ + +.. autoclass:: wxdi.odcs_generator.generate_odcs_from_collibra.ODCSGenerator :members: :undoc-members: :show-inheritance: +.. currentmodule:: wxdi.odcs_generator.generate_odcs_from_informatica + Informatica Integration ----------------------- -.. currentmodule:: wxdi.odcs_generator.generate_odcs_from_informatica - -.. autoclass:: InformaticaClient - :members: - :undoc-members: - :show-inheritance: +InformaticaClient +~~~~~~~~~~~~~~~~~ -.. autoclass:: ODCSGenerator +.. autoclass:: wxdi.odcs_generator.generate_odcs_from_informatica.InformaticaClient :members: :undoc-members: :show-inheritance: diff --git a/docs/chapters/01_welcome/installation.rst b/docs/chapters/01_welcome/installation.rst index 0ca04d3..8a83437 100644 --- a/docs/chapters/01_welcome/installation.rst +++ b/docs/chapters/01_welcome/installation.rst @@ -100,7 +100,7 @@ To verify that the SDK is installed correctly: >>> import wxdi.dq_validator >>> from wxdi.common.auth import AuthProvider >>> print(dq_validator.__version__) - 2.0.0 + 3.0.0-rc.1 Versioning ---------- @@ -116,7 +116,7 @@ Version numbers follow the format ``MAJOR.MINOR.PATCH``: Current Version ~~~~~~~~~~~~~~~ -The current version of the SDK is **2.0.0**. +The current version of the SDK is **3.0.0-rc.1**. Checking Your Version ~~~~~~~~~~~~~~~~~~~~~ @@ -133,7 +133,7 @@ Or programmatically: >>> import wxdi.dq_validator >>> print(dq_validator.__version__) - 2.0.0 + 3.0.0-rc.1 Upgrading --------- diff --git a/docs/conf.py b/docs/conf.py index 917b9ea..e20369e 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -38,9 +38,9 @@ # the built documents. # # The short X.Y version. -version = "2.0.0" +version = "3.0.0-rc.1" # The full version, including alpha/beta/rc tags. -release = "2.0.0" +release = "3.0.0-rc.1" # -- General configuration --------------------------------------------------- # https://www.sphinx-doc.org/en/master/usage/configuration.html#general-configuration diff --git a/setup.py b/setup.py index 5c928a1..a5d84b4 100644 --- a/setup.py +++ b/setup.py @@ -27,7 +27,7 @@ setup( name="data-intelligence-sdk", - version='2.0.0', + version='3.0.0-rc.1', author="IBM", author_email="Data_Intelligence_SDK@wwpdl.vnet.ibm.com", description="A Python SDK for IBM watsonx.data intelligence that provides data quality validation for streaming records and DataFrames, " \ diff --git a/src/wxdi/data_product_recommender/__init__.py b/src/wxdi/data_product_recommender/__init__.py index d226660..1320b61 100644 --- a/src/wxdi/data_product_recommender/__init__.py +++ b/src/wxdi/data_product_recommender/__init__.py @@ -21,4 +21,22 @@ based on usage patterns, user diversity, and table relationships. """ +from .recommender import DataProductRecommender +from .platforms import ( + SnowflakeQueryParser, + DatabricksQueryParser, + BigQueryQueryParser, + WatsonxDataQueryParser, +) +from .base import QueryLogParser + +__all__ = [ + "DataProductRecommender", + "SnowflakeQueryParser", + "DatabricksQueryParser", + "BigQueryQueryParser", + "WatsonxDataQueryParser", + "QueryLogParser", +] + __version__ = "0.1.0" \ No newline at end of file diff --git a/src/wxdi/dph_services/dph_v1.py b/src/wxdi/dph_services/dph_v1.py index a05cec9..d7908ff 100644 --- a/src/wxdi/dph_services/dph_v1.py +++ b/src/wxdi/dph_services/dph_v1.py @@ -1392,9 +1392,7 @@ def replace_data_product_draft_contract_terms( contract. :param List[ContractTemplateSLA] sla: (optional) Service Level Agreement details. - :param List[ContractTemplateSupportAndCommunication] - support_and_communication: (optional) Support and communication details for - the contract. + :param List[ContractTemplateSupportAndCommunication] support_and_communication: (optional) Support and communication details for the contract. :param List[ContractTemplateCustomProperty] custom_properties: (optional) Custom properties that are not part of the standard contract. :param ContractTest contract_test: (optional) Contains the contract test diff --git a/src/wxdi/version.py b/src/wxdi/version.py index 52a54fa..2ac81d3 100644 --- a/src/wxdi/version.py +++ b/src/wxdi/version.py @@ -16,4 +16,4 @@ """ Version of IBM watsonx.data intelligence SDK """ -__version__ = '2.0.0' \ No newline at end of file +__version__ = '3.0.0-rc.1' \ No newline at end of file