pants

The Pants Build System

APACHE-2.0 License

Downloads
117.9K
Stars
3.1K
Committers
342

Bot releases are visible (Hide)

pants -

Published by stuhood over 1 year ago

User API Changes

  • Deprecate the version/extra_requirements options on python tools. (Cherry-pick of #19204) (#19210)

Bug Fixes

  • Scrub the Pyenv install dir before attempting an install. (Cherry-pick of #19193) (#19196)

  • Use {bin_name()} run as $0 in run_shell_command (Cherry-pick of #19020) (#19036)

Documentation

  • Add tobni to Maintainers (Cherry-pick of #19195) (#19206)

  • Add botocore-a-la-carte reference to s3 URL Handler (Cherry-pick of #19055) (#19108)

  • update scie-jump cache directory reference (Cherry-pick of #18485) (#19154)

pants -

Published by illicitonion over 1 year ago

New Features

  • Support scala_artifact (#19128)

  • pass "--debug" flag to all helm invocations if requested (#19093)

  • Enable env vars in node_build_script (#19100)

User API Changes

  • Remove or bump deprecations (#19169)

  • Switch to [lambdex].layout = "zip" by default, deprecating the section (#19122)

  • javascript: Allow nodejs-backed tools to point to a resolve and/or package manager (#19040)

  • Terraform: Hashes for MacOS binaries have changed (#19004)

  • Implement layout="zip" for Lambda/GCF, deprecating lambdex (#19076)

  • Run terraform init as part of check goal (#18974)

  • Deprecate [mypy].extra_type_stubs and its lockfile. (#19084)

  • Remove more 2.18.0.dev0 deprecations (follow up to #19073) (#19077)

  • Bring the tool --export option deprecation forward. (#19079)

  • Only build and release wheels for Python 3.9. (#18829)

  • Require pants to run via scie-pants. (#19075)

  • Some 2.18.0.dev0 deprecations (#19073)

  • Implement layout="zip" for Lambda/GCF, skipping lambdex (#19022)

Plugin API Changes

  • Simplify interpreter-related CI config. (#19096)

Bug Fixes

  • If a shebang already exists when adding a preamble, preserve it. (#19133)

  • Workaround botocore bug in S3 URL Handler backend (#19056)

  • Don't try and garbage collect tempfiles (#19103)

  • Allow the usage of digits in named cache names (#19052)

Documentation

  • Fix docs link to pants_from_sources script. (#19088)

  • Add botocore-a-la-carte reference too s3 URL Handler (#19055)

  • add bazel-remote to list of compatible remote caches (#19041)

pants -

Published by stuhood over 1 year ago

User API Changes

  • Terraform: Hashes for MacOS binaries have changed (Cherry-pick of #19004) (#19135)

  • Deprecate [mypy].extra_type_stubs and its lockfile. (Cherry-pick of #19084) (#19086)

  • Bring the tool --export option deprecation forward. (Cherry-pick of #19079) (#19081)

Bug Fixes

  • If a shebang already exists when adding a preamble, preserve it. (Cherry-pick of #19133) (#19137)

Documentation

  • add bazel-remote to list of compatible remote caches (Cherry-pick of #19041) (#19114)

  • Fix docs link to pants_from_sources script. (Cherry-pick of #19088) (#19090)

pants -

Published by stuhood over 1 year ago

Due to infrastructure issues, 2.17.0a1 is a second attempt at publishing 2.17.0a0.

pants -

Published by stuhood over 1 year ago

User API Changes

  • Support Python requirement target addrs in tool requirements. (Cherry-pick of #19014) (#19023)

Documentation

  • Clarify how to set $0 properly in run_in_shell_command (Cherry-pick of #19019) (#19031)

  • Docs tweaks for 2.16.x (Cherry-pick of #19009) (#19012)

pants -

Published by stuhood over 1 year ago

The second stable release of the 2.15.x series, with no changes since the previous rc!

pants -

Published by stuhood over 1 year ago

The third stable release of the 2.14.x series, with no changes since the previous release candidate!

pants -

Published by stuhood over 1 year ago

Bug Fixes

  • Require urllib3<2, to reduce installation issues (cherry-pick of #18959) (#18973)

  • Do not choke on missing lockfiles. (Cherry-pick of #18940) (#18947)

Performance

  • Optimize Target and FieldSet operations (Cherry-pick of #18917) (#18949)

Documentation

  • Fix awslambda-python documentation (Cherry-pick of #18302) (#18929)
pants -

Published by benjyw over 1 year ago

User API Changes

  • Use the resolve's ICs for tools. (Cherry-pick of #18776) (#18806)

  • Default to using the entire tool lockfile. (Cherry-pick of #18793) (#18807)

Bug Fixes

  • Require urllib3<2, to reduce installation issues (cherry-pick of #18959) (#18971)

  • Make DigestSubset symlink-aware (Cherry-pick of #18963) (#18970)

  • Do not choke on missing lockfiles. (Cherry-pick of #18940) (#18948)

  • Actually run deprecated targets fixer (Cherry-pick of #18860) (#18893)

  • Remove existing entry if any when materialising symlink (Cherry-pick of #18873) (#18878)

  • Ensure non-ambiguous args/env vars injection into PEXes (Cherry-pick of #18861) (#18877)

  • Patch StreamingWorkunitContext.get_expanded_specs(). (Cherry-pick of #18713) (#18866)

  • help backends: Only list enabled experimental backends unless advanced help. (Cherry-pick of #18821) (#18867)

  • Include pants.backend.url_handlers.s3 in pants distribution. (Cherry-pick of #18826) (#18870)

  • Handle workdir="."/default properly in run_shell_command (Cherry-pick of #18840) (#18850)

  • Write adhoc_tool(stdout/stderr="...") relative to workdir, support absolute paths (Cherry-pick of #18814) (#18839)

  • Use build root as workdir for shell_command(workdir="") (Cherry-pick of #18813) (#18832)

Performance

  • Optimize Target and FieldSet operations (cherry-pick #18917) (#18944)

Documentation

  • update troubleshooting document about self-hosted action runner (Cherry-pick of #18900) (#18943)

  • doc: mention use_local_alias for the [docker].registries option. (Cherry-pick of #18946) (#18950)

  • Fix adhoc output_... example, document run_shell_command workdir changes (Cherry-pick of #18894) (#18910)

  • Include symbols as topic in usage help. (Cherry-pick of #18825) (#18869)

  • Update mypy and pytest documentation to refer to install_from_resolve (Cherry pick of #18791) (#18858)

pants -

Published by benjyw over 1 year ago

New Features

  • javascript: Implement dependency inference opt-out and improve resillience (#18931)

  • javascript: Add support for the pnpm package manager (#18864)

  • Eagerly clean running nodes rather than interrupting them. (#18855)

  • javascript: Nodejs tests batch support (#18742)

  • New API type: CurrentExecutingGoals. (#18788)

User API Changes

  • javascript: Support package goal in node_build_script target (#18926)

  • Deprecate running Pants outside scie-pants. (#18833)

  • Upgrade Pex to 2.1.135. (#18876)

Plugin API Changes

  • Remove redundant PythonToolBase/JvmToolBase features. (#18805)

Bug Fixes

  • Ensure packaged artefacts are fully replaced in dist/ (#18930)

  • Use a set when calculating resolve names (#18939)

  • Use a set when calculating resolve names (#18939)

  • javascript: Handle package.json placed at the root of the repository (#18919)

  • Actually run deprecated targets fixer (#18860)

  • Remove existing entry if any when materialising symlink (#18873)

  • Ensure non-ambiguous args/env vars injection into PEXes (#18861)

  • Handle workdir="."/default properly in run_shell_command (#18840)

  • Write adhoc_tool(stdout/stderr="...") relative to workdir, support absolute paths (#18814)

  • Patch StreamingWorkunitContext.get_expanded_specs(). (#18713)

  • help backends: Only list enabled experimental backends unless advanced help. (#18821)

  • Use build root as workdir for shell_command(workdir="") (#18813)

  • Include pants.backend.url_handlers.s3 in pants distribution. (#18826)

Performance

  • Optimize Target and FieldSet operations (#18917)

  • Triage some noqa: PNT30 await-in-loops (#18831)

Documentation

  • Update the identity of the response team for CoC violation reporting. (#16410)

  • Fix adhoc output_... example, document run_shell_command workdir changes (#18894)

  • Add missing backtick in help string (#18907)

  • Add Salesforce to the users list (#18891)

  • update troubleshooting document about self-hosted action runner (#18900)

  • Credit the Works on ARM program for our CI resources. (#18892)

  • feat: update installation.md (#18836)

  • Remove reference to readme.com as the way to edit documentation (#18863)

  • Fix library name typo in third party example (#18862)

  • Update mypy and pytest documentation to refer to install_from_resolve (#18791)

  • Include symbols as topic in usage help. (#18825)

  • docs: reorder contributor steps, rustup is required for git hooks install to work smoothly (#18828)

pants -

Published by jsirois over 1 year ago

Bug Fixes

  • The OverridesField.compute_value() must return a hashable value. (Cherry-pick of #18787) (#18798)

  • Use address as stable key when batching field sets in lint/test (Cherry-pick of #18725) (#18733)

  • Fix repr for Fields that don't define default. (Cherry-pick of #18719) (#18723)

  • Fix JVM resource JAR creation on older Mac OSes (Cherry-pick of #18673) (#18675)

Documentation

  • Jacob Floyd/Huon Wilson updates to team page (Cherry-pick of #18221) (#18795)

  • Remove defunct newsletter (Cherry-pick of #18355) (#18796)

  • Add Pylint post (Cherry-pick of #18079) (#18794)

  • Remove a python-specific tip from the general prereqs page. (Cherry-pick of #18637) (#18651)

pants -

Published by jsirois over 1 year ago

Bug Fixes

  • Fix JVM resource JAR creation on older Mac OSes (Cherry-pick of #18673) (#18674)

Documentation

  • Remove defunct newsletter (Cherry-pick of #18355) (#18797)
pants -

Published by kaos over 1 year ago

User API Changes

  • Upgrade Pex to 2.1.134. (Cherry-pick of #18785) (#18789)

Bug Fixes

  • The OverridesField.compute_value() must return a hashable value. (Cherry-pick of #18787) (#18799)

  • Makes adhoc_tool actually respect the extra_env_vars field; adds tests (Cherry-pick of #18692) (#18694)

  • Use address as stable key when batching field sets in lint/test (Cherry-pick of #18725) (#18734)

  • Add ruff lint rules (Cherry-pick of #18716) (#18739)

  • Fix repr for Fields that don't define default. (Cherry-pick of #18719) (#18724)

  • Adds a fully-qualified path to a Python interpreter for pex_binary RunRequests (Cherry-pick of #18699) (#18700)

  • Add timeout to remote store calls, and adjust name of cache timeout. (Cherry-pick of #18695) (#18697)

  • Bump minimum supported version of Pex to v2.1.129. (Cherry-pick of #18678) (#18687)

  • Fix JVM resource JAR creation on older Mac OSes (Cherry-pick of #18673) (#18676)

Documentation

  • Update linter documentation to refer to install_from_resolve (Cherry-pick of #18781) (#18782)

  • Add PEP 621 pyproject.toml file docs (Cherry-pick of #18672) (#18677)

  • Improve lockfile consumption error message. (Cherry-pick of #18638) (#18653)

  • Document AWS CDK issue that multiple users have encountered. (Cherry-pick of #18656) (#18666)

  • Remove a python-specific tip from the general prereqs page. (Cherry-pick of #18637) (#18650)

pants -

Published by kaos over 1 year ago

New Features

  • javascript: Manage npm version with corepack (#18748)

  • python_distribution editable installs in exports (#18639)

User API Changes

  • Default to using the entire tool lockfile. (#18793)

  • Upgrade Pex to 2.1.134. (#18785)

  • Use the resolve's ICs for tools. (#18776)

  • Use Self backport in BinaryPath factory method. (#18763)

  • Deprecate "Secondary Ownership" semantics (#18737)

  • Expand versions range for ruff + upgrade it (#18707)

Plugin API Changes

  • Allow BinaryPaths to close over their type. (#18760)

  • Set a central default ICs for tools. (#18714)

Bug Fixes

  • The OverridesField.compute_value() must return a hashable value. (#18787)

  • Dedup graph errors. (#18770)

  • Flush metadata to disk before renaming immutable store files (#18768)

  • Clear FSDB materialization cache when removeing a file (#18747)

  • Use address as stable key when batching field sets in lint/test (#18725)

  • Fix repr for Fields that don't define default. (#18719)

  • Add ruff lint rules (#18716)

  • javascript: Use binary shims in nodejs sandboxes (#18682)

Documentation

  • Improve error location for invalid targets/target fields. (#18366)

  • Add info on how to configure Docker Desktop for using docker_environment (#18786)

  • Update linter documentation to refer to install_from_resolve (#18781)

  • docs: Fix typo on requirements-overrides code snippet (#18750)

  • Edit Python publishing docs for clarity. (#18718)

pants -

Published by illicitonion over 1 year ago

New Features

  • Helm: Add support for DNS lookups in Chart templates (#18670)

  • Include global Git ignore file and .git/info/exclude in pants_ignore to ignore for file watching (#18649)

User API Changes

  • Remove deprecated default ICs. (#18627)

Plugin API Changes

  • Move/Rename: goals/setup_py.py -> {util_rules,goals}/package_dists.py + subsystems/setup_py_generation.py (#18702)

  • Deprecate some Request types in favor of Get() with only one arg (#18655)

  • Add support for Get(MyType) syntax with no input args (#18648)

Bug fixes

  • Adds a fully-qualified path to a Python interpreter for pex_binary RunRequests (#18699)

  • Remove implicit conversion from std::io::Error to StoreError (#18696)

  • Add timeout to remote store calls, and adjust name of cache timeout. (#18695)

  • Makes adhoc_tool actually respect the extra_env_vars field; adds tests (#18692)

  • doc: Describe relevant error modes during rule compilation (#18663)

  • Bump minimum supported version of Pex to v2.1.129. (#18678)

  • Fix JVM resource JAR creation on older Mac OSes (#18673)

  • javascript: Do not read none mapped package.json files in javascript rules (#18523)

Documentation

  • Add PEP 621 pyproject.toml file docs (#18672)

  • Document AWS CDK issue that multiple users have encountered. (#18656)

  • Error when goals used without relevant backends activated (#18420)

  • Improve lockfile consumption error message. (#18638)

  • Remove a python-specific tip from the general prereqs page. (#18637)

  • Make UUID message clearer (#18561)

pants -

Published by jsirois over 1 year ago

Bug fixes

  • Ensure that sandboxed processes exit before their sandboxes are clean… (#18640)

  • Plumb entire lockfile/internal only code through create_pex_from_targets (Cherry-pick of #18622) (#18634)

  • Fix PexPEX invocations (Cherry-pick of #18610) (#18633)

  • narrow pex_binary files warning (Cherry-pick of #18619) (#18628)

  • Improve debug information for docker auth, and expose an environment variable. (Cherry-pick of #18599) (#18604)

Documentation

  • Fix a string that should have been an f-string (Cherry-pick of #18608) (#18611)

  • Fix ./pants -> pants in some docs and help strings. (Cherry-pick of #18596) (#18606)

pants -

Published by jsirois over 1 year ago

Bug fixes

  • Ensure that sandboxed processes exit before their sandboxes are clean… (#18642)

  • Plumb entire lockfile/internal only code through create_pex_from_targets (cherry-pick of #18622) (#18635)

pants -

Published by jsirois over 1 year ago

New Features

  • javascript: Test goal with package manager installed test runner support (#18554)

  • expose PANTS_VERSION and make it string-comparable (#18573)

User API Changes

  • Upgrade Pex to 2.1.131. (#18626)

Bug fixes

  • Ensure that sandboxed processes exit before their sandboxes are cleaned up (#18632)

  • Plumb entire lockfile/internal only code through create_pex_from_targets (#18622)

  • narrow pex_binary files warning (#18619)

  • Fix PexPEX invocations (#18610)

  • Improve debug information for docker auth, and expose an environment variable. (#18599)

Performance

  • Only materialize immutable files once per process (#18600)

Documentation

  • Fix a string that should have been an f-string (#18608)

  • Fix ./pants -> pants in some docs and help strings. (#18596)

pants -

Published by jsirois over 1 year ago

Bug fixes

  • Ensure that sandboxed processes exit before their sandboxes are clean… (#18641)

  • Plumb entire lockfile/internal only code through create_pex_from_targets (cherry-pick of #18622) (#18636)

  • Fix export-codgen with multiple output types from same input type (Cherry-pick of #18373) (#18377)

  • Improve debug information for docker auth, and expose an environment variable. (Cherry-pick of #18599) (#18603)

Documentation

  • Fix ./pants -> pants in some docs and help strings. (cherrypick of #18596) (#18607)
pants -

Published by stuhood over 1 year ago

New Features

  • engine: add an option to clear the destination directory when writing digest to disk (#18534)

  • javascript: NodeJS bootstrapping via binary paths, PATH, asdf or nvm (#18520)

  • javascript: Initial NPM support (#18326)

  • Always provide Python-for-Pants-scripts (#18433)

User API Changes

  • Upgrade Pex to 2.1.130. (#18576)

  • Deprecate old-style custom tool lockfiles. (#18494)

  • Let a user resolve shadow a tool lockfile of the same name (#18481)

Bug fixes

  • Ensure that a symlinked exported venv exists and is valid. (#18575)

  • Fail fast for attempts to use test --debug with a docker environment (#18560)

  • Declare ruff outputs as files. (#18551)

  • Add support for Docker registry auth (#18541)

  • Fix Poetry req synthesis for URLs with markers. (#18535)

  • Re-enable hardlinking using fclonefileat on macOS. (#18501)

Performance

  • Materialize "large" files in a new store location and hardlink them in sandboxes (#18153)

  • Finish parallelizing materialization of Process inputs (#18469)

Documentation

  • First pass at adhoc_tool documentation (#18531)

  • Add Tobias Nilsson to team page (#18571)

  • docs: fix an f-string in help (#18539)

  • Clarify that experimental_ shell functions are deprecated and replaced (#18529)

  • Update docs on running pants from sources with scie-pants. (#18513)

  • Add ExoFlare to user list. (#18496)

  • Fix malformed pantsbuild/example-python link in documentation (#18484)

  • update scie-jump cache directory reference (#18485)

  • Expand lockfile documentation to its own page. (#18471)