Conversation
Contributor
There was a problem hiding this comment.
Pull Request Overview
This PR bumps the version from v2.0.0 to v2.0.1 and fixes several bugs related to repeatable options. The key changes include:
- Version updated from v2.0.0 to v2.0.1 across schema files and documentation
- Changed
-repeatable-optiontype from string to integer with therepeated: trueflag and added short option-r - Fixed code generation templates for multiple languages (PHP, Dart, C#, C++) to properly handle repeated options by accessing array elements correctly
- Updated documentation templates to conditionally show default values and add repetition indicators for repeated options
- Regenerated all test files and examples with the corrected behavior
Reviewed Changes
Copilot reviewed 58 out of 76 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| v2/schema/cyamli-cli.schema.yaml | Updated schema $id URL from v2.0.0 to v2.0.1 |
| v2/schema/cyamli-cli.schema.json | Updated schema $id in JSON format |
| v2/examples/features/cli.cyamli.yaml | Changed -repeatable-option to type integer with repeated flag and short option |
| v2/generate/php/Input.php.tpl | Fixed array indexing bug for repeated options (accessing v[0]) and corrected type reference |
| v2/generate/dart3/cli.gen.dart.tpl | Fixed type casting to use correct type instead of hardcoded bool |
| v2/generate/csharp/cli.gen.cs.tpl | Fixed array access for repeated options |
| v2/generate/cpp/cli.gen.cpp.tpl | Fixed to use vector operations instead of single value assignment |
| v2/docs/*.tpl | Updated to conditionally hide defaults for repeated options and show repetition markers |
| v2/cmd/cyamli/* | Version bump and regenerated documentation strings |
| test/** | Regenerated test files with corrected types and values |
| docs/* | Version bump in documentation files |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request fixes the handling of the repeatable option in the CLI feature tests for docs, C++, Dart 3, PHP and C#. The most significant changes include updating version numbers across documentation files, changing the type of the repeatable option from a string to a list/vector of integers, and ensuring both long and short option names are supported for repeatable options in tests.
Documentation and Schema Updates
cyamli-cli.schema.json,cyamli-cli.schema.yaml,cyamli-docs.html,cyamli-docs.md, andcyamli-docs.text. [1] [2] [3] [4] [5]CLI Fix docs and bugs related to repeated option
Opt_RepeatableOptionfromstringtostd::vector<std::int64_t>in C++ and fromstringtoList<long>in C#, updating its initialization and usage in all relevant test cases. [1] [2] [3] [4] [5]-repeatable-option) and short (-r) forms for the repeatable option, and to correctly accumulate multiple values as a vector/list.-r=0for the repeatable option where appropriate, ensuring consistency with the new parsing logic. [1] [2] [3] [4] [5] [6]These changes modernize the CLI schema and improve the robustness and clarity of repeatable option handling in feature tests.