1.5.x Stable Releases

1.5.x Stable Releases

This document describes releases leading up to the 1.5.x stable series.

1.5.1rc2 (04/22/2018)

Bugfixes

  • Do not fail for a particular Spec if some other Spec has already matched it. PR #5683

Refactoring, Improvements, and Tooling

1.5.1rc1 (03/31/2018)

Bugfixes

  • Fail for deleted-but-depended-on targets in changed (#5636) PR #5636

1.5.1rc0 (03/20/2018)

Refactoring, Improvements, and Tooling

  • [coursier/m2-coords] update coursier json parsing; use maven's coords (#5475) PR #5475
  • Batch execution of address Specs and remove SelectTransitive (#5605) PR #5605

1.5.0 (03/19/2018)

The 1.5.0 stable release, with no additional changes since the rc1 release.

A quick summary of the changes since the 1.4.x branch:

  • V1 engine removed.
  • A new Thrift binary tool subsystem.
  • Redesign JavaScript Style Checker to use ESLint directly
  • Old python pipeline removed.
  • Enable workdir-max-build-entries by default.

1.5.0rc1 (03/14/2018)

Bugfixes

  • Render a warning rather than failing list when no targets are matched (#5598) PR #5598
  • [pantsd] Repair stale sources invalidation case. (#5589) PR #5589

Refactoring, Improvements, and Tooling

  • Further --changed optimization (#5579) PR #5579
  • [pantsd] Don't compute TargetRoots twice. (#5595) PR #5595
  • [coursier] use same artifact cache override as ivy (#5586) PR #5586

1.5.0rc0 (03/07/2018)

Refactoring, Improvements, and Tooling

  • Cleanup v1 changed code. (#5572) PR #5572
  • Improve the performance of v2 changed. (#5571) PR #5571
  • Delete obsolete README. (#5573) PR #5573
  • Improve interpreter constraint tests and docs. (#5566) PR #5566
  • Engine is a workspace (#5555) PR #5555
  • Native engine is a stripped cdylib (#5557) PR #5557
  • Don't overwrite cffi files if they haven't changed (#5553) PR #5553
  • Don't install panic handler when RUST_BACKTRACE=1 (#5561) PR #5561
  • Only shift once, not twice (#5552) Issue #5551 PR #5552
  • Prepare 1.4.0rc4 (#5569) PR #5569
  • [pantsd] Daemon lifecycle invalidation on configurable glob watches. (#5550) PR #5550
  • Set thrifty build_file_aliases (#5559) PR #5559
  • Better PantsRunIntegrationTest invalidation. (#5547) PR #5547
  • Support coverage of pants coverage tests. (#5544) PR #5544
  • Tighten PytestRun coverage plugin. (#5542) PR #5542
  • One additional change for 1.4.0rc3. (#5549) PR #5549
  • Provide injectables functionality in a mixin. (#5548) PR #5548
  • Revert a bunch of remoting PRs (#5543) PR #5543
  • Prep 1.4.0rc3 (#5545) PR #5545
  • CLean up fake options creation in tests. (#5539) PR #5539
  • Don't cache lmdb_store directory (#5541) PR #5541

New Features

  • Thrifty support for pants (#5531) PR #5531

Documentation Updates

  • Fix documentation code blocks. (#5558) PR #5558

1.5.0.dev5 (03/02/2018)

New Features

  • Add ability for pants to call coursier with the new url attribute (#5527) PR #5527
  • Don't force inherit_path to be a bool (#5482) PR #5482 PR #444

Bugfixes

  • [pantsd] Repair end to end runtracker timing for pantsd runs. (#5526) PR #5526

Refactoring, Improvements, and Tooling

  • Generate a single python source chroot. (#5535) PR #5535
  • Improve py.test covered paths reporting. (#5534) PR #5534
  • Improve test reporting in batched partitions. (#5420) PR #5420
  • Fix non-exportable library target subclasses (#5533) PR #5533
  • Cleanups for 3bdd5506dc3 that I forgot to push before merging. (#5529) PR #5529
  • New-style BinaryTool Subsystems for isort and go distribution. (#5523) PR #5523
  • Use rust logging API (#5525) PR #5525
  • Add comment about significance of unsorted-ness of sources (#5524) PR #5524
  • cloc never executes in the v2 engine (#5518) PR #5518
  • Robustify PantsRequirementIntegrationTest. (#5520) PR #5520
  • Subsystems for the ragel and cloc binaries (#5517) PR #5517
  • Move Key interning to rust (#5455) PR #5455
  • Don't reinstall plugin wheels on every invocation. (#5506) PR #5506
  • A new Thrift binary tool subsystem. (#5512) PR #5512

1.5.0.dev4 (02/23/2018)

New Features

  • Fix up remote process execution (#5500) PR #5500
  • Remote execution uploads files from a Store (#5499) PR #5499

Public API Changes

  • Redesign JavaScript Style Checker to use ESLint directly (#5265) PR #5265
  • A convenient mechanism for fetching binary tools via subsystems (#5443) PR #5443
  • Qualify kythe target names with 'java-'. (#5459) PR #5459

Bugfixes

  • [pantsd] Set the remote environment for pantsd-runner and child processes. (#5508) PR #5508
  • Don't special-case python dists in resolve_requirements(). (#5483) PR #5483
  • Add a dependency on the pants source to the integration test base target (#5481) PR #5481
  • fix/integration test for pants_requirement() (#5457) PR #5457
  • Never allow the shader to rewrite the empty-string package. (#5461) PR #5461
  • Bump release.sh to pex 1.2.16. (#5460) PR #5460
  • fix/tests: subsystems can't declare dependencies on non-globally-scoped subsystems (#5456) PR #5456
  • Fix missing interpreter constraints bug when a Python target does not have sources (#5501) PR #5501

Documentation Updates

  • Fix reference html/js: expand/collapse toggle in Firefox (#5507) PR #5507

Refactoring, Improvements, and Tooling

  • Delete unused old python pipeline classes. (#5509) PR #5509
  • Make the export task use new python pipeline constructs. (#5486) PR #5486
  • Remote command execution returns a Future (#5497) PR #5497
  • Snapshot is backed by LMDB not tar files (#5496) PR #5496
  • Local process execution happens in a directory (#5495) PR #5495
  • Snapshot can get FileContent (#5494) PR #5494
  • Move materialize_{file,directory} from fs_util to Store (#5493) PR #5493
  • Remove support dir overrides (#5489) PR #5489
  • Upgrade to rust 1.24 (#5477) PR #5477
  • Simplify python local dist handling code. (#5480) PR #5480
  • Remove some outdated test harness code that exists in the base class (#5472) PR #5472
  • Tweaks to the BinaryTool subsystem and use it to create an LLVM subsystem (#5471) PR #5471
  • Refactor python pipeline utilities (#5474) PR #5474
  • Fetch the buildozer binary using a subsystem. (#5462) PR #5462
  • Narrow the warnings we ignore when compiling our cffi (#5458) PR #5458

1.5.0.dev3 (02/10/2018)

New Features

  • Python distribution task for user-defined setup.py + integration with ./pants {run/binary/test} (#5141) PR #5141

Refactoring, Improvements, and Tooling

  • Bundle all kythe entries, regardless of origin. (#5450) PR #5450

1.5.0.dev2 (02/05/2018)

New Features

  • Allow intransitive unpacking of jars. (#5398) PR #5398

API Changes

  • [strict-deps][build-graph] add new predicate to build graph traversal; Update Target.strict_deps to use it (#5150) PR #5150
  • Deprecate IDE project generation tasks. (#5432) PR #5432
  • Enable workdir-max-build-entries by default. (#5423) PR #5423
  • Fix tasks2 deprecations to each have their own module. (#5421) PR #5421
  • Console tasks can output nothing without erroring (#5412) PR #5412
  • Remove a remaining old-python-pipeline task from contrib/python. (#5411) PR #5411
  • Make the thrift linter use the standard linter mixin. (#5394) PR #5394

Bugfixes

  • Fix PytestRun to handle multiple source roots. (#5400) PR #5400
  • Fix a bug in task logging in tests. (#5404) PR #5404
  • [pantsd] Repair console interactivity in pantsd runs. (#5352) PR #5352

Documentation Updates

  • Document release reset of master. (#5397) PR #5397

Refactoring, Improvements, and Tooling

  • Make the Kythe Java indexer emit JVM nodes. (#5435) PR #5435
  • Release script allows wheel listing (#5431) PR #5431
  • Get version from version file not by running pants (#5428) PR #5428
  • Improve python/rust boundary error handling (#5414) PR #5414
  • Factor up shared test partitioning code. (#5416) PR #5416
  • Set the log level when capturing logs in tests. (#5418) PR #5418
  • Simplify JUnitRun internals. (#5410) PR #5410
  • [v2-engine errors] Sort suggestions for typo'd targets, unique them when trace is disabled (#5413) PR #5413
  • No-op ivy resolve is ~100ms cheaper (#5389) PR #5389
  • Process executor does not require env flag to be set (#5409) PR #5409
  • [pantsd] Don't invalidate on surface name changes to config/rc files. (#5408) PR #5408
  • [pantsd] Break out DPR._nailgunned_stdio() into multiple methods. (#5405) PR #5405
  • Sort the indexable targets consistently. (#5403) PR #5403

1.5.0.dev1 (01/26/2018)

New Features

  • [pantsd] Add RunTracker stats. (#5374) PR #5374

API Changes

  • [pantsd] Bump to watchman 4.9.0-pants1. (#5386) PR #5386

Bugfixes

Documentation Updates

  • Update the rust readme. (#5393) PR #5393
  • Update our JVM-related config and documentation. (#5370) PR #5370

Refactoring, Improvements, and Tooling

  • Apply goal-level skip/transitive options to lint/fmt tasks. (#5383) PR #5383
  • [pantsd] StoreGCService improvements. (#5391) PR #5391
  • Remove unused field (#5390) PR #5390
  • Extract CommandRunner struct (#5377) PR #5377
  • [pantsd] Repair pantsd integration tests for execution via pantsd. (#5387) PR #5387
  • fs_util writes to remote CAS if it's present (#5378) PR #5378
  • Add back isort tests (#5380) PR #5380
  • Fix fail-fast tests. (#5371) PR #5371
  • Store can copy Digests from local to remote (#5333) PR #5333

1.5.0.dev0 (01/22/2018)

New Features

  • add avro/java contrib plugin to the release process (#5346) PR #5346
  • Add the mypy contrib module to pants release process (#5335) PR #5335
  • Publish the codeanalysis contrib plugin. (#5322) PR #5322

API Changes

  • Remove 1.5.0.dev0 deprecations (#5363) PR #5363
  • Deprecate the Android contrib backend. (#5343) PR #5343
  • [contrib/scrooge] Add exports support to scrooge (#5357) PR #5357
  • Remove superfluous --dist flag from kythe indexer task. (#5344) PR #5344
  • Delete deprecated modules removable in 1.5.0dev0. (#5337) PR #5337
  • An --eager option for BootstrapJvmTools. (#5336) PR #5336
  • Deprecate the v1 engine option. (#5338) PR #5338
  • Remove the target labels mechanism (#5320) PR #5320
  • Remove wiki-related targets from contrib and back to docgen (#5319) PR #5319
  • Get rid of the is_thrift and is_test target properties. (#5318) PR #5318
  • First of a series of changes to get rid of target labels. (#5312) PR #5312

Bugfixes

  • Fix a silly bug when computing indexable targets. (#5359) PR #5359
  • [pantsd] Repair daemon wedge on log rotation. (#5358) PR #5358

Refactoring, Improvements, and Tooling

  • A lightweight mechanism for registering options at the goal level. (#5325) PR #5325
  • Ensure test report results are always exposed. (#5368) PR #5368
  • Add error_details proto (#5367) PR #5367
  • Store can expand directories into transitive fingerprints (#5331) PR #5331
  • Store can tell what the EntryType of a Fingerprint is (#5332) PR #5332
  • Protobuf implementation uses Bytes instead of Vec (#5329) PR #5329
  • Store and remote::ByteStore use Digests not Fingerprints (#5347) PR #5347
  • Garbage collect Store entries (#5345) PR #5345
  • Port IsolatedProcess implementation from Python to Rust - Split 1 (#5239) PR #5239
  • python2: do not resolve requirements if no python targets in targets closure (#5361) PR #5361
  • Store takes a reference, not an owned type (#5334) PR #5334
  • Bump to pex==1.2.16. (#5355) PR #5355
  • Reenable lighter contrib sanity checks (#5340) PR #5340
  • Use helper functions in tests (#5328) PR #5328
  • Add support for alternate packages in the pex that is built. (#5283) PR #5283
  • List failed crates when running all rust tests (#5327) PR #5327
  • More sharding to alleviate flaky timeout from integration tests (#5324) PR #5324
  • Update lockfile for fs_util (#5326) PR #5326
  • Implement From in both directions for Digests (#5330) PR #5330

Documentation Updates

  • add mypy to list of released plugins in docs (#5341) PR #5341
  • Incorporate the more-frequent-stable release proposal (#5311) PR #5311
Generated by publish_docs from dist/markdown/html/src/python/pants/notes/1.5.x.html 2018-07-20T16:11:44.476231