Skip to content

Commit

Permalink
Fix the ScroogeGen target selection predicate.
Browse files Browse the repository at this point in the history
This also updates the release version and CHANGELOG
in anticipation of a quick release.

Testing Done:
Before this fix, reproed the current CI failures with:
```console
$ pants.dev clean-all test examples/::
...
19:52:10 00:20         [compile]
19:52:10 00:20           [jmake]
                         warning: bootstrap class path not set in conjunction with -source 1.6
                         Jmake version 1.3.8-3
                         /home/jsirois/dev/3rdparty/pants/.pants.d/gen/scrooge/java-sync/com/pants/examples/distance/thriftjava/Distance.java:32: error: duplicate class: com.pants.examples.distance.thriftjava.Distance
                         public class Distance implements TBase<Distance, Distance._Fields>, java.io.Serializable, Cloneable {
                                ^
                         /home/jsirois/dev/3rdparty/pants/.pants.d/gen/scrooge/java-sync/com/pants/examples/precipitation/thriftjava/Precipitation.java:32: error: duplicate class: com.pants.examples.precipitation.thriftjava.Precipitation
                         public class Precipitation implements TBase<Precipitation, Precipitation._Fields>, java.io.Serializable, Cloneable {
                                ^
                         Writing project database...  Done.

FAILURE: compilation error
...
$ find .pants.d -type f | xargs grep "package com.pants.examples.distance.thriftjava"
.pants.d/gen/thrift/sessions/examples.src.thrift.com.pants.examples.precipitation.precipitation.thrift/gen-java/com/pants/examples/distance/thriftjava/Distance.java:package com.pants.examples.distance.thriftjava;
.pants.d/gen/thrift/combined/gen-java/com/pants/examples/distance/thriftjava/Distance.java:package com.pants.examples.distance.thriftjava;
.pants.d/gen/scrooge/java-sync/com/pants/examples/distance/thriftjava/Distance.java:package com.pants.examples.distance.thriftjava;
...
```

After the fix the examples run green and:
```console
$ find .pants.d -type f | xargs grep "package com.pants.examples.distance.thriftjava"
.pants.d/gen/thrift/sessions/examples.src.thrift.com.pants.examples.precipitation.precipitation.thrift/gen-java/com/pants/examples/distance/thriftjava/Distance.java:package com.pants.examples.distance.thriftjava;
.pants.d/gen/thrift/combined/gen-java/com/pants/examples/distance/thriftjava/Distance.java:package com.pants.examples.distance.thriftjava;
```

CI went green here: https://travis-ci.org/pantsbuild/pants/builds/44412131

Bugs closed: 875

Reviewed at https://rbcommons.com/s/twitter/r/1497/
  • Loading branch information
jsirois committed Dec 18, 2014
1 parent 8667470 commit 4ba578e
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 1 deletion.
9 changes: 9 additions & 0 deletions src/python/pants/CHANGELOG.rst
Original file line number Diff line number Diff line change
@@ -1,6 +1,15 @@
RELEASE HISTORY
===============

0.0.26 (12/17/2014)
-------------------

Bugfixes
~~~~~~~~

* Fix the `ScroogeGen` target selection predicate
`RB #1497 <https://rbcommons.com/s/twitter/r/1497>`_

0.0.25 (12/17/2014)
-------------------

Expand Down
7 changes: 7 additions & 0 deletions src/python/pants/backend/codegen/tasks/scrooge_gen.py
Original file line number Diff line number Diff line change
Expand Up @@ -289,6 +289,13 @@ def write_gen_file_map(self, gen_file_map, targets, outdir):
def is_gentarget(self, target):
if not isinstance(target, JavaThriftLibrary):
return False

# We only handle requests for 'scrooge' compilation and not, for example 'thrift', aka the
# Apache thrift compiler
compiler = self.defaults.get_compiler(target)
if compiler != 'scrooge':
return False

language = self.defaults.get_language(target)
if language not in ('scala', 'java'):
raise TaskError('Scrooge can not generate {0}'.format(language))
Expand Down
2 changes: 1 addition & 1 deletion src/python/pants/version.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,4 +6,4 @@
print_function, unicode_literals)


VERSION = '0.0.25'
VERSION = '0.0.26'

0 comments on commit 4ba578e

Please sign in to comment.