Skip to content

Conversation

@b-long
Copy link
Owner

@b-long b-long commented Sep 8, 2025

No description provided.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Summary of Changes

Hello @b-long, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request focuses on improving the maintainability and readability of the integration test suite. By abstracting the common patterns for building otdfctl commands into reusable helper functions, it eliminates redundant code and streamlines future test development and modifications.

Highlights

  • New Helper Functions for otdfctl Commands: Introduced get_otdfctl_base_command, build_otdfctl_encrypt_command, and build_otdfctl_decrypt_command in tests/support_cli_args.py to centralize the construction of otdfctl command-line arguments, reducing duplication across tests.
  • Refactored Integration Tests: Updated multiple integration test files (test_cli_comparison.py, test_tdf_reader_integration.py, test_cli_integration.py, test_cli_tdf_validation.py) to utilize the newly created helper functions, significantly reducing boilerplate code for subprocess.run calls.
  • Improved Test Robustness: Modified error handling in test_tdf_reader_integration.py and test_cli_integration.py from 'skip test' to 'fail fast' when otdfctl commands fail, ensuring more immediate feedback on issues.
Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point in your pull request via creating an issue comment (i.e. comment on the pull request page) using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in issue comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for Github and other Google products, sign up here.

You can also get AI-powered code generation, chat, as well as code reviews directly in the IDE at no cost with the Gemini Code Assist IDE Extension.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request does a great job of refactoring the test suite to be more DRY by introducing helper functions for building otdfctl commands. This significantly reduces code duplication across multiple test files.

I've found a few areas for improvement in the new helper functions in tests/support_cli_args.py:

  • There's a potential bug in build_otdfctl_encrypt_command regarding the order of command-line arguments, which could lead to test failures.
  • The type hints could be more specific to improve code clarity and maintainability.

I've left detailed comments with suggestions for these points. Once they are addressed, this will be a solid improvement to the codebase.

@b-long b-long force-pushed the fix/target-mode--dry-code branch from 29f57ad to 9edbf89 Compare September 9, 2025 00:06
@b-long
Copy link
Owner Author

b-long commented Sep 9, 2025

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request does a great job of refactoring the tests to be more DRY by introducing helper functions for building CLI commands, which significantly improves maintainability. I've identified a few issues in the new tests/support_cli_args.py helper module, including a critical bug related to an incorrect path, a circular dependency, and a minor issue with missing type hints. Once these are addressed, the refactoring will be solid.

@b-long b-long force-pushed the fix/target-mode--dry-code branch from 9edbf89 to 6c352b1 Compare September 9, 2025 16:39
@b-long b-long force-pushed the fix/target-mode--dry-code branch from 6c352b1 to 5c9fc1b Compare September 9, 2025 16:43
@b-long
Copy link
Owner Author

b-long commented Sep 9, 2025

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request effectively reduces code duplication in the integration tests by introducing helper functions to build otdfctl commands. The new functions in tests/support_cli_args.py centralize command creation, making the tests cleaner and easier to maintain. The refactoring is well-executed across all modified test files. I have one suggestion to improve the type hint for the run_cli_inspect function for better accuracy.

@b-long
Copy link
Owner Author

b-long commented Sep 9, 2025

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request does a great job of refactoring the integration tests to be more DRY by introducing helper functions for building CLI commands. The changes significantly improve the readability and maintainability of the test suite. I've added a few suggestions to further improve type safety and remove some now-redundant code following the refactor. Overall, this is a solid improvement.

@b-long
Copy link
Owner Author

b-long commented Sep 9, 2025

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request is a great step towards improving the test suite by refactoring duplicated code into helper functions, following the DRY principle. The changes significantly enhance the maintainability and readability of the integration tests. I've identified a couple of areas in the new helper functions where a hardcoded flag could be replaced by a more dynamic helper that already exists, which would make the tests more robust. My detailed comments are below.

@b-long
Copy link
Owner Author

b-long commented Sep 9, 2025

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request does a great job of refactoring the tests to be more DRY by introducing command builder functions. This significantly improves maintainability.

I've left a few comments on how to make the new helper functions even more robust by avoiding redundant configuration lookups, which can prevent potential inconsistencies.

