Test support for writing pants plugins.
Project description
Pants is an Apache2 licensed build tool written in Python.
The latest documentation can be found here.
RELEASE HISTORY
0.0.25 (12/17/2014)
API Changes
Flesh out and convert to the new options system introduced in pantsbuild.pants 0.0.24
Support loading config from multiple files
Support option reads via indexing
Add a migrate_config tool
Migrate tasks to the option registration system
Get rid of the old config registration mechanism
Add passthru arg support in the new options system
Support passthru args in tasks
Allow a task type know its own options scope
Support old-style flags even in the new flag system
RB #1093 RB #1094 RB #1095 RB #1096 RB #1097 RB #1102 RB #1109 RB #1114 RB #1124 RB #1125 RB #1127 RB #1129 RB #1131 RB #1135 RB #1138 RB #1140 RB #1146 RB #1147 RB #1170 RB #1175 RB #1183 RB #1186 RB #1192 RB #1195 RB #1203 RB #1211 RB #1212 RB #1214 RB #1218 RB #1223 RB #1225 RB #1229 RB #1230 RB #1231 RB #1232 RB #1234 RB #1236 RB #1244 RB #1248 RB #1251 RB #1258 RB #1269 RB #1270 RB #1276 RB #1281 RB #1286 RB #1289 RB #1297 RB #1300 RB #1308 RB #1309 RB #1317 RB #1320 RB #1323 RB #1328 RB #1341 RB #1343 RB #1351 RB #1357 RB #1373 RB #1375 RB #1385 RB #1389 RB #1399 RB #1409 RB #1435 RB #1441 RB #1442 RB #1443 RB #1451
Kill Commands and move all actions to Tasks in the goal infrastructure
Kill pants own use of the deprecated goal command
Restore the deprecation warning for specifying ‘goal’ on the cmdline
Get rid of the Command class completely
Enable passthru args for python run
RB #1321 RB #1327 RB #1394 RB #1402 RB #1448 RB #1453 RB #1465 RB #1471 RB #1476 RB #1479
Add support for loading plugins via standard the pkg_resources entry points mechanism RB #1429 RB #1444
Many performance improvements and bugfixes to the artifact caching subsystem
Use a requests Session to enable connection pooling
Make CacheKey hash and pickle friendly
Multiprocessing Cache Check and Write
Skip compressing/writing artifacts that are already in the cache
Add the ability for JVM targets to refuse to allow themselves to be cached in the artifact cache
Fix name of non-fatal cache exception
Fix the issue of seeing “Error while writing to artifact cache: an integer is required” during [cache check]
Fix all uncompressed artifacts stored as just .tar
RB #981 RB #986 RB #1022 RB #1197 RB #1206 RB #1233 RB #1261 RB #1264 RB #1265 RB #1272 RB #1274 RB #1249 RB #1310
More enhancements to the depmap goal to support IDE plugins:
Add Pants Target Type to depmap to identify scala target VS java target
Add java_sources to the depmap info
Add transitive jar dependencies to depmap project info goal for intellij plugin
Port pants to pex 0.8.x Issue #10 Issue #19 Issue #21 Issue #22 RB #778 RB #785 RB #1303 RB #1378 RB #1421
Remove support for __file__ in BUILDs RB #1419
Allow setting the cwd for goals run.jvm and test.junit RB #1344
Subclasses of Exception have strange deserialization RB #1395
Remove outer (pants_exe) lock and serialized cmd RB #1388
Make all access to Context’s lock via helpers RB #1391
Allow adding entries to source_roots RB #1359
Re-upload artifacts that encountered read-errors RB #1361
Cache files created by (specially designed) annotation processors RB #1250
Turn dependency dupes into errors RB #1332
Add support for the Wire protobuf library RB #1275
Pin pants support down to python2.7 - dropping 2.6 RB #1278
Add a new param for page target, links, a list of hyperlinked-to targets RB #1242
Add git root calculation for idea goal RB #1189
Minimal target “tags” support RB #1227
Include traceback with failures (even without fail-fast) RB #1226
Add support for updating the environment from prep_commands RB #1222
Read arguments for thrift-linter from pants.ini RB #1215
Configurable Compression Level for Cache Artifacts RB #1194
Add a flexible directory re-mapper for the bundle RB #1181
Adds the ability to pass a filter method for ZIP extraction RB #1199
Print a diagnostic if a BUILD file references a source file that does not exist RB #1198
Add support for running a command before tests RB #1179 RB #1177
Add PantsRunIntegrationTest into pantsbuild.pants.testinfra package RB #1185
Refactor jar_library to be able to unwrap its list of jar_dependency objects RB #1165
When resolving a tool dep, report back the pants.ini section with a reference that is failing RB #1162
Add a list assertion for python_requirement_library’s requirements RB #1142
Adding a list of dirs to exclude from the ‘::’ scan in the CmdLineSpecParser RB #1091
Protobuf and payload cleanups RB #1099
Coalesce errors when parsing BUILDS in a spec RB #1061
Refactor Payload RB #1063
Add support for publishing plugins to pants. RB #1021
Bugfixes
Numerous doc improvements & generation fixes
Updates to the pants essentials tech talk based on another dry-run
On skinny displays, don’t show navigation UI by default
Handy rbt status tip from RBCommons newsletter
Document how to create a simple plugin
Update many bash examples that used old-style flags
Update Pants+IntelliJ docs to say the Plugin’s the new hotness, link to plugin’s README
Publish docs the new way
Update the “Pants Essentials” tech talk slides
Convert .rst files -> .md files
For included code snippets, don’t just slap in a pre, provide syntax highlighting
Add notes about JDK versions supported
Dust off the Task Developer’s Guide and rm the “pagerank” example
Add a sitegen task, create site with better navigation
For ‘goal builddict’, generate .rst and .html, not just .rst
Narrow setup ‘Operating System’ classfiers to known-good
Issue #16 Issue #461 Issue #739 RB #891 RB #1074 RB #1075 RB #1079 RB #1084 RB #1086 RB #1088 RB #1090 RB #1101 RB #1126 RB #1128 RB #1134 RB #1136 RB #1154 RB #1155 RB #1164 RB #1166 RB #1176 RB #1178 RB #1182 RB #1191 RB #1196 RB #1205 RB #1241 RB #1263 RB #1277 RB #1284 RB #1292 RB #1295 RB #1296 RB #1298 RB #1299 RB #1301 RB #1314 RB #1315 RB #1326 RB #1348 RB #1355 RB #1356 RB #1358 RB #1363 RB #1370 RB #1377 RB #1386 RB #1387 RB #1401 RB #1407 RB #1427 RB #1430 RB #1434 RB #1440 RB #1446 RB #1464 RB #1484 RB #1491
CmdLineProcessor uses binary class name RB #1489
Use subscripting for looking up targets in resources_by_products RB #1380
Fix/refactor checkstyle RB #1432
Fix missing import RB #1483
Make ./pants help and ./pants help <goal> work properly Issue #839 RB #1482
Cleanup after custom options bootstrapping in reflect RB #1468
Handle UTF-8 in thrift files for python RB #1459
Optimize goal changed RB #1470
Fix a bug where a request for help wasn’t detected RB #1467
Always relativize the classpath where possible RB #1455
Gracefully handle another run creating latest link RB #1396
Properly detect existence of a symlink RB #1437
Avoid throwing in ApacheThriftGen.__init__ RB #1428
Fix error message in scrooge_gen RB #1426
Fixup BuildGraph to handle mixes of synthetic and BUILD targets RB #1420
Fix antlr package derivation RB #1410
Exit workers on sigint rather than ignore RB #1405
Fix error in string formatting RB #1416
Add missing class RB #1414
Add missing import for dedent in resource_mapping.py RB #1403
Replace twitter commons dirutil Lock with lockfile wrapper RB #1390
Make interpreter_cache a property, acquire lock in accessor Issue #819 RB #1392
Fix .proto files with unicode characters in the comments RB #1330
Make pants goal run for Python exit with error code 1 if the python program exits non-zero RB #1374
Fix a bug related to adding sibling resource bases RB #1367
Support for the –kill-nailguns option was inadvertently removed, this puts it back RB #1352
fix string formatting so test -h does not crash RB #1353
Fix java_sources missing dep detection RB #1336
Fix a nasty bug when injecting target closures in BuildGraph RB #1337
Switch src/* usages of Config.load to use Config.from_cache instead RB #1319
Optimize what_changed, remove un-needed extra sort RB #1291
Fix DetectDuplicate’s handling of an append-type flag RB #1282
Deeper selection of internal targets during publishing RB #1213
Correctly parse named_is_latest entries from the pushdb RB #1245
Fix error message: add missing space RB #1266
WikiArtifact instances also have provides; limit ivy to jvm RB #1259
Fix [run.junit] -> [test.junit] RB #1256
Fix signature in goal targets and BUILD dictionary RB #1253
Fix the regression introduced in https://rbcommons.com/s/twitter/r/1186 RB #1254
Temporarily change stderr log level to silence log.init if –quiet RB #1243
Add the environment’s PYTHONPATH to sys.path when running dev pants RB #1237
Remove java_sources as target roots for scala library in depmap project info Issue #670 RB #1190
Allow UTF-8 characters in changelog RB #1228
Ensure proper semantics when replacing all tasks in a goal RB #1220 RB #1221
Fix reading of scalac plugin info from config RB #1217
Dogfood bintray for pants support binaries RB #1208
In the event of an exception in jvmdoc_gen, call get() on the remaining futures RB #1202
Move workdirs creation from __init__ to pre_execute in jvm_compile & Remove QuietTaskMixin from several tasks RB #1173
Switch from os.rename to shutil.move to support cross-fs renames when needed RB #1157
Fix scalastyle task, wire it up, make configs optional RB #1145
Fix issue 668: make release.sh execute packaged pants without loading internal backends during testing Issue #668 RB #1158
Add payload.get_field_value() to fix KeyError from pants goal idea testprojects:: RB #1150
Remove debug_args from pants.ini Issue #650 RB #1137
When a jvm doc tool (e.g. scaladoc) fails in combined mode, throw an exception RB #1116
Remove hack to add java_sources in context RB #1130
Memoize Address.__hash__ computation RB #1118
Add missing coverage deps RB #1117
get goal targets using similar codepath to goal builddict RB #1112
Memoize fingerprints by the FPStrategy hash RB #1119
Factor in the jvm version string into the nailgun executor fingerprint RB #1122
Fix some error reporting issues RB #1113
Retry on failed scm push; also, pull with rebase to increase the odds of success RB #1083
Make sure that ‘option java_package’ always overrides ‘package’ in protobuf_gen RB #1108
Fix order-dependent force handling: if a version is forced in one place, it is forced everywhere RB #1085
Survive targets without derivations RB #1066
Make internal_backend plugins 1st class local pants plugins RB #1073
0.0.24 (9/23/2014)
API Changes
Add a whitelist to jvm dependency analyzer RB #888
Refactor exceptions in build_file.py and build_file_parser.py to derive from a common baseclass and eliminate throwing IOError. RB #954
Support absolute paths on the command line when they start with the build root RB #867
Make :: fail for an invalid dir much like : does for a dir with no BUILD file. Issue #484 RB #907
Deprecate pants & dependencies aliases and remove config, goal, phase, get_scm & set_scm aliases RB #899 RB #903 RB #912
Export test infrastructure for plugin writers to use in pantsbuild.pants.testinfra sdist Issue #539 RB #997 RB #1004
Publishing improvements:
Add support for doing remote publishes with an explicit snapshot name
One publish/push db file per artifact
Several improvements to IdeGen derived goals:
Adds the –<goal>-use-source-root for IDE project generation tasks
Added –idea-exclude-maven-target to keep IntelliJ from indexing ‘target’ directories
Changes the behavior of goal idea to create a subdirectory named for the project name
Added exclude-folders option in pants.ini, defaulted to excluding a few dirs in .pants.d
Enhancements to the depmap goal to support IDE plugins:
Add flag to dump project info output to file
Add missing resources to targets
Add content type to project Info
Make SourceRoot fundamentally understand a rel_path RB #1036
Added thrift-linter to pants RB #1044
Support limiting coverage measurements globally by module or path Issue #328 Issue #369 RB #1034
Update interpreter_cache.py to support a repo-wide interpreter requirement RB #1025
Changed goal markdown:
Writes output to ./dist/markdown/
Pages can include snippets from source files http://pantsbuild.github.io/page.html#include-a-file-snippet
Rename Phase -> Goal RB #856 RB #879 RB #880 RB #887 RB #890 RB #910 RB #913 RB #915 RB #931
Android support additions:
Add AaptBuild task
Add JarsignerTask and Keystore target
Git/Scm enhancements:
Allow the buildroot to be a subdirectory of the git worktree
Support getting the commit date of refs
Add merge-base and origin url properties to git
Bugfixes
Numerous doc improvements & generation fixes Issue #397 Issue #451 Issue #475 RB #863 RB #865 RB #873 RB #876 RB #885 RB #938 RB #953 RB #960 RB #965 RB #992 RB #995 RB #1007 RB #1008 RB #1018 RB #1020 RB #1048
Fixup missing ‘page.mustache’ resource for markdown goal Issue #498 RB #918
Publishing fixes:
Fix credentials fetching during publishing
Skipping a doc phase should result in transitive deps being skipped as well
Several IdeGen derived task fixes:
Fix eclipse_gen & idea_gen for targets with both java and scala
Fixup EclipseGen resources globs to include prefs.
When a directory contains both java_library and junit_tests targets, make sure the IDE understands this is a test path, not a lib path
Fixes to the depmap goal to support IDE plugins:
Fixed source roots in project info in case of ScalaLibrary with java_sources
Fix –depmap-project-info for scala sources with the same package_prefix
Fix depmap KeyError
Make a better error message when os.symlink fails during bundle RB #1037
Faster source root operations - update the internal data structure to include a tree RB #1003
The goal filter’s –filter-ancestor parameter works better now Issue #506 RB #925
Fix: goal markdown failed to load page.mustache Issue #498 RB #918
Fix the changed goal so it can be run in a repo with a directory called ‘build’ RB #872
Patch JvmRun to accept JvmApp`s `RB #893
Add python as default codegen product RB #894
Fix the filedeps goal - it was using a now-gone .expand_files() API Issue #437, RB #939
Put back error message that shows path to missing BUILD files RB #929
Make sure the junit_run task only runs on targets that are junit compatible Issue #508 RB #924
Fix ./pants goal targets Issue #333 RB #796 RB #914
Add derived_from to ScroogeGen synthetic targets RB #926
Properly order resources for pants goal test and pants goal run RB #845
Fixup Dependencies to be mainly target-type agnostic. Issue #499 RB #920
Fixup JvmRun only-write-cmd-line flag to accept relative paths. Issue #494 RB #908 RB #911
Fix the –ivy-report option and add integration test RB #976
Fix a regression in Emma/Cobertura and add tests Issue #508 RB #935
0.0.23 (8/11/2014)
API Changes
Remove unused Task.invalidate_for method and unused extra_data variable RB #849
Add DxCompile task to android backend RB #840
Change all Task subclass constructor args to (*args, **kwargs) RB #846
The public API for the new options system Issue #425 RB #831 RB #819
Rename pants.goal.goal.Goal to pants.goal.task_registrar.TaskRegistrar Issue #345 RB #843
Bugfixes
Better validation for AndroidTarget manifest field RB #860
Remove more references to /BUILD:target notation in docs RB #855 RB #853
Fix up the error message when attempting to publish without any configured repos RB #850
Miscellaneous fixes to protobuf codegen including handling collisions deterministically RB #720
Migrate some reasonable default values from pants.ini into ‘defaults’ in the pants source Issue #455 Issue #456 Issue #458 RB #852
Updated the basename and name of some targets to prevent colliding bundles in dist/ RB #847
Provide a better error message when referencing the wrong path to a BUILD file RB #841
Add assert_list to ensure an argument is a list - use this to better validate many targets RB #811
Update front-facing help and error messages for Android targets/tasks RB #837
Use JvmFingerprintStrategy in cache manager RB #835
0.0.22 (8/4/2014)
API Changes
Upgrade pex dependency from twitter.common.python 0.6.0 to pex 0.7.0 RB #825
Added a –spec-exclude command line flag to exclude specs by regular expression RB #747
Upgrade requests, flip to a ranged requirement to help plugins RB #771
New goal ensime to generate Ensime projects for Emacs users. RB #753
Bugfixes
goal repl consumes targets transitively RB #781
Fixup JvmCompile to always deliver non-None products that were required by downstream RB #794
Relativize classpath for non-ng java execution RB #804
Added some docs and a bugfix on debugging a JVM tool (like jar-tool or checkstyle) locally RB #791
Added an excludes attribute that is set to an empty set for all SourcePayload subclasses Issue #414 RB #793
Add binary fetching support for OSX 10.10 and populate thrift and protoc binaries RB #789
Fix the pants script exit status when bootstrapping fails RB #779
Added benchmark target to maven_layout() RB #780
Fixup a hole in external dependency listing wrt encoding RB #776
Force parsing for filtering specs RB #775
Fix a scope bug for java agent manifest writing RB #768 RB #770
Plumb ivysettings.xml location to the publish template RB #764
Fix goal markdown: README.html pages clobbered each other RB #750
0.0.21 (7/25/2014)
Bugfixes
Fixup NailgunTasks with missing config_section overrides RB # 762
0.0.20 (7/25/2014)
API Changes
Hide stack traces by default Issue #326 RB #655
Upgrade to twitter.common.python 0.6.0 and adjust to api change RB #746
Validate that junit_tests targets have non-empty sources RB #619
Add support for the Ragel state-machine generator Issue #353 RB #678
Bugfixes
Numerous doc fixes Issue #385 Issue #387 Issue #395 RB #728 RB #729 RB #730 RB #738
Expose types needed to specify jvm_binary.deploy_jar_rules Issue #383 RB #727
Require information about jars in depmap with --depmap-project-info RB #721
0.0.19 (7/23/2014)
API Changes
Enable Nailgun Per Task RB #687
Bugfixes
Fixup broken bundle alias Issue #375 RB #722
Remove dependencies on twitter.common.{dirutil,contextutils} RB #710 RB #713 RB #717 RB #718 RB #719 RB #726
Fixup missing JunitRun resources requirement RB #709
Fix transitive dependencies for GroupIterator/GroupTask RB #706
Ensure resources are prepared after compile Issue #373 RB #708
Upgrade to twitter.common.python 0.5.10 to brings in the following bugfix:
Update the mtime on retranslation of existing distributions. 1bff97e stopped existing distributions from being overwritten, to prevent subtle errors. However without updating the mtime these distributions will appear to be permanently expired wrt the ttl.
Resurrected pants goal idea with work remaining on source and javadoc jar mapping RB #695
Fix BinaryUtil raise of BinaryNotFound Issue #367 RB #705
0.0.18 (7/16/2014)
API Changes
Lock globs into rootdir and below Issue #348 RB #686
Bugfixes
0.0.17 (7/15/2014)
Initial published version of pantsbuild.pants.
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 Distribution
File details
Details for the file pantsbuild.pants.testinfra-0.0.25.tar.gz
.
File metadata
- Download URL: pantsbuild.pants.testinfra-0.0.25.tar.gz
- Upload date:
- Size: 626.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e34f8910f57b6ddf50205e3d2b0975d1858d785de398edd7049c79abd7b48162 |
|
MD5 | 4bc7ecc5b699807081ed88ff9fadc6a6 |
|
BLAKE2b-256 | 7cfa22a370009ad657e08da3440099f4fa9aefabacc09bda2ead1470896fd6dd |