-
-
Notifications
You must be signed in to change notification settings - Fork 6.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[typescript] Make TypeScriptClientCodegen extend AbstractTypeScriptClientCodegen #15096
Conversation
Would appreciate if any @TiFu (2017/07) @taxpon (2017/07) @sebastianhaas (2017/07) @kenisteward (2017/07) @Vrolijkx (2017/09) @macjohnny (2018/01) @topce (2018/10) @akehir (2019/07) @petejohansonxo (2019/11) @amakhrov (2020/02) @davidgamero (2022/03) @mkusaka (2022/04) could help to take a look at these |
IIRC the typescript client codegen was meant to be a rewrite for unification of all the typescript-variants there currently are, and intentionallly did not extend the abstract typescript codegen. |
@macjohnny it might seem so, but there are so many components that are reusable from AbstractTypeScriptClientCodegen that are exact duplicates. By extending It, we remove over 500+ lines of duplicate code (see code changes) and also gain future bug fixes (since the abstract class is used by so many generators). I don't think it defeats the purpose of the unification but instead aids it, nonetheless, any of these methods can be overridden if needed. Would be nice if we could get @TiFu update if he's going forward on this |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Totally fine for me :)
Given the additional work that has gone into the AbstractTSClientCodegen, let's use it. The rewrite anyway re-used a lot of what AbstractTSClientCodegen was back then, so no harm in continuing to use it and reduce the maintenance effort.
In #10080 (comment) from @wing328
This makes it easier to maintain
PR checklist
This is important, as CI jobs will verify all generator outputs of your HEAD commit as it would merge with master.
These must match the expectations made by your contribution.
You may regenerate an individual generator by passing the relevant config(s) as an argument to the script, for example
./bin/generate-samples.sh bin/configs/java*
.For Windows users, please run the script in Git BASH.
master
(6.3.0) (minor release - breaking changes with fallbacks),7.0.x
(breaking changes without fallbacks)