Additionally, I noticed that some test commands are still constructed manually (e.g., cli_decrypt_cmd in test_cli_comparison.py). It would be great to refactor these as well for consistency. There also appears to be an inconsistency in how the Python CLI is invoked in tests: some use sys.executable while others use uv run python. Standardizing on one approach would be beneficial.

@b-long
Copy link
Owner Author

b-long commented Sep 9, 2025

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request is a great refactoring effort to make the test suite more DRY. You've successfully extracted duplicated logic for building CLI commands and handling subprocess errors into shared helper functions. This significantly improves the maintainability and readability of the tests. My review includes a couple of suggestions to make the new helper functions more idiomatic within the pytest framework by using pytest.fail() for test failures. This will lead to clearer and more informative test reports.

@b-long
Copy link
Owner Author

b-long commented Sep 9, 2025

/gemini review

Copy link
Contributor

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request does an excellent job of refactoring the tests to be more DRY by extracting common command-building and error-handling logic into new support modules. This significantly improves the maintainability and readability of the integration tests. However, the refactoring has introduced a critical regression where target_mode functionality has been lost. I've also included a few suggestions for code cleanup.

Comment on lines 34 to 49
"""
Generate a TDF file using otdfctl with a specific target mode.
Args:
input_file: Path to the input file to encrypt
output_file: Path where the TDF file should be created
target_mode: Target TDF spec version (e.g., "v4.2.2", "v4.3.1")
creds_file: Path to credentials file
attributes: Optional list of attributes to apply
mime_type: Optional MIME type for the input file
FIXME: Pass target_mode argument for TDF spec version (e.g., "v4.2.2", "v4.3.1")
"""
# Ensure output directory exists
output_file.parent.mkdir(parents=True, exist_ok=True)

# Build otdfctl command
cmd = [
"otdfctl",
"encrypt",
"--host",
platform_url,
"--with-client-creds-file",
str(creds_file),
*otdfctl_flags,
"--tdf-type",
"tdf3",
"--target-mode",
target_mode,
"-o",
str(output_file),
]

# Add optional parameters
if attributes:
for attr in attributes:
cmd.extend(["--attr", attr])

if mime_type:
cmd.extend(["--mime-type", mime_type])

# Add input file
cmd.append(str(input_file))
cmd = build_otdfctl_encrypt_command(
platform_url=platform_url,
creds_file=creds_file,
input_file=input_file,
output_file=output_file,
mime_type=mime_type if mime_type else "text/plain",
attributes=attributes if attributes else None,
tdf_type="tdf3",
)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

critical

This refactoring has introduced a regression. The function _generate_target_mode_tdf still accepts a target_mode argument, but it's no longer used in the call to build_otdfctl_encrypt_command. This means the function doesn't generate TDFs for a specific target mode anymore, which contradicts its name and purpose. The FIXME in the docstring also highlights this issue. This functionality needs to be restored in the new helper function.

Comment on lines 44 to 91
def build_otdfctl_encrypt_command(
platform_url: str,
creds_file: Path,
input_file: Path,
output_file: Path,
mime_type: str = "text/plain",
attributes: list[str] | None = None,
tdf_type: str | None = None,
) -> list[str]:
"""Build otdfctl encrypt command.
Args:
platform_url: Platform URL like "http://localhost:8080"
creds_file: Path to credentials file
input_file: Path to the input file to encrypt
output_file: Path where the TDF file should be created
mime_type: Optional MIME type for the input file
attributes: Optional list of attributes to apply
tdf_type: TDF type (e.g., "tdf3", "nano")
"""

# FIXME: Add target_mode: Target TDF spec version (e.g., "v4.2.2", "v4.3.1")

cmd = get_otdfctl_base_command(platform_url, creds_file)
cmd.append("encrypt")
cmd.extend(["--mime-type", mime_type])

# Add attributes if provided
if attributes:
for attr in attributes:
cmd.extend(["--attr", attr])

if tdf_type:
cmd.extend(
[
"--tdf-type",
tdf_type,
]
)

cmd.extend(
[
str(input_file),
"-o",
str(output_file),
]
)
return cmd
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

This helper function is missing support for target_mode, which has caused a regression in _generate_target_mode_tdf in conftest.py. The target_mode parameter should be added to this function and included in the constructed command. The FIXME on line 65 should also be removed and the docstring updated accordingly.

