hundreds-father-40408/10/2021, 10:48 PM
proud-dentist-2284408/10/2021, 10:55 PM
does not have any dependencies because it parses setup.py, it doesn't run it. So, it can only pick up on the more basic info included in setup.py. ansible has an "or" dependency, which none of the the python dependency management systems (including poetry) have direct support for. So, it has setup.py logic to say "if cryptography is present, then depend on cryptography, else depend on pycrypto"
hundreds-father-40408/10/2021, 11:16 PM
fast-nail-5540008/11/2021, 2:04 PM
subclass to some other non-target type if there is a rule defined for that conversion? can it do so if the rule is defined to take an applicable FieldSet as input and returns the destination type?
hundreds-father-40408/11/2021, 5:40 PM
hundreds-father-40408/11/2021, 6:16 PM
in lockfiles. We need those included. But they're currently at 1.2.0a2, and it took 3.5 months for 1.1 to go from a2 to stable release Some options:
happy-kitchen-8948208/11/2021, 6:37 PM
PythonDistributionFieldSet is not an @union, but its superclass (PackageFieldSet) is.
Exception: Invalid Get. Because the second argument to `Get(BuiltPackage, PythonDistributionFieldSet, PythonDistributionFieldSet(address=Address(testprojects/src/python/hello/native:dist), provides=<class 'pants.backend.python.target_types.PythonProvidesField'>(alias='provides', address=testprojects/src/python/hello/native:dist, value=<pants.backend.python.macros.python_artifact.PythonArtifact object at 0x107324b38>, default=None)))` is annotated with `@union`, the third argument should be a member of that union. Did you intend to register `UnionRule(PythonDistributionFieldSet, PythonDistributionFieldSet)`? If not, you may be using the wrong type (PythonDistributionFieldSet) for the third argument.
ancient-vegetable-1055608/12/2021, 5:27 PM
witty-crayon-2278608/13/2021, 8:41 PM
witty-crayon-2278608/16/2021, 4:00 PM
ancient-vegetable-1055608/16/2021, 5:23 PM
with respect to how it orders inputs. Can someone help me understand what the correct behaviour should be here? (test case will appear in thread)
witty-crayon-2278608/16/2021, 5:48 PM
witty-crayon-2278608/16/2021, 8:20 PM
witty-crayon-2278608/17/2021, 12:50 AM
, it doesn’t look like it has any user requirements on its pythonpath: https://github.com/pantsbuild/pants/blob/3be44f011b13a81eb2266a9fc7ae01bd57f7fb2c/src/python/pants/backend/python/goals/setup_py.py#L428-L469 … but we use the default value of
, meaning that the user constraints are applied to that build. this is probably a more widespread issue, but: the constraints should not be applied there, right?
hundreds-father-40408/18/2021, 12:50 AM
average-vr-5679508/18/2021, 3:44 PM
but at the moment
is hard-coded to do speculation... How would folks feel about: 1. Implementing a
which takes two `CommandRunner`s and just races them, leaving
to only worry about interacting with the remote cache itself 2. Introducing this flag to
? (I actually only care about the
flag values, but I figure completing the matrix is worthwhile while doing so)
witty-crayon-2278608/18/2021, 4:30 PM
, and …
. i’ve just fixed application of color to logs under
, and the red for warn continues to weird me out a bit.
average-vr-5679508/19/2021, 10:48 AM
? These seem like they could be combined? (And ideally would use the
field in the proto https://github.com/bazelbuild/remote-apis/blob/3e816456ee28f01ab2e0abf72306c1f340c7b229/build/bazel/remote/execution/v2/remote_execution.proto#L[…]9 rather than env vars, though I know
was added after we added these fields 🙂)
hundreds-father-40408/19/2021, 7:54 PM
can also be a
. Does that sound right?
fresh-cat-9082708/20/2021, 3:32 PM
worried-salesclerk-3783408/22/2021, 3:00 AM
worried-salesclerk-3783408/24/2021, 2:47 AM
backend? Or would you prefer that a new backend
be created and duplicate code would exist, but it would be easier to allow for the different types to diverge? I think the second would also prevent a breaking change since the backend name would change?
hundreds-father-40408/24/2021, 5:03 AM
(provided by Pants),
, or a path to your own file. It defaults to
For supporting multiple user lockfiles, you can set
on targets like
, otherwise it defaults to
. You can also set
to opt out. I can't decide if it should be
to signal to use the global default...I think the latter for consistency and because it seems like
would be confusing that people might think it meant "don't use a lockfile"
fast-nail-5540008/24/2021, 5:37 PM
? I am trying to use syntax like the following to do so:
sources_digest = await Get(Digest, DigestSubset(sources_digest, PathGlobs(["!__sources__/go.sum", "**"])))
witty-crayon-2278608/24/2021, 6:35 PM
) in 2.7.x? are we concerned that those won’t be resolvable on some platforms?
hundreds-father-40408/25/2021, 12:37 AM
vs. something else: https://github.com/pantsbuild/pants/pull/12641. Feedback welcomed!
hundreds-father-40408/25/2021, 2:59 PM
by default. Some "blessed" interpreter constraints will be defined via
, then targets set things like