Release Notes - Versions 0.11.x
Version 0.11.14
- Better Windows support #568
Version 0.11.13
- Implement PyBuilder access to git describe #565
Version 0.11.12
- Fix for #523 for the 0.11 branch #527
Version 0.11.11
- FINAL VERSION TO SUPPORT PYTHON 2.6/3.3
- Final 0.11.x release #505
- using / as path separator in setup.py #488
- Move setuptools to 35.x #478
- Update setuptools to ~=34.0 #465
Version 0.11.10
- Allow obsoleting packages with “obsoletes” #456
- PyBuilder needs to depend on modern setuptools #452
- Allow specifying python version constraint #450
- Add Python 3.6 support #446
- Copy resource doesn’t include the
LICENSE
file in the distro #443 - Coverage plugin fails when fails to load covered module #441
- Increasing test coverage on vcs_tests.py #439
- Allow modifying default targets similar to manner of adding them in #412 #438
- Fix PyPI documentation #435
- PyBuilder’s
setup.py
broken whenpandoc>=1.18
is installed withpypandoc~=1.2.0
#429 - python.distutils plugin:
setup.py
keywords #424 - Flake8 3.2.0 broke the build #420
- Uptake new PIP upgrade features #416
- Allow to append build targets to default from command line #413
- Generate package summary and description based on a
README.md
#408 - Wrong dependency version error formatting #405
- Fix paths in the Sphinx PyB quickstart and runtime configuration #403
- Wrong logging level for
sphinx_generate_documentation
#401 - Sphinx configuration should share PyB at runtime #398 #399
- Color escape sequence not properly terminated #390
- Harden
expand_path
for Windows andsafe_log_file_name
#393 - Pathing issues on pypi upload on Windows #391
python.distutils
plugin doesn’t supportnamespace_packages
#385- Coverage should be setup to cover multiprocessing and forks #384
- Recursive dependency upgrades should be subject to global version constraints #380
- Coverage for missing modules should cause a failure #377
Version 0.11.9
- adding
count_travis
#372 - Fix path separators and protect log file names on Windows #371
include_directory
fix for manifest andsetup.py
#367- use
shutil.rmtree
instead ofos.removedirs
#365 - implement
get_git_hash
#363 - Entry-points should handle a single entry correctly #359
- Add a proper pdoc plugin #353
@dependents
ignores customized task name #357@dependents
does not inject dependencies from plugin if task is already defined earlier #355- PyBuilder
install_dependencies
behavior should mirror #340 #347 - Sphinx indicates failure with -v but not without it #350
Version 0.11.8
- Support for pip trusted hosts #341
- Add possibility to specify plugin versions #340
- Fix issue in generated
setup.py
#332
Version 0.11.7
- Pin
unittest-xml-reporting
dependency to maintain py2.6 support #333 (thanks @snordhausen) - Distutils upload signing #325
- Ability to customize packaging options ad nauseam #331
- Success message after generating
setup.py
in--start-project
- Windows fixes (thanks @Lucas-C and @guillermooo).
Version 0.11.6
- Cram plugin can now run cram from the
target
directory and does so by default #318
Version 0.11.5
Version 0.11.4
install_dependencies_(extra_)index_url
should affect all PIP operations #313- Task
install_dependencies
doesn’t work in version 0.11.3 #311 - Allow dynamic discovery
entry_points
configuration #309
Version 0.11.3
- Coverage plugin now excludes namespaces (not backed by an actual source file) #301
- Installing dependencies with use of an HTTPS proxy is now possible #299
- Python 3.5 issue resolved #287
- External tool dependencies for plugins are now properly updated #272
pyb install
now forces the reinstallation #282- Cram now handles the case where there are no tests #280
- Plugins can be installed via VCS #276
- PyBuilder projects can be installed via URL-based install #200
- Plugins can now find out if a task is in the current execution plan #275
- Handling system exits gracefully #255
- Plugin-specified constraints for PyBuilder API version #257
pyb -o
now properly excludes all optional tasks #263- Fixed missing
xmlrunner
dependency #267 pyb -T
shows build plan #262- Possibility to inject tasks as dependent #188
- Fixed egg/wheel shebangs #168
- Optional automatic version augmentation based on
.dev
releases #209 - Upload repository for distutils upload task now works #243
- Fixed issue with
@task
decorator - New tasks for printing module and script directory path #208
- Support for setuptools pre- and post-install logic #227
- Flake8 plugin now checks for directory existence before including it #230
- Helpful error message when
pyb -t
is not called in the project root directory #226
Version 0.11.2
- Added
project.include_directory
functionality #223. Pull request by @glujan - Coverage plugin will not reset modules per default (only if
coverage_reset_modules
is set toTrue
) #211. - Coverage forking disabled for windows OS #184
- Coverage / branch coverage discrepancy fix #203
- Resolved flake8 plugin filtering issue #202
- New plugin for debian packaging by @locolupo #190
- The distutils plugin can now upload distributions #187
- Resolved issue with
install_dependencies
on windows OS #185.
Version 0.11.1
- The
0.11.0
metadata claimed to support python 3.2. This has been fixed.
Version 0.11.0
- Nearly this entire release is courtesy of arcivanov. Thanks!!!
- Introduced
reactor.execute_task_shortest_plan
API. - Fixed an issue where a forked coverage measurement would not properly failed the build.
- unit test and coverage measurement are now library functions in an API sense.
pyb install
now works and acts likesetup.py install
(distutils plugin).- PyBuilder can now be installed with
pip install git://github.com/pybuilder/pybuilder.git@<branch>
- Forked processes (like coverage measurements) now correctly report back their errors.
- Huge improvements to coverage accuracy when building PyBuilder itself / libraries which use part of their own code in order to build, e.G. if you run library code in
build.py
. - Branch coverage and html reports have been added to the
python.coverage
plugin. - The
python.coverage
process will now always fork when measuring coverage, disregarding thecoverage_fork
setting. Thecoverage_fork
setting is now deprecated. - The
python.unittest
plugin will now always fork. - Module reloading has been removed. It is no longer useful since coverage and unit tests run in separate forks.
unittest_runner
must now accept a positional argument which is a filelike object. Writing to this filelike object is preferred rather than using stdout/stderr.- Introduced teardown actions. Also action ordering is now stable/guaranteed.
- Introduced optional task dependencies (as opposed to required task dependencies). With the command line switch
-x task_name
a set of optional tasks can be skipped (repeat if required). With the command line switch--force-exclude
this can be expanded to exclude required dependencies as well (but might lead to build consistency problems). - Python 3.2 support has been dropped, please upgrade to 3.3 or 3.4
- The
python.unittest
plugin now generates nUnit-style XML reports by default (these can be parsed by jenkins).