Changelog:
The NSS team has released Network Security Services (NSS) 3.29.3
No new functionality is introduced in this release.
This is a patch release to fix a rare crash when initializing an SSL socket
fails.
The NSS team has released Network Security Services (NSS) 3.29.2
No new functionality is introduced in this release.
This is a patch release to fix an issue with TLS session tickets.
Requests-FTP is an implementation of an FTP transport adapter for use
with the awesome Requests Python library. This library is intended as
both a starting point for future development and a useful example for
how to implement transport adapters.
Changes since 2.4.2 are too numerous to mention, with over 4,700 lines
in the ChangeLog file. However, this release does at least fix a large
number of build failures on SmartOS, and doesn't appear to cause any
obvious regressions in bulk builds performed by Joerg and myself.
Some pkgsrc cleanups while here, including merging the MirBSD patches
correctly. It couldn't be made much clearer how to properly integrate
patches here to ensure they are not lost. Next time you might not be so
fortunate!
v34.3.1
-------
* #988: Trap ``os.unlink`` same as ``os.remove`` in
``auto_chmod`` error handler.
* #983: Fixes to invalid escape sequence deprecations on
Python 3.6.
2.0.0
-----
* tox: Don't set skipsdist=True
* Stop using 'warnerrors'
* doc: Clarify sections in 'setup.cfg'
* Updated from global requirements
* Remove discover from test-requirements
* Add Constraints support
* Don't raise exception on missing man pages
* Updated from global requirements
* Clean imports in code
* Updated from global requirements
* Docstrings should not start with a space
* Changed the home-page link
* Update .coveragerc after the removal of openstack directory
* coverage package name option, doc improvement
* Updated from global requirements
* Deprecated warning for SafeConfigParser
* Add more words to a confusing error message
* Don't ignore data-files
* Change assertTrue(isinstance()) by optimal assert
* Fix handling of old git log output
* Fix typo in the index.rst
* Expose deb version to match exposing rpm version
* Replace OpenStack LLC with OpenStack Foundation
* Updated from global requirements
* Fix pypy soabi tests
* Add Python 3.5 classifier and venv
* Fix argument order for assertEqual to (expected, observed)
* Move to oslosphinx
* Updated from global requirements
* Restore warnerrors behavior and support Sphinx 1.4
* Updated from global requirements
* Updated from global requirements
* Updated from global requirements
* Fix pypy wsgi tests
* Remember the insertion order for pbr.json
testresources extends unittest with a clean and simple api to provide
test optimisation where expensive common resources are needed for
test cases - for example sample working trees for VCS systems,
reference databases for enterprise applications, or web servers ...
let your imagination run wild.
0.17.1 2017-03-01
IMPROVEMENTS
* Add basic 'dulwich pull' command. (Jelmer Vernooij)
BUG FIXES
* Cope with existing submodules during pull.
(Jelmer Vernooij, #505)
0.17.0 2017-03-01
TEST FIXES
* Skip test that requires sync to synchronize filesystems if os.sync is
not available. (Koen Martens)
IMPROVEMENTS
* Implement MemoryRepo.{set_description,get_description}.
(Jelmer Vernooij)
* Raise exception in Repo.stage() when absolute paths are
passed in. Allow passing in relative paths to
porcelain.add().(Jelmer Vernooij)
BUG FIXES
* Handle multi-line quoted values in config files.
(Jelmer Vernooij, #495)
* Allow porcelain.clone of repository without HEAD.
(Jelmer Vernooij, #501)
* Support passing tag ids to Walker()'s include argument.
(Jelmer Vernooij)
* Don't strip trailing newlines from extra headers.
(Nicolas Dandrimont)
* Set bufsize=0 for subprocess interaction with SSH client.
Fixes hangs on Python 3. (René Stern, #434)
* Don't drop first slash for SSH paths, except for those
starting with "~". (Jelmer Vernooij, René Stern, #463)
* Properly log off after retrieving just refs.
(Jelmer Vernooij)
1.302078 2017-03-01 15:24:12-08:00 America/Los_Angeles
- No changes since last trial
1.302077 2017-02-19 14:34:30-08:00 America/Los_Angeles (TRIAL RELEASE)
- Fix#762, newlines for todo subtest
- Revisit #637, fix rare race condition it created
1.302076 2017-02-01 19:38:42-08:00 America/Los_Angeles (TRIAL RELEASE)
- Fix crash when TB->reset used inside subtest
VERSION 6.58 2017-03-01 ^
Better support for $mode in DateCalc.
DateCalc (in DM6) did not support all values for $mode. Now it does.
Bug fixes
Parsing a date like 01/02/2016 and calling printf with %e gave '02' instead of ' 2'. RT 119787.
Fixed a problem where the tzdata method of determining the timezone was producing an error which wasn't correct. Reported on GitHub by John.
Time zone fixes
Newest zoneinfo data (tzdata 2017a)
This is a regularly-scheduled bugfix release.
Several incorrect mailing list addresses have been corrected.
Various error cases have been corrected during push and pull.
Minor issues that happened when Mercurial spawned worker processes have been fixed.
Overview of changes in GLib 2.50.3
==================================
* Bugs fixed:
775309 Crash in gdbusauth
775468 Improve log write supports color method on windows
775517 Password input is echoed in the terminal
775765 FDO notification withdrawal backend sends wrong ID to the server
* Translation updates:
Simplified Chinese
- Change to use ALTERNATIVES to avoid conflicts between Python versions.
Pylint 1.6.5
- Copyright and doc changes only
Pylint 1.6.4
- Recurse into all the ancestors when checking if an object is an
exception
Pylint 1.6.3
- Do not crash when inferring uninferable exception types for docparams
extension
Pylint 1.6.2
- Do not crash when printing the help of options with default regular
expressions
- More granular versions for deprecated modules.
- Do not crash in docparams when we can't infer the exception types.
Pylint is a Python source code analyzer which looks for
programming errors, helps enforcing a coding standard and sniffs
for some code smells (as defined in Martin Fowler's Refactoring
book).
isort is a Python utility / library to sort imports alphabetically,
and automatically separated into sections. It provides a command
line utility, Python library and plugins for various editors to
quickly sort all your imports.
This library brings the updated configparser from Python 3.5 to
Python 2.6-3.5. The ancient ConfigParser module available in
the standard library 2.x has seen a major update in Python 3.2.
2016-12-18 -- 1.4.9
- Cast __path__ to a list in _module_file
- Add support for pytest 3.0.
2016-07-27 -- 1.4.8
- Add `returns` into the proper order in FunctionDef._astroid_fields
2016-07-07 -- 1.4.7
- Stop saving assignment locals in ExceptHandlers, when the context is a
store.
2016-06-06 -- 1.4.6
- Fix a crash which occurred when the class of a namedtuple could not be
inferred.
- Functional form of enums support accessing values through __call__.
- Brain tips for the ssl library.
2016-03-21 -- 1.4.5
- decoratornames() does not leak InferenceError anymore.
- wildcard_imported_names() got replaced by _public_names()
2016-01-15 -- 1.4.4
- unpack_infer raises InferenceError if it can't operate
with the given sequences of nodes.
- Support accessing properties with super().
- Enforce strong updates per frames.
2015-12-24 -- 1.4.3
- pkg_resources brain tips are a bit more specific,
by specifiying proper returns.
- Standard library modules are properly detected by is_standard_module.
2015-12-21 -- 1.4.2
- The slots() method conflates all the slots from the ancestors
into a list of current and parent slots.
- Revert to using printf-style formatting in as_string, in order
to avoid a potential problem with encodings when using .format.
- assigned_stmts methods have the same signature from now on.
2015-11-29 -- 1.4.1
- Add support for handling Uninferable nodes when calling as_string
2015-11-29 -- 1.4.0
- Class.getattr('__mro__') returns the actual MRO.
- The logilab-common dependency is not needed anymore as the needed code
was integrated into astroid.
- Add 'assert_equals' method in nose.tools's brain plugin.
- Generated enum member stubs now support IntEnum and multiple
base classes.
- Add brain tips for multiprocessing.Manager and
multiprocessing.managers.SyncManager.
- Add brain tips for multiprocessing post Python 3.4+,
where the module level functions are retrieved with getattr
from a context object, leading to many no-member errors
in Pylint.
- The Generator objects inferred with `infer_call_result`
from functions have as parent the function from which they
are returned.
- Understand partially the 3-argument form of `type`.
The only change is that astroid understands members
passed in as dictionaries as the third argument.
- Improve the inference of Getattr nodes when dealing with
abstract properties from the abc module.
- UnboundMethod.getattr calls the getattr of its _proxied object
and doesn't call super(...) anymore.
- Don't hard fail when calling .mro() on a class which has
combined both newstyle and old style classes. The class
in question is actually newstyle (and the __mro__ can be
retrieved using Python).
- Class.local_attr and Class.local_attr_ancestors uses internally
a mro lookup, using .mro() method, if they can.
- Expose a implicit_metaclass() method in Class. This will return
a builtins.type instance for newstyle classes.
- Add two new exceptions for handling MRO error cases.
DuplicateBasesError
is emitted when duplicate bases are found in a class,
- Classes aren't marked as interfaces anymore, in the `type` attribute.
- Class.has_dynamic_getattr doesn't return True for special methods
which aren't implemented in pure Python, as it is the case for
extension modules.
- Add `igetattr` method to scoped_nodes.Function.
- Add support for Python 3.5's MatMul operation: see PEP 465 for more
details.
- NotImplemented is detected properly now as being part of the
builtins module. Previously trying to infer the Name(NotImplemented)
returned an YES object.
- Add proper grammatical names for `infered` and `ass_type` methods,
namely `inferred` and `assign_type`.
- Add new AST names in order to be similar to the ones
from the builtin ast module.
- Star unpacking in assignments returns properly a list,
not the individual components.
- Lambdas found at class level, which have a `self` argument, are
considered
- Add annotation support for function.as_string().
- Add support for indexing bytes on Python 3.
- Add support for inferring subscript on instances, which will
use __getitem__.
- Understand metaclasses added with six.add_metaclass decorator.
- Add a new convenience API, `astroid.parse`, which can be used to
retrieve an astroid AST from a source code string, similar to how
ast.parse can be used to obtain a Python AST from a source string.
- do_import_module passes the proper relative_only flag if the level is
higher than 1.
- There's a new separate step for transforms.
- Add a new node, DictUnpack, which is used to represent the unpacking
of a dictionary into another dictionary, using PEP 448 specific syntax
({1:2, **{2:3})
- Add a new type of node, called *inference objects*.
- Add a new *inference object* called Super, which also adds support for
understanding super calls.
- astroid.utils.ASTWalker and astroid.utils.LocalsVisitor
were moved to pylint.pyreverse.utils.
2015-08-02 -- 1.3.8
- Backport of 40e3176, which fixes issue #84.
2015-07-27 -- 1.3.7
- Improve the inference of six.moves, especially when using `from ...
import ...` syntax. Also, we added a new fail import hook for six.moves,
which fixes the import-error false positive from pylint.
Kafka is used for building real-time data pipelines and streaming
apps. It is horizontally scalable, fault-tolerant, wicked fast,
and runs in production in thousands of companies.
Notable changes follow.
Gradle 3.4
- Compile Avoidance. We've introduced a new mechanism for up-to-date
checking of Java compilation that is sensitive to public API changes
only.
- A stable incremental Java compiler.
- brand new Java Library Plugin. Use this when building a component
intended to be used as a dependency from another project.
- The JaCoCo plugin now allows you to enforce code coverage metrics and
fail the build if they're not met.
- The default version of JaCoCo used by the JaCoCo plugin has been
raised and the plugin is now Java 9-ready.
- The Checkstyle plugin now allows a maximum number of warnings or
errors to be configured.
https://docs.gradle.org/3.4/release-notes.html
Gradle 3.3
- This release of Gradle makes the gradle tasks report much faster for
medium-to-large projects.
- It is now possible to compile native applications using Visual Studio
2015.
- Kotlin build script support has further improved with significantly
faster startup performance, increased API parity with Groovy-based
build scripts, and better interoperability with Groovy plugins.
- Scala compilation startup time in large multi-project builds has been
improved through enhancements to Gradle's integration with the Zinc
Scala compiler.
- Tooling API generates more progress events.
- The Gradle GUI has been deprecated and will be removed in Gradle 4.0.
https://docs.gradle.org/3.3/release-notes.html
Gradle 3.2.1
- GRADLE-3582: Gradle wrapper fails to escape arguments with nested
quotes
- GRADLE-3583: Newlines in environment variables used by the wrapper
breaks application plugin shell script
Gradle 3.2
- Incremental build support, which now has better up-to-date checking
for Java compilation, copying, and archiving.
- The buildDependents task is now available in native builds as well via
new assembleDependents and buildDependents tasks.
- Significantly improved import times.
- Improved support for multi-project builds with Kotlin.
- The shortcut syntax for declaring tasks (via <<) has now been
deprecated.
https://docs.gradle.org/3.2/release-notes.html
Gradle 3.1
- Composite Builds for multi-project builds where not all projects are
in the same directory hierarchy.
- Incremental Build support.
- Faster dependency resolution.
- Build cancellation has improved when using the Daemon.
https://docs.gradle.org/3.1/release-notes.html
* Strip .git extension when registering vsch repositories.
Thanks, Don March
* Disable git pager when mr status runs git stash list.
* Added stow library. This lets dotfiles in repositories managed by mr
be symlinked into the home directory by GNU stow.
Thanks, Sean Whitton and Adam Spiers.
* cvs_status: do not fail when all files are up to date.
Thanks, Paul Wise.
* Added dgit plugin.
Thanks, Sean Whitton.
Fix test target.
4 tests failing, three due to pip not existing (we have pip3.6 et al.),
one because of ASCII locale.
v34.3.0
-------
* #941: In the upload command, if the username is blank,
default to ``getpass.getuser()``.
* #971: Correct distutils findall monkeypatch to match
appropriate versions (namely Python 3.4.6).
TortoiseHg 4.1
TortoiseHg is a regularly scheduled (quarterly) feature release, coinciding with Mercurial 4.1
Bug Fixes
cmdcore: fix PYTHONPATH to not include ''
revdetails: fix url/nodeid markup to not capture HTML escapes (fixes#4663)
Installer
Latest hgsubversion and evolve tags
Set LICENSE.
New in 2.11:
* Added support for catching stack overflow on Linux/SPARC.
* Provide a correct value for SIGSTKSZ on 64-bit AIX and on HP-UX. The one
defined by these systems is too small.
* Updated build infrastructure.
* Compilation now requires the <stdint.h> include file. Platforms which
don't have this include file (such as IRIX) are no longer supported.
* NOTE: Support for Cygwin and native Windows is currently not up-to-date.
New features and improvements:
* Documented the different cache statistics counters.
Bug fixes:
* Fixed a regression in ccache 3.3 related to potentially bad content of dependency files when compiling identical source code but with different source paths. This was only partially fixed in 3.3.2 and reverts the new “Names of included files are no longer included in the hash of the compiler’s preprocessed output” feature in 3.3.
* Corrected statistics counter for -optf/--options-file failure.
* Fixed undefined behavior warnings in ccache found by -fsanitize=undefined.
Fix a 1% performance regression when snappy is used in PIE executables.
Improve compression performance by 5%.
Improve decompression performance by 20%.
----------------------------------------------
v0.06 Mon Nov 14 13:28:16 EST 2016
- First version stored in Git. Adapt to "default_inc_excludes_dot" for
Perl 5.26
------------------------------------
1.06 2016-12-04 JSTOWE
- Fix for improper ordering of unexpected escapes from ruittenb@cpan.org
- Use direct object notation for Term::Cap constructor
-------------------------------------
0.0026 Sun Jan 08 12:40 PT 2017
- fix t/20expect_quit.t when TERM is not set
0.0025 Sat Jan 07 11:59 PT 2017
- requires version 0.77
- requires Getopt::Long 2.43 – bundling_values
0.0024 Fri Jan 06 2017
- every statement is now evalued by default
with the current perl version running the shell
- new shell command :set perl_version <version>
- change in CLI options: case-sensitivity & no auto abbreviations
- pirl -I dir1 -Idir2
- drop File::Slurp as a prereq
----------------------------------------
0.375 2017-01-08
- Abort installation if using newer (incompatible) Test::More.
Thanks to Alexandr Ciornii for the pull request (gh-5).
Prompted by https://repology.org.
Changes since 1.3:
* GH#82: Lua coroutines were using the wrong runtime state (patch
by Sergey Dobrov)
* GH#81: copy locally provided Lua DLL into installed package on
Windows (patch by Gareth Coles)
* built with Cython 0.25.2
======================
Backward compatibility notes.
* Use of an empty string that is used for 'everything matches' is
still warned and Git asks users to use a more explicit '.' for that
instead. The hope is that existing users will not mind this
change, and eventually the warning can be turned into a hard error,
upgrading the deprecation into removal of this (mis)feature. That
is not scheduled to happen in the upcoming release (yet).
* The historical argument order "git merge <msg> HEAD <commit>..."
has been deprecated for quite some time, and will be removed in a
future release.
* An ancient script "git relink" has been removed.
Updates since v2.11
-------------------
UI, Workflows & Features
* Various updates to "git p4".
* "git p4" didn't interact with the internal of .git directory
correctly in the modern "git-worktree"-enabled world.
* "git branch --list" and friends learned "--ignore-case" option to
optionally sort branches and tags case insensitively.
* In addition to %(subject), %(body), "log --pretty=format:..."
learned a new placeholder %(trailers).
* "git rebase" learned "--quit" option, which allows a user to
remove the metadata left by an earlier "git rebase" that was
manually aborted without using "git rebase --abort".
* "git clone --reference $there --recurse-submodules $super" has been
taught to guess repositories usable as references for submodules of
$super that are embedded in $there while making a clone of the
superproject borrow objects from $there; extend the mechanism to
also allow submodules of these submodules to borrow repositories
embedded in these clones of the submodules embedded in the clone of
the superproject.
* Porcelain scripts written in Perl are getting internationalized.
* "git merge --continue" has been added as a synonym to "git commit"
to conclude a merge that has stopped due to conflicts.
* Finer-grained control of what protocols are allowed for transports
during clone/fetch/push have been enabled via a new configuration
mechanism.
* "git shortlog" learned "--committer" option to group commits by
committer, instead of author.
* GitLFS integration with "git p4" has been updated.
* The isatty() emulation for Windows has been updated to eradicate
the previous hack that depended on internals of (older) MSVC
runtime.
* Some platforms no longer understand "latin-1" that is still seen in
the wild in e-mail headers; replace them with "iso-8859-1" that is
more widely known when conversion fails from/to it.
* "git grep" has been taught to optionally recurse into submodules.
* "git rm" used to refuse to remove a submodule when it has its own
git repository embedded in its working tree. It learned to move
the repository away to $GIT_DIR/modules/ of the superproject
instead, and allow the submodule to be deleted (as long as there
will be no loss of local modifications, that is).
* A recent updates to "git p4" was not usable for older p4 but it
could be made to work with minimum changes. Do so.
* "git diff" learned diff.interHunkContext configuration variable
that gives the default value for its --inter-hunk-context option.
* The prereleaseSuffix feature of version comparison that is used in
"git tag -l" did not correctly when two or more prereleases for the
same release were present (e.g. when 2.0, 2.0-beta1, and 2.0-beta2
are there and the code needs to compare 2.0-beta1 and 2.0-beta2).
* "git submodule push" learned "--recurse-submodules=only option to
push submodules out without pushing the top-level superproject.
* "git tag" and "git verify-tag" learned to put GPG verification
status in their "--format=<placeholders>" output format.
* An ancient repository conversion tool left in contrib/ has been
removed.
* "git show-ref HEAD" used with "--verify" because the user is not
interested in seeing refs/remotes/origin/HEAD, and used with
"--head" because the user does not want HEAD to be filtered out,
i.e. "git show-ref --head --verify HEAD", did not work as expected.
* "git submodule add" used to be confused and refused to add a
locally created repository; users can now use "--force" option
to add them.
(merge 619acfc78c sb/submodule-add-force later to maint).
* Some people feel the default set of colors used by "git log --graph"
rather limiting. A mechanism to customize the set of colors has
been introduced.
* "git read-tree" and its underlying unpack_trees() machinery learned
to report problematic paths prefixed with the --super-prefix option.
* When a submodule "A", which has another submodule "B" nested within
it, is "absorbed" into the top-level superproject, the inner
submodule "B" used to be left in a strange state. The logic to
adjust the .git pointers in these submodules has been corrected.
* The user can specify a custom update method that is run when
"submodule update" updates an already checked out submodule. This
was ignored when checking the submodule out for the first time and
we instead always just checked out the commit that is bound to the
path in the superproject's index.
* The command line completion (in contrib/) learned that
"git diff --submodule=" can take "diff" as a recently added option.
* The "core.logAllRefUpdates" that used to be boolean has been
enhanced to take 'always' as well, to record ref updates to refs
other than the ones that are expected to be updated (i.e. branches,
remote-tracking branches and notes).
* Comes with more command line completion (in contrib/) for recently
introduced options.
ISO 639 is a set of standards for representation of names for languages.
This package supports ISO639-1, ISO 639-2, ISO 639-3, ISO 639-5 and aimed
to be fully compatible with pycountry.languages v1.11 and before.
ISO 3166-1 defines two-letter, three-letter, and three-digit country codes.
py-iso3166 is a self-contained module that converts between these codes and
the corresponding country name.
testscenarios provides clean dependency injection for python unittest
style tests. This can be used for interface testing (testing many
implementations via a single test suite) or for classic dependency
injection (provide tests with dependencies externally to the test
code itself, allowing easy testing in different situations).
2.2.0
~~~~~
Improvements
------------
* Twisted support code uses ``inlineCallbacks`` rather than the deprecated
``deferredGenerator``. (Tristan Seligmann)
2.1.0
~~~~~
Improvements
------------
* ``TestResult`` objects that don't implement ``stop``/``shouldStop`` are now
handled sanely. (Jonathan Lange)
* New ``Always`` and ``Never`` matchers. (Tristan Seligmann, #947026)
* Fixed example in ``failed`` docstring. (Jonathan Lange, Github #208)
* Rather than explicitly raising a ``KeyboardInterrupt`` if we get no result
from a ``Deferred``, we tell the test result to stop running tests and
report the lack of result as a test error. This ought to make weird
concurrency interaction bugs easier to understand. (Jonathan Lange)
* Introduce the unique_text_generator generator function. Similar to the
getUniqueString() method, except it creates unique unicode text strings.
(Brant Knudson)
* Previously, when gathering details caused by a setUp() failure,
a traceback occurred if the fixture used the newer _setUp().
This had the side effect of not clearing up fixtures nor gathering details
properly. This is now fixed. (Julian Edwards, #1469759)
* New ``Warnings`` matcher, and ``WarningMessage`` and ``IsDeprecated``
functions for matching emitted warnings. (Jonathan Jacobs, Github #223)
2.0.0
~~~~~
Just a few tweaks to our Twisted support. Major version bump to indicate that
Python 2.6 & 3.2 are no longer supported.
Changes
-------
* ``AsynchronousDeferredRunTest`` now has ``suppress_twisted_logging`` and
``store_twisted_logs`` parameters that can be used to override the default
logging behaviour. (Jonathan Lange, #942785)
* New fixture ``CaptureTwistedLogs`` that can be used with
``AsynchronousDeferredRunTest`` to attach a detail containing everything
logged to Twisted during the test run. (Jonathan Lange, #1515362)
* Python 2.6 and 3.2 are no longer supported. If you want to use either of
these versions of Python, use testtools 1.9.0. (Jonathan Lange)
* Make ``fixtures`` a real dependency, not just a test dependency.
(Jonathan Lange)
1.9.0
~~~~~
Many new fixes in this branch, including lots of work around Twisted support.
This is the first release that explicitly supports Python 3.5 and the last
release that supports Python 2.6 or 3.2.
Thanks to all who contributed!
Improvements
------------
* Python 3.5 added to the list of supported platforms. (Jonathan Lange)
* ``MatchesListwise`` has more informative error when lengths don't match.
(Jonathan Lange)
* The short form of errors for failed binary comparisions will now put the
expected value on the _right_. This means that ``assertThat(2, Equals(3))``
will raise an error saying ``2 != 3``.
(Jonathan Lange, #1525227)
* Tests for ``assertRaisesRegexp``. (Julia Varlamova, Jonathan Lange)
* Tests that customize ``skipException`` no longer get tracebacks for skipped
tests. (Jonathan Lange, #1518101)
* A failing ``expectThat`` now fails tests run with
``AsynchronousDeferredRunTest``. (Jonathan Lange, #1532452)
* New ``testtools.twistedsupport`` package that collects all of our Twisted
support code in one place, including that currently available under
``testtools.deferredruntest``. (Jonathan Lange)
* New matchers for testing ``Deferred`` code: ``failed``, ``succeeded``, and
``has_no_result``. (Jonathan Lange, Tristan Seligmann, #1369134)
* ``TestCase`` objects can now be run twice. All internal state is reset
between runs. In particular, testtools tests can now be run with
``trial -u``. (Jonathan Lange, #1517879)
* Fixed bug where if an asynchronous ``Deferred`` test times out but the
``Deferred`` then fires, the entire test run would abort with
``KeyboardInterrupt``, failing the currently running test.
(Jonathan Lange, James Westby)
Changes
-------
* Add a new test dependency of testscenarios. (Robert Collins)
* Make ``fixtures`` a real dependency, not just a test dependency.
(Jonathan Lange)
* ``run_with_log_observers`` is deprecated.
* ``addCleanup`` can now only be called within a test run.
(Jonathan Lange)
* ``TestCase.skip`` deprecated. Use ``skipTest`` instead.
(Jonathan Lange, #988893)
* Getting ``expected`` or ``observed`` attributes from binary comparison
mismatches (e.g. ``Equals(2).match(3).expected``) is now deprecated.
(Jonathan Lange)
* Last release of testtools to support Python 3.2. (Jonathan Lange)
* Last release of testtools to support Python 2.6. (Jonathan Lange)
* Report on all duplicate test ids when sorting test suites that contain
duplicate ids. (Thomas Bechtold, Jonathan Lange, #1390082)
* Add ``readthedocs-requirements.txt`` so readthedocs.org can build the
Twisted API documentation. (Jonathan Lange)
1.8.1
~~~~~
Improvements
------------
* Documented more explicitly how to build and install testtools in the hacking
documentation. (Thomi Richards)
* ``deferredruntest`` now works with Twisted 15.1.0 and later.
(Colin Watson, #1488710)
1.8.0
~~~~~
Improvements
------------
* AsynchronousDeferredRunTest now correctly attaches the test log.
Previously it attached an empty file. (Colin Watson)
1.7.1
~~~~~
Improvements
------------
* Building a wheel on Python 3 was missing ``_compat2x.py`` needed for Python2.
This was a side effect of the fix to bug #941958, where we fixed a cosmetic
error. (Robert Collins, #1430534)
* During reporting in ``TextTestResult`` now always uses ``ceil`` rather than
depending on the undefined rounding behaviour in string formatting.
(Robert Collins)
1.7.0
~~~~~
Improvements
------------
* Empty attachments to tests were triggering a file payload of None in the
``ExtendedToStreamDecorator`` code, which caused multiple copies of
attachments that had been output prior to the empty one.
(Robert Collins, #1378609)
1.6.1
~~~~~
Changes
-------
* Fix installing when ``extras`` is not already installed. Our guards
for the absence of unittest2 were not sufficient.
(Robert Collins, #1430076)
1.6.0
~~~~~
Improvements
------------
* ``testtools.run`` now accepts ``--locals`` to show local variables
in tracebacks, which can be a significant aid in debugging. In doing
so we've removed the code reimplementing linecache and traceback by
using the new traceback2 and linecache2 packages.
(Robert Collins, github #111)
Changes
-------
* ``testtools`` now depends on ``unittest2`` 1.0.0 which brings in a dependency
on ``traceback2`` and via it ``linecache2``. (Robert Collins)
Fixtures defines a Python contract for reusable state / support
logic, primarily for unit testing. Helper and adaption logic is
included to make it easy to write your own fixtures using the
fixtures contract. Glue code is provided that makes using fixtures
that meet the Fixtures contract in unittest compatible test cases
easy and straight forward.
txaio is a helper library for writing code that runs unmodified on
both Twisted and asyncio / Trollius.
This is like six, but for wrapping over differences between Twisted
and asyncio so one can write code that runs unmodified on both (aka
source code compatibility). In other words: your users can choose
if they want asyncio or Twisted as a dependency.
Note that, with this approach, user code runs under the native event
loop of either Twisted or asyncio. This is different from attaching
either one's event loop to the other using some event loop adapter.
----------------------------------------
version 1.48 at 2017-02-12 18:32:39 +0000
-----------------------------------------
Date : 2017-02-12 18:32:39 +0000
Updated hints
Date : 2017-02-12 14:29:34 +0000
Patch Time::HiRes in 5.24.[01] (#26)
Time::HiRes is broken on threaded darwin in 5.24.0 and 5.24.1. This
patch brings in changes from blead that fix it. The patch is
unfortunately large, as untangling just the compilation fix from
other changes and still getting tests to pass wasn't straightforward.
scandir() is a directory iteration function like os.listdir(),
except that instead of returning a list of bare filenames, it yields
DirEntry objects that include file type and stat information along
with the name. Using scandir() increases the speed of os.walk() by
2-20 times (depending on the platform and file system) by avoiding
unnecessary calls to os.stat() in most cases.
--------------------------------------------
2.074 19 Feb 2017
* Fix bad 2.073 release
2.072 4 Feb 2017
* Makefile.PL
#120084: Need Fix for Makefile.PL depending on . in @INC
The goal of pathlib2 is to provide a backport of standard pathlib
module which tracks the standard library module, so all the newest
features of the standard pathlib can be used also on older Python
versions.
-----------------------------------
0.9164 Thu Feb 16 12:05:02 GMT 2017
* Set env var PERL_USE_UNSAFE_INC if required [rt.cpan.org #120227]
* Handle @INC without 'dot' scenario in Makefile.PL
* Fixed versiononly process for scripts to only run for when we were in core
Add test target.
Changes in version 0.21
***********************
Released on October 23rd, 2014.
* Restored the atf(7) manual page to serve as a reference to all the other
manual pages shipped by ATF.
* Added the -s flag to atf-sh to support specifying the shell interpreter
to be used.
* Removed ATF_WORKDIR. The only remaining consumers have been converted to
use the standard TMPDIR environment variable. As a benefit, and because
Kyua forces the TMPDIR to live within the test case's work directory,
any stale files left behind by ATF will be automatically cleaned up.
* Documented the environment variables recognized by each component in the
relevant manual pages. This information was lost with the atf-config(1)
removal.
* Added a new "require.diskspace" metadata property to test cases so that
they can specify the minimum amount of disk space required for the test
to run.
* Renamed the atf-{c,c++,sh}-api(3) manual pages to atf-{c,c++,sh}(3) for
discoverability purposes. Symbolic links are provided for the time
being to still make the old names visible.
* Issue #5: Recommend the (expected, actual) idiom for calls to the test
macros in the manual pages.
* Issue #7: Stopped catching unhandled exceptions in atf-c++ tests. This
propagates the crash to the caller, which in turn allows it to obtain
proper debugging information. In particular, Kyua should now be able to
extract a stacktrace pinpointing the problem.
* Issue #8: Fixed atf-c/macros_test:use test failures spotted by the clang
that ships with FreeBSD 11.0-CURRENT.
* Issue #12: Improved documentation of atf-sh(3) and atf-check(1) by better
explaining how they relate to each other.
* Issue #14: Stopped setting 'set -e' in atf-sh. This setting was
initially added as a way to enable a "strict" mode in the library and to
make test cases fail fast when they run unprotected commands. However,
doing so in the library is surprising as the responsibility of enabling
'set -e' should be on the user's code. Also, 'set -e' introduces
inconsistent behavior on subshells and users do not expect that.
* Issue #15: Fixed atf_utils_{fork,wait} to support nested calls.
* Issue #16: Fixed test failures (by removing a long-standing hack) on
systems that lack \e support in printf(1).
* Issue #19: Removed stale references to atf-config and atf-run.
0.36 2017-02-19
- Inlined coercions would attempt to coerce for every type which matched the
value given, instead of stopping after the first type. Fixed by Graham Knop
(GH #11).
- Inlined coercions did not include the inline environment variables needed by
the type from which the coercion was being performed. Fixed by Graham Knop
(GH #8).
- When you use the same type repeatedly as coderef (for example, as a
constraint with Moo), it will only generated its subified form once, rather
than regenerating it each time it is de-referenced.
- Added an API to Specio::Subs to allow you to combine type libraries and
helper subs in one package for exporting. See the Specio::Exporter docs for
more details.
2016-12-18 meld 3.17.0
======================
Python 3 porting:
* Python 3 support; we now require Python 3.3 as a minimum
* Python 3 compatibility fixes; too many cases of bytes/string confusion,
syntax changes and other miscellany to mention individually (Vasily
Galkin, Kai Willadsen)
* Handle new unicode-escape behaviour and unicode/bytes confusion for
process interaction and version control plugins (Vasily Galkin, Kai
Willadsen)
* Add support for byte-based filters, to support directory vs. file
comparison filters (Kai Willadsen)
UI changes:
* The "Tabs" menu item has been removed, to better match up with more
modern GTK+ design. All of the actions are still available in the
expected key bindings, and there is a new per-tab context menu.
* The change action buttons in the central pane divider now correctly
render as flat buttons (Kai Willadsen)
* The curves in the central pane divider are now... smoother!
Internal changes:
* Handle reload notifications better in asynchronous saving (Vasily Galkin)
* Remove multi-process diff in favour of asynchronous (threaded, but
GIL-throttled) matching (Kai Willadsen)
* Performance improvements in rendering of multiple widgets, as well as for
initial text comparison (Kai Willadsen)
* Many updates for GTK+ 3.20 and 3.22 ABI changes (Kai Willadsen)
* NOTE: Windows support is currently untested
Fixes:
* Update supported version control list (Kai Willadsen)
* Update requirements and build requirements lists (Kai Willadsen)
* Don't create empty help/figures directories (Kai Willadsen)
* Translation maintenance (Piotr Drąg)
v34.2.0
-------
* #966: Add support for reading dist-info metadata and
thus locating Distributions from zip files.
* #968: Allow '+' and '!' in egg fragments
so that it can take package names that contain
PEP 440 conforming version specifiers.
0.7.1 -- 2017-02-13
-------------------
Fixed Bugs
~~~~~~~~~~
- Fixed monkey-patching for the AppEngineAdapter.
- Make it easier to disable certificate verification when monkey-patching
AppEngine.
- Handle ``multipart/form-data`` bodies without a trailing ``CRLF``.
Version 10.23 14-February-2017
------------------------------
1. ChangeLog has the details of a lot of bug fixes and tidies.
2. There has been a major re-factoring of the pcre2_compile.c file. Most syntax
checking is now done in the pre-pass that identifies capturing groups. This has
reduced the amount of duplication and made the code tidier. While doing this,
some minor bugs and Perl incompatibilities were fixed (see ChangeLog for
details.)
3. Back references are now permitted in lookbehind assertions when there are
no duplicated group numbers (that is, (?| has not been used), and, if the
reference is by name, there is only one group of that name. The referenced
group must, of course be of fixed length.
4. \g{+<number>} (e.g. \g{+2} ) is now supported. It is a "forward back
reference" and can be useful in repetitions (compare \g{-<number>} ). Perl does
not recognize this syntax.
5. pcre2grep now automatically expands its buffer up to a maximum set by
--max-buffer-size.
6. The -t option (grand total) has been added to pcre2grep.
7. A new function called pcre2_code_copy_with_tables() exists to copy a
compiled pattern along with a private copy of the character tables that is
uses.
8. A user supplied a number of patches to upgrade pcre2grep under Windows and
tidy the code.
9. Several updates have been made to pcre2test and test scripts (see
ChangeLog).
Typing defines a standard notation for Python function and variable
type annotations. The notation can be used for documenting code in
a concise, standard format, and it has been designed to also be
used by static and runtime type checkers, static analyzers, IDEs
and other tools.
This is a backport of the standard library typing module to Python
versions older than 3.5.
2017-02-14 k <andk@cpan.org>
* release 2.16
* four weeks after the TRIAL2 release cpantesters have produced
392 pass and 5 fail; by my estimation the fails are two bugs in
the test suite: (1) insufficient rubustness against make -j and
(2) insufficient robustness against missing unzip program; both
will be targeted at a later date
* otherwise no functional change; only changes in the distroprefs/
directory (which is not used per default) and minor changes to
Makefile.PL and t/97*.t
2017-01-16 k <andk@cpan.org>
* release 2.16-TRIAL2
* release 2.16-TRIAL (had a broken manifest/signature file)
* Adjust test 97-return_values.t to survive the removal of "."
from @INC (Andreas Koenig)
* Bugfix: fix wrong method call on $logger (Simon Legner)
* Bugfix: protect version dependencies with eval to survive
requirements like "2.08a" (Andreas Koenig)
* Bugfix #47934: honour version requirement with "==" (Andreas
Koenig)
* partially address #82295: improve diagnostics (Andreas Koenig)
* introduce new config variable cleanup_after_install: helps
keeping build directory small (Andreas Koenig)
* adopting changes from bleadperl related to removal of "." from
@INC (Tony Cook)
* distroprefs minor updates
2016-07-17 k <andk@cpan.org>
* release 2.15-TRIAL
* bugfix #115734 App::Cpan Installing from cwd broken (Boutros Lab
Software, Andreas Koenig)
* bugfix #115786 App::Cpan Can't locate object method "inst_file" via
package "AAA::Demo" (dmitryb, Andreas Koenig)
* bugfix #115340 recursive dependencies (Father Chrysostomos, Andreas Koenig)
* bugfix #110833 ftp proxy (Father Chrysostomos, Andreas Koenig)
* distroprefs a handful of updates
----------------------------------------
version 0.22 at 2017-02-17 19:58:46 +0000
- Switch to using my plugin bundle. No functional changes
version 0.20 at 2017-02-17 19:48:24 +0000
- Actually pass the bundle arg to the distini generator
version 0.18 at 2017-02-17 17:41:28 +0000
- Added bundle parameter
- dzooky --bundle BINGOS
- Use the BINGOS plugin bundle instead of the default dist.ini
----------------------------------------------------------------------
Define DBREG_DRX when it's undefined to:
#define DBREG_DRX(d,x) ((d)->dr[(x)])
This has been copied from FreeBSD:
/usr/include/x86/reg.h:#define DBREG_DRX(d,x) ((d)->dr[(x)])
No functional change for existing operating systems.
Sponsored by <The NetBSD Foundation>
**Released on 2017-02-17.**
* This is the first release with fixes for and confirmed to work with all
of bash, dash, pdksh, and zsh. We now have continuous integration runs
for all these interpreters to ensure that this holds true in future
releases.
* Added the `shtk_abort` function to terminate a script on fatal internal
errors.
* Added the `shtk_cli_debug` function to log debug-level messages.
* Added the `shtk_cli_log_level` and `shtk_cli_set_log_level` functions to
query and set the maximum log level.
* Added the `shtk_fs` module with the `shtk_fs_join_paths` and
`shtk_fs_normalize_path` functions.
* Added the `shtk_hw` module with the `shtk_hw_ncpus` function.
* Fixed option parsing to detect missing arguments to options.
* Fixed pattern matching in `shtk_list_filter` so that it supports
alternative branches.
0.35 2017-02-12
- Added Specio::Subs, a module which allows you to turn one or more library's
types into subroutines like is_Int() and to_Int().
- Added an inline_coercion method to Specio constraints.
Add -o modern switches to -h
metadump: Fix preventing dumping of class 63
Fix cache_memlimit bug for > 4G values
metadump: ensure buffer is flushed to client before finishing
Number of small fixes/additions to new logging
add logging endpoint for LRU crawler
evicted_active counter for LRU maintainer
stop pushing NULL byte into watcher stream
Scale item hash locks more with more worker threads (minor performance)
Further increase systemd service hardening
Missing necessary header for atomic_inc_64_nv() used in logger.c (solaris)
Fix print format for idle timeout thread
Improve binary sasl security fixes
Fix clang compile error
Widen systemd caps to allow maxconns to increase
Add -X option to disable cachedump/metadump
Don't double free in lru_crawler on closed clients
Fix segfault if metadump client goes away
bufferevent_openssl_filter_new(). vagrant fixes, some build fixes, increased
timeout for some tests (to reduce number of failures due to timing issues),
date in RFC1123 format and running tests in parallel.
Fix preprocessor errors, especially %error and %warning, inside %if statements.
Fix relative relocations in 32-bit Mach-O.
More Codeview debug format fixes.
If the MASM PTR keyword is encountered, issue a warning. This is much more likely to indicate a MASM-ism encountered in NASM than it is a valid label. This warning can be suppressed with -w-ptr, the [warning] directive (see section 2.1.24) or by the macro definition %idefine ptr %??.
When an error or a warning comes from the expansion of a multi-line macro, display the file and line numbers for the expanded macros. Macros defined with .nolist do not get displayed.
Add macros ilog2fw() and ilog2cw() to the ifunc macro package.
Dispatcher mechanism for creating event models
PyDispatcher is an enhanced version of Patrick K. O'Brien's original
dispatcher.py module. It provides the Python programmer with a robust mechanism
for event routing within various application contexts.
Included in the package are the robustapply and saferef modules, which provide
the ability to selectively apply arguments to callable objects and to reference
instance methods using weak-references.
Queuelib is a collection of persistent (disk-based) queues for Python.
Queuelib goals are speed and simplicity. It was originally part of the Scrapy
framework and stripped out on its own library.
* Attributes now can have user-defined metadata which greatly improves attrs‘s extensibility.
* Allow for a __attrs_post_init__ method that – if defined – will get called at the end of the attrs-generated __init__ method.
* Add @attr.s(str=True) that will optionally create a __str__ method that is identical to __repr__. This is mainly useful with Exceptions and other classes that rely on a useful __str__ implementation but overwrite the default one through a poor own one. Default Python class behavior is to use __repr__ as __str__ anyways.
If you tried using attrs with Exceptions and were puzzled by the tracebacks: this option is for you.
* Don’t overwrite __name__ with __qualname__ for attr.s(slots=True) classes.
librelp is a core protocol library for RELP, the "reliable event
logging protocol". It was created to provide ultra-reliable
delivery of syslog messages and is quite good at that.
* Approximately 25% better performance from the R-Tree extension.
* Uses compiler built-ins (ex: __builtin_bswap32() or _byteswap_ulong()) for byteswapping when available.
* Uses the sqlite3_blob key/value access object instead of SQL for pulling content out of R-Tree nodes
* Other miscellaneous enhancements such as loop unrolling.
* Add the SQLITE_DEFAULT_LOOKASIDE compile-time option.
* Increase the default lookaside size from 512,125 to 1200,100 as this provides better performance while only adding 56KB of extra memory per connection. Memory-sensitive applications can restore the old default at compile-time, start-time, or run-time.
* Use compiler built-ins __builtin_sub_overflow(), __builtin_add_overflow(), and __builtin_mul_overflow() when available. (All compiler built-ins can be omitted with the SQLITE_DISABLE_INTRINSIC compile-time option.)
* Added the SQLITE_ENABLE_NULL_TRIM compile-time option, which can result in significantly smaller database files for some applications, at the risk of being incompatible with older versions of SQLite.
* Change SQLITE_DEFAULT_PCACHE_INITSZ from 100 to 20, for improved performance.
* Added the SQLITE_UINT64_TYPE compile-time option as an analog to SQLITE_INT64_TYPE.
* Perform some UPDATE operations in a single pass instead of in two passes.
* Enhance the session extension to support WITHOUT ROWID tables.
* Fixed performance problems and potential stack overflows when creating views from multi-row VALUES clauses with hundreds of thousands of rows.
* Added the sha1.c extension.
* In the command-line shell, enhance the ".mode" command so that it restores the default column and row separators for modes "line", "list", "column", and "tcl".
* Enhance the SQLITE_DIRECT_OVERFLOW_READ option so that it works in WAL mode as long as the pages being read are not in the WAL file.
* Enhance the LEMON parser generator so that it can store the parser object as a stack variable rather than allocating space from the heap and make use of that enhancement in the amalgamation.
* Other performance improvements. Uses about 6.5% fewer CPU cycles.
Bug Fixes:
* Throw an error if the ON clause of a LEFT JOIN references tables to the right of the ON clause. This is the same behavior as PostgreSQL. Formerly, SQLite silently converted the LEFT JOIN into an INNER JOIN.
* Use the correct affinity for columns of automatic indexes.
* Ensure that the sqlite3_blob_reopen() interface can correctly handle short rows.
------------------------------------------
0.27 2017-01-30
- Inflating File::ChangeNotify::Default::Watcher into a Moose object with
Moose 2.2000 would cause an error or warning because of a bug in how it
defined an attribute. This broke Catalyst::Restarter.
(pkgsrc changes)
- Drop following line, see above
DEPENDS+= p5-Moose>=2:../../devel/p5-Moose
- Add following lines for make test
BUILD_DEPENDS+= p5-Moo-[0-9]*:../../devel/p5-Moo
BUILD_DEPENDS+= p5-Test-Requires-[0-9]*:../../devel/p5-Test-Requires
BUILD_DEPENDS+= p5-Test-Exception-[0-9]*:../../devel/p5-Test-Exception
BUILD_DEPENDS+= p5-Module-Pluggable-[0-9]*:../../devel/p5-Module-Pluggable
------------------------------------------
0.3.2 2017-01-13
- Made the version number consistent across the .pm files.
- https://bitbucket.org/shlomif/perl-file-find-object/issues/1/wrong-version-number
- Thanks to aer0 for the report.
0.3.1 2017-01-09
- Fixed an issue with tracking the depth of the inodes when detecting
a symlink loop.
- Detected by several cygwin reports.
-----------------------------------------------------
1.03 - 2017-01-20
- Add Moo to Build requirements (wpmoore/mendoza)
- Improve POD (meAmidos)
- Simplify type constraint tests by making use of subtype (meAmidos)
---------------------------------------
0.10 Fri Feb 10 21:25:41 EST 2017
Move into git for version control. Establish github.com repository.
In restore_subhome_directory_status(), die rather than simply warning
when a directory or file can not be found for removal. More use of
catdir and catfile to compose paths.
----------------------------------------------------
Overview of changes in Glib::Object::Introspection 0.042
========================================================
* perli11ndoc: put special classes and records into their own category
* perli11ndoc: list functions of enums and bitfields
* perli11ndoc: fix the synopsis formatting for class struct functions
* perli11ndoc: correctly display array and callback parameters/return
values/fields
* Fix "occuring" typo in POD (Bugzilla #775169)
------------------------------------------------
1.23 Thu Feb 09 2017
- Issue a warning if the lockfile cannot be opened (Thanks KGOESS)
[#63544]
- Fix POD typo (Thanks Anirvan Chatterjee)
(pkgsrc changes)
- Add LICENSE as ${PERL5_LICENSE}
- Add BUILD_DEPENDS+= p5-Test-Warn-[0-9]*
Upstream changes:
version 1.19: Thu 9 Feb 17:35:43 CET 2017
Fixes:
- Dancer2 change when a stack-level needs to be skipped for
reporting the location of the exception [Andrew Beverley]
- more modules optional during Dancer2 tests
Improvements:
- Dancer2 interface changes [Andrew Beverley]
- spell fixes. rt.cpan.org#118561 [Gregor Herrmann, Debian]
- spell fixes. rt.cpan.org#118562 [Gregor Herrmann, Debian]
- free format calls in ::File and ::Syslog get additional info, which
can be used in line formatting.
- Use Dancer2::Logger::LogReport without Dancer2::Plugin::LogReport
[Andrew Beverley]
Upstream changes:
3.3.0 -- 2017-02-06
You can view the 3.3.0 milestone on GitLab for more details.
Add support for Python 3.6 (via dependencies). Note Flake8 does not
guarantee that all plugins will support Python 3.6.
Added unique error codes for all missing PyFlakes messages. (14 new
codes, see "Error / Violation Codes")
Dramatically improve the performance of Flake8. (See also GitLab!156)
Display the local file path instead of the temporary file path when
using the git hook. (See also GitLab#244)
Add methods to Report class that will be called when Flake8 starts and
finishes processing a file. (See also GitLab#251)
Fix problem where hooks should only check *.py files. (See also
GitLab#268)
Fix handling of SyntaxErrors that do not include physical line information.
(See also GitLab#279)
Update upper bound on PyFlakes to allow for PyFlakes 1.5.0. (See also
GitLab#290)
Update setuptools integration to less eagerly deduplicate packages.
(See also GitLab#295)
Force flake8 --version to be repeatable between invocations. (See also
GitLab#297)
Upstream changes:
1.5.0 (2017-01-09)
- Enable support for PEP 526 annotated assignments
1.4.0 (2016-12-30):
- Change formatting of ImportStarMessage to be consistent with other errors
- Support PEP 498 "f-strings"
METHODS
- new
Constructor. Can pass either the binary or string representation of the SID.
- as_string
Returns string representation of SID.
- as_binary
Returns binary representation of SID.
Changelog:
Notable Changes:
================
* Fixed a NSS 3.28 regression in the signature scheme flexibility that
causes connectivity issues between iOS 8 clients and NSS servers with ECDSA
certificates (bug1334114
<https://bugzilla.mozilla.org/show_bug.cgi?id=1334114>).
Radamsa is a test case generator for robustness testing, a.k.a. a fuzzer. It is
typically used to test how well a program can withstand malformed and
potentially malicious inputs. It works by reading sample files of valid data
and generating interestringly different outputs from them. The main selling
points of radamsa are that it has already found a slew of bugs in programs that
actually matter, it is easily scriptable and easy to get up and running.
---------------------------------
3.41: 2016-02-10::
Fix fatal error in reposurgeon version command (introduced in 3.40).
In repocutter, the pathrename command now hacks svn:mergeinfo properties.
'split' adds a ".split" suffix to any legacy ID in the new commit.
More control over prefix stripping in the "path sup" command.
Add --notagify option to expunge command.
Repair implementation of "split at".
Add "tag create" command.
0.14 2017-02-07
- Re-release after git pull of some changes.
0.13 2017-02-07
- The docs for the subs from List::UtilsBy were repeated twice. Reported by
Andy Lester. RT #120123.
- Added a TAP source-handler for Cucumber files, should also
allow for parallelization
- Table and PyString interpolation fixes @ eheulsmann
- Localization examples for Spanish @ Gonzalo Barco
- Doc Typos fixed @ Grant McLean
- Fixed up JSON output @ Tomas Pokorny
v34.1.1
-------
* #953: More aggressively employ the compatibility issue
originally added in #706.
v34.1.0
-------
* #930: ``build_info`` now accepts two new parameters
to optimize and customize the building of C libraries.
v34.0.3
-------
* #947: Loosen restriction on the version of six required,
restoring compatibility with environments relying on
six 1.6.0 and later.
v34.0.2
-------
* #882: Ensure extras are honored when building the
working set.
* #913: Fix issue in develop if package directory has
a trailing slash.
v34.0.1
-------
* #935: Fix glob syntax in graft.
v34.0.0
-------
* #581: Instead of vendoring the growing list of
dependencies that Setuptools requires to function,
Setuptools now requires these dependencies just like
any other project. Unlike other projects, however,
Setuptools cannot rely on ``setup_requires`` to
demand the dependencies it needs to install because
its own machinery would be necessary to pull those
dependencies if not present (a bootstrapping problem).
As a result, Setuptools no longer supports self upgrade or
installation in the general case. Instead, users are
directed to use pip to install and upgrade using the
``wheel`` distributions of setuptools.
Users are welcome to contrive other means to install
or upgrade Setuptools using other means, such as
pre-installing the Setuptools dependencies with pip
or a bespoke bootstrap tool, but such usage is not
recommended and is not supported.
As discovered in #940, not all versions of pip will
successfully install Setuptools from its pre-built
wheel. If you encounter issues with "No module named
six" or "No module named packaging", especially
following a line "Running setup.py egg_info for package
setuptools", then your pip is not new enough.
There's an additional issue in pip where setuptools
is upgraded concurrently with other source packages,
described in pip #4253. The proposed workaround is to
always upgrade Setuptools first prior to upgrading
other packages that would upgrade Setuptools.
Changes from Ant 1.10.0 TO Ant 1.10.1
=====================================
Fixed bugs:
-----------
* Ant 1.10.0 made Path#systemClasspath final which broke the Eclipse
integration.
Bugzilla Report 60582
* the wrapper script still didn't work on Solaris 10, but worked on
Solaris 11.
The "fixed" script should work in most cases but will not preserve
newlines present in command line arguments.
Bugzilla Report 60562
Other changes:
--------------
* new tasks <xz> and <unxz> and resource <xzresource> for XZ
compression. Also the compression attribute of <tar>/<untar> now
accepts "xz" as valid value.
The tasks and type are contained in the new ant-xz.jar and require
the library XZ for Java to be on the CLASSPATH.
Bugzilla Report 60350
The pthread_dbg library provides an implementation of the standard POSIX
threads library debugging facilities.
The NetBSD implementation is based on 1:1 thread model, therefore each
pthread(3) has a kernel thread, called a light-weight process (LWP).
Note that the system private thread interfaces upon which the pthread(3)
library is built are subject to change without notice. In order to
remain compatible with future NetBSD releases, programs must be linked
against the dynamic version of the thread library. Statically linked
programs using the POSIX threads framework may not work when run on a
future version of the system.
The pthread_dbg library is designed to be used in debuggers and to
control and introspect the NetBSD implementation of the POSIX threads.
Software may use native LWP threads without pthread(3) layer, in that
case pthread_dbg cannot be used.
Sponsored by <The NetBSD Foundation>
2017-01-23 version 3.2.0 (C++/Java/Python/PHP/Ruby/Objective-C/C#/JavaScript/Lite)
General
* Added protoc version number to protoc plugin protocol. It can be used by
protoc plugin to detect which version of protoc is used with the plugin and
mitigate known problems in certain version of protoc.
C++
* The default parsing byte size limit has been raised from 64MB to 2GB.
* Added rvalue setters for non-arena string fields.
* Enabled debug logging for Android.
* Fixed a double-free problem when using Reflection::SetAllocatedMessage()
with extension fields.
* Fixed several deterministic serialization bugs:
* MessageLite::SerializeAsString() now respects the global deterministic
serialization flag.
* Extension fields are serialized deterministically as well. Fixed protocol
compiler to correctly report importing-self as an error.
* Fixed FileDescriptor::DebugString() to print custom options correctly.
* Various performance/codesize optimizations and cleanups.
Java
* The default parsing byte size limit has been raised from 64MB to 2GB.
* Added recursion limit when parsing JSON.
* Fixed a bug that enumType.getDescriptor().getOptions() doesn't have custom
options.
* Fixed generated code to support field numbers up to 2^29-1.
Python
* You can now assign NumPy scalars/arrays (np.int32, np.int64) to protobuf
fields, and assigning other numeric types has been optimized for
performance.
* Pure-Python: message types are now garbage-collectable.
* Python/C++: a lot of internal cleanup/refactoring.
PHP (Alpha)
* For 64-bit integers type (int64/uint64/sfixed64/fixed64/sint64), use PHP
integer on 64-bit environment and PHP string on 32-bit environment.
* PHP generated code also conforms to PSR-4 now.
* Fixed ZTS build for c extension.
* Fixed c extension build on Mac.
* Fixed c extension build on 32-bit linux.
* Fixed the bug that message without namespace is not found in the descriptor
pool. (#2240)
* Fixed the bug that repeated field is not iterable in c extension.
* Message names Empty will be converted to GPBEmpty in generated code.
* Added phpdoc in generated files.
* The released API is almost stable. Unless there is large problem, we won't
change it. See
https://developers.google.com/protocol-buffers/docs/reference/php-generated
for more details.
Objective-C
* Added support for push/pop of the stream limit on CodedInputStream for
anyone doing manual parsing.
C#
* No changes.
Ruby
* Message objects now support #respond_to? for field getters/setters.
* You can now compare “message == non_message_object” and it will return false
instead of throwing an exception.
* JRuby: fixed #hashCode to properly reflect the values in the message.
Javascript
* Deserialization of repeated fields no longer has quadratic performance
behavior.
* UTF-8 encoding/decoding now properly supports high codepoints.
* Added convenience methods for some well-known types: Any, Struct, and
Timestamp. These make it easier to convert data between native JavaScript
types and the well-known protobuf types.
Changes from Ant 1.9.7 TO Ant 1.10.0
====================================
Changes that could break older environments:
-------------------------------------------
* Ant 1.10.x requires Java8 or newer at compile or build time.
The 1.9.x series wil stay compatible with Java5.
* The <apt> task has been removed since apt itself has been removed
with Java8.
* <fileset>/<zipfileset>/<tarfileset> exhibited undefined
behavior when both the dir and file attribute have been used on the
same instance. This will now cause the build to fail.
Bugzilla Report 59402
* <native2ascii> will default to the builtin implementation on Java8
as well (sun isn't available for Java9+ anyway).
* The ant.java.version property will now hold the value "9" rather
than "1.9" if running on Java 9.
* <rmic> will no longer allow the -Xnew option (or xmic compiler) to
be used when running on Java 9 since this option has been removed.
Bugzilla Report 59906
* <javah> will default to the "forking" implementation on Java8
as well.
Fixed bugs:
-----------
* setDynamicAttribute on MacroInstance now lower-cases the attribute
name in order to allow users of the API to use the attributes names
they have specified.
Bugzilla Report 59339
* <get>'s quiet attribute was broken, it didn't suppress any messages.
Bugzilla Report 59379
* <zip>'s check whether an archive is already up-to-date failed on
NTFS filesystems and re-created archives more often than necessary.
Bugzilla Report 59562
* AntClassLoader didn't delegate to the parent loader for classes in
the "jdk" package or one of its subpackages. This hierarchy has
been introduced with Java 7.
Bugzilla Report 59556
* The ant wrapper script used on Unix-like operating systems only
worked on OSes where sed is GNU sed.
Bugzilla Report 59898
* <touch>'s default pattern as well as the default patterns used by
the <date> (resource) selectors depended on the JDK being used - or
rather the locale provider being used and the default locale
provider changed with Java 9.
They are now fixed and the documentation has been updated to
reflect the real patterns used rather than a non-formal description
of the expected format.
Bugzilla Report 59909
* Clarified the documentation of <get>'s retries attribute.
Bugzilla Report 59930
* The ant wrapper script failed if backticks were passed on the
command line.
Bugzilla Report 60150, 59445
* The report generated by <junitreport> could contain duplicate
characters in stack traces.
Bugzilla Report 58661
Other changes:
--------------
* New file selectors <executable>, <symlink> and <ownedBy>.
* New task <setpermissions> that provides the ability to set POSIX
compatible permssions via NIO's PosixFilePermission
* <junit> now initializes the cause of the AssertionFailedError when
converting from AssertionError.
Bugzilla Report 58982
* <scp> now supports compression via the optional compressed attribute.
Bugzilla Report 47552
* <junit> now supports JDK9 modules
Github Pull Request #18
* a new implementation "builtin" has been added to <native2ascii> and
is the default when running on JDK9+ since the tool itself has been
removed from the JDK.
Bugzilla Report 59855
* added a new <native2asciifilter> filter that can perform non-ASCII
to Unicode-escape conversions.
* <rmic> defaults to the "forking" compiler on JDK 9+ as the
implementation class of rmic is not exported by its containing
module and thus not accessible to Ant without applying -XaddExports
magic.
Bugzilla Report 59860
* a new implementation "forking" has been added to <javah> and is
used as default when running on JDK9.
* support for javac's -h switch has been added with the
nativeheaderdir attribute.
Bugzilla Report 59905
* it is now possible to set features of the TraX factory used by <xslt>
and <junitreport>.
* it is now possible to use references to Ant types and classloaders
built around Ant <path>s as values for TraX factory attributes.
* AntClassLoader and its subclasses register themselves as parallel
capable.
* <junitreport> now enables the feature
http://www.oracle.com/xml/jaxp/properties/enableExtensionFunctions
when run on Java 9 so the redirect extension function can be used
if when a SecurityManager is active.
Bugzilla Report 60060
* support for javac's --release switch introduced with Java9 has been
added.
Bugzilla Report 60172
--------------
Version 2.39b:
--------------
- Improved error reporting in afl-cmin. Suggested by floyd.
- Made a minor tweak to trace-pc-guard support. Suggested by kcc.
- Added a mention of afl-monitor.
--------------
Version 2.38b:
--------------
- Added -mllvm -sanitizer-coverage-block-threshold=0 to trace-pc-guard
mode, as suggested by Kostya Serebryany.
--------------
Version 2.37b:
--------------
- Fixed a typo. Spotted by Jakub Wilk.
- Fixed support for make install when using trace-pc. Spotted by
Kurt Roeckx.
- Switched trace-pc to trace-pc-guard, which should be considerably
faster and is less quirky. Kudos to Konstantin Serebryany (and sorry
for dragging my feet).
Note that for some reason, this mode doesn't perform as well as
"vanilla" afl-clang-fast / afl-clang.
Gradle is a Java based build tool which allows creating
project build scripts using a domain-specific language
based on Groovy.
Packaged on pkgsrc-wip by asiekierka, thanks!
0.6.1 - 2017-01-26
``````````````````
* Fix signature for ``PathGraphingAstVisitor.default`` to match the signature
for ``ASTVisitor``
0.6.0 - 2017-01-23
``````````````````
* Add support for Python 3.6
* Fix handling for missing statement types
3.0.6 (2017-01-29)
=======================
* pytest no longer generates ``PendingDeprecationWarning`` from its own operations, which was introduced by mistake in version ``3.0.5`` (`#2118`_).
Thanks to `@nicoddemus`_ for the report and `@RonnyPfannschmidt`_ for the PR.
* pytest no longer recognizes coroutine functions as yield tests (`#2129`_).
Thanks to `@malinoff`_ for the PR.
* Plugins loaded by the ``PYTEST_PLUGINS`` environment variable are now automatically
considered for assertion rewriting (`#2185`_).
Thanks `@nicoddemus`_ for the PR.
* Improve error message when pytest.warns fails (`#2150`_). The type(s) of the
expected warnings and the list of caught warnings is added to the
error message. Thanks `@lesteve`_ for the PR.
* Fix ``pytester`` internal plugin to work correctly with latest versions of
``zope.interface`` (`#1989`_). Thanks `@nicoddemus`_ for the PR.
* Assert statements of the ``pytester`` plugin again benefit from assertion rewriting (`#1920`_).
Thanks `@RonnyPfannschmidt`_ for the report and `@nicoddemus`_ for the PR.
* Specifying tests with colons like ``test_foo.py::test_bar`` for tests in
subdirectories with ini configuration files now uses the correct ini file
(`#2148`_). Thanks `@pelme`_.
* Fail ``testdir.runpytest().assert_outcomes()`` explicitly if the pytest
terminal output it relies on is missing. Thanks to `@eli-b`_ for the PR.
2016.04
- Implement heap snapshots support, exposed through the profiling API
- Don't mark tc->cur_frame twice during GC
- Move thread object mark into thread root mark, removing a special case in the
main collector
- Add API for adding a permanent root together with a description
- Mark thread blocked for GC when doing synchronous reads
- Make MVM_bigint_from_num jit-friendly
- JIT coerce_nI as a call to bigint_from_num
- Set debug_name on a few more built-in types
- Add REPR API for getting unmanaged size, implement it for many REPRs
- Fix compile on FreeBSD 9
- Handle single-char build directory names by changing capture to lookahead
- Fix performance of reading very long lines
- Fix utf8-c8 decode crash caused by off-by-1
- Fix a full vs. partial collection detection bug
- Factor unmanaged size into promoted bytes
- Enhance scheme for deciding when to do a full collect
- Bail out if HLL name string index is invalid in bytecode unpack
- Don't try to set flags beyond num_lexicals when reading in call frames
- Adjust byte count when UTF-16 BOM marker consumed
- Fix buffer overrun in utf8-c8 decoding
- Initialize object registers with VMNull when allocating frames, to avoid a
number of possible segfaults
- Fix incorrect boolification of "" under mode MODE_UNBOX_STR_NOT_EMPTY_OR_ZERO
- Utilize debug_name in nativecall error messages
2016.05
- Use MSVC-provided stdint.h and inttypes.h when possible
- Improved various error messages to include the debug type name
- Eliminate call frame reference counts, instead using a linear call stack for
frames that never become heap-referenced and using the garbage collector to
manage those that do
- Tune number of gen2 sized bins
- Improve error reporting in P6opaque's compose function
- Improved GC debugging support to catch more problems
- Fix a race between serialization context resolution and garbage collection
- Add a missing MVMROOT in shell/spawn
- Fix segfault when trying to serialize an uncomposed P6opaque type
- Update the build system to autodetect system provided libs
- Add missing rooting, since the instrumentation level barrier may allocate
- Fix cleanup of temp roots at thread exit
- Add missing rooting of exception message in `die`
- Fix CUnion layout computation GC issues
- Fix data race in clearing of "in inter-gen set" flag
- Various improvements and fixes to the spesh_graph tool
- Add missing optimization of decont_s and decont_u ops
- Eliminate duplicate MVMContext creation code
- Fix full cleanup crash: the NFG uses the FSA, so have to destroy NFG first
- Close dynvar log filehandle in instance destroy
- Clean up cross-thread write logging mutex
- Free debug names in STables
- Free the string_heap_fast_table in CompUnit bodies
- Free permroot descriptions
- Free thread's finalization queue in tc destruction
- Add docs about MVMROOT
- Fix crash when GCing an ended thread
- Implement loadbytecodebuffer and loadbytecodefh ops
- Speed up initialization of non-specialized frames
- Use varints to make serialization of various integers more compact, reducing
size of compiled output
- Ensure we always produce at least one snapshot when heap profiling
- Remove debug output when taking heap snapshots
2016.06
- Serialize the HLL role field of STables
- Avoid VMNull setup memcpy/loop in specialized frame initialization
- Stop caching MVMContext on a frame
- Use frames directly when serializing closures, rather than having to create
an MVMContext wrapper for every one
- Write SC index when deserializing, repossessing, and preparing to serialize,
saving a huge amount of linear scanning
- Only used cached SC index if SC itself matches
- Remove an unrequired memset to clear the args buffer
- Inline args preparation into interpreter, and JIT it directly instead of
making a call to a tiny function
- Mark getlexcaller as :noinline
- Don't lose handlers during multi-level inlines
- Eliminate loop in P6opaque's get_boxed_ref function, decreasing cost
- Implement payload throw/handler support
- Implement callerlex throwing mode
- Make moar-gdb.py source-able, instead of only autoloadable
- Fix inlining causing wrong lexical handler lookup
- Make build in dir containing space work
- Allow HLL handler for unhandled lexical exception
- Add debug_name to "cannot iterate X with Y REPR" message
- Give "this is not a X iterator" more info, too
2016.07
- Implement a new multi-dispatch cache, structured as a tree, able to hold more
entries more memory-compactly, and able to cache dispatches involving named
parameters
- JIT read_fhs op
- Implement elems REPR function for MVMContext
- Implement a BB-splitting manipulation function in the optimizer
- Fix sha1 op to work with null bytes
- Fix bad interaction between profiling and dead allocation elimination; the
presence of allocation logging would prevent the optimization, leading to
misleading profiler output results
2016.08
- Don't crash in P6opaque on NULL name_to_index_mapping
- Fix off-by-one in grapheme iterator
- Block/unblock thread for GC on semaphore wait
- Mark blocked around some more lock acquisitions
- Fix various cases of out-dated pointer reads on concurrency control constructs
- Hold uv_sem_t at a level of indirection, so it won't move in memory
- Add a flag for PIPE_MERGED_OUT_ERR; fix stdio setup for merge
- Fix EOF detection when reading files from /proc and similar
- Fix lost socket listen errors
- Implement async cancellation completion notifications
- Add some missing fact dependencies in spesh, fixing some wrong guard
eliminations
- Avoid use of possibly-invalidated decont facts in spesh
- Remove keep_caller from MVMFrame
- Correctly NULL-terminate the buffer in MVM_vm_dump_file
2016.09
- Do not crash when the container configuration can't be read
- Correctly calculate the work_size when inlining between compilation units
- Validate indices of param_ ops and require checkarity before param_*
- Fix tautological comprison; snprintf returns an int, not a size_t
- Fix tell for files that haven't been read from
- Don't allow zero alignment in P6opaque storage spec
- Index check lexicals when reading static flags
- Add Decoder REPR and a number of ops that provide access to VM-backed
streaming decoding
- Don't segfault when serializing an uncomposed p6opaque
- Don't read_int into a size_t which is unsigned
- Never leak sym_name from nativecall_build
- Fix a couple of potential leaks in heap snapshots
- Kick arg_ and argconst_ ops from the correct basic block when inlining
- Use HASH_FIND_CACHE instead of HASH_FIND in MVMHash
- Correct wording of named arguments error
- Bounds check for hints in get_attribute and bind_attribute
- Use hints for is_attribute_initialized, and null-check repr_data
- Clean up various unused variables
- Mark thread GC blocked while accepting a socket to prevent deadlocks
- Configure.pl now has an explicit use lib "."
- Fix missing finalization queue cleanup at thread exit
- Mark SC used in bytecode loading as claimed to avoid keeping them around for
too long
- Fix an error in multi caching of named arguments that could cause lookups to
fail and the cache to keep growing
2016.10
- Fix build without libtommath source
- Make MVM_file_open_fh() throw if the file we opened was a directory
- Fix bug and memory leaks in MVM_file_open_fh()
- Add error message for likely MacOS build failure
- Don't set inheriting process on inherited pipe, fixing a segfault
- Update to the Unicode 9 database
- Die on CStruct without any fields
- Constant-fold unipropcode and unipvalcode
- Use PRId64 instead of %d for 64 bit int format string args
- "Cannot unbox type object" error gets debugname and native type info
- Fix uninitialized arg_names of an MVMCallsite
- Handle C++ constructors on libffi
- Fix CUnion get_attribute treating inlined attrs as pointers
- Fix 32 bit issue with rw args in NativeCall callbacks
- Use better throw-away type for void nativecalls
- Gracefully handle a 0 RSS reported by the Linux kernel
- Fix "Invalid free()" in empty repossessed arrays
- Make sure we mean "signed char" when we say "char"
- Fix calculating structure sizes for arm64 and others
- Disable JIT on x32, since it has a different calling convention
- Fix pointer size unit in configure message
- Use set_uint64 in from_num, otherwise we overflow on x32
- Rewrite mkdir_p api, no function changes
- Improve nativecall attribute error messages
- Include debug_name in crossthreadwritelog and serialization errors
- Deprecate async string I/O ops
- Deprecate flattenropes op
- Implement indexingoptimized op (replaces flattenropes, but is not in-place)
- Fix memory leadk in ord_basechar_at
- Ensure errno is grabbed before MVM_free is called
- Make extra sure unlock only happens if lock happened
2016.11
- Workaround tommath issue #56 which affects random bigint numbers > 32 bits
- Fix memory leaks in nqp_nfa_run
- Fix a sizeof arg that allocated a much-too-big buffer for callsite arg names
- Add missing breaks in MVMString's copy_to
- Prevent null deref when calling MVM_string_utf16_encode
- Corrections to mkdir on Windows
- Introduce MVM_SPESH_LIMIT, which limits how many specializations will be
performed; this is useful for debugging which specialized block is to blame
for a bug
- Make sure we never box a NULL filename when creating backtraces
- Fix the nativecall attribute error messages
- Remove (non-existent) num16 from error message
- Make the fixed size allocator provide useful information to Valgrind
- Implement serialization of SCRef
- Include file/line of unserializable closure, to aid debugging
- Add type info when failing to bind an attribute
- Use ffi_arg type for libffi nativecall return types
- Handle libffi return type more correctly
- Work around missing libatomic_ops prototype on s390x
- Panic when trying to GC a locked mutex
- Make VM panic output state that a panic occurred
- Fix JIT code generation bug in nqp::exception
- Add missing rooting of value pushed to concurrent queue
- Add src/gc/debug.h dependency to Makefile
- Mark a thread GC-blocked while it is in native code
- Have "Cannot * a type object" also outputs the type's debug name
- Don't reveal partially deserialized method cache
- Give a bunch of exception ops REPR and debug name output
- Prevent segfault when null string used as hash key
- Request POSIX.1.c compliance on solaris
- Change to use readdir insteal of readdir_r
- Use GCC on Solaris by default
- Give diagnostic output when compiling fails
- Handle current Solaris compiler not understanding -mt
- Fixed readdir so it won't check old errno
- Work around clock_gettime issue on OSX
- Refactor hashes to no longer need to flatten ropes in string keys
- Save 8 (64-bit) or 4 (32-bit) bytes per entry in the MVMHash REPR
- Remove the deprecated flattenropes op
- Remove now-unused MVM_string_flatten function
- Don't treat an nread of 0 in libuv read callbacks as an error
- Bump to latest libatomic_ops
2016.12
- Decode Latin-1 and UTF-8 strings to 8-bit width when possible
- Teach a few string functions to compress results into 8-bit storage
- Fix for AIX's INFINITY not being a constant
- Unlink libmoar before (re)installing it
- Add configuration for AIX
- Support Perl older than 5.10 for Configure.pl
- Use "pkgconfig --libs libffi" additionally to --cflags
- Fix powerpc detection on AIX (gcc)
- Make multidim error messages say they are multidim
- Add comment about where to find UNIDATA
- Implement captureinnerlex op, for fixing QUIT/LAST phaser scoping in Perl 6
- Fix mis-sized free in the NFG trie that only showed up in 32-bit
- Add GC debug helper to "find" a pointer in nurseries/gen2 bins
- Make ASSERT_NOT_FROMSPACE check fromspaces of all threads
- Fix missing MVMROOT around an allocation
- Fix typo in nfg.h comment
- Fix native callback and GC interaction when embedded
- Add GC block management functions to the public API
- Mark throwpayload* as :throwish in oplist
- Optimize the check for negative bignums
- Remove useless mp_neg calls
- Fix premature free of UV socket handles
- Fix premature handle free in async UDP sockets
- Add a "check every register access" GC debug mode
- Provide a #define to disable dynlex caching
- Provide a #define for deopt logging
- Invalidate dynlex caches during deopt
- Fix pow_I when it takes an exponent larger than 2**32
- Only do MVM_ASSERT_NOT_FROMSPACE in GC debug mode
- Add a fromspace assertion in finalize
- Avoid a number of spesh GC invariant violations
- Panic if we try to GC when speshing/JITing
- Ensure we don't leak partially deserialized objects
- Fix unrooted frame around SC object lookup
- Remove some GC debug code
- Avoid reading nativerefs in spesh, since it can cause boxing and thus GC
- Cope with push being used on concurrent queues
- MVMROOT around putting work on concurrent queue
- MVMROOT eventloop queue when polling it
- Do MVM_ASSIGN_REF after block/unblock in concurrent queue
- Fix more unrooted frame around SC object lookup
2017.01
- Extract spesh block allocator from spesh, for wider use
- Add a number of missing MVMROOTs, which could lead to outdated pointers; also
removed some unrequired MVMROOTs
- Fix arg_flags allocation sizes
- Remove an obsolete path from ldrpath
- Check lexical accesses in GC debug mode 2 also
- Add a #define to turn on inline logging
- Fix callstack reset bug, which could corrupt deeply recursing callstacks
- Don't allow re-compose of a P6opaque
- Add a new unicmp_s op, which compares using the Unicode Collation Algorithm
- Make sure we generate all values of the Line_Break property
- Re-implement utf8-c8 encoding, fixing bugs and ensuring that non-NFC input
will round-trip properly also
- Implement Bidi_Mirroring_Glyph as an integer property
- Implement Emoji grapheme breaking and other combined codes
- Add support for Grapheme_Cluster_Break=Prepend from Unicode 9.0
- Make sure we break after Prepend if it's a control character
- Add a script to download the latest version of all of the Unicode data
- Missing rooting GC in rare exit handler case
- Implement new setdispatcherfor op and add JIT for it
- Use much faster atoi function in normalizer; 14% less CPU use when slurping a
file in UTF-8 encoding
- For Decompose_Type, use int lookup instead of str for better performance
- Fix heap snapshot crash on eventloop thread
- Use /usr/bin/env perl for ./Configure.pl
- Don't break after ZWJ or for MALE SIGN and FEMALE SIGN
- Take into account actual allocated size of I/O buffers in gen2 promotion
statistics
- Tweak full collection criteria in heap profiling
- Free up spesh log slots after specialization, avoiding some leaks
- Removed the getregref_ ops (unused by NQP or Perl 6)
- Removed the continuationclone op (unused by Perl 6)
- Enforce one-shot invocation of continuations
- Greatly simplify handling of call frame working register lifetimes, leading
to consistently shorter lifetimes, less memory pressure, and faster calling
- Eliminate now-unused `tc` field in MVMFrame, saving a pointer per callframe
- Simplify args cleanup functions
- Reduce number of checks in call frame marking, making it faster
- Implement getstrfromname op, to get named Unicode sequences
- Fix GC in spesh triggered by managed mutex use
- Fix data race in inlining extop fixup
- Fix data race in callsite fixup during inlining
- Fix data race in string fixup during inlining
- Fix charname lookups of LINE FEED and CARRIAGE RETURN
- Remove Unicode 1 names and add Unicode Name Aliases
- Convert MVM_malloc+memset to MVM_calloc
- Clean out ancient "remove after rebootstrap" line
- Fix typo in MVM_CALLSTACK_REGIONS_SIZE's name
- Fix missing cleanup of managed DecodeStream
- Have DecodeStrem clean leftover char buffers
- Fix a typo in decode stream destroy function
=========================
Fixes since v2.11
-----------------
* The default Travis-CI configuration specifies newer P4 and GitLFS.
* The character width table has been updated to match Unicode 9.0
* Update the isatty() emulation for Windows by updating the previous
hack that depended on internals of (older) MSVC runtime.
* "git rev-parse --symbolic" failed with a more recent notation like
"HEAD^-1" and "HEAD^!".
* An empty directory in a working tree that can simply be nuked used
to interfere while merging or cherry-picking a change to create a
submodule directory there, which has been fixed..
* The code in "git push" to compute if any commit being pushed in the
superproject binds a commit in a submodule that hasn't been pushed
out was overly inefficient, making it unusable even for a small
project that does not have any submodule but have a reasonable
number of refs.
* "git push --dry-run --recurse-submodule=on-demand" wasn't
"--dry-run" in the submodules.
* The output from "git worktree list" was made in readdir() order,
and was unstable.
* mergetool.<tool>.trustExitCode configuration variable did not apply
to built-in tools, but now it does.
* "git p4" LFS support was broken when LFS stores an empty blob.
* Fix a corner case in merge-recursive regression that crept in
during 2.10 development cycle.
* Update the error messages from the dumb-http client when it fails
to obtain loose objects; we used to give sensible error message
only upon 404 but we now forbid unexpected redirects that needs to
be reported with something sensible.
* When diff.renames configuration is on (and with Git 2.9 and later,
it is enabled by default, which made it worse), "git stash"
misbehaved if a file is removed and another file with a very
similar content is added.
* "git diff --no-index" did not take "--no-abbrev" option.
* "git difftool --dir-diff" had a minor regression when started from
a subdirectory, which has been fixed.
* "git commit --allow-empty --only" (no pathspec) with dirty index
ought to be an acceptable way to create a new commit that does not
change any paths, but it was forbidden, perhaps because nobody
needed it so far.
* A pathname that begins with "//" or "\\" on Windows is special but
path normalization logic was unaware of it.
* "git pull --rebase", when there is no new commits on our side since
we forked from the upstream, should be able to fast-forward without
invoking "git rebase", but it didn't.
* The way to specify hotkeys to "xxdiff" that is used by "git
mergetool" has been modernized to match recent versions of xxdiff.
* Unlike "git am --abort", "git cherry-pick --abort" moved HEAD back
to where cherry-pick started while picking multiple changes, when
the cherry-pick stopped to ask for help from the user, and the user
did "git reset --hard" to a different commit in order to re-attempt
the operation.
* Code cleanup in shallow boundary computation.
* A recent update to receive-pack to make it easier to drop garbage
objects made it clear that GIT_ALTERNATE_OBJECT_DIRECTORIES cannot
have a pathname with a colon in it (no surprise!), and this in turn
made it impossible to push into a repository at such a path. This
has been fixed by introducing a quoting mechanism used when
appending such a path to the colon-separated list.
* The function usage_msg_opt() has been updated to say "fatal:"
before the custom message programs give, when they want to die
with a message about wrong command line options followed by the
standard usage string.
* "git index-pack --stdin" needs an access to an existing repository,
but "git index-pack file.pack" to generate an .idx file that
corresponds to a packfile does not.
* Fix for NDEBUG builds.
* A lazy "git push" without refspec did not internally use a fully
specified refspec to perform 'current', 'simple', or 'upstream'
push, causing unnecessary "ambiguous ref" errors.
* "git p4" misbehaved when swapping a directory and a symbolic link.
* Even though an fix was attempted in Git 2.9.3 days, but running
"git difftool --dir-diff" from a subdirectory never worked. This
has been fixed.
* "git p4" that tracks multile p4 paths imported a single changelist
that touches files in these multiple paths as one commit, followed
by many empty commits. This has been fixed.
* A potential but unlikely buffer overflow in Windows port has been
fixed.
* When the http server gives an incomplete response to a smart-http
rpc call, it could lead to client waiting for a full response that
will never come. Teach the client side to notice this condition
and abort the transfer.
* Some platforms no longer understand "latin-1" that is still seen in
the wild in e-mail headers; replace them with "iso-8859-1" that is
more widely known when conversion fails from/to it.
* Update the procedure to generate "tags" for developer support.
* Update the definition of the MacOSX test environment used by
TravisCI.
* A few git-svn updates.
* Compression setting for producing packfiles were spread across
three codepaths, one of which did not honor any configuration.
Unify these so that all of them honor core.compression and
pack.compression variables the same way.
* "git fast-import" sometimes mishandled while rebalancing notes
tree, which has been fixed.
* Recent update to the default abbreviation length that auto-scales
lacked documentation update, which has been corrected.
* Leakage of lockfiles in the config subsystem has been fixed.
* It is natural that "git gc --auto" may not attempt to pack
everything into a single pack, and there is no point in warning
when the user has configured the system to use the pack bitmap,
leading to disabling further "gc".
* "git archive" did not read the standard configuration files, and
failed to notice a file that is marked as binary via the userdiff
driver configuration.
* "git blame --porcelain" misidentified the "previous" <commit, path>
pair (aka "source") when contents came from two or more files.
* "git rebase -i" with a recent update started showing an incorrect
count when squashing more than 10 commits.
* "git <cmd> @{push}" on a detached HEAD used to segfault; it has
been corrected to error out with a message.
* Tighten a test to avoid mistaking an extended ERE regexp engine as
a PRE regexp engine.
* Typing ^C to pager, which usually does not kill it, killed Git and
took the pager down as a collateral damage in certain process-tree
structure. This has been fixed.
---------------------------------------------
0.56 January 30, 2017
Removed all test files using 'scripts/modulemaker' as first step in
diagnosing problem reported in
https://rt.cpan.org/Ticket/Display.html?id=111637. No changes in
functionality.
This is a regularly-scheduled quarterly feature release.
1.1. commands
commands: config option to control bundle compression level
crecord: add an experimental option for space key to move cursor down
crecord: rewrite status line text (BC)
diff: add experimental support for more git-diff extended diff features
graft: support grafting changes to new file in renamed directory (issue5436)
help: show help for disabled extensions (issue5228)
help: update help for 'hg update' which was misleading (issue5427)
merge: fix crash on criss cross merge with dir move and delete (issue5020)
summary: add evolution "troubles" information to summary output
summary: use the same labels as log command in "parent: " line
templates: display evolution "troubles" in command line style
1.2. core
changelog: keep track of file end in appender (issue5444)
dispatch: stop supporting non-use of @command (API)
hook: do not redirect stdout/err/in to ui while running in-process hooks (BC)
httppeer: advertise and support application/mercurial-0.2
localrepo: experimental support for non-zlib revlog compression
manifest: add bundlemanifestlog support
manifest: add unionmanifestlog support
manifest: make revlog verification optional
patch: add experimental config knob for displaying the index header
patch: add similarity config knob in experimental section
patch: add label for coloring the index extended header
patch: add label for coloring the similarity extended header
profiling: make statprof the default profiler (BC)
profiling: use vendored statprof and upstream enhancements (BC)
revlog: REVIDX_EXTSTORED flag
revlog: add clone method
revlog: ensure that flags do not overflow 2 bytes
revlog: flag processor
revlog: inline start() and end() for perf reasons
revlog: make compressed size comparisons consistent
revlog: merge hash checking subfunctions
revlog: move decompress() from module to revlog class (API)
revlog: optimize _chunkraw when startrev==endrev
revlog: pass revlog flags to addrevision
revlog: reorder index accessors to match data structure order
revlog: use compression engine API for compression
revlog: use compression engine APIs for decompression
revset: add regular expression support to 'desc'
revset: make children() not look at p2 if null (issue5439)
run-tests: forward Python USER_BASE from site (issue5425)
server: move cmdutil.service() to new module (API)
templatekw: force noprefix=False to insure diffstat consistency (issue4755)
ui: check EOF of getpass() response read from command-server channel
ui: do not translate empty configsource() to 'none' (API)
ui: factor out ui.load() to create a ui without loading configs (API)
util: compression APIs to support revlog compression and decompression
util: declare wire protocol support of compression engines
wireproto: advertise supported media types and compression formats
wireproto: only advertise HTTP-specific capabilities to HTTP peers (BC)
wireproto: perform chunking and compression at protocol layer (API)
1.3. extensions
convert: add config option to control storing original revision
convert: add config option to copy extra keys from Git commits
convert: config option for git rename limit
convert: config option to control Git committer actions
rebase: calculate ancestors for --base separately (issue5420)
rebase: check for conflicts before continuing
rebase: fail-fast the pull if working dir is not clean (BC)
shelve: allow multiple shelves with --patch and --stat
shelve: choose a legal shelve name when no name is passed (issue5112)
shelve: make --keep option survive user intervention (issue5431)
shelve: make unshelve not crash when there are missing files (issue4176)
1.4. hgweb
hgweb: link to raw-file on annotation page (BC)
hgweb: make log streams compatible with command server
hgweb: restore ascending iteration on revs in filelog web command
hgweb: support Content Security Policy
1.5. chg
chg: send type information via S channel (BC)
chg: support long socket path
chgserver: make S channel support pager request
chgserver: override runcommand
1.6. Behavior Changes
chg: send type information via S channel (BC)
crecord: rewrite status line text (BC)
hgweb: link to raw-file on annotation page (BC)
hook: do not redirect stdout/err/in to ui while running in-process hooks (BC)
profiling: make statprof the default profiler (BC)
profiling: use vendored statprof and upstream enhancements (BC)
rebase: fail-fast the pull if working dir is not clean (BC)
wireproto: only advertise HTTP-specific capabilities to HTTP peers (BC)
1.7. Internal API Changes
bookmarks: make bookmarks.comparebookmarks accept binary nodes (API)
bookmarks: rename 'compare()' to 'comparebookmarks()' (API)
revlog: move decompress() from module to revlog class (API)
server: move cmdutil.service() to new module (API)
ui: do not translate empty configsource() to 'none' (API)
ui: factor out ui.load() to create a ui without loading configs (API)
util: remove compressors dict (API)
util: remove decompressors dict (API)
wireproto: perform chunking and compression at protocol layer (API)
dispatch: stop supporting non-use of @command (API)
Upstream changes:
0.49 2016-12-23 00:12:12Z
- made the exported is_Foo and to_Foo subs much faster, especially for
type constraints which can be inlined. (Dave Rolsky)
Upstream changes:
2.2004 2017-01-31
[BUG FIXES]
- When an attribute was specified as 'rw' and you also provided an accessor
name matching the attribute and there was an explicit writer, Moose would
try to make an additional reader access with the same name as the
attribute. Then Moose would warn about overwriting an accessor with a
reader. This is related to the bugs reported in RT #120040.
2.2003 2017-01-30
[BUG FIXES]
- Moose could die when attempting to warn about overwriting an attribute's
access method in some cases (since version 2.1902) (RT #120040)
2.2002 2017-01-30
[BUG FIXES]
- Creating a Moose subclass of a Moo class with an attribute with a
delegation would cause a warning (since version 2.1902).
Alan Coopersmith (1):
XORG_MANPAGE_SECTIONS: limit SysV man page sections to Solaris 2.0-11
Andreas Boll (1):
Fix XORG_WITH_XMLTO to work with xmlto >= 0.0.27
Emil Velikov (1):
autogen.sh: use quoted string variables
Matt Turner (1):
Version bump: 1.19.1
Mihail Konev (1):
autogen: add default patch prefix
Peter Hutterer (1):
autogen.sh: use exec instead of waiting for configure to finish
IO::Event provides a object-based callback system for handling nonblocking
IO. The design goal is to provide a system that just does the right thing
w/o the user needing to think about it much.
All APIs are kept as simple as possible yet at the same time, all
functionality is accesible if needed. Simple things are easy. Hard things
are possible.
Most of the time file handling syntax will work fine: <$filehandle> and
print $filehandle 'stuff'.
IO::Event provides automatic buffering of output (with a callback to
throttle). It provides automatic line-at-a-time input.
After initial setup, call IO::Event::loop().
IO::Event was originally written to use Event. IO::Event still defaults to
using Event but it can now use AnyEvent or its own event loop.