future-butcher-94831
11/06/2018, 3:50 PM[GLOBAL]
pants_workdir: /Users/ddcaaronm/Desktop/pants/.pants.d
plugin_cache_dir: /Users/ddcaaronm/Desktop/pants/plugin_cache/
[cache]
read_from: ['/Users/ddcaaronm/Desktop/pants/.cache']
write_to: ['/Users/ddcaaronm/Desktop/pants/.cache']
Most concerningly, compilation fails with the following:
[1/6] Compiling 1 scala-js source in 1 target (src/scala/com/coxautoinc/mediastrategy/strategize/domain:domain-js).
09:18:46 00:24 [compile]
compile(src/scala/com/coxautoinc/mediastrategy/strategize/domain:domain-js) failed: /Users/ddcaaronm/git/strategy-recommendations is not a directory containing /Users/ddcaaronm/Desktop/pants/.pants.d/resolve/scala-js-compile/a53b6931478d/src.scala.com.coxautoinc.mediastrategy.strategize.domain.domain-js/current/z.analysis
FAILURE: Compilation failure: Failed jobs: compile(src/scala/com/coxautoinc/mediastrategy/strategize/domain:domain-js)
Is this caused by a configuration issue?
Secondly, when I look at my config w/ ./pants --pants-config-files=local.ini options cache
many directories don’t appear to inherit from the settings specified in local.ini
. Would I need to specificy all of these options? I expected these to be picked up from the cache.read_from/write_to
config.
cache.read_from = ['/Users/ddcaaronm/Desktop/pants/.cache'] (from CONFIG in local.ini)
...
cache.write_to = ['/Users/ddcaaronm/Desktop/pants/.cache'] (from CONFIG in local.ini)
cache.analysis.read_from = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.analysis.write_to = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.analysis.zinc.read_from = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.analysis.zinc.write_to = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.bash-completion.read_from = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.bash-completion.write_to = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.bench.read_from = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.bench.write_to = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.binary.read_from = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
cache.binary.write_to = ['/Users/ddcaaronm/git/strategy-recommendations/.cache'] (from HARDCODED)
mysterious-farmer-45668
11/06/2018, 6:37 PMbrief-engineer-67497
11/07/2018, 11:16 AMclass QueryDslGen(SimpleCodegenTask, JavacCompile):
def __init__(self, *args, **kwargs):
super(QueryDslGen, self).__init__(*args, **kwargs)
def synthetic_target_type(self, target):
return JavaLibrary
def is_gentarget(self, target):
return isinstance(target, QueryDslLibrary)
def execute_codegen(self, target, target_workdir):
if not isinstance(target, QueryDslLibrary):
raise TaskError('Invalid target type "{class_type}" (expected QueryDslLibrary)'
.format(class_type=type(target).__name__))
result = ???
if result != 0:
raise TaskError('twirl-gen ... exited non-zero ({code})'.format(code=result))
@classmethod
def get_args_default(cls, bootstrap_option_values):
return super(JavacCompile, cls).get_args_default(cls, bootstrap_option_values) + ('-proc:only', '-processor', 'com.querydsl.apt.jpa.JPAAnnotationProcessor', '-s', target_workdir)
obviously I cannot use the get_args_default
to pass the argument since I need the target_workdir
value passed to execute_codegen
. I suppose I need to use self.context.options
somehow but I'm not sure how.
Furthermore I'm a complete python newbie so I'm not sure how python will work with regards to the multiple inheritance and the diamond I've got herebrief-engineer-67497
11/07/2018, 11:17 AMbrief-engineer-67497
11/07/2018, 11:20 AMbrief-engineer-67497
11/08/2018, 5:17 PMbrief-engineer-67497
11/08/2018, 5:18 PMbrief-engineer-67497
11/08/2018, 5:19 PMquerydsl_library(
name='meta-model',
dependencies=[
'libs/hibernate/src/main/scala',
],
sources=rglobs('*.java'),
)
I'm still confused with how pants exactly worksbrief-engineer-67497
11/08/2018, 5:19 PMbrief-engineer-67497
11/08/2018, 5:20 PMmysterious-farmer-45668
11/08/2018, 10:47 PMmysterious-farmer-45668
11/08/2018, 10:47 PM[doc.scaladoc]
and have a dic of jvm_options
. does that sound correct?acoustic-book-58772
11/08/2018, 11:53 PM./pants run <python target>
?acoustic-book-58772
11/08/2018, 11:53 PMmysterious-farmer-45668
11/08/2018, 11:55 PMmysterious-farmer-45668
11/08/2018, 11:55 PMbrief-engineer-67497
11/09/2018, 3:59 PMa
which declare b1
and b2
as dependencies (where b1
andb b2
are ScalaLibrary with source in my mono repo). I managed to duplicate the logic that compute the directory where class files of b1
and b2
will be put but I cannot find how the classpath for the compilation of b1
and b2
is computed.
This raise a more general question on how pants works. When I look at JavacCompile task, it executes itself on a collection of target it finds in its context.
Hence, when I say ./pants compile path/to/my/library
it does not direcly translate to the call of some def compile(target)
function. I wonder how much meta data is gathered on targets before calling the desired task.brief-engineer-67497
11/09/2018, 4:08 PMa
depends on java_library target b
, code gen of a
is run after compilation of b
?aloof-angle-91616
11/11/2018, 9:51 PMpython_dist()
integration will allow me to put all the disparate libraries together with zero effort out of the box. that or i may turn up some bugs, either way it's hypebrief-engineer-67497
11/12/2018, 3:23 PM./pants publish pants-plugins/scala:: --no-publish-jar-prompt
and I have the following message :
14:53:02 01:11 [publish]
14:53:02 01:11 [jar]
Skipping check for a clean None branch in test mode.Skipping publish of foo#bar;0.0.1 in test mode.
I do not found any mention of the "test mode" in the documentation and the only skip=true that I have is scaladoc:
./pants options --options-name=skip
binary.dup.skip = False (from HARDCODED)
bundle.dup.skip = False (from HARDCODED)
detect-duplicates.skip = False (from HARDCODED)
doc.javadoc.skip = False (from HARDCODED)
doc.scaladoc.skip = True (from CONFIG in pants.ini)
fmt.skip = False (from HARDCODED)
lint.skip = False (from HARDCODED)
test.junit.skip = False (from HARDCODED)
test.pytest.skip = False (from HARDCODED)
Did I miss something ?brief-engineer-67497
11/12/2018, 3:33 PMbrief-engineer-67497
11/12/2018, 3:33 PMcuddly-architect-27013
11/12/2018, 8:11 PMwitty-crayon-22786
11/12/2018, 8:16 PMwitty-crayon-22786
11/12/2018, 8:16 PMcuddly-architect-27013
11/12/2018, 8:28 PMnutritious-monkey-78516
11/12/2018, 9:29 PMwitty-crayon-22786
11/12/2018, 9:30 PMnutritious-monkey-78516
11/12/2018, 9:40 PMFailed to execute PEX file, missing macosx_10_14_x86_64-cp-27-cp27m compatible dependencies for:
pytest-cov
coverage
witty-crayon-22786
11/12/2018, 9:41 PM