Skip to content

feat: Support custom protocol filename via --out=path.bin#314

Merged
mohamedmansour merged 5 commits into
mainfrom
copilot/custom-protocol-output-filename
May 27, 2026
Merged

feat: Support custom protocol filename via --out=path.bin#314
mohamedmansour merged 5 commits into
mainfrom
copilot/custom-protocol-output-filename

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented May 27, 2026

Merge origin/main into this branch to pick up the configurable CSS asset naming work (#313) and resolve the resulting conflicts.

Changes

  • README conflict (crates/webui-cli/README.md): kept both example sets — the --out=./dist/app1.bin example from this branch and the new --css-file-name-template / --css-public-base examples from main.
  • Post-merge compile fix (crates/webui-cli/src/commands/build.rs): the two custom-protocol-name tests added by this branch construct AppArgs directly, which gained two new required fields on main. Added css_file_name_template: DEFAULT_CSS_FILE_NAME_TEMPLATE.to_string() and css_public_base: None to both initializers, matching the other test sites already updated on main.

No production-code changes; the merge commit is a clean two-parent merge of ea309ab and b02af48.

Copilot AI linked an issue May 27, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Add option to specify custom protocol output filename Allow customizing the protocol filename via webui build --out May 27, 2026
Copilot AI requested a review from mohamedmansour May 27, 2026 09:37
@mohamedmansour mohamedmansour marked this pull request as ready for review May 27, 2026 14:46
@mohamedmansour mohamedmansour changed the title Allow customizing the protocol filename via webui build --out feat: Allow customizing the protocol filename via webui build --out May 27, 2026
@mohamedmansour mohamedmansour requested a review from Copilot May 27, 2026 14:48
@mohamedmansour mohamedmansour requested review from a team and akroshg May 27, 2026 14:48
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates the webui build --out CLI behavior to support specifying either an output directory (existing behavior) or a .bin file path to customize the emitted protocol filename, enabling multiple apps to be built into a shared output folder without manual renames.

Changes:

  • Added CLI-side --out resolution logic to split a .bin filepath into (output_dir, protocol_filename) and write protocol + CSS files accordingly.
  • Added unit and end-to-end tests covering custom protocol filenames and parent directory creation.
  • Updated CLI documentation to describe the dual-form --out option and provide examples.

Reviewed changes

Copilot reviewed 4 out of 5 changed files in this pull request and generated 3 comments.

Show a summary per file
File Description
docs/guide/cli/index.md Documents that --out accepts a directory or .bin filepath and adds examples.
crates/webui-ffi/include/webui_ffi.h Refines thread-safety wording in FFI header comments.
crates/webui-cli/src/commands/build.rs Implements .bin-path handling and manual protocol/CSS writes; adds tests.
crates/webui-cli/README.md Documents the new --out behavior and adds an example invocation.
Cargo.lock Updates workspace crate versions to 0.0.13.

Comment thread crates/webui-cli/src/commands/build.rs
Comment thread crates/webui-cli/src/commands/build.rs Outdated
Comment thread crates/webui-cli/README.md
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

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

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

Copilot AI changed the title feat: Allow customizing the protocol filename via webui build --out Allow customizing the protocol filename via webui build --out May 27, 2026
Copilot AI requested a review from mohamedmansour May 27, 2026 15:05
@mohamedmansour mohamedmansour changed the title Allow customizing the protocol filename via webui build --out feat: Allow customizing the protocol filename via webui build --out May 27, 2026
mcritzjam
mcritzjam previously approved these changes May 27, 2026
…ol-output-filename

# Conflicts:
#	crates/webui-cli/README.md
Copilot AI changed the title feat: Allow customizing the protocol filename via webui build --out Merge origin/main into branch and resolve README conflict May 27, 2026
Copilot AI requested a review from mohamedmansour May 27, 2026 17:02
Copilot AI changed the title Merge origin/main into branch and resolve README conflict Merge main into custom-protocol-output-filename May 27, 2026
@mohamedmansour mohamedmansour changed the title Merge main into custom-protocol-output-filename feat: Support custom protocol filename via --out=path.bin May 27, 2026
@mohamedmansour mohamedmansour requested a review from Qusic May 27, 2026 19:40
@mohamedmansour mohamedmansour merged commit f825086 into main May 27, 2026
22 checks passed
@mohamedmansour mohamedmansour deleted the copilot/custom-protocol-output-filename branch May 27, 2026 20:32
Copilot AI added a commit that referenced this pull request May 27, 2026
Clustered changes since v0.0.13:

1) CSS asset naming + parser pipeline (#313)

- Added configurable CSS asset names across parser plugins and runtime integration paths.

- Introduced dedicated CSS link handling in the parser with broader coverage in benches/examples.

- Updated CLI, Node, Rust, and docs surfaces to expose and document the new behavior.

2) Custom protocol output path in CLI/FFI (#314)

- Added support for writing protocol output with --out=<path>.bin in the build command flow.

- Updated CLI docs and FFI headers so generated protocol output can be redirected predictably.

3) Release alignment for 0.0.14

- Ran cargo xtask version 0.0.14 to synchronize crate/npm/.NET version metadata.

- Regenerated dependency lock state as part of the release bump workflow.
mohamedmansour pushed a commit that referenced this pull request May 27, 2026
* Progress: ran version bump and release checks

* chore(release): summarize 0.0.14 changes

Clustered changes since v0.0.13:

1) CSS asset naming + parser pipeline (#313)

- Added configurable CSS asset names across parser plugins and runtime integration paths.

- Introduced dedicated CSS link handling in the parser with broader coverage in benches/examples.

- Updated CLI, Node, Rust, and docs surfaces to expose and document the new behavior.

2) Custom protocol output path in CLI/FFI (#314)

- Added support for writing protocol output with --out=<path>.bin in the build command flow.

- Updated CLI docs and FFI headers so generated protocol output can be redirected predictably.

3) Release alignment for 0.0.14

- Ran cargo xtask version 0.0.14 to synchronize crate/npm/.NET version metadata.

- Regenerated dependency lock state as part of the release bump workflow.

---------

Co-authored-by: copilot-swe-agent[bot] <198982749+Copilot@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.

Protocol output naming

6 participants