Thanks to visit codestin.com
Credit goes to github.com

Skip to content
This repository was archived by the owner on Nov 10, 2023. It is now read-only.

Conversation

@davidhao3300
Copy link
Contributor

@davidhao3300 davidhao3300 commented May 29, 2020

To improve performance, we've found that setting a couple of targets to abi_generation_mode='source' will improve build performance. However, buck currently silently overrides the user-provided ABI generation mode.

I'm not a domain expert here, so it's possible that there is good reason to silently override the user choice. This PR is both something I hope to merge upstream but also open conversation on. If there is a good reason to not do this change, I will change the PR to be one that documents why the override happens.

There is a cost to this change. Existing users may have been specifying the wrong ABI generation mode in their targets, and buck has been silently overriding the ABI generation mode. I feel that it is more intuitive to trust the user if they explicitly provide the mode in the java_library call, so I believe this is acceptable.

@facebook-github-bot
Copy link
Contributor

Hi @davidhao3300!

Thank you for your pull request and welcome to our community.We require contributors to sign our Contributor License Agreement, and we don't seem to have you on file.

In order for us to review and merge your code, please sign at https://code.facebook.com/cla. If you are contributing on behalf of someone else (eg your employer), the individual CLA may not be sufficient and your employer may need to sign the corporate CLA.

If you have received this in error or have any questions, please contact us at [email protected]. Thanks!

@davidhao3300
Copy link
Contributor Author

CLA has been signed

@facebook-github-bot
Copy link
Contributor

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!

@davidhao3300
Copy link
Contributor Author

I believe the test error is unrelated.

@facebook-github-bot
Copy link
Contributor

Thank you for signing our Contributor License Agreement. We can now accept your code for this (and any) Facebook open source project. Thanks!

@v-jizhang
Copy link
Contributor

From IanChilds: "abi_generation_mode = source is faster, because it spits out an ABI before the compilation of the library is completed. class ABI generation has to wait until the library is compiled, and then strips out the bits that aren't needed for the ABI. FWIW, I don't believe that Buck should be silently overriding the value."

@v-jizhang v-jizhang self-requested a review June 18, 2020 16:58
@v-jizhang v-jizhang merged commit 1c31c5b into facebook:master Jun 25, 2020
@davidhao3300
Copy link
Contributor Author

thank you!

