Skip to content

Commit

Permalink
Remove pom-resolve code and references (#3927)
Browse files Browse the repository at this point in the history
This deletes the pom-resolve and pom-publish and referencing scripts/files.
We will probably find more as time goes on, this is just functional for now.

There are a couple obvious references I kept because they explain the changes
with the new Ivy vs Pom-resolve.

Pom-resolve is available on PyPi as a Pants plugin:
https://pypi.python.org/pypi/fsqio.pants.pom-resolve

See the [buildgen README](src/python/fsqio/pants/buildgen) for some example
config.
(sapling split of 8edfc6976cfa9a43466d503535c2fefde199e6bb)
  • Loading branch information
mateor committed Feb 28, 2018
1 parent cbd7d5b commit ad66f53
Show file tree
Hide file tree
Showing 15 changed files with 4 additions and 1,869 deletions.
4 changes: 2 additions & 2 deletions .travis.yml
Expand Up @@ -5,8 +5,8 @@ before_cache:
- rm -rf $HOME/.cache/pants/stats
cache:
directories:
- ".local_artifact_cache/fsqio_pants_pom_pom_resolve_PomResolve"
- ".local_artifact_cache/fsqio_pants_spindle_tasks_build_spindle_BuildSpindle"
- ".local_artifact_cache/"
- .pants.bootstrap/bin
- "$HOME/.pom2"
- "$HOME/.cache/pip"
- "$HOME/.ivy2/pants"
Expand Down
9 changes: 2 additions & 7 deletions README.md
Expand Up @@ -19,8 +19,6 @@ internally, all of the tools can be built just as we use them, directly from HEA
An exception aggregator using mongodb.
* [Fhttp](https://github.com/foursquare/fsqio/tree/master/src/jvm/io/fsq/fhttp):
A request building interface similar to scalaj-http for Finagle http clients.
* [Pants pom-resolve](https://github.com/foursquare/fsqio/tree/master/src/python/fsqio/pants/pom):
A drop-in Python replacement for the Pants ivy resolver.
* [Rogue](https://github.com/foursquare/fsqio/tree/master/src/jvm/io/fsq/rogue): A Scala DSL for MongoDB
* [Spindle](https://github.com/foursquare/fsqio/tree/master/src/jvm/io/fsq/spindle): A Scala code generator for Thrift
* [Twofishes](https://github.com/foursquare/fsqio/tree/master/src/jvm/io/fsq/twofishes):
Expand Down Expand Up @@ -58,12 +56,9 @@ in this README we will just touch on how to compile and test the code.

## Compiling and Testing
#### First Run
The first run will take a long time as
[pom-resolve](https://github.com/foursquare/fsqio/tree/master/src/python/fsqio/pants/pom)
(our custom resolver for 3rdparty dependencies) computes the project graph and downloads the dependencies.
Maybe as long as 15-20 mins! A good first run is to get this out of the way:
A good first run is to compile the repo and run every test.

./pants pom-resolve
./pants compile test src:: test::

#### Targets and BUILD files
Targets are adressable project or dependency level modules that can be built by Pants. `BUILD` files are
Expand Down
Expand Up @@ -36,9 +36,6 @@ def product_types(cls):
@classmethod
def prepare(cls, options, round_manager):
super(MapThirdPartyJarSymbols, cls).prepare(options, round_manager)

# NOTE(mateo): This is a deprecated concept upstream - everything is in the classpath now. So it will take some
# fiddling to get the jar symbols for anyone not using pom-resolve.
round_manager.require_data('compile_classpath')
round_manager.require_data('java')
round_manager.require_data('scala')
Expand Down Expand Up @@ -116,7 +113,5 @@ def execute(self):
products.safe_create_data('third_party_jar_symbols', lambda: third_party_jar_symbols)

def check_artifact_cache_for(self, invalidation_check):
# Pom-resolve is an output dependent on the entire target set, and is not divisible
# by target. So we can only cache it keyed by the entire target set.
global_vts = VersionedTargetSet.from_versioned_targets(invalidation_check.all_vts)
return [global_vts]
Expand Up @@ -148,9 +148,6 @@ def _scala_library_used_addresses(self, target):
continue
for address in addresses:
dep = self.context.build_graph.get_target(address)

# NOTE(mateo): This cannot happen when using pom-resolve, but OSS consumers have been bitten when dep is None.
# I was unable to repro using Ivy, but this check is cheap enough to be worth it no matter the resolver.
if not dep:
raise UsedSymbolException("An address was used that was not injected into the build graph! Make sure that "
"there is a matching BUILD definition for this used address: {}".format(address))
Expand Down
29 changes: 0 additions & 29 deletions src/python/fsqio/pants/pom_resolve/BUILD

This file was deleted.

1 change: 0 additions & 1 deletion src/python/fsqio/pants/pom_resolve/__init__.py

This file was deleted.

95 changes: 0 additions & 95 deletions src/python/fsqio/pants/pom_resolve/coordinate.py

This file was deleted.

133 changes: 0 additions & 133 deletions src/python/fsqio/pants/pom_resolve/dependency.py

This file was deleted.

0 comments on commit ad66f53

Please sign in to comment.