Skip to content

chore: pass OpenAPI generator config via --opt flags#1743

Draft
gpunto wants to merge 1 commit into
developfrom
chore/openapi-generation-opt-flags
Draft

chore: pass OpenAPI generator config via --opt flags#1743
gpunto wants to merge 1 commit into
developfrom
chore/openapi-generation-opt-flags

Conversation

@gpunto

@gpunto gpunto commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

Part of AND-1306

Goal

The backend Kotlin OpenAPI generator was refactored so it takes its configuration through the generic --opt key=value flag (the Configurable interface master already uses for Swift) instead of a set of bespoke named flags. This keeps the shared chat generator command free of language-specific flags. This PR updates the video client generation script to match the new interface.

Depends on: the chat-side generator changes being merged to GetStream/chat master. The script now clones master (REFERENCE_VALUE=master), so it should be merged/run only once those land.

Implementation

  • Convert the generate-client invocation to --opt key=value form.
  • Drop --model-dir: the generator hardcodes the models directory, so the flag was a no-op. Removed the flag, its MODEL_DIR variable, and its argument handling.
  • classes-to-skip is now space-separated — the --opt slice flag splits comma-separated values, so a comma list would be mangled.
  • Point REFERENCE_VALUE at master (the end state is the generator branch merged into master).

🎨 UI Changes

N/A — build/tooling script only.

Testing

Ran the generator against the updated backend and compared the produced stream-video-android-core/.../generated/ output to the previous generator: byte-identical (354 files, no differences). No SDK code changes result from this script update.

☑️Contributor Checklist

General

  • PR targets the develop branch
  • Assigned a person / code owner group
  • Thread with the PR link started in a respective Slack channel

Code & documentation

  • Generated SDK output verified unchanged (byte-identical)

The chat-side Kotlin generator now takes its configuration through the generic
`--opt key=value` flag (via the Configurable interface) instead of bespoke named
flags. Update the generation script accordingly:

- Convert the generate-client invocation to `--opt key=value` form.
- Drop `--model-dir` (the generator hardcodes the models directory; the flag was
  a no-op) and its now-unused MODEL_DIR variable / argument.
- classes-to-skip is space-separated (the --opt slice flag splits comma lists).
- Point REFERENCE_VALUE at `master`, since the generator changes land there.

Generated output is unchanged (byte-identical vs the previous generator).
@gpunto gpunto added the pr:internal Internal or infra-only changes label Jul 10, 2026
@github-actions

github-actions Bot commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

PR checklist ✅

All required conditions are satisfied:

  • Title length is OK (or ignored by label).
  • At least one pr: label exists.
  • Sections ### Goal, ### Implementation, and ### Testing are filled, or the PR is bot-authored.
  • An issue is linked (Linear ticket or GitHub issue), or the PR is bot-authored.

🎉 Great job! This PR is ready for review.

@sonarqubecloud

Copy link
Copy Markdown

@github-actions

Copy link
Copy Markdown
Contributor

SDK Size Comparison 📏

SDK Before After Difference Status
stream-video-android-core 12.27 MB 12.27 MB 0.00 MB 🟢
stream-video-android-ui-xml 5.68 MB 5.68 MB 0.00 MB 🟢
stream-video-android-ui-compose 6.20 MB 6.20 MB 0.00 MB 🟢

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

Labels

pr:internal Internal or infra-only changes

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant