[
https://issues.apache.org/jira/browse/BEAM-6178?focusedWorklogId=172790&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-172790
]
ASF GitHub Bot logged work on BEAM-6178:
----------------------------------------
Author: ASF GitHub Bot
Created on: 06/Dec/18 19:16
Start Date: 06/Dec/18 19:16
Worklog Time Spent: 10m
Work Description: swegner commented on a change in pull request #7197:
[BEAM-6178] Adding beam-sdks-java-bom, adding exportJavadoc flag for
applyJavaNature
URL: https://github.com/apache/beam/pull/7197#discussion_r239546811
##########
File path: sdks/java/javadoc/build.gradle
##########
@@ -26,64 +26,33 @@
description = "Apache Beam :: SDKs :: Java :: Aggregated Javadoc"
apply plugin: 'java'
-def exportedJavadocProjects = [
- ':beam-runners-apex',
- ':beam-runners-core-construction-java',
- ':beam-runners-core-java',
- ':beam-runners-java-fn-execution',
- ':beam-runners-local-java-core',
- ':beam-runners-direct-java',
- ':beam-runners-reference-java',
- ':beam-runners-flink_2.11',
- ':beam-runners-google-cloud-dataflow-java',
- ':beam-runners-spark',
- ':beam-runners-gearpump',
- ':beam-sdks-java-core',
- ':beam-sdks-java-fn-execution',
- ':beam-sdks-java-extensions-google-cloud-platform-core',
- ':beam-sdks-java-extensions-join-library',
- ':beam-sdks-java-extensions-json-jackson',
- ':beam-sdks-java-extensions-protobuf',
- ':beam-sdks-java-extensions-sketching',
- ':beam-sdks-java-extensions-sorter',
- ':beam-sdks-java-extensions-sql',
- ':beam-sdks-java-harness',
- ':beam-sdks-java-io-amazon-web-services',
- ':beam-sdks-java-io-amqp',
- ':beam-sdks-java-io-cassandra',
- ':beam-sdks-java-io-elasticsearch',
- ':beam-sdks-java-io-elasticsearch-tests-2',
- ':beam-sdks-java-io-elasticsearch-tests-5',
- ':beam-sdks-java-io-elasticsearch-tests-6',
- ':beam-sdks-java-io-elasticsearch-tests-common',
- ':beam-sdks-java-io-google-cloud-platform',
- ':beam-sdks-java-io-hadoop-common',
- ':beam-sdks-java-io-hadoop-file-system',
- ':beam-sdks-java-io-hadoop-input-format',
- ':beam-sdks-java-io-hbase',
- ':beam-sdks-java-io-hcatalog',
- ':beam-sdks-java-io-jdbc',
- ':beam-sdks-java-io-jms',
- ':beam-sdks-java-io-kafka',
- ':beam-sdks-java-io-kinesis',
- ':beam-sdks-java-io-mongodb',
- ':beam-sdks-java-io-mqtt',
- ':beam-sdks-java-io-parquet',
- ':beam-sdks-java-io-redis',
- ':beam-sdks-java-io-solr',
- ':beam-sdks-java-io-tika',
- ':beam-sdks-java-io-xml',
-]
+for (String projName : rootProject.ext.allProjectNames) {
+ if (!projName.equals(':' + project.name) &&
!projName.equals(':beam-sdks-java-bom')) {
+ evaluationDependsOn(projName)
Review comment:
Forcing every other project to depend on this one feels a bit dirty. If
another project used the same pattern, would it create a build cycle?
The previous behavior was still hacky, but it only included the projects
listed here for javadoc support; so if there were another uber project using
`evaluationDependsOn` it wouldn't be contained in the previous list and thus
avoid a build cycle.
However, I had a lot of trouble finding a better way of structuring this.
Some relevant docs/threads:
* [Multi-project Builds: Depending on the task output produced by another
project](https://docs.gradle.org/current/userguide/multi_project_builds.html#sec:depending_on_output_of_another_project)
* [Discuss: Best approach Gradle multi-module project: generate just one
global
javadoc](https://discuss.gradle.org/t/best-approach-gradle-multi-module-project-generate-just-one-global-javadoc/18657/22)
*
[gradle-aggregate-javadocs-plugin](https://github.com/nebula-plugins/gradle-aggregate-javadocs-plugin)
One thought is that it seems easier to structure aggregation logic by
putting it in the root build script. By default the root build script is
configured first so you have some guarantees on ordering.
With all that said, I'm happy deferring this. You've stepped into an awkward
part of the build process, and I don't expect you to fix it here.
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:
[email protected]
Issue Time Tracking
-------------------
Worklog Id: (was: 172790)
Time Spent: 50m (was: 40m)
> Create BOM for Beam
> -------------------
>
> Key: BEAM-6178
> URL: https://issues.apache.org/jira/browse/BEAM-6178
> Project: Beam
> Issue Type: Improvement
> Components: build-system
> Affects Versions: 2.10.0
> Reporter: Garrett Jones
> Assignee: Garrett Jones
> Priority: Critical
> Time Spent: 50m
> Remaining Estimate: 0h
>
> Add a module to Beam which generates a BOM for Beam modules.
--
This message was sent by Atlassian JIRA
(v7.6.3#76005)