def build_otdfctl_encrypt_command(
    platform_url: str,
    creds_file: Path,
    input_file: Path,
    output_file: Path,
    mime_type: str = "text/plain",
    attributes: list[str] | None = None,
    tdf_type: str | None = None,
    target_mode: str | None = None,
) -> list[str]:
    """Build otdfctl encrypt command.

    Args:
        platform_url: Platform URL like "http://localhost:8080"
        creds_file: Path to credentials file
        input_file: Path to the input file to encrypt
        output_file: Path where the TDF file should be created
        mime_type: Optional MIME type for the input file
        attributes: Optional list of attributes to apply
        tdf_type: TDF type (e.g., "tdf3", "nano")
        target_mode: Target TDF spec version (e.g., "v4.2.2", "v4.3.1")
    """

    cmd = get_otdfctl_base_command(platform_url, creds_file)
    cmd.append("encrypt")
    cmd.extend(["--mime-type", mime_type])

    # Add attributes if provided
    if attributes:
        for attr in attributes:
            cmd.extend(["--attr", attr])

    if tdf_type:
        cmd.extend(
            [
                "--tdf-type",
                tdf_type,
            ]
        )

    if target_mode:
        cmd.extend(["--target-mode", target_mode])

    cmd.extend(
        [
            str(input_file),
            "-o",
            str(output_file),
        ]
    )
    return cmd

return cmd


# def run_cli_decrypt() -> subprocess.CompletedProcess
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This commented-out function definition should be removed to avoid code clutter. If this is a placeholder for future work, it would be better to track it in a ticket or issue rather than leaving commented-out code in the codebase.

return cmd


# def run_cli_encrypt() -> subprocess.CompletedProcess
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

This commented-out function definition should be removed to avoid code clutter. If this is a placeholder for future work, it would be better to track it in a ticket or issue rather than leaving commented-out code in the codebase.

@b-long b-long force-pushed the fix/target-mode--dry-code branch from f3ede8c to 941b3ec Compare September 9, 2025 20:48
@b-long b-long merged commit a993363 into fix/target-mode Sep 9, 2025
9 checks passed
b-long added a commit that referenced this pull request Sep 10, 2025
* chore: dry tests

* chore: relocate run_cli_inspect

* chore: fix type annotation

* chore: note token isn't important

* chore: cleanup args & typing

* chore: extract 'get_platform_url' function

* chore: extract 'support_otdfctl_args' module

* chore: use '*get_cli_flags()' pattern

* chore: DRY code

* chore: DRY code

* chore: extract 'get_testing_environ' function

* chore: DRY code

* chore: DRY code

* chore: DRY code
b-long added a commit that referenced this pull request Sep 10, 2025
* fix: add test data

* fix: improve target-version support

* fix: add get_cli_flags function

* fix: fix tests

* fix: bug handling bytes | BinaryIO & tests

* fix: update .gitignore

* fix: remove invalid default KAS

* fix: disable attrs for now

* fix: DRY test fixtures

* chore: cleanup

* fix:target mode encryption (#86)

* chore: update pre-commit

* fix: type annotations in tdf.py

* chore: expand inspect tests

* chore: cleanup tests

* chore: organize imports

* chore: require sorted imports

* chore: add test_cli_decrypt.py

* chore: organize integration tests

* chore: organize integration tests

* Tweak attributes

* chore: cleanup tests

* chore: cleanup tests

* chore: dry tests (#87)

* chore: dry tests

* chore: relocate run_cli_inspect

* chore: fix type annotation

* chore: note token isn't important

* chore: cleanup args & typing

* chore: extract 'get_platform_url' function

* chore: extract 'support_otdfctl_args' module

* chore: use '*get_cli_flags()' pattern

* chore: DRY code

* chore: DRY code

* chore: extract 'get_testing_environ' function

* chore: DRY code

* chore: DRY code

* chore: DRY code

* chore: improve pre-commit config

* fix: mirrored workflows for target-mode (#91)

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: remove otdf-python-proto from manifest
@b-long b-long deleted the fix/target-mode--dry-code branch September 10, 2025 19:40
b-long added a commit that referenced this pull request Sep 11, 2025
* Begin rewrite in pure Python

* Organize: git mv src/otdf_python/test_*.py tests/

* Format according to 'ruff'

* Fix static analysis

* Cleanup and organize tests/test_validate_otdf_python.py

* Remove 'TDFConfig' type from 'otdf_python.tdf'

* Fix description & formatting

* Add 'pydantic-settings' to dev & update dependencies

* Correct version number

* Cleanup and fix OIDC tests

* Comment old style integration test

* Execute majority of tests

* Allow import from 'tests'

* Fix string encryption test

* Remove dead code

* Adjust integration test

* Remove old build scripts

* Update README

* Update GHA triggers

* Fix endpoint URL and TLS verification

* ✅ Significant update 143 out of 150 tests passing

- When run with the proper .env file: 7 failed, 142 passed, 2 skipped, 1 warning
- Critical naming fix
- Update .proto files
- Add script to update .proto files
- Ditch HTTP impl
- Improve manifest and encrypt test
- Python CLI decrypt now works correctly with TDF files created by otdfctl

* Run all tests, except integration

* Update GHA configuration

* Mark integration tests

* Fix mocked tests/test_kas_client.py

* Mark integration tests

* Only build for 3.13 (temporary)

* Update license

* Enable and fix integration tests in CI

Cleanup tests

* Improve support for plaintext

* Make log collection optional

* Fix tests for plaintext

* Fix docstrings

* Fix docstrings

* Extract Connect RPC class

* Fix additional roundtrip testing

* Fix tests after kas_client updates

* Expand KAS client integration tests

* Fix mimeType

* Expand testing, fix compression bug

* Auto-use check_for_otdfctl fixture

* Expand static analysis, fix FURB188

* Use 'NULL_POLICY_UUID' for now

* Update kas_client.py & tdf.py, expand tests

* Expand & organize integration tests

* Expand static analysis, fix PT018

* Use configurable attrs in testing

* Use configurable attrs in testing

* Examine entitlements in CI

* Extract 'temp_credentials_file' fixture

* Rename file

* Modernize release workflows

* Modernize release workflows

* Update release workflow

* Manage 'otdf-python-proto' as a sub-package

* Update README

* Manage 'otdf-python-proto' as a sub-package

* Support Python 3.10+

* Fix version number

* Fix Python version requirement

* Bump version 0.3.0a4 -> 0.3.0a5

* Fix version extract command

* Undo file name change

* More support for PE flows, cleanup & improved typing (#70)

* Cleanup & improved typing

* Disable odd policy enforcement

* Add ".env-docker" file for local testing

* Add PE test support (GHA and docker) (#71)

* Add docker start script

* Gemini fixes

* Update GHA configuration

* Gemini fixes

* Enable PE e2e test

* Run 'pre-commit autoupdate' & fix lint issues

* Extract '_get_sdk_builder' function

* Cleanup & remove redundant function

* Improve typing

* Use patch() context manager, reduce imports

* Remove unnecessary import

* Combine 'yq' expressions

* Point to commit SHA

* Remove hallucination

* Match version number

* Bump 0.3.0a5 to 0.3.0a6

* Chore/update docs and release process (#72)

* Cleanup docs

* Refine workflows for release management and testing

- Implement `release-please` workflow for automated releases.
- Create `publish-test` and `publish` workflows to handle package builds and releases.
- Introduce `test-suite` workflow to run tests before publishing.
- Update configuration files for release management.

* Add 'ruff' as dev dependency

* Configure ruff to ignore generated files

* Fail fast if linting fails

* Document release process

* Bump version to 0.3.0a7

* Publish new alpha

* Allow replacing artifacts with the same name

* Remove the duplicate integration-test job

* Attempt alpha release

* chore: improve pre-commit configuration

* chore: revert 'rm CONNECT_RPC_MIGRATION.md'

* chore: disable TestPyPIBuild unless workflow_dispatch

* chore: bump version 0.3.0a7 -> 0.3.0a8

* chore: bump version 0.3.0a8 -> 0.3.0a9

* chore: target this branch

* chore: target develop branch

* chore: fix release-please config

* chore: fix version number

* chore: use standard 'workflow_call'

* chore: clean up publishing

* fix: fix publishing

* chore: release 0.3.0a10

Release-As: 0.3.0a10

* fix: fix publishing

* chore: release 0.3.0a11

Release-As: 0.3.0a11

* chore: release develop (#81)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* chore: align version numbers

* chore: add 'otdf-python-proto/uv.lock' file

* chore: add 'otdf-python-proto/uv.lock' file

* fix: omit README from Github releases

* chore: document legacy version

* fix: address pre-commit (lint) issues

* chore: verbose output for pypi uploads

* fix: use correct 'extra-files' for uv.lock

See also: googleapis/release-please#2561

* chore: release 0.3.1

Release-As: 0.3.1

* chore: release develop (#82)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* chore: organize docs

* fix: remove unnecessary 'ncipollo/release-action'

* chore: add developer doc

* chore: CI improvements (#88)

* chore: prevent TestPyPI publishing <= 0.3.2

* chore: update .pre-commit-config.yaml

* chore: align versions

* chore: ensure future version alignment

* chore: comment unused GHA step

* chore: simplify version parsing

* chore: add tomli for Python < 3.11

* fix: get version dynamically in 'test_cli.py'

* fix: guarantee target-version decrypt support (#84)

* fix: add test data

* fix: improve target-version support

* fix: add get_cli_flags function

* fix: fix tests

* fix: bug handling bytes | BinaryIO & tests

* fix: update .gitignore

* fix: remove invalid default KAS

* fix: disable attrs for now

* fix: DRY test fixtures

* chore: cleanup

* fix:target mode encryption (#86)

* chore: update pre-commit

* fix: type annotations in tdf.py

* chore: expand inspect tests

* chore: cleanup tests

* chore: organize imports

* chore: require sorted imports

* chore: add test_cli_decrypt.py

* chore: organize integration tests

* chore: organize integration tests

* Tweak attributes

* chore: cleanup tests

* chore: cleanup tests

* chore: dry tests (#87)

* chore: dry tests

* chore: relocate run_cli_inspect

* chore: fix type annotation

* chore: note token isn't important

* chore: cleanup args & typing

* chore: extract 'get_platform_url' function

* chore: extract 'support_otdfctl_args' module

* chore: use '*get_cli_flags()' pattern

* chore: DRY code

* chore: DRY code

* chore: extract 'get_testing_environ' function

* chore: DRY code

* chore: DRY code

* chore: DRY code

* chore: improve pre-commit config

* fix: mirrored workflows for target-mode (#91)

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: cleanup for mirrored workflows

* chore: remove otdf-python-proto from manifest

* chore: cleanup and release (#93)

* fix: don't inspect without auth

* fix: process otdf-python-proto/pyproject.toml correctly

* chore: remove NanoTDF from README

* chore: mention legacy version in main README

* chore: set version to 0.3.1

* chore: fix release-please

* fix: release-please configuration (#95)

* fix: "jsonpath" in release-please-config.json

* chore: remove invalid changelog entries

* chore: cleanup branches used in release-please

* chore: remove invalid changelog file

* chore: reset version to 0.3.0

* chore: cleanup whitespace

* chore: improve release process

* chore: document release process

* chore: delete invalid information

* fix: update prerelease config for develop branch

* chore(develop): release otdf-python 0.3.1 (#96)

* chore(develop): release otdf-python 0.3.1

* Update CHANGELOG.md

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: b-long <[email protected]>

* fix: fix .release-please-config.json file (#97)

* fix: fix .release-please-config.json file

* chore: align for version 0.3.1

* chore: use importlib for version

* chore: manage .py files without relese-please

* fix: allow for development version in CLI version test

* Update src/otdf_python/cli.py

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

---------

Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>

* chore(develop): release otdf-python 0.3.2 (#98)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

* fix: release configuration (#99)

* chore: fix release-please config

* chore: remove invalid changelog entries

* chore: roll back to 0.3.0

* fix: add develop-specific release-please files and update workflow

- Add .release-please-config-develop.json with prerelease: true
- Add .release-please-manifest-develop.json with current version
- Remove dynamic file creation from workflow
- Files are now committed to repo instead of generated at runtime

* chore(develop): release otdf-python 0.3.1 (#100)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: gemini-code-assist[bot] <176961590+gemini-code-assist[bot]@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants