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

Commits on Jun 22, 2022

  1. Scala: mark an object that extends another type as recursive (Cherry …

    …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]
    Tom Dyas authored Jun 22, 2022
    Configuration menu
    Copy the full SHA
    64d5f7f View commit details
    Browse the repository at this point in the history
  2. Scala: should visit ctor args of base type (Cherry pick of pantsbuild…

    …#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>
    Tom Dyas and somdoron authored Jun 22, 2022
    Configuration menu
    Copy the full SHA
    d91c57d View commit details
    Browse the repository at this point in the history
  3. Increment the missing-digest backtracking level once per attempt (Che…

    …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>
    Tom Dyas and stuhood authored Jun 22, 2022
    Configuration menu
    Copy the full SHA
    55ef228 View commit details
    Browse the repository at this point in the history

Commits on Jun 24, 2022

  1. Release script fixups (Cherry-pick of pantsbuild#15875) (pantsbuild#1…

    …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>
    stuhood and illicitonion authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    f7b5ec4 View commit details
    Browse the repository at this point in the history
  2. Dedupe load_bytes_with calls to a remote Store (Cherry-pick of pant…

    …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]
    stuhood authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    69a10c7 View commit details
    Browse the repository at this point in the history
  3. Introduce a plugin API to provide all thread local state, and depreca…

    …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]
    stuhood authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    d7e7a1a View commit details
    Browse the repository at this point in the history
  4. Allow JVM memory controls to bound the process pool size to less than…

    … 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]
    stuhood authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    bbba6f9 View commit details
    Browse the repository at this point in the history
  5. Upgrade to nails 0.13.0 to pick up support for JDK >=13. (Cherr…

    …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]
    stuhood authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    8895ddd View commit details
    Browse the repository at this point in the history
  6. Silence [scala-infer].force_add_siblings_as_dependencies deprecatio…

    …n. (Cherry-pick of pantsbuild#15898) (pantsbuild#15919)
    
    [ci skip-rust]
    [ci skip-build-wheels]
    stuhood authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    d616e2c View commit details
    Browse the repository at this point in the history
  7. Fix reporting of time spent downloading files (Cherry-pick of pantsbu…

    …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]
    stuhood authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    d92576a View commit details
    Browse the repository at this point in the history
  8. Improve performance of file arguments when `--owners-not-found-behavi…

    …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]
    Eric-Arellano authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    7ab6b22 View commit details
    Browse the repository at this point in the history
  9. Upgrade default iPython to 7.34, which drops Python 3.6 (Cherry-pick of

    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]
    Eric-Arellano authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    1913bae View commit details
    Browse the repository at this point in the history
  10. Fix bad "<infallible>" description in invalid addresses error message…

    …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]
    Eric-Arellano authored Jun 24, 2022
    Configuration menu
    Copy the full SHA
    399c4fa View commit details
    Browse the repository at this point in the history

Commits on Jun 25, 2022

  1. Clarify deprecation messages for tailor and update-build-files re…

    …quiring CLI arguments (Cherry-pick of pantsbuild#15932) (pantsbuild#15937)
    
    Closes pantsbuild#15868.
    
    [ci skip-rust]
    [ci skip-build-wheels]
    Eric-Arellano authored Jun 25, 2022
    Configuration menu
    Copy the full SHA
    5d8a328 View commit details
    Browse the repository at this point in the history

Commits on Jun 27, 2022

  1. Configuration menu
    Copy the full SHA
    228d83b View commit details
    Browse the repository at this point in the history

Commits on Jun 28, 2022

  1. [internal] add observation metric for REAPI GetActionResult calls (Ch…

    …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]
    Tom Dyas authored Jun 28, 2022
    Configuration menu
    Copy the full SHA
    049fb62 View commit details
    Browse the repository at this point in the history
  2. Update the docs for fmt and test report changes (Cherry-pick of pan…

    …tsbuild#15968) (pantsbuild#15971)
    
    [ci skip-rust]
    [ci skip-build-wheels]
    stuhood authored Jun 28, 2022
    Configuration menu
    Copy the full SHA
    512edc6 View commit details
    Browse the repository at this point in the history
  3. Update certificate environment variable advice for pantsbuild#14808. …

    …(Cherry-pick of pantsbuild#15943) (pantsbuild#15974)
    
    See pantsbuild#14808.
    
    [ci skip-rust]
    [ci skip-build-wheels]
    stuhood authored Jun 28, 2022
    Configuration menu
    Copy the full SHA
    cf0db49 View commit details
    Browse the repository at this point in the history
  4. Assorted remote metrics fixes. (Cherry-pick of pantsbuild#15914) (pan…

    …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]
    stuhood authored Jun 28, 2022
    Configuration menu
    Copy the full SHA
    d21b332 View commit details
    Browse the repository at this point in the history
  5. Move generic debug adapter settings to dedicated subsystem (Cherry-pi…

    …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]
    thejcannon authored Jun 28, 2022
    Configuration menu
    Copy the full SHA
    2555dc7 View commit details
    Browse the repository at this point in the history
  6. Improve debugpy's capabilities (Cherry-pick of pantsbuild#15946) (pan…

    …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]
    thejcannon authored Jun 28, 2022
    Configuration menu
    Copy the full SHA
    71a7110 View commit details
    Browse the repository at this point in the history
  7. Add --debug-adapter flag to run (pantsbuild#15829)

    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 committed Jun 28, 2022
    Configuration menu
    Copy the full SHA
    157d5d1 View commit details
    Browse the repository at this point in the history