1.28.x Stable Releases
This document describes releases leading up to the 1.28.x stable series.
See https://pants.readme.io/docs/release-notes-1-28 for an overview of the changes in this release.
1.28.1rc0 (6/16/2020)
N.B.: No further releases are expected in the 1.28.x stable series. This .1rc0 release is for those upgrading through stable versions who wish to retain pytest console coverage support in Pants "v1".
Bugfixes
- Restore pytest coverage console report. (#10016) PR #10016
1.28.0 (5/22/2020)
The first stable release in the 1.28.x series, with no changes since the last release candidate!
1.28.0rc2 (5/20/2020)
Bugfixes
1.28.0rc1 (5/15/2020)
Bugfixes
1.28.0rc0 (5/13/2020)
API Changes
- Always activate V2 pants.backend.pants_info and pants.backend.project_info (#9742) PR #9742
- Deprecate filedeps defaulting to --absolute (#9746) PR #9746
- Deprecate, instead of error, when Python targets have non-Python sources (#9752) PR #9752
- Upgrade to pex 2.1.10. (#9744) PR #9744
- Upgrade Pygments from 2.3.1 to 2.6.1 (#9739) PR #9739
- Upgrade psutil from 5.6.3 to 5.7.0 (#9743) PR #9743
New Features
- Restructure v2 UI (#9672) PR #9672
Bugfixes
- Fix write_stderr in native.py (#9753) PR #9753
Refactoring, Improvements, and Tooling
- Port the pantsd nailgun server to rust (#9722) PR #9722
- Provide more useful and consistent console UI messages (#9720) PR #9720
- Batch all fsync calls at the end of materialize_directory. (#9738) PR #9738
- More simplification of SourceRoots. (#9728) PR #9728
- Add white space between rule graph errors (#9740) PR #9740
1.28.0.dev2 (5/9/2020)
API Changes
- Loosen restriction on docutils to not require 0.16. #9735 PR #9735
- Remove deprecated --fast option for tests. (#9733) PR #9733
- Remove deprecated support for within_data_subdir. (#9730) PR #9730
- Remove build-setup-requires-pex options scope. (#9732) PR #9732
- Remove deprecated PythonSetup options. (#9731) PR #9731
- Adapt to upstream scalatest change (#9707) PR #9707
- Upgrade docutils from 0.14 to 0.16 (#9724) PR #9724
- Upgrade responses. (#9712) PR #9712
- Simplify the source roots mechanism. (#9709) PR #9709
- Disable watchman by default. (#9714) PR #9714
- Upgrade pyopenssl. (#9693) PR #9693
New Features
Bugfixes
Refactoring, Improvements, and Tooling
- Add benchmark harness and improve performance of materialize_directory (#9729) PR #9729
- Reorganize some V2 goals into pants.backend.pants_info and pants.backend.project_info #9708 PR #9708
- Rename V2's --test-run-coverage to --test-use-coverage (#9723) PR #9723
- Improve pytest output. (#9691) PR #9691
- Fix up dependency features (#9721) PR #9721
- Improve output of V2 test goal (#9718) PR #9718
- Improve output of V2 fmt and lint goals (#9710) PR #9710
- Fix brfs to cleanly unmount. (#9715) PR #9715
- Pin down floaty lockfile. (#9713) PR #9713
- Move file invalidation handling to rust (#9636) PR #9636
- Avoid unnecessary strip_source_roots.py work when using a repo-level root (#9702) PR #9702
- Optimize strip_source_roots.py when there is only 1 source root (#9705) PR #9705
- Improve concurrency of V2 formatter and linter setup (#9701) PR #9701
- Update tokio past 0.2.16. (#9703) PR #9703
- Simplify v1 Go buildgen's use of source roots. (#9694) PR #9694
- Switch DownloadedPexBin to use ExternalTool. (#9665) PR #9665
- Fix V2 isort and Black including the tmpdir in their output (#9683) PR #9683
- MyPy now checks partially_type_checked targets. (#9688) PR #9688
- Fix Shellcheck lint. (#9689) PR #9689
- Improve Snapshot::merge errors. (#9685) PR #9685
- Clean up Executor::spawn APIs and docs to better align them with tokio 0.2. (#9684) PR #9684
- pin AR=/usr/bin/ar on osx when building native_engine.so (#9662) PR #9662
1.28.0.dev1 (5/1/2020)
API Changes
New Features
- Adding allowlist_compiler_args in ScroogeGen (#9610) PR #9610
- [junit-runner] allow test specs to work for parameterized tests and t… (#9397) PR #9397
- Add Protobuf Python support to V2 (#9651) PR #9651
- [jvm-platform] add strict as an attr to jvm platforms (#9287) PR #9287
- Add the ability to write junit test results file for pytest runs. (#9594) PR #9594
Bugfixes
- Fix crash when V2 goals like repl have no specified targets (#9673) PR #9673
Refactoring, Improvements, and Tooling
- Rules to extract archives. (#9624) PR #9624
- Add generic mechanism to codegen sources in V2 (#9634) PR #9634
- Allow HydratedSourcesRequest to indicate which Sources types are expected (#9641) PR #9641
- Remove default process timeout value (#9639) PR #9639
- Replace list with list-v2 when in V2 exclusive mode (#9671) PR #9671
- Simplify Scheduler::execute and unify Graph retry (#9674) PR #9674
- Rename Process.input_files to Process.input_digest (#9669) PR #9669
- Port the bulk of the process_execution crate to async/await (#9676) PR #9676
- Remove noisy Pants output with V2 binary, run, and repl (#9667) PR #9667
- Rename V2 Configuration to FieldSet (#9668) PR #9668
- Calculate SourcesSnapshot using the Target API (#9659) PR #9659
- Rename subsystem_rule to SubsystemRule (#9666) PR #9666
- Change GoalRuleTestBase.execute_rule to return the captured stderr (#9664) PR #9664
- Rename Snapshot.directory_digest to Snapshot.digest (#9658) PR #9658
- Always register engine.target.rules() via engine_initializer.py (#9661) PR #9661
- Rename several engine/fs.py types PR #9655
- Make the ExternalTool URL generator an instance method. (#9646) PR #9646
- Only write to the build root when V2 fmt makes changes (#9652) PR #9652
- Port the finding of owning targets to the Target API (#9648) PR #9648
- Compute process execution times by walking the workunit graph (#9622) PR #9622
- Align the rust and python PathGlobs objects. (#9653) PR #9653
- Use ExitStack from python standard library. (#9645) PR #9645
- An ExternalTool subsystem base for downloading external tools. (#9625) PR #9625
- Use sysconfig.get_platform() (#9644) PR #9644
- Simplify excluding the requirements.txt file generated from python_requirements() (#9640) PR #9640
- Factor up filtering out non-Python targets in V2 (#9638) PR #9638
- Extract a watch crate. (#9635) PR #9635
- Remove premature generalization for AsyncFields (#9632) PR #9632
Testing
- Fix selectors test for Python 3.8 (#9642) PR #9642
- Install Python 3.8 in centos7 docker image (#9670) PR #9670
- Stabilize the cron CI test suite (#9581) PR #9581
- Prune the pantsd integration test target (#9660) PR #9660
- Remoting: ensure oauth token file only has one line (#9630) PR #9630
- Stop using deprecated assertEquals() (#9682) PR #9682
- Reduce the # of V1 integration test shards by 1 (#9582) PR #9582
1.28.0.dev0 (4/24/2020)
API Changes
- Rename target-types2 goal to target-types and targets() register.py entry point to target_types() (#9618) PR #9618
- Default to --filedeps-transitive=false and --dependencies-transitive=false (#9576) PR #9576
- Require explicit specification of an AWS Lambda runtime. (#9564) PR #9564
- Revert allowing Python targets to include .c files in their sources (#9583) PR #9583
New Features
Bugfixes
- Temporarily disable ./pants backends goal due to bug (#9629) PR #9629
- fix test_platform usages (#9567) PR #9567
- Use FrozenDict and FrozenOrderedSet for type safety with UnionMembership and RegisteredTargetTypes (#9609) PR #9609
- Fix zip_safe field not being used with V2 binary (#9598) PR #9598
- Fix python platform spec for AWS Lambdas. (#9600) PR #9600
- Revert "Add link back to source control dir from physical workdir (#9531)" (#9601) PR #9601
Refactoring, Improvements, and Tooling
- Remove our custom .tar.xz workaround. (#9617) PR #9617
- Rename targets.py files to target_types.py (#9616) PR #9616
- Refactor filtering of valid targets via the engine (#9614) PR #9614
- Some logger.rs improvements (#9599) PR #9599
- Rename isolated_process.py to process.py (#9608) PR #9608
- Factor up flexible handling of invalid target types (#9605) PR #9605
- Move private engine code into engine/internals (#9597) PR #9597
- Break setup_logger into two functions (#9592) PR #9592
- Factor up common Configuration code (#9557) PR #9557
- Improve V2 UI messages by describing the scope of the work being done (#9588) PR #9588
- Add DeduplicatedCollection to newtype FrozenOrderedSet in rules (#9590) PR #9590
- Some ExceptionSink refactors (#9584) PR #9584
- Logger cleanup (#9578) PR #9578
- Reorganize engine/legacy to only have legacy engine code (#9591) PR #9591
- Remove "Executing process" text from V2 UI (#9568) PR #9568
- Add engine/collection.py for the Collection newtype (#9586) PR #9586
- Add engine/unions.py to consolidate union types into one file (#9580) PR #9580
- Add engine/addresses.py for consolidated Address imports in V2 (#9575) PR #9575
- Use rust cpu_count crate to determine v2 UI swim lanes (#9574) PR #9574
- Reorganize rules/core into core/goals, core/project_info, core/util_rules, and core/target_types.py (#9572) PR #9572
Testing
Generated by publish_docs
from dist/markdown/html/src/python/pants/notes/1.28.x.html 2022-12-03T01:08:59.866850