1.26.x Stable Releases
This document describes releases leading up to the 1.26.x stable series.
Some significant changes in this series:
- Pants now uses PEX 2.1.x, which uses PIP under the hood, and consequently significantly changes resolves (in order to better align with the wider Python ecosystem). Please see https://github.com/pantsbuild/pex/pull/788 for details.
- Adds support for TOML config files, e.g. pants.toml. INI config files will still be supported for some time, but INI is now legacy. Please see https://groups.google.com/forum/#!topic/pants-devel/N1H03oJONco for more information.
1.26.1rc0 (6/16/2020)
N.B.: No further releases are expected in the 1.26.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. (#10017) PR #10017
1.26.0 (04/29/2020)
The first stable release in the 1.26.x series, with no changes since the previous rc!
1.26.0rc2 (04/15/2020)
API Changes
- Upgrade to Pex 2.1.7. (#9401) PR #9401
New Features
- Add respect strict dep option for export-dep-as-jar (#9482) PR #9482
- first implement v1 of robot impl (#8793) PR #8793
- Implement Cobertura output option for #9275 (#9325) PR #9325
- Report warnings and errors to reporting server for JVM targets (#9293) PR #9293
- [jvm] Add jvm_options to platform; use from junit and run (#9150) PR #9150
Bugfixes
- Do not mix platforms and interpreter constraints while building release pexes (#9515) PR #9515
- Fix workdir symlink's destination/physical dir not always created (#9504) PR #9504
- Don't report diagnostics for cached targets (#9492) PR #9492
- fix --tag filtering when a TargetAdaptor has None for the 'tags' kwarg (#9443) PR #9443
- Fix equality and hashing of engine.Collection (#9437) PR #9437
- fix accidentally double-registering setuptools for ipex (#9341) PR #9341
- don't match the interpreter patch version for .ipex files! (#9285) PR #9285
- Fix PathGlobs to be deterministic for more cache hits (#9347) Issue #9346 PR #9347
- Add a coverage test for pantsd garbage collection, and fix type error. (#9271) PR #9271
Refactoring, Improvements, and Tooling
- Drop normpath comparison, the vast majority of which is covered by the other checks. (#9538) PR #9538
- Avoid recomputing a BuildFileAddress when subclassing will do. (#9472) PR #9472
- [IDE] Precompute flattened dependencies for modulizable targets (#9311) PR #9311
- Plumb Pants log level to PEX_VERBOSE in v2. (#9328) PR #9328
- Prevent excessive uncached readlink's when using a symlinked workdir (#9270) PR #9270
- Move the global level option to an Enum. (#9327) PR #9327
- Zinc: Use an Array[PublishDiagnosticsParam] for LSP compliance (#9292) PR #9292
- Fix relative path in Zinc compiler (#9261) PR #9261
- Enable zinc to log diagnostics for jvm languages (#9228) PR #9228
- Format zinc compiler with scalafmt (#9227) PR #9227
- Revert "Load the bootstrapped zinc compiler from the zinc server's classpath. (#8753)" (#9226) PR #8753 PR #9226
- create RequestsSession.Factory global subsystem, and use it to configure urllib3.util.Retry for http artifact cache downloads (#8568) PR #8568
- Switch to a dict-backed OrderedSet impl. (#9305) PR #9305
1.26.0rc1 (03/08/2020)
Bugfixes
1.26.0rc0 (03/04/2020)
API Changes
New Features
Bugfixes
Refactoring, Improvements, and Tooling
- Improve cmd-line help output. (#9199) PR #9199
- Optimization on synthetic targets with export-dep-as-jar (#9186) PR #9186
- Break test runner pex into tool and requirements. (#9208) PR #9208
- Replace Twitter Common's maybe_list() with pants.util.collections.ensure_list() (#9231) PR #9231
- Use FrozenOrderedSet with PexRequirements and PexInterpreterConstraints (#9229) PR #9229
- Fix flaky options_bootstrapper_test.py (#9220) PR #9220
- Rename GlobalOptionsRegistrar to Global Options. (#9224) PR #9224
- Get rid of the GlobalOptions wrapper class. (#9221) PR #9221
- Make GlobalOptions rule provide full options. (#9215) PR #9215
- Make BuildConfiguration a dataclass (#9192) PR #9192
- Make _tasks a local variable on Scheduler constructor (#9223) PR #9223
- Don't use ProjectTree in Scheduler (#9202) PR #9202
- Turn on the v2 UI in the ./v2 script. (#9217) PR #9217
- Simplify fmt2 grouping of formatters per language (#9211) PR #9211
- Simplify lint2 to stop grouping by languages (#9207) PR #9207
- Refactor V2 linters to allow batching multiple targets (#9185) PR #9185
- Add TargetAdaptor.has_sources() (#9204) PR #9204
- Tweak TargetAdaptor.dependencies to be a tuple rather than a list (#9184) PR #9184
- Deduplicate HydratedTarget and TargetAdaptor (#9219) PR #9219
Testing
- Allow mocking unions in testutil.engine.util.run_rule() (#9203) PR #9203
1.26.0.dev2 (02/27/2020)
API Changes
New Features
Bugfixes
Refactoring, Improvements, and Tooling
- Generify rules to determine the source files for multiple targets (#9172) PR #9172
- Refactor strip_source_roots to use TargetAdaptor rather than HydratedTarget (#9178) PR #9178
- Add back inject_init rule (#9174) PR #9174
- Fix help printing for v2 goals (#9158) PR #9158
- Use our OrderedSet and FrozenOrderedSet instead of Twitter Commons (#9181) PR #9181
- Set up infrastructure for generating coverage reports in V2 ./pants test (#9170) PR #9170
- Don't require V2 test implementations to implement coverage (#9173) PR #9173
- Remove ProjectTreeFactory (#9189) PR #9189
Testing
- Fix file_option not working with V2 tests (#9190) PR #9190
Documentation
- Update docs to use pants.toml (#9165) PR #9165
1.26.0.dev1 (02/24/2020)
API Changes
- Upgrade to Pex 2.1.4 (#8881) PR #8881
- Register goal2 as goal if in v2-exclusive mode. (#9164) PR #9164
- Turn on --v2 by default now that the V2 backends are not loaded by default (#9007) PR #9007
- Reapply "Switch to dot idea project type" PR (#9105) PR #9105
- [export-dep-as-jar] Include transitive target dependencies in export-dep-as-jar (#9146) PR #9146
- Remove deprecated passthrough args for login, lint.mypy, and fmt.isort (#9134) PR #9134
- Remove pytest passthrough args deprecation. (#9126) PR #9126
- Remove deprecated --requirements options in favor of --version and --extra-requirements (#9118) PR #9118
- Remove deprecated pantsbuild.pants.testinfra wheel (#9117) PR #9117
New Features
- Respect precise file arguments with V2 ./pants test (#9120) PR #9120
- Add support for precise file arguments to fmt2 and lint2 (#9133) PR #9133
- v2 repl goal for python (#9077) PR #9077
- Add Python docformatter auto-formatter (#9139) PR #9139
- Add Pylint as a V2 linter (#8979) PR #8979
- Allow disabling V1 isort by deregistering pants.backend.python.lint.isort (#9140) PR #9140
- [jvm] Introduce runtime_platform; bump export version to 1.1 (#9003) PR #9003
- Fetch sources and javadoc jars for 3rd party deps when exporting with 'export-dep-as-jar' (#9168) PR #9168
Bugfixes
- Fix --skip option for V2 formatters when multiple formatters enabled (#9159) PR #9159
- Fix setuptools's Python 2 deprecation warning with Python linters (#9131) PR #9131
- Fix TOML config files interpolating options from the same section (#9114) PR #9114
- Fix warnings filtering under pantsd. (#9121) PR #9121
- No-op when V2 goals have no implementation (#9142) PR #9142
- [export-dep-as-jar] Make library ordering deterministic (#9144) PR #9144
- [export-dep-as-jar] Respect strict_deps in libraries field (#9145) PR #9145
- Add non-jvm targets with classpath elements to exported modules as libraries. (#9084) PR #9084
Refactoring, Improvements, and Tooling
- Use Black internally for auto-formatting (#9157) PR #9157
- Use docformatter autoformatter internally (#9137) PR #9137
- Ignore Black and docformatter changes with git blame (#9160) PR #9160
- Use remote execution with the lint CI shard (#9156) PR #9156
- Add OrderedSet and FrozenOrderedSet (#9166) PR #9166
- Update compatible rust dependencies (#9122) PR #9122
- Dirty the dependents of uncacheable nodes (#9015) PR #9015
- Improve the error message when no rules are installed that return a type (#9136) PR #9136
- Minor code cleanup involving some uses of Platform (#9152) PR #9152
- Simplify calculating runtime lib path env var (#9111) PR #9111
- Rename Platform -> PlatformConstraint (#9154) PR #9154
- Add a rule to strip source roots from a Snapshot (#9112) PR #9112
- Add find_target_source_files rule to generalize precise file arguments (#9127) PR #9127
- Inline inject_init.py into prepare_chrooted_python_sources.py (#9115) PR #9115
- Tweak strip_source_roots to allow multiple source roots in a snapshot (#9147) PR #9147
- Stabilize CI lint shard timing out (#9155) PR #9155
- Don't use FileContent in options parsing. (#9162) PR #9162
- Remove AddressOriginMap (#9123) PR #9123
- Cleanup tests handling of download_pex_bin.py (#9143) PR #9143
- Add ./v2 script for Pants developers to more easily use V2 (#9125) PR #9125
- Add ipdb for internal Pants tests (#9124) PR #9124
Testing
- add assertDoesNotRaise contextmanager (#9113) PR #9113
Documentation
- Fix options reference page on pantsbuild.org. (#9138) PR #9138
1.26.0.dev0 (02/11/2020)
New Features
Bugfixes
- Re-pin pytest, and add a pin for zipp. (#9095) PR #9095
- remove hardcoded toolchain variant and fix fingerprinting (#9085) PR #9085
- Allow test specs to be used with --no-fast for junit (#9093) PR #9093
- Revert "Switch to dot idea project type (#8745)" (#9096) PR #9096
- Fix deprecation warning for --transitive for goals that ignore the option (#9076) PR #9076
Refactoring, Improvements, and Tooling
- Nicer rule graph viz (#7024) PR #7024
- Handle Ctrl-C in the V2 UI (#9043) PR #9043
- expose a v2 ruleset for BinaryToolBase (#8859) PR #8859
- Move more python utils to core (#9082) PR #9082
- Use Addresses instead of BuildFileAddresses in most rules (#9083) PR #9083
- Allow going from Addresses -> Address (#9097) PR #9097
- Replace BuildFileAddress with Address for HydratedTarget and TargetAdaptor (#9100) PR #9100
- Rename ProvenancedBuildFileAddress to AddressWithOrigin (#9078) PR #9078
- Add FilesystemResolvedGlobSpec to preserve which specific files to operate on (#9081) PR #9081
- Fix file args working with globs (#9098) PR #9098
- Use pants.toml internally (#9090) PR #9090
- Warn when fix_deprecated_globs_usage.py encounters variables (#9080) PR #9080
- Trigger warning/error for deprecated Target method overrides. (#9073) PR #9073
- Add type hints to build_graph (#9099) PR #9099
Generated by publish_docs
from dist/markdown/html/src/python/pants/notes/1.26.x.html 2022-12-03T01:08:59.844258