Lcsmarcal added a commit to ifood/buck that referenced this pull request Oct 20, 2020
* Respect user input if abi_generation_mode is explicitly provided in java_library (facebook#2467)

* Automate publishing docs on CirclrCI (facebook#2486)

* Automate publishing docs on CirclrCI

* Automate publishing docs on CircleCI

* Automate publishing docs on CircleCI

* Automate publishing docs using linux VM

* Fixed Python3 compatible issues

* Added code to install android_sdk

* Automate docs, installed JDK for java docs

* Automate publishing docs on CircleCI, added CNAME

* Automate publishing docs deleted an extra line

* Automate publishing docs, refactored code

* Automate publishing docs, changed a required test name

Co-authored-by: buck-bot <[email protected]>

* Fixed git push access denied issue (facebook#2487)

Co-authored-by: buck-bot <[email protected]>

* handle bundling resources of static frameworks (Originally by rmaz) (facebook#2490)

* handle bundling resources of static framworks

add a test for bundling resources of static deps

make formatter happy

* Indentation fix

* Reverted some filtering changes

Co-authored-by: Richard Howell <[email protected]>
Co-authored-by: Gabe <[email protected]>

* Add support for java 11 builds in jitpack (facebook#2499)

* Fixed Unable to resolve dependency jdk8 (= 8.0.172) (facebook#2492)

Co-authored-by: buck-bot <[email protected]>

* CircleCI fix (facebook#2495)

Co-authored-by: buck-bot <[email protected]>

* Added python3 to interpreter names (facebook#2497)

* Added python3 to interpreter names

* Fixed an infinite recursive call

* Test fixes

* test fixes

* Pull out unrelated changes

Co-authored-by: buck-bot <[email protected]>

* Fixes for rust tests (facebook#2503)

Co-authored-by: v-jizhang <[email protected]>

* Add support for ANDROID_SDK_ROOT environment variable (facebook#2507)

Co-authored-by: v-jizhang <[email protected]>

* Fix for facebook#2498 (facebook#2504)

* Fix for facebook#2498

Buck fails to build non predex apps which include jars containing module-info.class files` facebook#2498

* Update DalvikStatsCache.java

Typo fix

* Update DalvikStatsCache.java

Added comment for special case

* Update DalvikStatsCache.java

Added new New line and space before comments.

v-jizhang 12 hours ago Contributor
Could you move your comment 1 line down and add 1 space after "//"? Thanks @surapuramakhil

* extracted filename from entry relative path, updated check with equals intead of ends with

* updated comment

* Set max store size bytes correctly so it is used by AbstractAsynchronousCache to decide what to upload (facebook#2510)

* CI rust test fixes (facebook#2511)

Co-authored-by: v-jizhang <[email protected]>

* Fixed a phthon installation bug on CircleCI (facebook#2509)

Co-authored-by: v-jizhang <[email protected]>

* add Easynvest to buck showcases (facebook#2514)

Co-authored-by: Lucas Marçal <[email protected]>

* Make Python3 the first choice of python interpreter (facebook#2512)

* Make Python3 the first choice of python interpreter

* Fixed tests

* Fixed tests

* Fixed tests

* Fixed testgs

* Fixed tests

* Fixed tests

Co-authored-by: v-jizhang <[email protected]>

* Fixed a python3 compatible issue (facebook#2517)

Co-authored-by: v-jizhang <[email protected]>

* Added application_region and application_language properties to xcode_workspace_config (facebook#2519)

* Add region and language option to launch and test actions in xcode_workspace_config

* Add application region and language arguments to projectV2

* Create unit test

Co-authored-by: Lucas Marçal <[email protected]>

* Added Android NDK tests (facebook#2515)

* Added Android NDK 19 tests

* Added ndk 20 tests

* Added NDK 21 tests

* Added timout for long running tests

Co-authored-by: v-jizhang <[email protected]>

* Saifulriza (facebook#2523)

* Add logo

* Update README.md

* Update README.md

* Add full kotlin configurations to kotlin rule (v2) (facebook#2526)

* Add full kotlin configurations to kotlin rule

* Adding test for KotlinConfiguredComilerFactory

* Fixing pmd issue on setup method

* Renaming remaining references to extra_kotlinc_arguments to free_compiler_args

* Adding license info to new test file

Co-authored-by: Zac Sweers <[email protected]>

* Fixing paths that fail during project generation (facebook#2527)

* (Rebase) Add snapshot_images_diff_path to apple_test (facebook#2528)

* Add snapshot_images_diff_path to apple_test

* Fix some issues found at code review

Co-authored-by: Lucas Marçal <[email protected]>

* Fixes for Windows tests (facebook#2529)

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Added Flavors to docs (facebook#2522)

* Added Flavors to docs

* Flavor documentation, moddified per code review.

Co-authored-by: v-jizhang <[email protected]>

* Added a kotlin tutorial for android (facebook#2525)

* Added a kotlin tutorial for android

* Corrected errors in kotlin tutorial

Co-authored-by: v-jizhang <[email protected]>

* Prepare release v2020.09.01 (facebook#2532)

Co-authored-by: v-jizhang <[email protected]>

* Added dependency to pulbishing docs (facebook#2534)

Co-authored-by: v-jizhang <[email protected]>

* Fixed CircleCI tests (facebook#2531)

Co-authored-by: v-jizhang <[email protected]>

* Upgraded ruby syntax in replease process (facebook#2533)

Co-authored-by: v-jizhang <[email protected]>

* Skip flaky tests on Windows platform (facebook#2536)

* Skip flaky tests on Windows platform

* Skip flaky tests on Windows platform

* Skip flaky tests on Windows platform

* Skip flaky tests on Windows platform

* Skip a flaky test on Windows

* Increased a timeout in Winddows test. (facebook#2544)

* Fixed dlang installation error (facebook#2543)

* Fixed dlang installation error

* Fixed dlang installation error

Co-authored-by: v-jizhang <[email protected]>

* Install python2 from archive. (facebook#2542)

* Install python2 from archive.

* Fixed an python3 installation error.

Co-authored-by: v-jizhang <[email protected]>

* Fixed a link (facebook#2539)

Co-authored-by: v-jizhang <[email protected]>

* Added a rust tutorial (facebook#2540)

Co-authored-by: v-jizhang <[email protected]>

* Add support for async worker processes (facebook#2547)

* Allow WorkerProcess to be used for multiple jobs at the same time.

No users yet, but next up is the process pool.

* Introduce a new `async` option to worker tools.

This makes buck call the tool concurrently, without waiting for responses. It's up to the tool to provide responses with the right ids, in any order.

* Write some tests, fix some bugs

* Add back license

* Update WorkerProcessPool.java

* Fix windows tests

Don't crash all of buck when a worker process fails.

* Code review feedback and clarifications, I hope

Co-authored-by: David Z Hao <[email protected]>
Co-authored-by: Jinlin Zhang <[email protected]>
Co-authored-by: buck-bot <[email protected]>
Co-authored-by: Gabe <[email protected]>
Co-authored-by: Richard Howell <[email protected]>
Co-authored-by: Gabe <[email protected]>
Co-authored-by: Gautam Korlam <[email protected]>
Co-authored-by: Akhil <[email protected]>
Co-authored-by: Ravi Agarwal <[email protected]>
Co-authored-by: Lucas Marçal <[email protected]>
Co-authored-by: Saiful Riza <[email protected]>
Co-authored-by: Ty Smith <[email protected]>
Co-authored-by: Zac Sweers <[email protected]>
Co-authored-by: Mike Kaplinskiy <[email protected]>
Co-authored-by: Lucas Marçal <[email protected]>
Lcsmarcal added a commit to ifood/buck that referenced this pull request Oct 20, 2020
* Respect user input if abi_generation_mode is explicitly provided in java_library (facebook#2467)

* Automate publishing docs on CirclrCI (facebook#2486)

* Automate publishing docs on CirclrCI

* Automate publishing docs on CircleCI

* Automate publishing docs on CircleCI

* Automate publishing docs using linux VM

* Fixed Python3 compatible issues

* Added code to install android_sdk

* Automate docs, installed JDK for java docs

* Automate publishing docs on CircleCI, added CNAME

* Automate publishing docs deleted an extra line

* Automate publishing docs, refactored code

* Automate publishing docs, changed a required test name

Co-authored-by: buck-bot <[email protected]>

* Fixed git push access denied issue (facebook#2487)

Co-authored-by: buck-bot <[email protected]>

* handle bundling resources of static frameworks (Originally by rmaz) (facebook#2490)

* handle bundling resources of static framworks

add a test for bundling resources of static deps

make formatter happy

* Indentation fix

* Reverted some filtering changes

Co-authored-by: Richard Howell <[email protected]>
Co-authored-by: Gabe <[email protected]>

* Add support for java 11 builds in jitpack (facebook#2499)

* Fixed Unable to resolve dependency jdk8 (= 8.0.172) (facebook#2492)

Co-authored-by: buck-bot <[email protected]>

* CircleCI fix (facebook#2495)

Co-authored-by: buck-bot <[email protected]>

* Added python3 to interpreter names (facebook#2497)

* Added python3 to interpreter names

* Fixed an infinite recursive call

* Test fixes

* test fixes

* Pull out unrelated changes

Co-authored-by: buck-bot <[email protected]>

* Fixes for rust tests (facebook#2503)

Co-authored-by: v-jizhang <[email protected]>

* Add support for ANDROID_SDK_ROOT environment variable (facebook#2507)

Co-authored-by: v-jizhang <[email protected]>

* Fix for facebook#2498 (facebook#2504)

* Fix for facebook#2498

Buck fails to build non predex apps which include jars containing module-info.class files` facebook#2498

* Update DalvikStatsCache.java

Typo fix

* Update DalvikStatsCache.java

Added comment for special case

* Update DalvikStatsCache.java

Added new New line and space before comments.

v-jizhang 12 hours ago Contributor
Could you move your comment 1 line down and add 1 space after "//"? Thanks @surapuramakhil

* extracted filename from entry relative path, updated check with equals intead of ends with

* updated comment

* Set max store size bytes correctly so it is used by AbstractAsynchronousCache to decide what to upload (facebook#2510)

* CI rust test fixes (facebook#2511)

Co-authored-by: v-jizhang <[email protected]>

* Fixed a phthon installation bug on CircleCI (facebook#2509)

Co-authored-by: v-jizhang <[email protected]>

* add Easynvest to buck showcases (facebook#2514)

Co-authored-by: Lucas Marçal <[email protected]>

* Make Python3 the first choice of python interpreter (facebook#2512)

* Make Python3 the first choice of python interpreter

* Fixed tests

* Fixed tests

* Fixed tests

* Fixed testgs

* Fixed tests

* Fixed tests

Co-authored-by: v-jizhang <[email protected]>

* Fixed a python3 compatible issue (facebook#2517)

Co-authored-by: v-jizhang <[email protected]>

* Added application_region and application_language properties to xcode_workspace_config (facebook#2519)

* Add region and language option to launch and test actions in xcode_workspace_config

* Add application region and language arguments to projectV2

* Create unit test

Co-authored-by: Lucas Marçal <[email protected]>

* Added Android NDK tests (facebook#2515)

* Added Android NDK 19 tests

* Added ndk 20 tests

* Added NDK 21 tests

* Added timout for long running tests

Co-authored-by: v-jizhang <[email protected]>

* Saifulriza (facebook#2523)

* Add logo

* Update README.md

* Update README.md

* Add full kotlin configurations to kotlin rule (v2) (facebook#2526)

* Add full kotlin configurations to kotlin rule

* Adding test for KotlinConfiguredComilerFactory

* Fixing pmd issue on setup method

* Renaming remaining references to extra_kotlinc_arguments to free_compiler_args

* Adding license info to new test file

Co-authored-by: Zac Sweers <[email protected]>

* Fixing paths that fail during project generation (facebook#2527)

* (Rebase) Add snapshot_images_diff_path to apple_test (facebook#2528)

* Add snapshot_images_diff_path to apple_test

* Fix some issues found at code review

Co-authored-by: Lucas Marçal <[email protected]>

* Fixes for Windows tests (facebook#2529)

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Fixes for Windows tests

* Added Flavors to docs (facebook#2522)

* Added Flavors to docs

* Flavor documentation, moddified per code review.

Co-authored-by: v-jizhang <[email protected]>

* Added a kotlin tutorial for android (facebook#2525)

* Added a kotlin tutorial for android

* Corrected errors in kotlin tutorial

Co-authored-by: v-jizhang <[email protected]>

* Prepare release v2020.09.01 (facebook#2532)

Co-authored-by: v-jizhang <[email protected]>

* Added dependency to pulbishing docs (facebook#2534)

Co-authored-by: v-jizhang <[email protected]>

* Fixed CircleCI tests (facebook#2531)

Co-authored-by: v-jizhang <[email protected]>

* Upgraded ruby syntax in replease process (facebook#2533)

Co-authored-by: v-jizhang <[email protected]>

* Skip flaky tests on Windows platform (facebook#2536)

* Skip flaky tests on Windows platform

* Skip flaky tests on Windows platform

* Skip flaky tests on Windows platform

* Skip flaky tests on Windows platform

* Skip a flaky test on Windows

* Increased a timeout in Winddows test. (facebook#2544)

* Fixed dlang installation error (facebook#2543)

* Fixed dlang installation error

* Fixed dlang installation error

Co-authored-by: v-jizhang <[email protected]>

* Install python2 from archive. (facebook#2542)

* Install python2 from archive.

* Fixed an python3 installation error.

Co-authored-by: v-jizhang <[email protected]>

* Fixed a link (facebook#2539)

Co-authored-by: v-jizhang <[email protected]>

* Added a rust tutorial (facebook#2540)

Co-authored-by: v-jizhang <[email protected]>

* Add app clip support

* Add integration test

* fix target name at Integration test

* fix typo

* Fix bundle ProductType

* Add support for async worker processes (facebook#2547)

* Allow WorkerProcess to be used for multiple jobs at the same time.

No users yet, but next up is the process pool.

* Introduce a new `async` option to worker tools.

This makes buck call the tool concurrently, without waiting for responses. It's up to the tool to provide responses with the right ids, in any order.

* Write some tests, fix some bugs

* Add back license

* Update WorkerProcessPool.java

* Fix windows tests

Don't crash all of buck when a worker process fails.

* Code review feedback and clarifications, I hope

* remove duplicated change

Co-authored-by: David Z Hao <[email protected]>
Co-authored-by: Jinlin Zhang <[email protected]>
Co-authored-by: buck-bot <[email protected]>
Co-authored-by: Gabe <[email protected]>
Co-authored-by: Richard Howell <[email protected]>
Co-authored-by: Gabe <[email protected]>
Co-authored-by: Gautam Korlam <[email protected]>
Co-authored-by: Akhil <[email protected]>
Co-authored-by: Ravi Agarwal <[email protected]>
Co-authored-by: Lucas Marçal <[email protected]>
Co-authored-by: Saiful Riza <[email protected]>
Co-authored-by: Ty Smith <[email protected]>
Co-authored-by: Zac Sweers <[email protected]>
Co-authored-by: Lucas Marçal <[email protected]>
Co-authored-by: Mike Kaplinskiy <[email protected]>
@navkast navkast deleted the david/respect-user-provided-generation-mode branch December 17, 2020 22:26
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants