Skip to main content

Additional python lints and checks.

Project description

Pants is an Apache2 licensed build tool written in Python.

The latest documentation can be found `here <http://pantsbuild.org/>`_.

1.14.x Stable Releases
======================
This document describes releases leading up to the ``1.14.x`` ``stable`` series.


1.14.0rc0 (2/01/2019)
---------------------

New Features
~~~~~~~~~~~~

* Add support for trace propagation from Pants callers (#7177)
`PR #7177 <https://github.com/pantsbuild/pants/pull/7177>`_

* Add scala_exclude to append the Scala major version in BUILD files. (#7189)
`PR #7189 <https://github.com/pantsbuild/pants/pull/7189>`_

* fetch native libraries from python requirements, e.g. tensorflow to define custom operators (#7046)
`PR #7046 <https://github.com/pantsbuild/pants/pull/7046>`_

API Changes
~~~~~~~~~~~

* Add toolchain_variant on native target level (#7179)
`PR #7179 <https://github.com/pantsbuild/pants/pull/7179>`_

* Bump to future==0.17.1 (#7159)
`PR #7159 <https://github.com/pantsbuild/pants/pull/7159>`_

* Move dependencies that are only consumed by examples/testprojects out of core pants. (#7174)
`PR #7174 <https://github.com/pantsbuild/pants/pull/7174>`_

* Loosen glob type bounds so that OrderedSet is fine (#7166)
`PR #7166 <https://github.com/pantsbuild/pants/pull/7166>`_

Bugfixes
~~~~~~~~

* Set default PY in cargo wrapper (#7195)
`PR #7195 <https://github.com/pantsbuild/pants/pull/7195>`_

* Consume the PyTest Subsystem to stabilize the pytest version. (#7193)
`PR #7193 <https://github.com/pantsbuild/pants/pull/7193>`_

* Fix setting conan remotes (#7191)
`PR #7191 <https://github.com/pantsbuild/pants/pull/7191>`_

* Add setup workunit to critical_path_timings for all main workunits (#7184)
`PR #7184 <https://github.com/pantsbuild/pants/pull/7184>`_

* Fix test_pantsd_integration (#7175)
`PR #7175 <https://github.com/pantsbuild/pants/pull/7175>`_

* Work around multi-python pex issues for checker. (#7178)
`PR #7178 <https://github.com/pantsbuild/pants/pull/7178>`_

Refactoring, Improvements, and Tooling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Remove unused operation wrapper (#7194)
`PR #7194 <https://github.com/pantsbuild/pants/pull/7194>`_

* Refactor packages.py in preparation for adding Python 3 support (#7190)
`PR #7190 <https://github.com/pantsbuild/pants/pull/7190>`_

* Add ability to specify Python minor version when running `./pants` (#7187)
`PR #7187 <https://github.com/pantsbuild/pants/pull/7187>`_

* [junit-runner] extracted refactoring from sec mgr change (#6860)
`PR #6860 <https://github.com/pantsbuild/pants/pull/6860>`_

* virtualenv always finds git root (#7173)
`PR #7173 <https://github.com/pantsbuild/pants/pull/7173>`_

* Don't re-panic in mock execution server (#7167)
`PR #7167 <https://github.com/pantsbuild/pants/pull/7167>`_

* Engine can store python OrderedSets (#7165)
`PR #7165 <https://github.com/pantsbuild/pants/pull/7165>`_

* Error on all rust warnings (#7154)
`PR #7154 <https://github.com/pantsbuild/pants/pull/7154>`_

* Start testing pre commit hooks (#7118)
`PR #7118 <https://github.com/pantsbuild/pants/pull/7118>`_

* Remove scala_repl_integration and testprojects_integration from Python 3 blacklist (#7169)
`PR #7169 <https://github.com/pantsbuild/pants/pull/7169>`_

1.14.0.dev3 (1/27/2019)
-----------------------

New Features
~~~~~~~~~~~~

* make GoTest subclass PartitionedTestRunnerTaskMixin to test transitively (#7145)
`PR #7145 <https://github.com/pantsbuild/pants/pull/7145>`_

* Take deploy_jar_rules into account when detecting duplicates (#7113)
`PR #7113 <https://github.com/pantsbuild/pants/pull/7113>`_

* Add Zipkin tracing to pants v1 (#7125)
`PR #7125 <https://github.com/pantsbuild/pants/pull/7125>`_

* Allow options to be logged to stats server (#7119)
`PR #7119 <https://github.com/pantsbuild/pants/pull/7119>`_

API Changes
~~~~~~~~~~~

* Bump pyzipkin to 0.17.0 (#7161)
`PR #7161 <https://github.com/pantsbuild/pants/pull/7161>`_

* remove support for using the pants native toolchain with distutils Extensions in setup.py (#7126)
`PR #7126 <https://github.com/pantsbuild/pants/pull/7126>`_

* Bump cucumber version to get jar with correct unicode encoding (#7134)
`Issue #7123. <https://github.com/pantsbuild/pants/issues/7123.>`_
`PR #7134 <https://github.com/pantsbuild/pants/pull/7134>`_

Bugfixes
~~~~~~~~

* blacklist idea plugin gen from faulty earlier edit (#7157)
`PR #7157 <https://github.com/pantsbuild/pants/pull/7157>`_

* Add Python 3 support to Pytest with V2 engine (#7153)
`PR #7153 <https://github.com/pantsbuild/pants/pull/7153>`_

* Fix Py2 regression with rjust argument (#7132)
`PR #7132 <https://github.com/pantsbuild/pants/pull/7132>`_

* v2 python test execution fails if resolve process fails (#7135)
`PR #7135 <https://github.com/pantsbuild/pants/pull/7135>`_

Refactoring, Improvements, and Tooling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Fixes to get contrib, lint, JVM tests, and platform-specific tests working with ./pants3 (#7067)
`PR #7067 <https://github.com/pantsbuild/pants/pull/7067>`_

* Properly handle unicode and byte streams with pantsd for Python 3 (#7130)
`PR #7130 <https://github.com/pantsbuild/pants/pull/7130>`_

* populate parent directories of process outputs locally to match remote execution api (#7133)
`PR #7133 <https://github.com/pantsbuild/pants/pull/7133>`_

* Fix test_jvm_platform_analysis_integration.py using unknown platforms (#7140)
`Issue #7139 <https://github.com/pantsbuild/pants/issues/7139>`_
`PR #7140 <https://github.com/pantsbuild/pants/pull/7140>`_

* Remove option integration test from Python 3 blacklist (#7142)
`PR #7142 <https://github.com/pantsbuild/pants/pull/7142>`_

* Fix Idea plugin unicode issues with Python 3 (#7141)
`PR #7141 <https://github.com/pantsbuild/pants/pull/7141>`_
`PR #7157 <https://github.com/pantsbuild/pants/pull/7157>`_

* Fix legacy graph test Python 3 issue with rendering unicode literals (#7143)
`PR #7143 <https://github.com/pantsbuild/pants/pull/7143>`_

* Fix setup_py.py unicode issue with Python 3 (#7144)
`PR #7144 <https://github.com/pantsbuild/pants/pull/7144>`_

* Fix various backend/jvm/task Python 3 and unicode issues (#7124)
`PR #7124 <https://github.com/pantsbuild/pants/pull/7124>`_

* refactor ImportJarsMixin into ImportRemoteSourcesMixin for extensibility (same with tasks) (#7061)
`PR #7061 <https://github.com/pantsbuild/pants/pull/7061>`_

* Ignore 3rd party deprecation warnings for unmaintained libraries (#7110)
`PR #7110 <https://github.com/pantsbuild/pants/pull/7110>`_

* Update to rust 1.32.0 (#7094)
`PR #7094 <https://github.com/pantsbuild/pants/pull/7094>`_

1.14.0.dev2 (1/19/2019)
-----------------------

New Features
~~~~~~~~~~~~
* Allow nailgun execution for RscCompile by bundling together the tool classpaths (#7092)
`PR #7092 <https://github.com/pantsbuild/pants/pull/7092>`_

* Python code generation for protobufs and gRPC (#6974)
`PR #6974 <https://github.com/pantsbuild/pants/pull/6974>`_

* refactor NativeExternalLibraryFetch to be a SimpleCodegenTask (#7060)
`PR #7060 <https://github.com/pantsbuild/pants/pull/7060>`_

* Rerun proto compilation when protos change (#7029)
`PR #7029 <https://github.com/pantsbuild/pants/pull/7029>`_

API Changes
~~~~~~~~~~~
* move dict key encoding into hash_utils.py and deprecate stable_json_hash() (#6475)
`PR #6475 <https://github.com/pantsbuild/pants/pull/6475>`_

Version updates
~~~~~~~~~~~~~~~
* Update psutil to fix deprecation warnings (#7112)
`PR #7112 <https://github.com/pantsbuild/pants/pull/7112>`_

* Bump twitter.common dependencies to 0.3.10 to pull in Py3 fixes. (#7102)
`PR #7102 <https://github.com/pantsbuild/pants/pull/7102>`_

* Upgrade several dependencies to fix Py3 deprecations (#7053)
`PR #7053 <https://github.com/pantsbuild/pants/pull/7053>`_

* Update pantsbuild/pants to scala 2.12, and bump the default patch version for 2.12 (#7035)
`PR #7035 <https://github.com/pantsbuild/pants/pull/7035>`_

Bugfixes
~~~~~~~~
* Move pants.init.subprocess into pants.process (#7081)
`PR #7081 <https://github.com/pantsbuild/pants/pull/7081>`_

* Continue to reexport stable_json_hash from its previous location. (#7103)
`PR #7103 <https://github.com/pantsbuild/pants/pull/7103>`_

* [compile.rsc] fix key error; ensure java compiles get necessary zinc scala deps (#7038)
`PR #7038 <https://github.com/pantsbuild/pants/pull/7038>`_

* Fix jvm compile unicode issues when using Python 3 (#6987)
`PR #6987 <https://github.com/pantsbuild/pants/pull/6987>`_

* Revert "set PEX_PYTHON_PATH when invoking the checkstyle pex for pexrc to work (#7013)" (#7028)
`PR #7028 <https://github.com/pantsbuild/pants/pull/7028>`_

Refactoring, Improvements, and Tooling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
* Reorder CI based on what's most likely to change from a typical PR (#7104)
`PR #7104 <https://github.com/pantsbuild/pants/pull/7104>`_

* Switch operation getting to tower (#7108)
`PR #7108 <https://github.com/pantsbuild/pants/pull/7108>`_

* Only clippy on CI on one shard (#7109)
`PR #7109 <https://github.com/pantsbuild/pants/pull/7109>`_

* Make ci.sh's -b bootstrap flag a positive flag (#7096)
`PR #7096 <https://github.com/pantsbuild/pants/pull/7096>`_

* Use docker on wheel builder shard (#7100)
`PR #7100 <https://github.com/pantsbuild/pants/pull/7100>`_

* don't override PANTS_DEV if set to 0 in the calling environment to make python checkstyle work in a separate repo (#7017)
`PR #7017 <https://github.com/pantsbuild/pants/pull/7017>`_

* Split out unrelated CI jobs into their own distinct shards (#7090)
`PR #7090 <https://github.com/pantsbuild/pants/pull/7090>`_

* Hotfix for #6981 breaking release.sh (#7091)
`PR #7091 <https://github.com/pantsbuild/pants/pull/7091>`_

* Use ./pants3 for majority of CI (#6981)
`PR #6981 <https://github.com/pantsbuild/pants/pull/6981>`_

* [compile.rsc] fix typo (#7057)
`PR #7057 <https://github.com/pantsbuild/pants/pull/7057>`_

* Fix threading issue with report.py when using Py3 (#7085)
`PR #7085 <https://github.com/pantsbuild/pants/pull/7085>`_

* Allow Pants to run with Python 3 via `./pants3` script (#6959)
`PR #6959 <https://github.com/pantsbuild/pants/pull/6959>`_

* Properly render
in exceptions with Py3 (#7073)
`PR #7073 <https://github.com/pantsbuild/pants/pull/7073>`_

* use the asttokens 3rdparty lib to make @rule parsing errors very smooth (#7023)
`PR #7023 <https://github.com/pantsbuild/pants/pull/7023>`_

* Add specific copyright year check on newly added python files (#7066)
`PR #7066 <https://github.com/pantsbuild/pants/pull/7066>`_

* Use homebrew addon feature in CI (#7062)
`PR #7062 <https://github.com/pantsbuild/pants/pull/7062>`_

* Add `collections.abc` backport to fix deprecation warning (#7055)
`PR #7055 <https://github.com/pantsbuild/pants/pull/7055>`_

* Improve symlink errors (#7054)
`PR #7054 <https://github.com/pantsbuild/pants/pull/7054>`_

* Fix invalid escape sequence problems (#7056)
`PR #7056 <https://github.com/pantsbuild/pants/pull/7056>`_

* Build rust code only once per platform in a CI run (#7047)
`PR #7047 <https://github.com/pantsbuild/pants/pull/7047>`_

* Remote execution uses tower-grpc to start executions (#7049)
`PR #7049 <https://github.com/pantsbuild/pants/pull/7049>`_

* Workaround for homebrew bug with osx shard (#7050)
`PR #7050 <https://github.com/pantsbuild/pants/pull/7050>`_
`Issue #5513 <https://github.com/Homebrew/brew/issues/5513>`_

* Support some conversions for prost protos (#7040)
`PR #7040 <https://github.com/pantsbuild/pants/pull/7040>`_

* Expose 1.13.x in the docsite notes dropdown. (#7045)
`PR #7045 <https://github.com/pantsbuild/pants/pull/7045>`_

* Reqwest uses rustls not openssl (#7002)
`PR #7002 <https://github.com/pantsbuild/pants/pull/7002>`_

* Fix awscli install to be language agnostic. (#7033)
`PR #7033 <https://github.com/pantsbuild/pants/pull/7033>`_

* Improve readability of integration test logging. (#7036)
`PR #7036 <https://github.com/pantsbuild/pants/pull/7036>`_

* Generate protos for tower as well as grpcio (#7030)
`PR #7030 <https://github.com/pantsbuild/pants/pull/7030>`_

* Ensure all rust crates have common prefix (#7031)
`PR #7031 <https://github.com/pantsbuild/pants/pull/7031>`_

* Eliminate bs4 warning. (#7027)
`PR #7027 <https://github.com/pantsbuild/pants/pull/7027>`_


1.14.0.dev1 (1/4/2019)
----------------------

New Features
~~~~~~~~~~~~

* Validate yield statements in rule bodies to remove ambiguity about returning (#7019)
`PR #7019 <https://github.com/pantsbuild/pants/pull/7019>`_

* Add support for consuming Subsystems from @rules (#6993)
`PR #6993 <https://github.com/pantsbuild/pants/pull/6993>`_

* add rules to plugins and add some integration tests, maybe (#6892)
`PR #6892 <https://github.com/pantsbuild/pants/pull/6892>`_

Version updates
~~~~~~~~~~~~~~~

* Update to rust 2018 (#6867)
`PR #6867 <https://github.com/pantsbuild/pants/pull/6867>`_

Bugfixes
~~~~~~~~

* set PEX_PYTHON_PATH when invoking the checkstyle pex for pexrc to work (#7013)
`PR #7013 <https://github.com/pantsbuild/pants/pull/7013>`_

* fix binary_util.py main method, add unit test, and kill integration test (#7010)
`PR #7010 <https://github.com/pantsbuild/pants/pull/7010>`_

* Markdown writer errors are written properly (#6975)
`PR #6975 <https://github.com/pantsbuild/pants/pull/6975>`_

* Fix unused_must_use, error in the futrue (#6999)
`PR #6999 <https://github.com/pantsbuild/pants/pull/6999>`_

* Add python version to the native cache key (#6991)
`PR #6991 <https://github.com/pantsbuild/pants/pull/6991>`_

* Fix invalid escape sequence & regex expression deprecations (#6984)
`PR #6984 <https://github.com/pantsbuild/pants/pull/6984>`_

* Fix test_checkstyle.py interpreter constraint (#6983)
`PR #6983 <https://github.com/pantsbuild/pants/pull/6983>`_
`PR #6959 <https://github.com/pantsbuild/pants/pull/6959>`_

* Fix native.py unicode issue leading to compile error with Python 3 (#6982)
`PR #6982 <https://github.com/pantsbuild/pants/pull/6982>`_

* Fix python_artifact fingerprint unicode issue for Python 3 (#6971)
`PR #6971 <https://github.com/pantsbuild/pants/pull/6971>`_

Refactoring, Improvements, and Tooling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Eliminate dead code warnings. (#7018)
`PR #7018 <https://github.com/pantsbuild/pants/pull/7018>`_

* Retrofit the Conan tool using PythonToolBase. (#6992)
`PR #6992 <https://github.com/pantsbuild/pants/pull/6992>`_

* A preliminary bootstrapping CI stage, to prevent repeated work in each CI shard. (#7012)
`PR #7012 <https://github.com/pantsbuild/pants/pull/7012>`_

* add unit testing for requesting transitively available products (#7015)
`PR #7015 <https://github.com/pantsbuild/pants/pull/7015>`_

* When compiling with rsc, metacp java libraries in a separate execution graph node. (#6940)
`PR #6940 <https://github.com/pantsbuild/pants/pull/6940>`_

* digest returns hashing::Digest (#7006)
`PR #7006 <https://github.com/pantsbuild/pants/pull/7006>`_

* Fix all rust clippy warnings (#7001)
`PR #7001 <https://github.com/pantsbuild/pants/pull/7001>`_

* Engine can store dict (#6996)
`PR #6996 <https://github.com/pantsbuild/pants/pull/6996>`_

* Programatically add rust config to vendored protos (#7000)
`PR #7000 <https://github.com/pantsbuild/pants/pull/7000>`_

* Engine can store bools (#6994)
`PR #6994 <https://github.com/pantsbuild/pants/pull/6994>`_

* Clarify which files should be edited when releasing from branch (#6988)
`PR #6988 <https://github.com/pantsbuild/pants/pull/6988>`_

* Core has a PathBuf for build root (#6995)
`PR #6995 <https://github.com/pantsbuild/pants/pull/6995>`_

* Don't explicitly use TaskRule (#6980)
`PR #6980 <https://github.com/pantsbuild/pants/pull/6980>`_

* Make UI Per-session instead of per-request (#6827)
`PR #6827 <https://github.com/pantsbuild/pants/pull/6827>`_

* Replace deprecated cgi.escape() with html.escape() (#6986)
`PR #6986 <https://github.com/pantsbuild/pants/pull/6986>`_

* Allow remote store RPC attempts to be configured (#6978)
`PR #6978 <https://github.com/pantsbuild/pants/pull/6978>`_

* Prep for 1.13.0 (#6977)
`PR #6977 <https://github.com/pantsbuild/pants/pull/6977>`_

* Allow fs_util thread count to be configured (#6976)
`PR #6976 <https://github.com/pantsbuild/pants/pull/6976>`_

* Convert Native into a singleton (#6979)
`PR #6979 <https://github.com/pantsbuild/pants/pull/6979>`_

1.14.0.dev0 (12/21/2018)
------------------------

New Features
~~~~~~~~~~~~

* Add support for deprecating scoped SubsystemDependencies (#6961)
`PR #6961 <https://github.com/pantsbuild/pants/pull/6961>`_

* Add a flag to filedeps v1 to output abs or rel paths (#6960)
`PR #6960 <https://github.com/pantsbuild/pants/pull/6960>`_

* Add serverset (#6921)
`PR #6921 <https://github.com/pantsbuild/pants/pull/6921>`_

* Use serverset for Store (#6931)
`PR #6931 <https://github.com/pantsbuild/pants/pull/6931>`_

* Add Python 3 support to C and C++ module initialization (#6930)
`PR #6930 <https://github.com/pantsbuild/pants/pull/6930>`_

* Support source and 3rdparty dependencies in v2 python test running (#6915)
`PR #6915 <https://github.com/pantsbuild/pants/pull/6915>`_

* Add tool classpath for ./pants scalafix (#6926)
`PR #6926 <https://github.com/pantsbuild/pants/pull/6926>`_

* Log aggregate statistics for remote executions (#6812)
`PR #6812 <https://github.com/pantsbuild/pants/pull/6812>`_

Version updates
~~~~~~~~~~~~~~~

* Upgrade Scrooge, Finagle, and Thrift for unified Thrift library and Py3 support (#6945)
`PR #6945 <https://github.com/pantsbuild/pants/pull/6945>`_

* Bump zinc bootstrapper to 0.0.4 (#6967)
`PR #6967 <https://github.com/pantsbuild/pants/pull/6967>`_

* Set CI's minimum Python 3 version to 3.6 (#6954)
`PR #6954 <https://github.com/pantsbuild/pants/pull/6954>`_

* Bump scalafix version and use os.pathsep (#6938)
`PR #6938 <https://github.com/pantsbuild/pants/pull/6938>`_

Bugfixes
~~~~~~~~

* Handle ValueError when child wants to reset stderr but it is closed. (#6932)
`PR #6932 <https://github.com/pantsbuild/pants/pull/6932>`_

* Manually manage Delay's timer thread (#6950)
`PR #6950 <https://github.com/pantsbuild/pants/pull/6950>`_

Refactoring, Improvements, and Tooling
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

* Ensure digests are uploaded before attempting execution (#6965)
`PR #6965 <https://github.com/pantsbuild/pants/pull/6965>`_

* Fix tokenize encoding issue engine parser on Python 3 (#6962)
`PR #6962 <https://github.com/pantsbuild/pants/pull/6962>`_

* Fix scheduler.metrics() returning bytes instead of unicode (#6969)
`PR #6969 <https://github.com/pantsbuild/pants/pull/6969>`_

* Use stdout with bytes for task context (#6968)
`PR #6968 <https://github.com/pantsbuild/pants/pull/6968>`_

* Fix plaintext_recorder sometimes being passed TextIO (#6963)
`PR #6963 <https://github.com/pantsbuild/pants/pull/6963>`_

* Switch daytime CI to Python 3 only (#6952)
`PR #6952 <https://github.com/pantsbuild/pants/pull/6952>`_

* Renamespace and publish the buck zip utils (#6955)
`PR #6955 <https://github.com/pantsbuild/pants/pull/6955>`_

* Add filedeps goal and tests for v2 (#6933)
`PR #6933 <https://github.com/pantsbuild/pants/pull/6933>`_

* serverset: Add ability to retry a function (#6953)
`PR #6953 <https://github.com/pantsbuild/pants/pull/6953>`_

* Only build fs_util when releasing (#6951)
`PR #6951 <https://github.com/pantsbuild/pants/pull/6951>`_

* Exclude Antlr test from testprojects to avoid interpreter conflict (#6944)
`PR #6944 <https://github.com/pantsbuild/pants/pull/6944>`_

* Fix failing lint with TEST_BUILD pattern (#6943)
`PR #6943 <https://github.com/pantsbuild/pants/pull/6943>`_

* Fix relative import for testprojects dummy test on Python 3 (#6942)
`PR #6942 <https://github.com/pantsbuild/pants/pull/6942>`_

* Fix relative import for conftest test on Python 3 (#6941)
`PR #6941 <https://github.com/pantsbuild/pants/pull/6941>`_

* Fix Travis environment variable overriding interpreter_selection test's config (#6939)
`PR #6939 <https://github.com/pantsbuild/pants/pull/6939>`_

* PythonToolPrepBase now sets up its interpreter. (#6928)
`PR #6928 <https://github.com/pantsbuild/pants/pull/6928>`_

* Remove remaining unnecessary __future__ imports (#6925)
`PR #6925 <https://github.com/pantsbuild/pants/pull/6925>`_

* Construct clients on demand (#6920)
`PR #6920 <https://github.com/pantsbuild/pants/pull/6920>`_

* Enforce interpreter constraints for antlr3 python code. (#6924)
`PR #6924 <https://github.com/pantsbuild/pants/pull/6924>`_



Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distribution

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page