enable_intremental_javac=true flaky with annotation processors |
|||||
Issue description1. Build Chrome on Android, eg: ninja -C out_android/Debug chrome_apk_incremental 2. Go to TrustedWebActivityCoordinator and remove the PersistentNotificationController and TrustedWebActivityDisclosureView from the constructor (or any parts from the constructor. 3. Rebuild Chrome. 4. Open out_android/Debug/gen/chrome/android/chrome_java/generated_java/org/chromium/chrome/browser/browserservices/trustedwebactivityui/TrustedWebActivityCoordinator_Factory.java The provideInstance method references the *old* constructor (with the now missing elements). Annoyingly this manifests as a crash at runtime, not at compile time.
,
Nov 20
This should be an issue for incremental builds only. Incremental annotation processing has been recently introduced to dagger 2.18 (we have 2.17) under the flag Adagger.gradle.incremental, but as the name suggests, I guess it's likely to work only with gradle.
,
Nov 21
,
Jan 11
,
Jan 14
Is this just because of workload management, or are we expecting to get the fix for free with some update?
,
Jan 14
Sorry, probably closed this too hastily in a bulk review. Repro steps worked for me for enable_intremental_javac=true, but not for enable_intremental_javac=false. Thus, this is a bug with jmake. Sadly, I think our options are to either: * remove support for enable_intremental_javac=true, or * document its quirks. Probably we should just delete it since it doesn't work reliably. No other build systems that I'm aware of try to do this kind of java dependency analysis. For faster builds, what we should really do is figure out how to break up chrome_java into subtargets.
,
Jan 17
(5 days ago)
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by agrieve@chromium.org
, Nov 20