Conversation
jin
commented
Apr 5, 2019
| # The list of java_import/aar_import declaration strings to be joined at the end | ||
| all_imports = [] | ||
|
|
||
| # A mapping of FQN to the artifact's sha256 checksum |
Collaborator
Author
There was a problem hiding this comment.
drive-by removal of the checksumming code
jin
commented
Apr 5, 2019
| # Iterate through the list of artifacts, and generate the target declaration strings. | ||
| for artifact in dep_tree["dependencies"]: | ||
| artifact_path = artifact["file"] | ||
| target_label = _escape(_strip_packaging_classifier(artifact["coord"])) |
Collaborator
Author
There was a problem hiding this comment.
instead of using the artifact path as the key to dedupe target generation, we use the target label as the key, since it's canonical and unique anyway
|
CLAs look good, thanks! ℹ️ Googlers: Go here for more info. |
dkelmer
reviewed
Apr 15, 2019
dkelmer
approved these changes
Apr 15, 2019
mattnworb
added a commit
to mattnworb/rules_jvm_external
that referenced
this pull request
Aug 1, 2024
closes bazel-contrib#1206 Maven interprets a `<dependency>` (not in the `<dependencyManagement>` section) with `type=pom` as adding all of those artifact's dependencies (direct and transitive) to the current module's list of dependencies. This commit modifies RJE to replicate that behavior, so that any artifact which is directly referenced in `maven_install()` also has all of its true transitive dependencies imported/installed into the Bazel workspace. The fix here is to append `pom` to the list of types passed to coursier's `--artifact-types` flag so that it properly fetches/resolves the type=pom artifact, and to append a condition to the if-else branch meant to support direct dependencies with type=pom in `maven_install()` (see bazel-contrib#99) to handle a transitive dependency on type=pom as well.
mattnworb
added a commit
to mattnworb/rules_jvm_external
that referenced
this pull request
Aug 1, 2024
closes bazel-contrib#1206 Maven interprets a `<dependency>` (not in the `<dependencyManagement>` section) with `type=pom` as adding all of those artifact's dependencies (direct and transitive) to the current module's list of dependencies. This commit modifies RJE to replicate that behavior, so that any artifact which is directly referenced in `maven_install()` also has all of its true transitive dependencies imported/installed into the Bazel workspace. The fix here is to append `pom` to the list of types passed to coursier's `--artifact-types` flag so that it properly fetches/resolves the type=pom artifact, and to append a condition to the if-else branch meant to support direct dependencies with type=pom in `maven_install()` (see bazel-contrib#99) to handle a transitive dependency on type=pom as well.
mattnworb
added a commit
to mattnworb/rules_jvm_external
that referenced
this pull request
Aug 1, 2024
closes bazel-contrib#1206 Maven interprets a `<dependency>` (not in the `<dependencyManagement>` section) with `type=pom` as adding all of those artifact's dependencies (direct and transitive) to the current module's list of dependencies. This commit modifies RJE to replicate that behavior, so that any artifact which is directly referenced in `maven_install()` also has all of its true transitive dependencies imported/installed into the Bazel workspace. The fix here is to append `pom` to the list of types passed to coursier's `--artifact-types` flag so that it properly fetches/resolves the type=pom artifact, and to append a condition to the if-else branch meant to support direct dependencies with type=pom in `maven_install()` (see bazel-contrib#99) to handle a transitive dependency on type=pom as well.
shs96c
pushed a commit
that referenced
this pull request
Aug 27, 2024
closes #1206 Maven interprets a `<dependency>` (not in the `<dependencyManagement>` section) with `type=pom` as adding all of those artifact's dependencies (direct and transitive) to the current module's list of dependencies. This commit modifies RJE to replicate that behavior, so that any artifact which is directly referenced in `maven_install()` also has all of its true transitive dependencies imported/installed into the Bazel workspace. The fix here is to append `pom` to the list of types passed to coursier's `--artifact-types` flag so that it properly fetches/resolves the type=pom artifact, and to append a condition to the if-else branch meant to support direct dependencies with type=pom in `maven_install()` (see #99) to handle a transitive dependency on type=pom as well.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Fixes #98
Add a whitelist of artifacts that are "aggregators", that is, they only have a POM file and no jar.
If Coursier tells us that a particular artifact doesn't have a file, we generate a
java_libraryinstead, and re-export its deps.