-
Notifications
You must be signed in to change notification settings - Fork 195
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
Use x/tools/go/packages #147
Comments
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale
…On Mon, Sep 23, 2019 at 7:55 PM fejta-bot ***@***.***> wrote:
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually
close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta
<https://github.com/fejta>.
/lifecycle stale
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#147?email_source=notifications&email_token=AD24BUCH6FOJWIAZ7ESN35LQLDGWRA5CNFSM4H3IMNX2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOD7LBDDI#issuecomment-534122893>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AD24BUAHT66EVMTQGDZJQD3QLDGWRANCNFSM4H3IMNXQ>
.
|
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/lifecycle frozen |
I would like to implement this. As i see it for now, this would replace most of
As we could get the Anything i got way off or missed? |
I'd be happy to see this modernized. I don't have the cycles to help much, though. |
I'll figure it out. I will try to leave exported functions at least functioning from user perspective as they do now.
PR will be up in draft as soon as something working exists.
Am 14. April 2020 23:42:34 MESZ schrieb Daniel Smith <[email protected]>:
…I'd be happy to see this modernized. I don't have the cycles to help
much, though.
--
You are receiving this because you commented.
Reply to this email directly or view it on GitHub:
#147 (comment)
--
Diese Nachricht wurde von meinem Android-Gerät mit K-9 Mail gesendet.
|
This may have to wait until golang/go#38470 is solved. |
kubernetes/code-generator#69 is really annoying. @tbe as golang/go#38470 doesn't seem to see much progress, how about we rename I did that for testing and all tests passes, so I assume it should be fine? For |
Okay, I went waaay to deep with this 😂 Sooo, when running code generation on projects like https://github.com/kubernetes-sigs/cluster-api project, generation takes a lot of time. With Running with If I understand correctly, majority of the time is spent on running commands like: go list -e -compiler=gc -tags=ignore_autogenerated -installsuffix= '-f={{.Dir}} {{.ImportPath}} {{.Root}} {{.Goroot}} {{if .Error}}{{.Error}}{{end}}' -- k8s.io/gengo/types
go list -e -compiler=gc -tags=ignore_autogenerated -installsuffix= '-f={{.Dir}} {{.ImportPath}} {{.Root}} {{.Goroot}} {{if .Error}}{{.Error}}{{end}}' -- k8s.io/gengo/examples/set-gen Each of this command run by hand takes ~50ms on my machine and they seem to be executed almost linearly according to perf and with Hotspot to analyze: Those are triggered by Line 595 in de9496d
I played a bit with However, this turns out to be slower than original code, as it seems At this point, I guess there are 2 things to try:
I think before we try more things, it would also be nice to rewrite the whole thing to replace map operations with function calls etc. This would allow to write plain uncached version of the parser, then add caching as an independent module, to keep it separate from other code. |
/assign @palnabarun @nikhita |
Hey @nikhita @palnabarun, anything I can do to help make this happen? We're hitting a roadblock in Cluster API (as @invidian pointed out above), which is slowing down our verification scripts as well. |
Just a note on testing if you make major surgery-- you should run the k8s code generation steps in the main kubernetes repo using the proposed changes to make sure nothing breaks. I might be able to squeeze small PR reviews in but I still don't have cycles to offer any major help. |
Optimize the API docs generation by disabling the use of Go modules when running the generation tool. This is a workaround for performance issues in the upstream libraries: kubernetes/gengo#147 kubernetes/code-generator#69 Before this workaround: make api-docs 93.87s user 171.98s system 426% cpu 1:02.30 total After the workaround: make api-docs 2.91s user 0.83s system 135% cpu 2.752 total The hack seems worth the 97% improvement for iterating on docs.
Optimize the API docs generation by disabling the use of Go modules when running the generation tool. This is a workaround for performance issues in the upstream libraries: - kubernetes/gengo#147 - kubernetes/code-generator#69 Before this workaround: make api-docs 93.87s user 171.98s system 426% cpu 1:02.30 total After the workaround: make api-docs 2.91s user 0.83s system 135% cpu 2.752 total The hack seems worth the 97% improvement for iterating on docs.
Optimize the API docs generation by disabling the use of Go modules when running the generation tool. This is a workaround for performance issues in the upstream libraries: - kubernetes/gengo#147 - kubernetes/code-generator#69 Before this workaround: make api-docs 93.87s user 171.98s system 426% cpu 1:02.30 total After the workaround: make api-docs 2.91s user 0.83s system 135% cpu 2.752 total The hack seems worth the 97% improvement for iterating on docs.
* Migrate from CircleCI to Github Actions We gradually moving away from CirleCI to Github Actions as we are consolidating the CIs we use. In parallel we are introducing `trivy` in the PR level and we block the PR about the number of critical vulnerabilities. Ticket: https://mattermost.atlassian.net/browse/CLD-4711 * [fix] Remove CircleCI * [fix] exclude vendor from lint * [fix] golang version to 1.19 * Use custom GOPATH in github actions (#328) workarounds kubernetes/gengo#147 * [fix] kind cluster wait to be created * [fix] go cache dependency path * [fix] update kind verson and k8s * fix(ci): Add patch for MySQL operator on steup_test.sh * test: Add temp SSH session for debug * fixed fatal: detected dubious ownership issue with git checkout * test on local runners * upgrade percona to 5.7.35 * test in mac since I am now desperate * try ubuntu-20.04 * test kind cluster from github actions * 1.24 k8s version * upgrade mysql-operator and use helm * test with Percona 8.0 * remove upterm * add commented out tests * test CVE upload results * Update .github/workflows/ci.yml Co-authored-by: Akis Maziotis <[email protected]> * Update .github/workflows/cd.yml Co-authored-by: Akis Maziotis <[email protected]> * naming convention . Trivy fix * fix docker login * fix sarif output * continue on error for now for trivy results * always upload since there is no failure for now * allow specifying a mysql database version * Set mysql version only for mysql database type * ignore trivy result * checking lesser retry interval this way logs should not get disk filled in github runner * even longer...? * try running in 4core machine --------- Co-authored-by: Felipe Martin <[email protected]> Co-authored-by: Mattermost Build <[email protected]> Co-authored-by: Antonis Stamatiou <[email protected]> Co-authored-by: Akis Maziotis <[email protected]> Co-authored-by: Felipe Martin <[email protected]>
Will be fixed in v2 (#259) |
To better support modules, we should plan to switch to the x/tools/go/package library to scan Go packages.
This issue is a follow up from kubernetes/code-generator#69.
The text was updated successfully, but these errors were encountered: