What's new in at-spi2-atk 2.26.1:
* meson: Ensure paths written to .pc file are absolute.
* Package a couple of missing meson.build files.
What's new in at-spi2-atk 2.25.3:
* Add error-message, error-for, details, and details-for relation types
* Add Meson build system (thanks to Emmanuele Bassi).
What's new in at-spi2-atk 2.25.2:
* Fix use after free when returned objects hold only one ref (bgo#781716).
* Add some missing roles to correspond with atk (description list,
description term, description value, and footnote).
What's new in at-spi2-core 2.26.2:
* dist po/meson.build (bgo#789666).
* Generate correct sonname when building with meson.
What's new in at-spi2-core 2.26.1:
* Remove unused dependency on libxkbcommon.
* Various meson build fixes.
* Updated Dutch and Catalan translations.
What's new in at-spi2-core 2.25.92:
* configure.ac: make xkb optional, as intended.
* Optionally read the bus address from the ATSPI_BUS_ADDRESS environment
variable (bgo#787126).
Changes in version 2.26.1
=========================
* Build: meson, tracked by bug 785802)
* Ad option to disable introspection
* Fix .rc generation in Meson builds
* Build (Visual Studio)
* Enhance security of x64 binaries
Translations
Pawan Chitrakar (ne), Xavi Ivars (ca@valencia), hanniedu (nl)
Changes in version 2.26
=======================
* Build: meson on Windows, tracked by Bug 785802 (not fully fixed yet):
* Force-include msvc_recommended_pragmas.h on MSVC
* tests: Fix build on pre-C99
* meson: Build .rc file on Windows
Contributors
Chun-wei Fan
Translations
Ask Hjorth Larsen (da)
Changes in version 2.25.90
==========================
* Bugfixing
* 689810: Move include guards out to enable GCC optimisation
* Build (meson)
* Keep the version in sync with Autotools
* Add atkversion.h to introspection build
* Build (visual studio)
* Adapt to the Python-field glib-genmarshal
* Adapt to new glib-genmarshal command line
* Use PythonDir instead of PythonPath
* Integrate introspection builds
* Don't build introspection by default
* Make marshal generation more robust
* Misc
* Update AUTHORS file
Contributors
Emmanuele Bassi, Daniel Boles, Chun-wei Fan, Rico Tzschichholz
Translations
Pawan Chitrakar (ne), Fabio Tomat (fur)
Changes in version 2.25.2
=========================
* Bugfixing:
* Bug 781715: Crash under atk_gobject_accessible_dispose()
* Build (general/autotools):
* Add ATK_UNAVAILABLE macro
* Use template files for the ATK enumerations
* Convert atkversion.h.in to UTF-8 encoding
* Include the marshallers header, not the source
* Add buildir to the docs directories
* Update deprecation warnings symbols
* Simplify GObject dependency discovery
* Build (meson):
* Bug 782871: Add meson build system
* Dist the Meson files
* Use the appropriate soversion
* Use the appropriate GETTEXT_PACKAGE
* Install atk.h
* Only depend on generated header
* Build (win32):
* win32: Fix replacing items in files with UTF-8 content
* Cleaning:
* Remove atk.spec.in
* Remove uninstalled pkg-config file
* Remove unused script for bundling ATK on Windows
* Remove ChangeLog
* Remove local introspection.m4
* Docs:
* Modernise the API reference:
* Use XInclude
* Stop using SGML mode with XML files
* Drop version.xml and use the gtk-doc package entities
* Update the README mentioning Meson, Ninja, and cleaning a little
* Remove empty overrides file
* Gobject introspection:
* Mark unbindable functions as 'skip
* Misc:
* Update git ignore file
* New Relations and Roles:
* Bug 748384: Add ATK_ROLE_FOOTNOTE
* Bug 781587: Add error-message, error-for, details and details-for-relation
* Translation support:
* Update po/Makevars (copyright and bug address)
Contributors:
Emmanuele Bassi, Milan Crha, Joanmarie Diggs, Piotr Drąg, Chun-wei Fan
Translations:
Yuras Shumovich (be)
---------------------------
Version 2.52b (2017-11-04):
---------------------------
- Upgraded QEMU patches from 2.3.0 to 2.10.0. Required troubleshooting
several weird issues. All the legwork done by Andrew Griffiths.
- Added setsid to afl-showmap. See the notes for 2.51b.
- Added target mode (deferred, persistent, qemu, etc) to fuzzer_stats.
Requested by Jakub Wilk.
- afl-tmin should now save a partially minimized file when Ctrl-C
is pressed. Suggested by Jakub Wilk.
- Added an option for afl-analyze to dump offsets in hex. Suggested by
Jakub Wilk.
- Added support for parameters in triage_crashes.sh. Patch by Adam of
DC949.
FlatBuffers is an efficient cross platform serialization library for
C++, C#, C, Go, Java, JavaScript, PHP, and Python. It was originally
created at Google for game development and other performance-critical
applications.
Upstream changes (from NEWS):
== Ruby-GNOME2 3.2.1: 2017-11-19
This is a memory related bug fix release.
=== Changes
==== Ruby/GLib2
* Improvements
* (({GLib::Bytes#initialize})): Stopped to copy data for frozen
(({String})).
==== Ruby/GObjectIntrospection
* Fixes
* Fixed memory leaks for output parameters.
[GitHub#1113][Reported by Will Bryant]
==== Ruby/GIO2
* Improvements
* (({Gio::InputStream#read_all})): Made workable.
[GitHub#1110][Reported by Paul van Tilburg]
* (({Gio::InputStream#read})): If the given size is (({nil})),
read until EOF or error. It's compatible with Ruby's IO objects.
==== Ruby/GTK3
* Improvements
* Marked top-level windows automatically.
[GitHub#1103][Reported by cedlemo]
=== Thanks
* Paul van Tilburg
* cedlemo
* Will Bryant
This backports namespace reserves a namespace beneath which we can happily
place all of the various features that we want to cut-and-paste from later
Python versions.
Pkgsrc changes:
* Adapt PLIST.
* After exchange, set MAINTAINER to pkgsrc-users@
Upstream changes:
2017-11-13 version 3.5.0 (C++/Java/Python/PHP/Objective-C/C#/Ruby/JavaScript)
Planned Future Changes
* Make C++ implementation C++11 only: we plan to require C++11 to build
protobuf code starting from 3.6.0 release. Please join this github issue:
https://github.com/google/protobuf/issues/2780 to provide your feedback.
General
* Unknown fields are now preserved in proto3 for most of the language
implementations for proto3 by default. See the per-language section for
details.
* reserve keyword are now supported in enums
C++
* Proto3 messages are now preserving unknown fields by default. If you rely on
unknowns fields being dropped. Please use DiscardUnknownFields() explicitly.
* Deprecated the unsafe_arena_release_* and unsafe_arena_add_allocated_*
methods for string fields.
* Added move constructor and move assignment to RepeatedField,
RepeatedPtrField and google::protobuf::Any.
* Added perfect forwarding in Arena::CreateMessage
* In-progress experimental support for implicit weak fields with lite protos.
This feature allows the linker to strip out more unused messages and reduce
binary size.
* Various performance optimizations.
Java
* Proto3 messages are now preserving unknown fields by default. If you'd like
to drop unknown fields, please use the DiscardUnknownFieldsParser API. For
example:
Parser<Foo> parser = DiscardUnknownFieldsParser.wrap(Foo.parser());
Foo foo = parser.parseFrom(input);
* Added a new CodedInputStream decoder for Iterable<ByteBuffer> with direct
ByteBuffers.
* TextFormat now prints unknown length-delimited fields as messages if
possible.
* FieldMaskUtil.merge() no longer creates unnecessary empty messages when a
message field is unset in both source message and destination message.
* Various performance optimizations.
Python
* Proto3 messages are now preserving unknown fields by default. Use
message.DiscardUnknownFields() to drop unknown fields.
* Add FieldDescriptor.file in generated code.
* Add descriptor pool FindOneofByName in pure python.
* Change unknown enum values into unknown field set .
* Add more Python dict/list compatibility for Struct/ListValue.
* Add utf-8 support for text_format.Merge()/Parse().
* Support numeric unknown enum values for proto3 JSON format.
* Add warning for Unexpected end-group tag in cpp extension.
PHP
* Proto3 messages are now preserving unknown fields.
* Provide well known type messages in runtime.
* Add prefix "PB" to generated class of reserved names.
* Fixed all conformance tests for encode/decode json in php runtime. C
extension needs more work.
Objective-C
* Fixed some issues around copying of messages with unknown fields and then
mutating the unknown fields in the copy.
C#
* Added unknown field support in JsonParser.
* Fixed oneof message field merge.
* Simplify parsing messages from array slices.
Ruby
* Unknown fields are now preserved by default.
* Fixed several bugs for segment fault.
Javascript
* Decoder can handle both paced and unpacked data no matter how the proto is
defined.
* Decoder now accept long varint for 32 bit integers.
Upstream changes:
2.003003 - 2017-11-16
- test tweaks
- fix handling of code refs stored directly in the stash (for perl 5.28)
- consider inline packages with constants in them as being loaded
- stubs will be treated as methods that exist when inflating to Moose
- avoid loading overload.pm unless required
This bug-fix release addresses several regressions in Gradle 4.3.
- Gradle 4.3 introduced an improvement where an error in resolving a
module from one repository would prevent Gradle from searching for
that same module in subsequent repositories. However, the change to
abort searching repositories on all unrecognized errors proved to be
too aggressive. With 4.3.1, only repository timeout errors will
prevent Gradle from searching for a module in a subsequent repository.
- Moreover, the connection and socket timeouts for HTTP/HTTPS requests
have been increased to 30 seconds.
- This version of Gradle also removes an overload of
TaskInputs.property which caused statically compiled plugin code to
use the wrong method when calling TaskInputs.property(..., null).
- Finally, when using --scan the build scan plugin is applied before
other plugins to avoid rendering a warning message.
3.37.0:
This is a deprecation release for some health check related features.
The following are now deprecated:
* Passing exception_in_generation to suppress_health_check. This no longer does anything even when passed - All errors that occur during data generation will now be immediately reraised rather than going through the health check mechanism.
* Passing random_module to suppress_health_check. This hasn’t done anything for a long time, but was never explicitly deprecated. Hypothesis always seeds the random module when running @given tests, so this is no longer an error and suppressing it doesn’t do anything.
* Passing non-HealthCheck values in suppress_health_check. This was previously allowed but never did anything useful.
In addition, passing a non-iterable value as suppress_health_check will now raise an error immediately (it would never have worked correctly, but it would previously have failed later). Some validation error messages have also been updated.
17.3.0:
Backward-incompatible Changes
- Attributes are not defined on the class body anymore.
This means that if you define a class C with an attribute x, the class will *not* have an attribute x for introspe
ction anymore.
Instead of C.x, use attr.fields(C).x or look at C.__attrs_attrs__.
The old behavior has been deprecated since version 16.1.
Changes
- super() and __class__ now work on Python 3 when slots=True.
- Added type argument to attr.ib() and corresponding type attribute to attr.Attribute.
This change paves the way for automatic type checking and serialization (though as of this release attrs does not make use of it).
In Python 3.6 or higher, the value of attr.Attribute.type can alternately be set using variable type annotations
- The combination of str=True and slots=True now works on Python 2.
- attr.Factory is hashable again.
- Subclasses now can overwrite attribute definitions of their superclass.
That means that you can -- for example -- change the default value for an attribute by redefining it.
- Added new option auto_attribs to @attr.s that allows to collect annotated fields without setting them to attr.ib().
Setting a field to an attr.ib() is still possible to supply options like validators.
Setting it to any other value is treated like it was passed as attr.ib(default=value) -- passing an instance of attr.Factory also works as expected.
The following CA certificates were Added:
CN = GDCA TrustAUTH R5 ROOT
SHA-256 Fingerprint: BF:FF:8F:D0:44:33:48:7D:6A:8A:A6:0C:1A:29:76:7A:9F:C2:BB:B0:5E:42:0F:71:3A:13:B9:92:89:1D:38:93
Trust Flags: Websites
CN = SSL.com Root Certification Authority RSA
SHA-256 Fingerprint: 85:66:6A:56:2E:E0:BE:5C:E9:25:C1:D8:89:0A:6F:76:A8:7E:C1:6D:4D:7D:5F:29:EA:74:19:CF:20:12:3B:69
Trust Flags: Websites, Email
CN = SSL.com Root Certification Authority ECC
SHA-256 Fingerprint: 34:17:BB:06:CC:60:07:DA:1B:96:1C:92:0B:8A:B4:CE:3F:AD:82:0E:4A:A3:0B:9A:CB:C4:A7:4E:BD:CE:BC:65
Trust Flags: Websites, Email
CN = SSL.com EV Root Certification Authority RSA R2
SHA-256 Fingerprint: 2E:7B:F1:6C:C2:24:85:A7:BB:E2:AA:86:96:75:07:61:B0:AE:39:BE:3B:2F:E9:D0:CC:6D:4E:F7:34:91:42:5C
Trust Flags: Websites
CN = SSL.com EV Root Certification Authority ECC
SHA-256 Fingerprint: 22:A2:C1:F7:BD:ED:70:4C:C1:E7:01:B5:F4:08:C3:10:88:0F:E9:56:B5:DE:2A:4A:44:F9:9C:87:3A:25:A7:C8
Trust Flags: Websites
CN = TrustCor RootCert CA-1
SHA-256 Fingerprint: D4:0E:9C:86:CD:8F:E4:68:C1:77:69:59:F4:9E:A7:74:FA:54:86:84:B6:C4:06:F3:90:92:61:F4:DC:E2:57:5C
Trust Flags: Websites, Email
CN = TrustCor RootCert CA-2
SHA-256 Fingerprint: 07:53:E9:40:37:8C:1B:D5:E3:83:6E:39:5D:AE:A5:CB:83:9E:50:46:F1:BD:0E:AE:19:51:CF:10:FE:C7:C9:65
Trust Flags: Websites, Email
CN = TrustCor ECA-1
SHA-256 Fingerprint: 5A:88:5D:B1:9C:01:D9:12:C5:75:93:88:93:8C:AF:BB:DF:03:1A:B2:D4:8E:91:EE:15:58:9B:42:97:1D:03:9C
Trust Flags: Websites, Email
The following CA certificates were Removed:
CN = Certum CA, O=Unizeto Sp. z o.o.
SHA-256 Fingerprint: D8:E0:FE:BC:1D:B2:E3:8D:00:94:0F:37:D2:7D:41:34:4D:99:3E:73:4B:99:D5:65:6D:97:78:D4:D8:14:36:24
CN = StartCom Certification Authority
SHA-256 Fingerprint: C7:66:A9:BE:F2:D4:07:1C:86:3A:31:AA:49:20:E8:13:B2:D1:98:60:8C:B7:B7:CF:E2:11:43:B8:36:DF:09:EA
CN = StartCom Certification Authority
SHA-256 Fingerprint: E1:78:90:EE:09:A3:FB:F4:F4:8B:9C:41:4A:17:D6:37:B7:A5:06:47:E9:BC:75:23:22:72:7F:CC:17:42:A9:11
CN = StartCom Certification Authority G2
SHA-256 Fingerprint: C7:BA:65:67:DE:93:A7:98:AE:1F:AA:79:1E:71:2D:37:8F:AE:1F:93:C4:39:7F:EA:44:1B:B7:CB:E6:FD:59:95
CN = TÜBİTAK UEKAE Kök Sertifika Hizmet Sağlayıcısı - Sürüm 3
SHA-256 Fingerprint: E4:C7:34:30:D7:A5:B5:09:25:DF:43:37:0A:0D:21:6E:9A:79:B9:D6:DB:83:73:A0:C6:9E:B1:CC:31:C7:C5:2A
CN = ACEDICOM Root
SHA-256 Fingerprint: 03:95:0F:B4:9A:53:1F:3E:19:91:94:23:98:DF:A9:E0:EA:32:D7:BA:1C:DD:9B:C8:5D:B5:7E:D9:40:0B:43:4A
CN = Certinomis - Autorité Racine
SHA-256 Fingerprint: FC:BF:E2:88:62:06:F7:2B:27:59:3C:8B:07:02:97:E1:2D:76:9E:D1:0E:D7:93:07:05:A8:09:8E:FF:C1:4D:17
CN = TÜRKTRUST Elektronik Sertifika Hizmet Sağlayıcısı
SHA-256 Fingerprint: 97:8C:D9:66:F2:FA:A0:7B:A7:AA:95:00:D9:C0:2E:9D:77:F2:CD:AD:A6:AD:6B:A7:4A:F4:B9:1C:66:59:3C:50
CN = PSCProcert
SHA-256 Fingerprint: 3C:FC:3C:14:D1:F6:84:FF:17:E3:8C:43:CA:44:0C:00:B9:67:EC:93:3E:8B:FE:06:4C:A1:D7:2C:90:F2:AD:B0
CN = CA 沃通根证书, O=WoSign CA Limited
SHA-256 Fingerprint: D6:F0:34:BD:94:AA:23:3F:02:97:EC:A4:24:5B:28:39:73:E4:47:AA:59:0F:31:0C:77:F4:8F:DF:83:11:22:54
CN = Certification Authority of WoSign
SHA-256 Fingerprint: 4B:22:D5:A6:AE:C9:9F:3C:DB:79:AA:5E:C0:68:38:47:9C:D5:EC:BA:71:64:F7:F2:2D:C1:D6:5F:63:D8:57:08
CN = Certification Authority of WoSign G2
SHA-256 Fingerprint: D4:87:A5:6F:83:B0:74:82:E8:5E:96:33:94:C1:EC:C2:C9:E5:1D:09:03:EE:94:6B:02:C3:01:58:1E:D9:9E:16
CN = CA WoSign ECC Root
SHA-256 Fingerprint: 8B:45:DA:1C:06:F7:91:EB:0C:AB:F2:6B:E5:88:F5:FB:23:16:5C:2E:61:4B:F8:85:56:2D:0D:CE:50:B2:9B:02
libfreebl no longer requires SSE2 instructions.
New in NSS 3.34
New Functionality
When listing an NSS database using certutil -L, but the database
hasn't yet been initialized with any non-empty or empty password,
the text "Database needs user init" will be included in the listing.
When using certutil to set an inacceptable password in FIPS mode,
a correct explanation of acceptable passwords will be printed.
SSLKEYLOGFILE is now supported with TLS 1.3, see Bug 1287711 for details.
SSLChannelInfo has two new fields (Bug 1396525)
SSLNamedGroup originalKeaGroup holds the key exchange group of the
original handshake when the session was resumed.
PRBool resumed is PR_TRUE when the session is resumed and PR_FALSE
otherwise.
RSA-PSS signatures are now supported on certificates. Certificates
with RSA-PSS or RSA-PKCS#1v1.5 keys can be used to create an RSA-PSS
signature on a certificate using the --pss-sign argument to certutil.
New Functions
Compatibility
NSS 3.34 shared libraries are backward compatible with all older NSS 3.x
shared libraries. A program linked with older NSS 3.x shared libraries
will work with NSS 3.34 shared libraries without recompiling or relinking.
Furthermore, applications that restrict their use of NSS APIs to the
functions listed in NSS Public Functions will remain compatible with
future versions of the NSS shared libraries.
6.00 2017-11-14
Released 6.00 with default API for 6_0.
Legacy 5_0 API now released separately
Trace logging now includes content-type headers where appropriate
Deprecation warnings are now parsed to extract the message only
Improved boolean value handling in query string params - now accepts
true, false, \1, \0, or a JSON::PP::Boolean object
Handle removal of '.' from @INC in perl 5.26
2.075 14 Nov 2017
* Update zlib-src directory to use zlib 1.2.11
#123245: perl 5.26.1 is vulnerable to CVE-2016-9843, CVE-2016-9841, CVE-2016-9840, CVE-2016-9842
* Zlib.xs
Don't allow offset to be greater than length of buffer in crc32.
* Zlib.xs
Change my_zcalloc to use safecalloc.
The link, https://github.com/madler/zlib/issues/253, is the upstream report for the remaining
valgrind errors not already dealt with by 1.2.11. Using calloc in Zlib.xs for now as a workaround.
#121074: valgrind errors in the test suite
pytest-relaxed provides 'relaxed' test discovery for pytest.
Has it ever felt strange to you that we put our tests in tests/, then name the
files test_foo.py, name the test classes TestFoo, and finally name the test
methods test_foo_bar? Especially when almost all of the code inside of tests/
is, well, tests?
This pytest plugin takes a page from the rest of Python, where you don't have
to explicitly note public module/class members, but only need to hint as to
which ones are private. By default, all files and objects pytest is told to
scan will be considered tests; to mark something as not-a-test, simply prefix
it with an underscore.
0.8.7:
Corrected some issues with the Hungarian (hu_HU) providers, such as incorrectly capitalized company suffixes, street/road type names and place names.
The Hungarian locale's providers.job.job provider now returns Hungarian job names, taken from the Hungarian National Statistical Office (KSH)'s 2008 survey nomenclature of employment (FEOR '08).
Added he_IL locale.
Fix possible infinite loop in random_sample_unique.
Add aliases to make pt_BR address provider compatible with en_US.
Fix ResourceWarning in setup.py.
Update test requirements.
Pytest 3.2.4:
Bug Fixes
* Fix the bug where running with --pyargs will result in items with empty parent.nodeid if run from a different root directory.
* Fix issue with @pytest.parametrize if argnames was specified as keyword arguments.
* Strip whitespace from marker names when reading them from INI config.
* Show full context of doctest source in the pytest output, if the line number of failed example in the docstring is < 9
1.5.3
Fixes
- Add warning about time on very low TTL's in doc/protocol.txt
- pledge privdropping support for OpenBSD
- make for loop more clear in logger watcher
- fix theoretical leak in process_bin_stat
- fix use of unitialized array in lru_maintainer
- -o no_hashexpand to disable hash table expansion
- fix chunked items set in binprot, read from ascii
New Features
- adds get and touch command for ascii protocol
1.5.2
Fixes
- fix more binary protocol documentation errors.
- fix segfault during 31b -> 32b hash table expand
- don't create hashtables larger than 32bit
- some non-user-facing code changes for supporting future features.
1.5.1
Fixes
- add max_connections stat to 'stats' output
- Drop sockets from obviously malicious command strings (HTTP/)
- stats cachedump: now more likely to show data
- memcached-tool: fix slab Full? column
- fix null pointer ref in logger for bin update cmd
- default to unix sockets for tests, make them much less flaky
- PARALLEL=9 make test -> runs prove in parallel
- fix flaky stats.t test
New Features
- --enable-seccomp compiles in options for strict privilege reduction
in linux. see output of -h for more information.
1.5.0
Fixes
- fix for musl libc: avoid huge stack allocation
New Features
- LRU crawler to background-reclaim memory. Mixed-TTL's and LRU
reordering leaves many holes, making it difficult to properly size
an instance.
- Segmented LRU. HOT/WARM/COLD and background processing should try
harder to keep semi-active items in memory for longer.
- Automated slab rebalancing. Avoiding slab stagnation as objects
change size over time.
- Faster hash table lookups with murmur3 algorithm (though it's been
so long this is now outdated again;)
- Reduce memory requirements per-item by a few bytes here and there
- Immediately close connections when hitting the connection limit,
instead of hanging until a spot opens up.
- Items larger than 512k (by default) are assembled by stacking
multiple chunks together. Now raising the item size above 1m doesn't
drop memory efficiency by spreading out slab classes.
1.4.39
Fixes
- fix for CVE-2017-9951
- save four bytes per item if client flags are 0
New Features
- If client flags are "0", no extra storage is used.
1.4.38
Fixes
- hot_max_age is now hot_max_factor - HOT is now limited to 20% of
COLD's age or 20% of total space, whichever comes first.
- sleep longer between slab move runs (1ms instead of 50us)
- automove script: improve algo, add basic test
- slab_rebal: delete busy items if stuck
- fix LRU maintainer thread slowdown in edge case
- fix rare long background thread pause in hash expansion
1.4.37
Fixes
- LRU crawler: avoid running infinitely.
- fix very old memory leak in ASCII multigets. (when using multiget
gets and keys after the first one are >255 characters)
- remove old slab mover example script.
- fix crash in page mover while using large items
- automover algo python script
- avoid segfault if idle_timeout value is missing.
- fix rare crash in LRU crawler
- sleep more aggressively in some threads
- don't overflow item refcount on get
- fix solaris compilation error
- usability fix for cache_memlimit command
- fix verbose print for idle-kicker
- disable refhang.t test due to flakiness
- fix ordering issue in conn dispatch (prevents potential hangups)
New Features
- LRU crawler scheduling improvements
1.4.36
- Fix refcount leak in LRU bump buf
1.4.35
Fixes
- init.d script status check routine
- Print with more-restricted format string to fix compiler warning
with gcc 7's -Wformat-truncation.
- Display HOT/WARM tail age in stats items
- Active items in HOT' flow to WARM (algorithm fix)
- Moves to WARM requires two hits overall (algorithm fix)
- LRU maintainer performance: per-class sleep scheduling
- Allow limiting the internal LRU crawler run length
- Stop using atomics for item refcount management (performance)
- Make the conn suffix list the same as item list (performance)
- Do LRU-bumps while already holding item lock (performance)
- Reduce add_iov() work for TCP connections (performance)
New Features
- "lru" command for setting LRU parameters at runtime
- Allow switching LRU algo's at runtime
0.18.6:
BUG FIXES
* Fix handling of empty repositories in ``porcelain.clone``.
* Raise an error when attempting to add paths that are not under the
repository.
* Fix error message for missing trailing ].
IMPROVEMENTS
* Enforce date field parsing consistency. This also add checks on
those date fields for potential overflow.
2.001003 2017-11-11
- Fix threaded initialization issue better. This is the same issue
that was fixed in 2.001002, but now we use PL_op_mutex instead of
PL_check_mutex. This has the advantage of also being thread-safe on
v5.14.
2.001002 2017-11-09
- Fix crash when Function::Parameters is loaded at runtime by
multiple threads (a stack overflow due to infinite recursion).
This is arguably a core bug (#132413). The current workaround
employed by Function::Parameters slightly abuses an internal perl
mutex meant for something else (protecting op checkers), but it
fixes the issue on perls v5.16 .. v5.26.
v5.14 doesn't have this API yet, so the workaround is not thread
safe there. It is technically possible to still run into this issue
if two threads initialize Function::Parameters at the exact same
moment (I haven't managed to reproduce this yet, so hopefully it's
unlikely in practice).
It is possible to completely avoid the problem on all versions of
perl and Function::Parameters by making sure the module is loaded
before the first thread is created.