Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add --debug-adapter flag to run (Cherry-pick of #15829) #15986

Closed

Conversation

thejcannon
Copy link
Member

Tom Dyas and others added 22 commits June 21, 2022 23:38
…pick of pantsbuild#15865) (pantsbuild#15891)

Scala Parser cannot figure out the provided types of an object that extends another type. This PR solves this by marking the object as recursive.

The following example won't compile with Pants at the moment:

File A:
```
object A {
  def a(x: Int): Int = ???
}
```

File B:
```
import A

object B extends A {
  
}
```
File Main:
```
import B.a

def main() = println(a(5))
```
# Rust tests and lints will be skipped. Delete if not intended.
[ci skip-rust]
…#15880) (pantsbuild#15892)

Scala: should visit ctor args of base type (pantsbuild#15880)


# Rust tests and lints will be skipped. Delete if not intended.
[ci skip-rust]

# Building wheels and fs_util will be skipped. Delete if not intended.
[ci skip-build-wheels]

Co-authored-by: Doron Somech <somdoron@gmail.com>
…rry pick of pantsbuild#15889) (pantsbuild#15897)

Increment the missing-digest backtracking level once per attempt (pantsbuild#15889)

As described in pantsbuild#15867 (and reported in pantsbuild#15885 and pantsbuild#15888), backtracking for missing digests currently suffers from a race condition where if multiple consuming nodes observe a `MissingDigest`, the producing node may be restarted multiple times, leading to some backtracking levels being skipped.

To address this, the backtracking level (née "attempt") is recorded in the result value, and is incremented exactly once per observation of a `MissingDigest` for a particular node and level, rather than once per run of the producing node (which can be restarted for multiple reasons, including cancellation).

[ci skip-build-wheels]

Co-authored-by: Stu Hood <stuhood@gmail.com>
…5920)

* Remove Greg from expected maintainers

* Remove Apple Silicon prompt

CI does this for us now. Eric is freeeeeeee.

[ci skip-build-wheels]

Co-authored-by: Daniel Wagner-Hall <dawagner@gmail.com>
…sbuild#15901) (pantsbuild#15915)

As described in pantsbuild#15524: `remote::ByteStore::load_bytes_with` calls are not deduped currently, meaning that if multiple consumers identify a `Digest` which is missing from the local store, they might concurrently fetch it from the remote store.

This is primarily an issue with `--remote-cache-eager-fetch=false`, as the laziness means that all consumers of a process output might consider whether to download it simultaneously (rather than the output always being downloaded before the process is called complete).

Fixes pantsbuild#15524.

[ci skip-build-wheels]
…te stdio-specific methods (Cherry-pick of pantsbuild#15890) (pantsbuild#15916)

As described in pantsbuild#15887: `StreamingWorkunit` plugins have never been able to set thread-local `WorkunitStore` state, but that apparently didn't matter until pantsbuild#11331 made it possible for the `StreamingWorkunitContext` file-fetching methods to encounter data which had not yet been fetched (and thus needed to create a workunit for the fetching).

This change updates and "deprecates" the existing `stdio_thread_[gs]et_destination` methods (although it doesn't have access to a decorator to do that), and introduces generic thread-local state methods which include all thread-local state required by engine APIs.

Fixes pantsbuild#15887.

[ci skip-build-wheels]
… the process parallelism (Cherry-pick of pantsbuild#15903) (pantsbuild#15917)

As described in pantsbuild#15808, the assumption that the nailgun pool runs under an appropriately sized semaphore has not been true since pantsbuild#15224, and results in an error when memory controls cause the pool size to be smaller than the process parallelism.

To resolve that, we add an additional semaphore (and blocked workunit) to pool acquisition.

Fixes pantsbuild#15808.

[ci skip-build-wheels]
…y-pick of pantsbuild#15899) (pantsbuild#15918)

As described in pantsbuild#14445 and fixed in stuhood/nails#11, JDKs >=13 have slightly different `nailgun` output. Upgrade to a new release of `nails` to add support for JDKs >=13.

With this change, JDKs up to `zulu-jre:17.0.3` appear to work.

Fixes pantsbuild#14445.

[ci skip-build-wheels]
…ild#15873) (pantsbuild#15921)

As described in pantsbuild#15800, currently the workunit for downloading a file is misleading: we begin reporting downloading before we have determined that we need to download anything.

Fixes pantsbuild#15800.

[ci skip-build-wheels]
…or` not used (pantsbuild#15931)

Fixes pantsbuild#15802 for 2.13 branch.

This will become the only code path in 2.14+, thanks to removing `--owners-not-found-behavior`. See pantsbuild#15929.

[ci skip-rust]
pantsbuild#15934) (pantsbuild#15938)

Upgrade default iPython to 7.34, which drops Python 3.6 (pantsbuild#15934)

Closes pantsbuild#15933.

[ci skip-rust]
[ci skip-build-wheels]
…s (Cherry-pick of pantsbuild#15859) (pantsbuild#15936)

Fix bad "<infallible>" description in invalid addresses error messages (pantsbuild#15859)

Closes pantsbuild#15858. See that ticket for the explanation of why we solve the issue this way.

[ci skip-rust]
[ci skip-build-wheels]
…quiring CLI arguments (Cherry-pick of pantsbuild#15932) (pantsbuild#15937)

Closes pantsbuild#15868.

[ci skip-rust]
[ci skip-build-wheels]
…erry pick of pantsbuild#15967) (pantsbuild#15975)

Add an observation metric (histogram) for calls to Action Cache `GetActionResult` RPC. This will help with monitoring reads from remote cache.

[ci skip-build-wheels]
…tsbuild#15976)

* Fix the `RemoteStoreReadBlobTimeMicros` metric, which was not including the actual fetch time.
* Add the relevant unit suffix to time-based metrics which don't have one.
* Move `RemoteStoreBlobBytes{Up,Down}loaded` to observation metrics, in order to record histograms.
    * Additionally, report a `sum` value for histograms.
* Simplify the "time to first byte" calculation by using an `Option<Instant>` for the start time.

[ci skip-build-wheels]
…ck of pantsbuild#15928) (pantsbuild#15977)

Users likely don't care about different settings per-language, and if they want to run multiple they can use the CLI.

Also, now we can log the server address.

[ci skip-rust]
[ci skip-build-wheels]
…tsbuild#15980)

- Adding an `args` flag for additional flags (especially useful for debug logs)
- Adds support for executing module/module+function/console_script

[ci skip-rust]
[ci skip-build-wheels]
run's counterpart to pantsbuild#15799. Support is added for pex_binary (which will be spiritually lifted to the python_source with pantsbuild#15849)

[ci skip-rust]
[ci skip-build-wheels]
@thejcannon thejcannon closed this Jun 28, 2022
@thejcannon thejcannon deleted the cherry-pick-15829-to-2.13.x branch June 28, 2022 23:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants