-
Notifications
You must be signed in to change notification settings - Fork 64
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
openssl doesn't compile #44
Comments
That's another reason why the wiki page you're following doesn't mention 2012Q4 yet - the 'pk' repo comes with extra patches that do not work with openssl in 2012Q4. You can locally remove /opt/pk/patches/security/openssl and rebuild. I'm sorry, I do not have plans to update pk for 2012Q4 - we stopped using it for 2012Q4, so we'll likely rewrite the docs to work with pkgsrc only (no extra repo), or maybe document how to use pbulk (what we use for automated package building). -F
|
ok ..is it "safe" to use pk to build things and/or to test some new packages= |
Yes, it should be OK. I may revisit and just remove the biggest obstacles with 2012Q4, because I'm not sure how long it will take for the new docs to show up. -F
|
ok thank you, I'm rebuilding all ... I'll keep you posted |
pk cannot create the openssl package --> http://pastebin.com/wgNJUhGG |
Won't fix. Please use other approaches to build packages (rather than pk): http://www.perkin.org.uk/posts/pkgsrc-on-smartos-zone-creation-and-basic-builds.html |
----- 0.9.6 ----- * Issue #44: Test failure on Python 2.4 when MD5 hash doesn't have a `.name` attribute. ----- 0.9.5 ----- * Python #17980: Fix security vulnerability in SSL certificate validation. ----- 0.9.4 ----- * Issue #43: Fix issue (introduced in 0.9.1) with version resolution when upgrading over other releases of Setuptools. ----- 0.9.3 ----- * Issue #42: Fix new ``AttributeError`` introduced in last fix. ----- 0.9.2 ----- * Issue #42: Fix regression where blank checksums would trigger an ``AttributeError``. ----- 0.9.1 ----- * Distribute #386: Allow other positional and keyword arguments to os.open. * Corrected dependency on certifi mis-referenced in 0.9.
Changes since 4.0: - Dropped support for Python below 2.5 and PostgreSQL below 8.3. - Added support for Python up to 2.7 and PostgreSQL up to 9.2. - Particularly, support PQescapeLiteral() and PQescapeIdentifier(). - The query method of the classic API now supports positional parameters. This an effective way to pass arbitrary or unknown data without worrying about SQL injection or syntax errors (contribution by Patrick TJ McPhee). - The classic API now supports a method namedresult() in addition to getresult() and dictresult(), which returns the rows of the result as named tuples if these are supported (Python 2.6 or higher). - The classic API has got the new methods begin(), commit(), rollback(), savepoint() and release() for handling transactions. - Both classic and DBAPI 2 connections can now be used as context managers for encapsulating transactions. - The execute() and executemany() methods now return the cursor object, so you can now write statements like "for row in cursor.execute(...)" (as suggested by Adam Frederick). - Binary objects are now automatically escaped and unescaped. - Bug in money quoting fixed. Amounts of $0.00 handled correctly. - Proper handling of date and time objects as input. - Proper handling of floats with 'nan' or 'inf' values as input. - Fixed the set_decimal() function. - All DatabaseError instances now have a sqlstate attribute. - The getnotify() method can now also return payload strings (#15). - Better support for notice processing with the new methods set_notice_receiver() and get_notice_receiver() (as suggested by Michael Filonenko, see #12 and #37). - Open transactions are rolled back when pgdb connections are closed (as suggested by Peter Harris, see #46). - Connections and cursors can now be used with the "with" statement (as suggested by Peter Harris, see #46). - New method use_regtypes() that can be called to let getattnames() return regular type names instead of the simplified classic types (#44).
----- 0.9.6 ----- * Issue #44: Test failure on Python 2.4 when MD5 hash doesn't have a `.name` attribute. ----- 0.9.5 ----- * Python #17980: Fix security vulnerability in SSL certificate validation. ----- 0.9.4 ----- * Issue #43: Fix issue (introduced in 0.9.1) with version resolution when upgrading over other releases of Setuptools. ----- 0.9.3 ----- * Issue #42: Fix new ``AttributeError`` introduced in last fix. ----- 0.9.2 ----- * Issue #42: Fix regression where blank checksums would trigger an ``AttributeError``. ----- 0.9.1 ----- * Distribute #386: Allow other positional and keyword arguments to os.open. * Corrected dependency on certifi mis-referenced in 0.9.
----- 0.9.6 ----- * Issue #44: Test failure on Python 2.4 when MD5 hash doesn't have a `.name` attribute. ----- 0.9.5 ----- * Python #17980: Fix security vulnerability in SSL certificate validation. ----- 0.9.4 ----- * Issue #43: Fix issue (introduced in 0.9.1) with version resolution when upgrading over other releases of Setuptools. ----- 0.9.3 ----- * Issue #42: Fix new ``AttributeError`` introduced in last fix. ----- 0.9.2 ----- * Issue #42: Fix regression where blank checksums would trigger an ``AttributeError``. ----- 0.9.1 ----- * Distribute #386: Allow other positional and keyword arguments to os.open. * Corrected dependency on certifi mis-referenced in 0.9.
0.9.34 ~~~~~~ Improvements ------------ * Added ability for ``testtools.TestCase`` instances to force a test to fail, even if no assertions failed. (Thomi Richards) * Added ``testtools.content.StacktraceContent``, a content object that automatically creates a ``StackLinesContent`` object containing the current stack trace. (Thomi Richards) * ``AnyMatch`` is now exported properly in ``testtools.matchers``. (Robert Collins, Rob Kennedy, github #44) * In Python 3.3, if there are duplicate test ids, tests.sort() will fail and raise TypeError. Detect the duplicate test ids firstly in sorted_tests() to ensure that all test ids are unique. (Kui Shi, #1243922) * ``json_content`` is now in the ``__all__`` attribute for ``testtools.content``. (Robert Collins) * Network tests now bind to 127.0.0.1 to avoid (even temporary) network visible ports. (Benedikt Morbach, github #46) * Test listing now explicitly indicates by printing 'Failed to import' and exiting (2) when an import has failed rather than only signalling through the test name. (Robert Collins, #1245672) * ``test_compat.TestDetectEncoding.test_bom`` now works on Python 3.3 - the corner case with euc_jp is no longer permitted in Python 3.3 so we can skip it. (Martin [gz], #1251962) 0.9.33 ~~~~~~ Improvements ------------ * Added ``addDetailuniqueName`` method to ``testtools.TestCase`` class. (Thomi Richards) * Removed some unused code from ``testtools.content.TracebackContent``. (Thomi Richards) * Added ``testtools.StackLinesContent``: a content object for displaying pre-processed stack lines. (Thomi Richards) * ``StreamSummary`` was calculating testsRun incorrectly: ``exists`` status tests were counted as run tests, but they are not. (Robert Collins, #1203728) 0.9.32 ~~~~~~ Regular maintenance release. Special thanks to new contributor, Xiao Hanyu! Changes ------- * ``testttols.compat._format_exc_info`` has been refactored into several smaller functions. (Thomi Richards) Improvements ------------ * Stacktrace filtering no longer hides unittest frames that are surrounded by user frames. We will reenable this when we figure out a better algorithm for retaining meaning. (Robert Collins, #1188420) * The compatibility code for skipped tests with unittest2 was broken. (Robert Collins, #1190951) * Various documentation improvements (Clint Byrum, Xiao Hanyu). 0.9.31 ~~~~~~ Improvements ------------ * ``ExpectedException`` now accepts a msg parameter for describing an error, much the same as assertEquals etc. (Robert Collins) 0.9.30 ~~~~~~ A new sort of TestResult, the StreamResult has been added, as a prototype for a revised standard library test result API. Expect this API to change. Although we will try to preserve compatibility for early adopters, it is experimental and we might need to break it if it turns out to be unsuitable. Improvements ------------ * ``assertRaises`` works properly for exception classes that have custom metaclasses * ``ConcurrentTestSuite`` was silently eating exceptions that propagate from the test.run(result) method call. Ignoring them is fine in a normal test runner, but when they happen in a different thread, the thread that called suite.run() is not in the stack anymore, and the exceptions are lost. We now create a synthetic test recording any such exception. (Robert Collins, #1130429) * Fixed SyntaxError raised in ``_compat2x.py`` when installing via Python 3. (Will Bond, #941958) * New class ``StreamResult`` which defines the API for the new result type. (Robert Collins) * New support class ``ConcurrentStreamTestSuite`` for convenient construction and utilisation of ``StreamToQueue`` objects. (Robert Collins) * New support class ``CopyStreamResult`` which forwards events onto multiple ``StreamResult`` objects (each of which receives all the events). (Robert Collins) * New support class ``StreamSummary`` which summarises a ``StreamResult`` stream compatibly with ``TestResult`` code. (Robert Collins) * New support class ``StreamTagger`` which adds or removes tags from ``StreamResult`` events. (RobertCollins) * New support class ``StreamToDict`` which converts a ``StreamResult`` to a series of dicts describing a test. Useful for writing trivial stream analysers. (Robert Collins) * New support class ``TestControl`` which permits cancelling an in-progress run. (Robert Collins) * New support class ``StreamFailFast`` which calls a ``TestControl`` instance to abort the test run when a failure is detected. (Robert Collins) * New support class ``ExtendedToStreamDecorator`` which translates both regular unittest TestResult API calls and the ExtendedTestResult API which testtools has supported into the StreamResult API. ExtendedToStreamDecorator also forwards calls made in the StreamResult API, permitting it to be used anywhere a StreamResult is used. Key TestResult query methods like wasSuccessful and shouldStop are synchronised with the StreamResult API calls, but the detailed statistics like the list of errors are not - a separate consumer will be created to support that. (Robert Collins) * New support class ``StreamToExtendedDecorator`` which translates ``StreamResult`` API calls into ``ExtendedTestResult`` (or any older ``TestResult``) calls. This permits using un-migrated result objects with new runners / tests. (Robert Collins) * New support class ``StreamToQueue`` for sending messages to one ``StreamResult`` from multiple threads. (Robert Collins) * New support class ``TimestampingStreamResult`` which adds a timestamp to events with no timestamp. (Robert Collins) * New ``TestCase`` decorator ``DecorateTestCaseResult`` that adapts the ``TestResult`` or ``StreamResult`` a case will be run with, for ensuring that a particular result object is used even if the runner running the test doesn't know to use it. (Robert Collins) * New test support class ``testtools.testresult.doubles.StreamResult``, which captures all the StreamResult events. (Robert Collins) * ``PlaceHolder`` can now hold tags, and applies them before, and removes them after, the test. (Robert Collins) * ``PlaceHolder`` can now hold timestamps, and applies them before the test and then before the outcome. (Robert Collins) * ``StreamResultRouter`` added. This is useful for demultiplexing - e.g. for partitioning analysis of events or sending feedback encapsulated in StreamResult events back to their source. (Robert Collins) * ``testtools.run.TestProgram`` now supports the ``TestRunner`` taking over responsibility for formatting the output of ``--list-tests``. (Robert Collins) * The error message for setUp and tearDown upcall errors was broken on Python 3.4. (Monty Taylor, Robert Collins, #1140688) * The repr of object() on pypy includes the object id, which was breaking a test that accidentally depended on the CPython repr for object(). (Jonathan Lange) 0.9.29 ~~~~~~ A simple bug fix, and better error messages when you don't up-call. Changes ------- * ``testtools.content_type.ContentType`` incorrectly used ',' rather than ';' to separate parameters. (Robert Collins) Improvements ------------ * ``testtools.compat.unicode_output_stream`` was wrapping a stream encoder around ``io.StringIO`` and ``io.TextIOWrapper`` objects, which was incorrect. (Robert Collins) * Report the name of the source file for setUp and tearDown upcall errors. (Monty Taylor) 0.9.28 ~~~~~~ Testtools has moved VCS - https://github.com/testing-cabal/testtools/ is the new home. Bug tracking is still on Launchpad, and releases are on Pypi. We made this change to take advantage of the richer ecosystem of tools around Git, and to lower the barrier for new contributors. Improvements ------------ * New ``testtools.testcase.attr`` and ``testtools.testcase.WithAttributes`` helpers allow marking up test case methods with simple labels. This permits filtering tests with more granularity than organising them into modules and test classes. (Robert Collins) 0.9.27 ~~~~~~ Improvements ------------ * New matcher ``HasLength`` for matching the length of a collection. (Robert Collins) * New matcher ``MatchesPredicateWithParams`` make it still easier to create ad hoc matchers. (Robert Collins) * We have a simpler release process in future - see doc/hacking.rst. (Robert Collins) 0.9.26 ~~~~~~ Brown paper bag fix: failed to document the need for setup to be able to use extras. Compounded by pip not supporting setup_requires. Changes ------- * setup.py now can generate egg_info even if extras is not available. Also lists extras in setup_requires for easy_install. (Robert Collins, #1102464) 0.9.25 ~~~~~~ Changes ------- * ``python -m testtools.run --load-list`` will now preserve any custom suites (such as ``testtools.FixtureSuite`` or ``testresources.OptimisingTestSuite``) rather than flattening them. (Robert Collins, #827175) * Testtools now depends on extras, a small library split out from it to contain generally useful non-testing facilities. Since extras has been around for a couple of testtools releases now, we're making this into a hard dependency of testtools. (Robert Collins) * Testtools now uses setuptools rather than distutils so that we can document the extras dependency. (Robert Collins) Improvements ------------ * Testtools will no longer override test code registered details called 'traceback' when reporting caught exceptions from test code. (Robert Collins, #812793)
Changes since 4.0: - Dropped support for Python below 2.5 and PostgreSQL below 8.3. - Added support for Python up to 2.7 and PostgreSQL up to 9.2. - Particularly, support PQescapeLiteral() and PQescapeIdentifier(). - The query method of the classic API now supports positional parameters. This an effective way to pass arbitrary or unknown data without worrying about SQL injection or syntax errors (contribution by Patrick TJ McPhee). - The classic API now supports a method namedresult() in addition to getresult() and dictresult(), which returns the rows of the result as named tuples if these are supported (Python 2.6 or higher). - The classic API has got the new methods begin(), commit(), rollback(), savepoint() and release() for handling transactions. - Both classic and DBAPI 2 connections can now be used as context managers for encapsulating transactions. - The execute() and executemany() methods now return the cursor object, so you can now write statements like "for row in cursor.execute(...)" (as suggested by Adam Frederick). - Binary objects are now automatically escaped and unescaped. - Bug in money quoting fixed. Amounts of $0.00 handled correctly. - Proper handling of date and time objects as input. - Proper handling of floats with 'nan' or 'inf' values as input. - Fixed the set_decimal() function. - All DatabaseError instances now have a sqlstate attribute. - The getnotify() method can now also return payload strings (#15). - Better support for notice processing with the new methods set_notice_receiver() and get_notice_receiver() (as suggested by Michael Filonenko, see #12 and #37). - Open transactions are rolled back when pgdb connections are closed (as suggested by Peter Harris, see #46). - Connections and cursors can now be used with the "with" statement (as suggested by Peter Harris, see #46). - New method use_regtypes() that can be called to let getattnames() return regular type names instead of the simplified classic types (#44).
----- 0.9.6 ----- * Issue #44: Test failure on Python 2.4 when MD5 hash doesn't have a `.name` attribute. ----- 0.9.5 ----- * Python #17980: Fix security vulnerability in SSL certificate validation. ----- 0.9.4 ----- * Issue #43: Fix issue (introduced in 0.9.1) with version resolution when upgrading over other releases of Setuptools. ----- 0.9.3 ----- * Issue #42: Fix new ``AttributeError`` introduced in last fix. ----- 0.9.2 ----- * Issue #42: Fix regression where blank checksums would trigger an ``AttributeError``. ----- 0.9.1 ----- * Distribute #386: Allow other positional and keyword arguments to os.open. * Corrected dependency on certifi mis-referenced in 0.9.
0.9.34 ~~~~~~ Improvements ------------ * Added ability for ``testtools.TestCase`` instances to force a test to fail, even if no assertions failed. (Thomi Richards) * Added ``testtools.content.StacktraceContent``, a content object that automatically creates a ``StackLinesContent`` object containing the current stack trace. (Thomi Richards) * ``AnyMatch`` is now exported properly in ``testtools.matchers``. (Robert Collins, Rob Kennedy, github #44) * In Python 3.3, if there are duplicate test ids, tests.sort() will fail and raise TypeError. Detect the duplicate test ids firstly in sorted_tests() to ensure that all test ids are unique. (Kui Shi, #1243922) * ``json_content`` is now in the ``__all__`` attribute for ``testtools.content``. (Robert Collins) * Network tests now bind to 127.0.0.1 to avoid (even temporary) network visible ports. (Benedikt Morbach, github #46) * Test listing now explicitly indicates by printing 'Failed to import' and exiting (2) when an import has failed rather than only signalling through the test name. (Robert Collins, #1245672) * ``test_compat.TestDetectEncoding.test_bom`` now works on Python 3.3 - the corner case with euc_jp is no longer permitted in Python 3.3 so we can skip it. (Martin [gz], #1251962) 0.9.33 ~~~~~~ Improvements ------------ * Added ``addDetailuniqueName`` method to ``testtools.TestCase`` class. (Thomi Richards) * Removed some unused code from ``testtools.content.TracebackContent``. (Thomi Richards) * Added ``testtools.StackLinesContent``: a content object for displaying pre-processed stack lines. (Thomi Richards) * ``StreamSummary`` was calculating testsRun incorrectly: ``exists`` status tests were counted as run tests, but they are not. (Robert Collins, #1203728) 0.9.32 ~~~~~~ Regular maintenance release. Special thanks to new contributor, Xiao Hanyu! Changes ------- * ``testttols.compat._format_exc_info`` has been refactored into several smaller functions. (Thomi Richards) Improvements ------------ * Stacktrace filtering no longer hides unittest frames that are surrounded by user frames. We will reenable this when we figure out a better algorithm for retaining meaning. (Robert Collins, #1188420) * The compatibility code for skipped tests with unittest2 was broken. (Robert Collins, #1190951) * Various documentation improvements (Clint Byrum, Xiao Hanyu). 0.9.31 ~~~~~~ Improvements ------------ * ``ExpectedException`` now accepts a msg parameter for describing an error, much the same as assertEquals etc. (Robert Collins) 0.9.30 ~~~~~~ A new sort of TestResult, the StreamResult has been added, as a prototype for a revised standard library test result API. Expect this API to change. Although we will try to preserve compatibility for early adopters, it is experimental and we might need to break it if it turns out to be unsuitable. Improvements ------------ * ``assertRaises`` works properly for exception classes that have custom metaclasses * ``ConcurrentTestSuite`` was silently eating exceptions that propagate from the test.run(result) method call. Ignoring them is fine in a normal test runner, but when they happen in a different thread, the thread that called suite.run() is not in the stack anymore, and the exceptions are lost. We now create a synthetic test recording any such exception. (Robert Collins, #1130429) * Fixed SyntaxError raised in ``_compat2x.py`` when installing via Python 3. (Will Bond, #941958) * New class ``StreamResult`` which defines the API for the new result type. (Robert Collins) * New support class ``ConcurrentStreamTestSuite`` for convenient construction and utilisation of ``StreamToQueue`` objects. (Robert Collins) * New support class ``CopyStreamResult`` which forwards events onto multiple ``StreamResult`` objects (each of which receives all the events). (Robert Collins) * New support class ``StreamSummary`` which summarises a ``StreamResult`` stream compatibly with ``TestResult`` code. (Robert Collins) * New support class ``StreamTagger`` which adds or removes tags from ``StreamResult`` events. (RobertCollins) * New support class ``StreamToDict`` which converts a ``StreamResult`` to a series of dicts describing a test. Useful for writing trivial stream analysers. (Robert Collins) * New support class ``TestControl`` which permits cancelling an in-progress run. (Robert Collins) * New support class ``StreamFailFast`` which calls a ``TestControl`` instance to abort the test run when a failure is detected. (Robert Collins) * New support class ``ExtendedToStreamDecorator`` which translates both regular unittest TestResult API calls and the ExtendedTestResult API which testtools has supported into the StreamResult API. ExtendedToStreamDecorator also forwards calls made in the StreamResult API, permitting it to be used anywhere a StreamResult is used. Key TestResult query methods like wasSuccessful and shouldStop are synchronised with the StreamResult API calls, but the detailed statistics like the list of errors are not - a separate consumer will be created to support that. (Robert Collins) * New support class ``StreamToExtendedDecorator`` which translates ``StreamResult`` API calls into ``ExtendedTestResult`` (or any older ``TestResult``) calls. This permits using un-migrated result objects with new runners / tests. (Robert Collins) * New support class ``StreamToQueue`` for sending messages to one ``StreamResult`` from multiple threads. (Robert Collins) * New support class ``TimestampingStreamResult`` which adds a timestamp to events with no timestamp. (Robert Collins) * New ``TestCase`` decorator ``DecorateTestCaseResult`` that adapts the ``TestResult`` or ``StreamResult`` a case will be run with, for ensuring that a particular result object is used even if the runner running the test doesn't know to use it. (Robert Collins) * New test support class ``testtools.testresult.doubles.StreamResult``, which captures all the StreamResult events. (Robert Collins) * ``PlaceHolder`` can now hold tags, and applies them before, and removes them after, the test. (Robert Collins) * ``PlaceHolder`` can now hold timestamps, and applies them before the test and then before the outcome. (Robert Collins) * ``StreamResultRouter`` added. This is useful for demultiplexing - e.g. for partitioning analysis of events or sending feedback encapsulated in StreamResult events back to their source. (Robert Collins) * ``testtools.run.TestProgram`` now supports the ``TestRunner`` taking over responsibility for formatting the output of ``--list-tests``. (Robert Collins) * The error message for setUp and tearDown upcall errors was broken on Python 3.4. (Monty Taylor, Robert Collins, #1140688) * The repr of object() on pypy includes the object id, which was breaking a test that accidentally depended on the CPython repr for object(). (Jonathan Lange) 0.9.29 ~~~~~~ A simple bug fix, and better error messages when you don't up-call. Changes ------- * ``testtools.content_type.ContentType`` incorrectly used ',' rather than ';' to separate parameters. (Robert Collins) Improvements ------------ * ``testtools.compat.unicode_output_stream`` was wrapping a stream encoder around ``io.StringIO`` and ``io.TextIOWrapper`` objects, which was incorrect. (Robert Collins) * Report the name of the source file for setUp and tearDown upcall errors. (Monty Taylor) 0.9.28 ~~~~~~ Testtools has moved VCS - https://github.com/testing-cabal/testtools/ is the new home. Bug tracking is still on Launchpad, and releases are on Pypi. We made this change to take advantage of the richer ecosystem of tools around Git, and to lower the barrier for new contributors. Improvements ------------ * New ``testtools.testcase.attr`` and ``testtools.testcase.WithAttributes`` helpers allow marking up test case methods with simple labels. This permits filtering tests with more granularity than organising them into modules and test classes. (Robert Collins) 0.9.27 ~~~~~~ Improvements ------------ * New matcher ``HasLength`` for matching the length of a collection. (Robert Collins) * New matcher ``MatchesPredicateWithParams`` make it still easier to create ad hoc matchers. (Robert Collins) * We have a simpler release process in future - see doc/hacking.rst. (Robert Collins) 0.9.26 ~~~~~~ Brown paper bag fix: failed to document the need for setup to be able to use extras. Compounded by pip not supporting setup_requires. Changes ------- * setup.py now can generate egg_info even if extras is not available. Also lists extras in setup_requires for easy_install. (Robert Collins, #1102464) 0.9.25 ~~~~~~ Changes ------- * ``python -m testtools.run --load-list`` will now preserve any custom suites (such as ``testtools.FixtureSuite`` or ``testresources.OptimisingTestSuite``) rather than flattening them. (Robert Collins, #827175) * Testtools now depends on extras, a small library split out from it to contain generally useful non-testing facilities. Since extras has been around for a couple of testtools releases now, we're making this into a hard dependency of testtools. (Robert Collins) * Testtools now uses setuptools rather than distutils so that we can document the extras dependency. (Robert Collins) Improvements ------------ * Testtools will no longer override test code registered details called 'traceback' when reporting caught exceptions from test code. (Robert Collins, #812793)
Feature request #44: Allow override of the From: field on forensic reports. Feature request #45: Log the host portion of ignored Authentication-Results fields at "debug" level. Feature request #56: Add "RequiredHeaders" setting to enforce syntax checks against a message and reject those that don't comply. Feature request #65: Add "ForensicReportsBcc". Fix bug #46: Charitable tweak to a couple of log messages. Fix bug #55: The "SoftwareHeader" setting wasn't being set properly. Fix bug #58: The "smtp.mailfrom" part of an Authentication-Results field might contain only a domain name. Fix bug #60: Default AuthservID to the name provided by the MTA, not the local host name, which is consistent with what OpenDKIM does. Merge request #2: Validate external recipients before adding them to report recipient lists. Record all DKIM results to the history file, rather than only passing results. BUILD: Fix bug #50: Check libbsd for strlcat() and strlcpy() so we don't make our own when we don't need to. CONTRIB: Fix bug #52: Update path to draft RFC in contrib/spec. CONTRIB: Fix bug #59: Allow database name, userid and password to be specified on the command line rather than hard-coding them. DOCS: Fix bug #48: Add a libopendmarc use overview page. DOCS: Fix bug #53: Add man page for opendmarc-importstats. REPORTS: Fix bug #51: Check status after every phase of SMTP when sending reports. REPORTS: Fix DKIM status importing. LIBOPENDMARC: Fix bug #68: Fix strict/relaxed checking logic when a public suffix list is available. LIBOPENDMARC: Fixed a bug where in some instances the fetch of the orgainizational domain could wrongly return the from domain. LIBOPENDMARC: Fix call to missing function.
2014-04-16 Release 6.06 Ville Skyttä (3): Merge pull request #44 from dsteinbrunner/master Spelling fixes. Merge pull request #55 from oalders/master Karen Etheridge (2): Merge pull request #38 from mbeijen/typo-sting Merge pull request #43 from dsteinbrunner/master David Steinbrunner (2): Spelling corrections Olaf Alders (1): Typo fixes. Steffen Ullrich (1): correct behavior for https_proxy, e.g. don't send plain https:// requests to proxy, but instead establish CONNECT tunnel and then send requests inside tunnel. This change does together with a change in LWP::Protocol::https. The change supports LWP::Protocol::https with the default IO::Socket::SSL backend, but also with Net::SSL. Also: - proxy authorization is supported (http://user:pass@host:port as proxy URL, Net::SSL still needs special HTTPS_PROXY_* environemt variables, as before) - CONNECT request does not need to be the first request inside the tunnel (not with Net::SSL) - conn_cache is read and written inside request(), instead of writing in request() and reading in _new_socket(). If a https tunnel is established the cache_key no longer depends only on proxy host,port but also on the tunnel endpoint - CONNECT is a proxy request and must always use Proxy-Authorization, not Authorization header turugina (1): fix: auth-header of Digest auth did not conform to RFC 2617 when WWW-Authenticate has 'qop' parameter. Gisle Aas (1): SSL libs might trigger ENOTTY on read Michiel Beijen (1): Small typo.
2014-04-16 Release 6.06 Ville Skyttä (3): Merge pull request #44 from dsteinbrunner/master Spelling fixes. Merge pull request #55 from oalders/master Karen Etheridge (2): Merge pull request #38 from mbeijen/typo-sting Merge pull request #43 from dsteinbrunner/master David Steinbrunner (2): Spelling corrections Olaf Alders (1): Typo fixes. Steffen Ullrich (1): correct behavior for https_proxy, e.g. don't send plain https:// requests to proxy, but instead establish CONNECT tunnel and then send requests inside tunnel. This change does together with a change in LWP::Protocol::https. The change supports LWP::Protocol::https with the default IO::Socket::SSL backend, but also with Net::SSL. Also: - proxy authorization is supported (http://user:pass@host:port as proxy URL, Net::SSL still needs special HTTPS_PROXY_* environemt variables, as before) - CONNECT request does not need to be the first request inside the tunnel (not with Net::SSL) - conn_cache is read and written inside request(), instead of writing in request() and reading in _new_socket(). If a https tunnel is established the cache_key no longer depends only on proxy host,port but also on the tunnel endpoint - CONNECT is a proxy request and must always use Proxy-Authorization, not Authorization header turugina (1): fix: auth-header of Digest auth did not conform to RFC 2617 when WWW-Authenticate has 'qop' parameter. Gisle Aas (1): SSL libs might trigger ENOTTY on read Michiel Beijen (1): Small typo.
Upstream changes: 2.25 2014-04-03 09:43:15EST+1100 Australia/Melbourne * DOCS: Spelling fixes in autodie::ScopeUtil (Courtesy Salvatore Bonaccorso) 2.24 2014-03-30 19:30:10EST+1100 Australia/Melbourne * FEATURE: Provide a stack backtrace when `Carp::Always` is enabled. Note that sometimes this is not as pretty as it could be, patches welcome. (Thanks to Niels Thykier, GH #35) * BUGFIX: Fix situations where `no autodie` doesn't respect lexical scope. (Thanks to Niels Thykier, GH #41, RT #72053, RT #86396) * INTERNAL: Remove now unused variables in code (Niels Thykier). * DOCS: Make it extra-clear autodie doesn't check `print`. (Dave Rolsky, GH #39) * TEST: Removed obsolete boilerplate.t * TEST / INTERNAL: Enabled travis-ci for Perl 5.8 * TEST: Stopped some Pod::Coverage tests failing under Perl 5.8 * BUILD: Better support for building in a read-only directory (courtesy Andrew Fresh, GH #46) 2.23 2014-01-27 13:50:55EST+1100 Australia/Melbourne * TEST / BUGFIX: Improved testing support on Android and Blackberry devices. (GH #44, thanks to Hugmeir.) * TEST / INTERNAL / TRAVIS: Various non-code tweaks to make travis-ci more happy with testing autodie. * BUGFIX: autodie no longer weakens strict by allowing undeclared variables with the same name as built-ins. (RT #74246, thanks to Neils Thykier and Father Chrysostomos.) * BUGFIX: `use autodie qw( foo ! foo);` now correctly insists that we have hints for foo. (Thanks Niels Thykier) * INTERNAL: Improved benchmarking code, thanks to Niels Thykier. 2.22 2013-09-21 11:37:14 Asia/Tokyo * TEST / INTERNAL: Restore timestamps on touched testing files to avoid git flagging files having changed in git. (RT #88444, courtesy shay@cpan) 2.21 2013-09-12 13:17:23 Australia/Melbourne Many more improvements from Niels Thykier, great hero of the free people. Plus a compatibility patch from Zefram, keeper of Carp. * SPEED / INTERNAL : Through the magic of globally reuseable core leak trampolines, autodie is even faster when used across multiple pacakages. * SPEED / INTERNAL : Caches used for keeping track of fatalised subroutines are faster and leaner. * SPEED / INTERNAL : Core subroutine wrappers are now lazily compiled. * SPEED / INTERNAL : Using autodie while autodie is already in effect is now faster and more efficient. * INTERNAL : $" and $! are no longer arbitrarily messed with for no reason via autodie. (They're still messed with when using Fatal.) * SPEED / INTERNAL : The ':all' tag hierachy is expanded immediately, in an efficient fashion. * INTERNAL : Numerous minor clean-ups. Dead variables removed. Typos fixed. * SPEED / INTERNAL : import() and _make_fatal() cache more aggressively, reducing CPU overhead. * TEST: Compatibility with Carp 1.32 (thanks to Zefram). RT #88076.
-------------- Changes in Devel::NYTProf 5.07 Fixed use of nytprofcalls and flamegraph scripts to not require PATH #21 Fixed nytprofhtml --open for KDE4 thanks to HMBRAND RT#99080 Fixed for installs into directory path with spaces, mohawk2 #40 Fixed printf NV conversion compiler warnings thanks to zefram RT#91986 Disabled optimize in t/test25-strevalb.t if -DDEBUGGING and perl >= 5.20 as workaround for perl RT#70211, #38 Added 'addtimestamp' option to add a timestamp to the output filename (similar to addpid option), PR#17 thanks to Naosuke Yokoe (zentooo) Added nytprofpf script to generate reports in the plat_forms format http://www.plat-forms.org PR#11 thanks to Holger Schmeisky. Added ability to increase the maximum length of a subroutine name #44 Optimized output performance on threaded perl, thanks to bulk88. PR#27 Add docs re FCGI::Engine and open('-|') #20 Corrected typo in nytprofhtml thanks to wollmers #41 Fixed link to screencast, thanks to Herwin. #19 Added hint to use --no-flame for big reports. #28
v2.0.4 Major Enhancements * Classification thresholds can be enabled or disabled. The default is disabled. The threshold value can be set at initialization time or dynamically during processing (#47) * Made auto-categorization optional, defaulting to false (#45) * Added the ability to handle an array of classifications to the constructor (#44) * Classification with a threshold has been added to the api (#39) Minor Enhancements * Documentation around threshold usage (#54) * Fixed UTF-8 encoding for hasher.rb (#50) * Removed some unnecessary methods (#43) * Add optional CachedContentNode (GSL only) (#43) * Caches the transposed search_vector (#43) * Added custom marshal_ methods to not save the cache when dumping/loading (#43) * Optimized some numeric comparisons and iterators (#43) * Added cached calculation table when computing raw_vectors (#43) * If a category name is already a symbol, just return it (#45) * Various Hash improvements (#45) * Eliminated several Ruby⚠️ s when run with RUBYOPT="-w" (#38) * Simple performance improvements for the Hasher process (#41) * Fixes for broken regex splitting for non-ascii characters and removal of the unused punctuation filter (#41) * Add multiple language stopwords with customizable stop word paths (#40) Bug Fixes * Fixed the bug where adding the same category a second time would clobber the category that was already there (#45) * Fixed deprecation warning for <=> in ls.rb (#33) * Remove references to Madeline in the README and replace it with Marshal or Redis (#32) Development Fixes * Added development dependency on mini_test and added 2.2 to travis.yml (#36)
v1.10.1 ======= * fix issue #73 - in hg pre commit merge, consider parent1 instead of failing v1.10.0 ======= * add support for overriding the version number via the environment variable SETUPTOOLS_SCM_PRETEND_VERSION * fix isssue #63 by adding the --match parameter to the git describe call and prepare the possibility of passing more options to scm backends * fix issue #70 and #71 by introducing the parse keyword to specify custom scm parsing, its an expert feature, use with caution this change also introduces the setuptools_scm.parse_scm_fallback entrypoint which can be used to register custom archive fallbacks v1.9.0 ====== * Add :code:`relative_to` parameter to :code:`get_version` function; fixes #44 per #45. v1.8.0 ====== * fix issue with setuptools wrong version warnings being printed to standard out. User is informed now by distutils-warnings. * restructure root finding, we now reliably ignore outer scm and prefer PKG-INFO over scm, fixes #43 and #45 v1.7.0 ====== * correct the url to github thanks David Szotten * enhance scm not found errors with a note on git tarballs thanks Markus * add support for :code:`write_to_template`
* Disable debug library Changelog: Release 1.6.1 (2015-08-03) ========================== - added project and solution files for Visual Studio 2015 - upgraded bundled SQLite to 3.8.11.1 - fixed GH #782: Poco::JSON::PrintHandler not working for nested arrays - fixed GH #819: JSON Stringifier fails with preserve insert order - fixed GH #878: UUID tryParse - fixed GH #869: FIFOBuffer::read(T*, std::size_t) documentation inaccurate - fixed GH #861: Var BadCastException - fixed GH #779: BUG in 1.6.0 Zip code - fixed GH #769: Poco::Var operator== throws exception - fixed GH #766: Poco::JSON::PrintHandler not working for objects in array - fixed GH #763: Unable to build static with NetSSL_OpenSSL for OS X - fixed GH #750: BsonWriter::write<Binary::Ptr> missing size ? - fixed GH #741: Timestamp anomaly in Poco::Logger on WindowsCE - fixed GH #735: WEC2013 build fails due to missing Poco::Path methods. - fixed GH #722: poco-1.6.0: Unicode Converter Test confuses string and char types - fixed GH #719: StreamSocket::receiveBytes and FIFOBuffer issue in 1.6 - fixed GH #706: POCO1.6 Sample EchoServer BUG - fixed GH #646: Prevent possible data race in access to Timer::_periodicInerval - DeflatingStream: do not flush underlying stream on sync() as these can cause corrupted files in Zip archives Release 1.6.0 (2014-12-22) ========================== - fixed GH #625: MongoDB ensureIndex double insert? - fixed GH #622: Crypto: RSATest::testSign() should verify with public key only - fixed GH #620: Data documentation sample code outdated - fixed GH #618: OS X 10.10 defines PAGE_SIZE macro, conflicts with PAGE_SIZE in Thread_POSIX.cpp - fixed GH #616: Visual Studio warning C4244 - fixed GH #612: OpenSSLInitializer calls OPENSSL_config but not CONF_modules_free - fixed GH #608: (Parallel)SocketAcceptor ctor/dtor call virtual functions - fixed GH #607: Idle Reactor high CPU usage - fixed GH #606: HTMLForm constructor read application/x-www-form-urlencoded UTF-8 request body first parameter with BOM in name - fixed GH #596: For OpenSSL 1.0.1, include openssl/crypto.h not openssl/fips.h - fixed GH #592: Incorrect format string in Poco::Dynamic::Struct - fixed GH #590: Poco::Data::SQlite doesn't support URI filenames - fixed GH #564: URI::encode - fixed GH #560: DateTime class calculates a wrong day - fixed GH #549: Memory allocation is not safe between fork() and execve() - fixed GH #500: SSLManager causes a crash - fixed GH #490: 2 byte frame with payload length of 0 throws "Incomplete Frame Received" exception - fixed GH #483: multiple cases for sqlite_busy - fixed GH #482: Poco::JSON::Stringifier::stringify bad behaviour - fixed GH #478: HTTPCredentials not according to HTTP spec - fixed GH #471: vs2010 release builds have optimization disabled ? - fixed GH #468: HTTPClientSession/HTTPResponse not forwarding exceptions - fixed GH #438: Poco::File::setLastModified() doesn't work - fixed GH #402: StreamSocket::receiveBytes(FIFOBuffer&) and sendBytes(FIFOBuffer&) are not thread safe - fixed GH #345: Linker warning LNK4221 in Foundation for SignalHandler.obj, String.obj and ByteOrder.obj - fixed GH #331: Poco::Zip does not support files with ".." in the name. - fixed GH #318: Logger local time doesn't automatically account for DST - fixed GH #294: Poco::Net::TCPServerParams::setMaxThreads(int count) will not accept count == 0. - fixed GH #215: develop WinCE build broken - fixed GH #63: Net::NameValueCollection::size() returns int - Poco::Logger: formatting methods now support up to 10 arguments. - added Poco::Timestamp::raw() - Poco::DeflatingOutputStream and Poco::InflatingOutputStreams also flush underlying stream on flush()/sync(). - Poco::Util::Timer: prevent re-schedule of cancelled TimerTask - enabled WinRegistryKey and WinRegistryConfiguration for WinCE - Poco::BasicEvent improvements and preparations for future support of lambdas/std::function - upgraded bundled sqlite to 3.8.7.2 - Poco::Thread: added support for starting functors/lambdas - Poco::Net::HTTPClientSession: added support for global proxy configuration - added support for OAuth 1.0/2.0 via Poco::Net::OAuth10Credentials and Poco::Net::OAuth20Credentials classes. - Poco::Net::IPAddress: fixed IPv6 prefix handling issue on Windows - added Poco::Timestamp::TIMEVAL_MIN and Poco::Timestamp::TIMEVAL_MAX - added Poco::Clock::CLOCKVAL_MIN and Poco::Clock::CLOCKVAL_MAX - added poco_assert_msg() and poco_assert_msg_dbg() macros - Poco::Net::Context: fixed a memory leak if the CA file was not found while creating the Context object (the underlying OpenSSL context would leak) - Poco::URI: added new constructor to create URI from Path - Various documentation and style fixes - Removed support (project/solution files) for Visual Studio.NET 2003 and Visual Studio 2005. - Improved CMake support Release 1.5.4 (2014-10-14) ========================== - fixed GH #326: compile Net lib 1.5.2 without UTF8 support enabled - fixed GH #518: NetworkInterface.cpp compile error w/ POCO_NO_WSTRING (1.5.3) - Fixed MSVC 2010 warnings on large alignment - make HTTPAuthenticationParams::parse() add value on end of string - fixed GH #482: Poco::JSON::Stringifier::stringify bad behaviour - fixed GH #508: Can't compile for arm64 architecture - fixed GH #510: Incorrect RSAKey construction from istream - fix SharedMemory for WinCE/WEC2013 - Add NIOS2 double conversion detection, fixes compile errors - added VS2013 project/solution files for Windows Embedded Compact 2013 - added Process::isRunning() - NetSSL: Fix typo in documentation - NetSSL_OpenSSL: support for TLS 1.1 and 1.2 - Zip: Added CM_AUTO, which automatically selects CM_STORE or CM_DEFLATE based on file extension. Used to avoid double-compression of already compressed file formats such as images. - added %L modifier to PatternFormatter to switch to local time - removed unnecessary explicit in some multi-arg constructors - Allow SecureStreamSocket::attach() to be used in server connections - added Var::isBoolean() and fixed JSON stringifier - added poco_unexpected() macro invoking Bugcheck::unexpected() to deal with unexpected exceptions in destructors - fixed GH #538 prevent destructors from throwing exceptions - improved HTTP server handling of errors while reading header - fixed GH #545: use short for sign - upgraded SQLite to 3.8.6 - fixed GH #550 WebSocket fragmented message problem - improved HTTPClientSession handling of network errors while sending the request - updated bundled PCRE to 8.35.0 - fixed GH #552: FIFOBuffer drain() problem - fixed GH #402: StreamSocket::receiveBytes(FIFOBuffer&) and sendBytes(FIFOBuffer&) are not thread safe - HTTPCookie: fix documentation for max age - added Timestamp::raw() and Clock::raw() - Poco::Buffer properly handles zero-sized buffers - GH #512: Poco:Data:ODBC:Binder.h causes a crash - Added Crypto_Win and NetSSL_Win libraries which are re-implementations of existing Crypto and NetSSL_OpenSSL libraries based on WinCrypt/Schannel. The new libraries can be used as an almost drop-in replacement for the OpenSSL based libraries on Windows and Windows Embedded Compact platforms. Only available from GitHub for now. Release 1.5.3 (2014-06-30) ========================== - fixed GH# 316: Poco::DateTimeFormatter::append() gives wrong result for Poco::LocalDateTime - Poco::Data::MySQL: added SQLite thread cleanup handler - Poco::Net::X509Certificate: improved and fixed domain name verification for wildcard domains - added Poco::Clock class, which uses a system-provided monotonic clock (if available) and is thus not affected by system realtime clock changes. Monotonic Clock is available on Windows, Linux, OS X and on POSIX platforms supporting clock_gettime() and CLOCK_MONOTONIC. - Poco::Timer, Poco::Stopwatch, Poco::TimedNotificationQueue and Poco::Util::Timer have been changed to use Poco::Clock instead of Poco::Timestamp and are now unaffected by system realtime clock changes. - fixed GH# 350: Memory leak in Data/ODBC with BLOB - Correctly set MySQL time_type for Poco::Data::Date. - fixed GH #352: Removed redundant #includes and fixed spelling mistakes. - fixed setting of MYSQL_BIND is_unsigned value. - fixed GH #360: CMakeLists foundation: add Clock.cpp in the list of source files - Add extern "C" around <net/if.h> on HPUX platform. - added runtests.sh - fixed CPPUNIT_IGNORE parsing - fixed Glob from start path, for platforms not alowing transverse from root (Android) - added NTPClient (Rangel Reale) - added PowerShell build script - added SmartOS build support - fix warnings in headers - XMLWriter: removed unnecessary apostrophe escaping (&apos) - MongoDB: use Int32 for messageLength - fixed GH #380: SecureSocket+DialogSocket crashes with SIGSEGV when timeout occours - Improve RSADigestEngine, using Poco::Crypto::DigestEngine to calculate hash before signing - added Poco::PBKDF2Engine - Fixed GH #380: SecureSocket+DialogSocket crashes with SIGSEGV when timeout occours - added support for a 'Priority' attribute on cookies. - GH #386: fixed bug in MailMessage without content-transfer-encoding header - GH #384: ew hash algorithms support for RSADigestEngine - fixed Clock overflow bug on Windows - Poco::ByteOrder now uses intrinsics, if available - CMake: added /bigobj option for msvc - Fix typo to restore Net/TestSuite_x64_vs120 build - correct path for CONFIGURE_FILE in CMakeLists.txt - Building Poco 1.5.2 for Synology RS812+ (Intel Atom) (honor POCO_NO_INOTIFY) - added WEC2013 support to buildwin.cmd and buildwin.ps1 - HTMLForm: in URL encoding, percent-encode more characters - Fixed #include <linux/if.h> conflict with other libraries - Poco::Net::X509Certificate::verify() no longer uses DNS reverse lookups to validate host names - cert hostname validation is case insensitive and stricter for wildcard certificates - TCPServer: do not reduce the capacity of the default ThreadPool - added POCO_LOG_DEBUG flag - Zip: fixed a crash caused by an I/O error - added runtest script for windows - added SQlite Full Text Search support - added Thread::trySleep() and Thread::wakeUp() - fixed GH #410: Bug in JSON::Object.stringify() in 1.5.2 - fixed GH #362: Defect in Var::parseString when there is no space between value and newline - fixed GH #314: JSON parsing bug - added GH #313: MetaColumn additions for Data::ODBC and Data::SQLite - fixed GH #346: Make Poco::Data::Date and Poco::Data::Time compare functions const. - fixed GH #341: Compiling poco-1.5.2 for Cygwin - fixed GH #305: There are bugs in Buffer.h - fixed GH #321: trivial build fixes (BB QNX build) - fixed GH #440: MongoDB ObjectId string formatting - added SevenZip library (Guenter Obiltschnig) - fixed GH #442: Use correct prefix length field of Windows IP_ADAPTER_PREFIX structure - improved GH #328: NetworkInterface on Windows XP - fixed GH #154 Add support for MYSQL_TYPE_NEWDECIMAL to Poco::Data::MySQL - fixed GH #290: Unicode support - fixed GH #318: Logger local time doesn't automatically account for DST - fixed GH #363: DateTimeParser tryParse/parse - added HTMLForm Content-Length calculation (Rangel Reale) - Make TemporaryFile append a slash to tempDir - fixed GH #319 android build with cmake - added hasDelegates() method to AbstractEvent - fixed GH #230: Poco::Timer problem - fixed GH #317: Poco::Zip does not support newer Zip file versions. - fixed GH #176: Poco::JSON::Stringifier UTF encoding - fixed GH #458: Broadcast address and subnet mask for IEEE802.11 network interface - fixed GH #456: poco: library install dirs per RUNTIME/LIBRARY/ARCHIVE Release 1.5.2 (2013-09-16) ========================== - added MongoDB library - fixed GH #57: poco-1.5.1: Doesn't compile for Android - added VoidEvent (Arturo Castro) - fixed GH #80: NumberFormatter::append broken - fixed GH #93: ParallelSocketAcceptor virtual functions - optional small object optimization for IPAddress, SocketAddress, Any and Dynamic::Var - SQLite events (insert, update, delete, commit, rollback) handlers - merged GH #91: Improve SQLite multi-threaded use (Rangel Reale) - merged GH #86: Invalid pointers to vector internals (Adrian Imboden) - automatic library initialization macros - fixed GH #110: WebSocket accept() fails when Connection header contains multiple tokens - fixed GH #71: WebSocket and broken Timeouts (POCO_BROKEN_TIMEOUTS) - fixed a warning in Poco/Crypto/OpenSSLInitializer.h - fixed GH #109: Bug in Poco::Net::SMTPClientSession::loginUsingPlain - added clang libc++ build configurations for Darwin and iPhone (Andrea Bigagli) - fixed GH #116: Wrong timezone parsing in DateTimeParse (Matej Knopp) - fixed GH #118: JSON::Object::stringify endless loop - added Recursive and SortedDirectoryIterator (Marian Krivos) - added ListMap (map-like container with preserving insertion order) - MailMessage: attachments saving support and consistent read/write - fixed GH #124: Possible buffer overrun in Foundation/EventLogChannel - fixed GH #119: JSON::Object holds values in ordered map - added JSON::PrintHandler - renamed JSON::DefaultHandler to ParseHandler (breaking change!) - fixed GH #127: Eliminate -Wshadow warnings - fixed GH #79: Poco::Thread leak on Linux - fixed GH #61: static_md build configs for Crypto and NetSSL - fixed GH #130: prefer sysconf over sysctlbyname - fixed GH #131: no timezone global var on OpenBSD - fixed GH #102: Some subprojects don't have x64 solutions for VS 2010 - added GH #75: Poco::Uri addQueryParameter method - Poco::Environment::osDisplayName() now recognizes Windows 8/Server 2012 - fixed GH #140: Poco::Runnable threading cleanup issue - simplified default TCP/HTTPServer construction - fixed GH #141: Application::run() documentation/implementation discrepancy - changed RowFormatter to SharedPtr<RowFormatter> in Data::RecordSet interface (breaking change!) - fixed GH #144: Poco::Dynamic emits invalid JSON - removed naked pointers from Data interfaces - fixed GH #82: name conflict in Data::Keywords::bind - fixed GH #157: MySQL: cannot bind to 'long' data type on Windows/Visual C++ - fixed GH #158: MySQL: MYSQL_BIND 'is_unsigned' member is not set - fixed GH #160: MultipartReader ignores first part, if preamble is missing - fixed GH #156: Possible buffer overrun in Foundation/EventLogChannel - XML: fixed an issue with parsing a memory buffer > 2 GB - upgraded to expat 2.1.0 - Data/ODBC: added support for setting query timeout (via setProperty of "queryTimeout"). Timeout is int, given in seconds. - fixed a potential endless loop in SecureStreamSocketImpl::sendBytes() and also removed unnecessary code. - fixed GH #159: Crash in openssl CRYPTO_thread_id() after library libPocoCrypto.so has been unloaded. - fixed GH #155: MailOutputStream mangles consecutive newline sequences - fixed GH #139: FileChannel::PROP_FLUSH is invalid (contains a tab character) - fixed GH #173: HTTPClientSession::proxyConnect forces DNS lookup of host names - fixed GH #194: MessageNotification constructor is inefficient. - fixed GH #189: Poco::NumberParser::tryParse() documentation bug - fixed GH #172: IPv6 Host field is stripped of Brackets in HTTPClientSession - fixed GH #188: Net: SocketAddress operator < unusable for std::map key - fixed GH #128: DOMWriter incorrectly adds SYSTEM keyword to DTD if PUBLIC is already specified - fixed GH #65: Poco::format() misorders sign and padding specifiers - upgraded bundled SQLite to 3.7.17 - replaced JSON parser with Poco::Web::JSON parser (from sandbox) - added JSON conversion to Dynamic Struct and Array - added VarIterator - modified behavior of empty Var (empty == empty) - added Alignment.h header for C++03 alignment needs - added Data/WebNotifier (DB, WebSocket) example - fixed GH #209: Poco::NumberFormatter double length - fixed GH #204: Upgrade zlib to 1.2.8 - fixed GH #198: The "application.configDir" property is not always created. - fixed GH #185: Poco::NumberFormatter::format(double value, int precision) ignore precision == 0 - fixed GH #138: FreeBSD JSON tests fail - fixed GH #99: JSON::Query an JSON::Object - limited allowed types for JSON::Query to Object, Array, Object::Ptr, Array::Ptr and empty - fixed GH #175: HTMLForm does not read URL parameters on POST or PUT - added GH #187: MySQL: allow access to the underlying connection handle - added GH #186: MySQL: support for MYSQL_SECURE_AUTH - fixed GH #174: MySQL: 4GB allocated when reading any largetext or largeblob field - fixed a potential memory leak in Poco::Net::HTTPClientSession if it is misused (e.g., sendRequest() is sent two times in a row without an intermediate call to receiveResponse(), or by calling receiveResponse() two times in a row without an intermediate call to sendRequest()) - GH #217 - removed a few unnecessary protected accessor methods from Poco::Net::HTTPClientSession that would provide inappropriate access to internal state - merged GH #210: Don't call CloseHandle() twice on Windows; Ability to select the threadpool that will be used to start an Activity(Patrice Tarabbia) - fixed GH #212: JSONConfiguration was missing from the vs90 project(Patrice Tarabbia) - fixed GH #220: add qualifiers for FPEnvironment in C99 (Lucas Clemente) - fixed GH #222: HTTPCookie doesn't support expiry times in the past (Karl Reid) - fixed GH #224: building 1.5.1 on Windows for x64 - fixed GH# 233: ServerSocket::bind6(Poco::UInt16 port, bool reuseAddress, bool ipV6Only) does not work - fixed GH# 231: Compatibility issue with Poco::Net::NetworkInterface - fixed GH# 236: Bug in RecursiveDirectoryIterator - added ColorConsoleChannel and WindowsColorConsoleChannel classes supporting colorizing log messages - fixed GH# 259: Poco::EventLogChannel fails to find 64bit Poco Foundation dll - fixed GH# 254: UTF8::icompare unexpected behavior - Poco::UUID::tryParse() also accepts UUIDs without hyphens. Also updated documentation (links to specifications). - added GH# 268: Method to get JSON object value using Poco::Nullable - fixed GH# 267: JSON 'find' not returning empty result if object is expected but another value is found - Added support for ARM64 architecture and iPhone 5s 64-bit builds (POCO_TARGET_OSARCH=arm64). Release 1.5.1 (2013-01-11) ========================== - using double-conversion library for floating-point numeric/string conversions - added Poco::istring (case-insensitive string) and Poco::isubstr - added SQLite sys.dual (in-memory system table) - applied SF Patch #120: The ExpireLRUCache does not compile with a tuple as key on Visual Studio 2010 - fixed SF Bug #599: JSON::Array and JSON::Object size() member can implicitly lose precision - fixed SF Bug #602: iterating database table rows not correct if no data in table - fixed SF Bug #603: count() is missing in HashMap - fixed GH #23: JSON::Object::stringify throw BadCastException - fixed GH #16: NetworkInterface::firstAddress() should not throw on unconfigured interfaces - Android compile/build support (by Rangel Reale) - TypeHandler::prepare() now takes const-reference - fixed GH #27: Poco::URI::decode() doesn't properly handle '+' - fixed GH #31: JSON implementation bug - fixed SF #597: Configure script ignores cflags - fixed SF #593: Poco 1.5.0 on FreeBSD: cannot find -ldl - added SF #542: SocketAddress() needs port-only constructor - fixed SF #215: Wrong return type in SocketConnector.h - applied SF Patch #97: fix c++0x / clang++ bugs - fixed GH32/SF596: Poco::JSON: Parsing long integer (int64) value fails. - added Net ifconfig sample (contributed by Philip Prindeville) - merged GH #34: add algorithm header (Roger Meier/Philip Prindeville) - fixed GH #26: Cannot compile on gcc - merged SF #111: FTP Client logging (Marian Krivos) - fixed GH #30: Poco::Path::home() throws when called from Windows Service - fixed GH #22: MySQL connection string lowercased - added MySQL support for Date/Time - upgraded SQLite to version 3.7.15.1 (2012-12-19) - improved SQLite execute() return (affected rows) value and added tests - added SQLite::Utility::isThreadSafe() function - added SQLite::Utility::setThreadMode(int mode) function - fixed GH #36: 'distclean' requires 3 traversals of project tree - fixed GH #41: Buffer::resize crash - fixed GH #42: Linux unbundled builds don't link - fixed GH #44: Problems with win x64 build - fixed GH #46: 1.5.1 build fails on OS X when using libc++ - fixed GH #48: Need getArgs() accessor to Util::Application to retrieve start-up arguments - fixed GH #49: NetworkInterface::list doesn't return MAC addresses - fixed GH #51: Android should use isfinite, isinf, isnan and signbit from the std namespace - fixed GH #53: JSON unicode fixes and running tests on invalid unicode JSON - added ParallelAcceptor and ParallelReactor classes - added EOF and error to FIFOBuffer Release 1.5.0 (2012-10-14) ========================== - added JSON library - added Util::JSONConfiguration - added FIFOBuffer and FIFOBufferStream - fixed SF# 3522906: Unregistering handlers from SocketReactor - fixed SF# 3522084: AbstractConfiguration does not support 64-bit integers - HTTPServer::stopAll(): close the socket instead of just shutting it down, as the latter won't wake up a select() on Windows - added SMTPLogger - added cmake support - fixed SF#3538778: NetworkInterface enumeration uses deprecated API - fixed SF#3538779: IPAddress lacks useful constructors: from prefix mask, native SOCKADDR - fixed SF#3538780: SocketAddress needs operator < function - fixed SF#3538775: Issues building on Fedora/Centos, etc. for AMD64 - fixed SF#3538786: Use size_t for describing data-blocks in DigestEngine - added IPAddress bitwise operators (&,|,^,~) - added IPAddress BinaryReader/Writer << and >> operators - modified IPAddress to force IPv6 to lowercase (RFC 5952) - fixed SF#3538785: SMTPClientSession::sendMessage() should take recipient list - added IPAddress::prefixLength() - UTF portability improvements - fixed SF#3556186: Linux shouldn't use <net/if.h> in Net/SocketDefs.h - added IPAddress RFC 4291 compatible site-local prefix support - fixed SF#3012166: IPv6 patch - added SF#3558085: Add formatter to MACAddress object - fixed SF#3552774: Don't hide default target in subordinate makefile - fixed SF#3534307: Building IPv6 for Linux by default - fixed SF#3516844: poco missing symbols with external >=lipcre-8.13 - added SF#3544720: AbstractConfigurator to support 64bit values - fixed SF#3522081: WinRegistryConfiguration unable to read REG_QWORD values - fixed SF#3563626: For Win32 set Up/Running flags on NetworkInterface - fixed SF#3560807: Deprecate setPeerAddress() as this is now done in getifaddrs - fixed SF#3560776: Fix byte-ordering issues with INADDR_* literals - fixed SF#3563627: Set IP address on multicast socket from socket family - fixed SF#3563999: Size BinaryWriter based on buffer's capacity(), not size() - fixed SF#102 Fix building Poco on Debian GNU/kFreeBSD - fixed SF#321 Binding DatTime or Timestamp - fixed SF#307 Detect the SQL driver type at run time - added VS 2012 Projects/Solutions - enhanced and accelerated numeric parsing for integers and floats - fixed SF#590 Segfault on FreeBSD when stack size not rounded - added warn function and warnmsg macro in CppUnit - fixed SF# 3558012 Compilation fails when building with -ansi or -std=c++0x - fixed SF# 3563517 Get rid of loss-of-precision warnings on x64 MacOS - fixed SF#3562244: Portability fix for AF_LINK - fixed SF #3562400: DatagramSocketImpl comment is incorrect Release 1.4.7p1 (2014-11-25) ============================ - Fixed Visual C++ 2010-2013 project files. Release builds now have optimization enabled. - Poco::URI: added constructor to create URI from Path. - fixed GH #618: OS X 10.10 defines PAGE_SIZE macro, conflicts with PAGE_SIZE in Thread_POSIX.cpp - Poco::Net::HTTPClientSession: added support for global proxy configuration - fixed GH #331: Poco::Zip does not support files with .. in the name. - fixed a memory leak in Poco::Net::Context constructor when it fails to load the certificate or private key files. - upgraded bundled SQLite to 3.8.7.2 - fixed GH #229: added missing value() function - fixed GH #69: MySQL empty text/blob Release 1.4.7 (2014-10-06) ========================== - fixed GH #398: PropertyFileConfiguration: input != output - fixed GH #368: Build failure of Poco 1.4.6p2 on FreeBSD 9.2 - fixed GH #318: Logger local time doesn't automatically account for DST - fixed GH #317: Poco::Zip does not support newer Zip file versions. - fixed GH #454: Fix: handle unhandled exceptions - fixed GH #463: XML does not compile with XML_UNICODE_WCHAR_T - fixed GH #282: Using Thread in a global can cause crash on Windows - fixed GH #424: Poco::Timer deadlock - fixed GH #465: Fix result enum type XML_Error -> XML_Status - fixed GH #510: Incorrect RSAKey construction from istream - fixed GH #332: POCO::ConsoleChannnel::initColors() assigns no color to PRIO_TRACE and wrong color to PRIO_FATAL - fixed GH #550: WebSocket fragmented message problem - Poco::Data::MySQL: added SQLite thread cleanup handler - Poco::Net::X509Certificate: improved and fixed domain name verification for wildcard domains - fixed a crash in Foundation testsuite with Visual C++ 2012 - improved and fixed domain name verification for wildcard domains in Poco::Net::X509Certificate - updated TwitterClient sample to use new 1.1 API and OAuth - added Poco::Clock class, which uses a system-provided monotonic clock (if available) and is thus not affected by system realtime clock changes. Monotonic Clock is available on Windows, Linux, OS X and on POSIX platforms supporting clock_gettime() and CLOCK_MONOTONIC. - Poco::Timer, Poco::Stopwatch, Poco::TimedNotificationQueue and Poco::Util::Timer have been changed to use Poco::Clock instead of Poco::Timestamp and are now unaffected by system realtime clock changes. - added Poco::PBKDF2Engine class template - Poco::Net::HTTPCookie: added support for Priority attribute (backport from develop) - fixed makedepend.* scripts to work in paths containing '.o*' (contributed by Per-Erik Bjorkstad, Hakan Bengtsen) - Upgraded bundled SQLite to 3.8.6 - Support for Windows Embedded Compact 2013 (Visual Studio 2012) - Project and solution files for Visual Studio 2013 - Changes for C++11 compatibility. - fixed an issue with receiving empty web socket frames (such as ping) - improved error handling in secure socket classes - Poco::ByteOrder now uses intrinsics if available - added new text encoding classes: Latin2Encoding, Windows1250Encoding, Windows1251Encoding - Zip: Added CM_AUTO, which automatically selects CM_STORE or CM_DEFLATE based on file extension. Used to avoid double-compression of already compressed file formats such as images. Release 1.4.6p4 (2014-04-18) ============================ - no longer use reverse DNS lookups for cert hostname validation - cert hostname validation is case insensitive and more strict - HTMLForm: in URL encoding, percent-encode more special characters - fixed thread priority issues on POSIX platforms with non-standard scheduling policy - XMLWriter no longer escapes apostrophe character - fixed GH #316: Poco::DateTimeFormatter::append() gives wrong result for Poco::LocalDateTime - fixed GH #305 (memcpy in Poco::Buffer uses wrong size if type != char) - Zip: fixed a crash caused by an I/O error (e.g., full disk) while creating a Zip archive Release 1.4.6p3 (2014-04-02) ============================ - Fixed a potential security vulnerability in client-side X509 certificate verification. Release 1.4.6p2 (2013-09-16) ============================ - fixed GH #156: Possible buffer overrun in Foundation/EventLogChannel - XML: fixed an issue with parsing a memory buffer > 2 GB - upgraded to expat 2.1.0 - Data/ODBC: added support for setting query timeout (via setProperty of "queryTimeout"). Timeout is int, given in seconds. - fixed a potential endless loop in SecureStreamSocketImpl::sendBytes() and also removed unnecessary code. - fixed GH #159: Crash in openssl CRYPTO_thread_id() after library libPocoCrypto.so has been unloaded. - fixed GH #155: MailOutputStream mangles consecutive newline sequences - fixed GH# 139: FileChannel::PROP_FLUSH is invalid (contains a tab character) - fixed GH# 173: HTTPClientSession::proxyConnect forces DNS lookup of host names - fixed GH# 194: MessageNotification constructor is inefficient. - fixed GH# 189: Poco::NumberParser::tryParse() documentation bug - fixed GH# 172: IPv6 Host field is stripped of Brackets in HTTPClientSession - fixed GH# 188: Net: SocketAddress operator < unusable for std::map key - fixed GH# 128: DOMWriter incorrectly adds SYSTEM keyword to DTD if PUBLIC is already specified - fixed GH# 65: Poco::format() misorders sign and padding specifiers - upgraded bundled SQLite to 3.7.17 - upgraded bundled zlib to 1.2.8 - fixed a potential memory leak in Poco::Net::HTTPClientSession if it is misused (e.g., sendRequest() is sent two times in a row without an intermediate call to receiveResponse(), or by calling receiveResponse() two times in a row without an intermediate call to sendRequest()) - GH #217 - removed a few unnecessary protected accessor methods from Poco::Net::HTTPClientSession that would provide inappropriate access to internal state - fixed GH# 223 (Poco::Net::HTTPCookie does not support expiry times in the past) - fixed GH# 233: ServerSocket::bind6(Poco::UInt16 port, bool reuseAddress, bool ipV6Only) does not work - added ColorConsoleChannel and WindowsColorConsoleChannel classes supporting colorizing log messages - fixed GH# 259: Poco::EventLogChannel fails to find 64bit Poco Foundation dll - fixed GH# 254: UTF8::icompare unexpected behavior - Poco::UUID::tryParse() also accepts UUIDs without hyphens. Also updated documentation (links to specifications). - Added support for ARM64 architecture and iPhone 5s 64-bit builds (POCO_TARGET_OSARCH=arm64). Release 1.4.6p1 (2013-03-06) ============================ - fixed GH# 71: WebSocket and broken Timeouts (POCO_BROKEN_TIMEOUTS) - fixed an ambiguity error with VC++ 2010 in Data/MySQL testsuite - Poco::Net::NetworkInterface now provides the interface index even for IPv4 - added DNS::reload() as a wrapper for res_init(). - On Linux, Poco::Environment::nodeId() first always tries to obtain the MAC address of eth0, before looking for other interfaces. - Poco::Net::HTTPSession now always resets the buffer in connect() to clear any leftover data from a (failed) previous session - fixed copysign namespace issue in FPEnvironment_DUMMY.h - fixed a warning in Poco/Crypto/OpenSSLInitializer.h - added a build configuration for BeagleBoard/Angstrom - fixed GH# 109: Bug in Poco::Net::SMTPClientSession::loginUsingPlain) - fixed compile errors with clang -std=c++11 - fixed GH# 116: Wrong timezone parsing in DateTimeParse (fix by Matej Knopp) - updated bundled SQLite to 3.7.15.2 Release 1.4.6 (2013-01-10) ========================== - changed FPEnvironment_DUMMY.h to include <cmath> instead of <math.h> - updated bundled SQLite to 3.7.15.1 - fixed GH# 30: Poco::Path::home() throws - fixed SF Patch# 120 The ExpireLRUCache does not compile with a tuple as key on VS2010 - fixed SF# 603 count() is missing in HashMap - Crypto and NetSSL_OpenSSL project files now use OpenSSL *MD.lib library files for static_md builds. Previously, the DLL import libs were used. - Poco::Environment::osDisplayName() now recognizes Windows 8/Server 2012 Release 1.4.5 (2012-11-19) ========================== - added Visual Studio 2012 project files - buildwin.cmd now support building with msbuild for VS2010 and 2012. - added Poco::Optional class - fixed SF# 3558012 Compilation fails when building with -ansi or -std=c++0x - fixed SF# 3563517 Get rid of loss-of-precision warnings on x64 MacOS - fixed SF# 3562244: Portability fix for AF_LINK - fixed SF# 3562400: DatagramSocketImpl comment - fixed SF# 594: Websocket fails with small masked payloads - fixed SF# 588: Missing POCO_ARCH and POCO_ARCH_LITTLE_ENDIAN define for WinCE on SH4 - fixed SF# 581: Out-of-bound array access in Unicode::properties() function. - fixed SF# 590: Segfault on FreeBSD when stack size not rounded - fixed SF# 586: Poco::DateTimeParser and ISO8601 issues when seconds fraction has more than 6 digits - Poco::Net::HTTPSSessionInstantiator::registerInstantiator() now optionally accepts a Poco::Net::Context object. - added Poco::XML::XMLWriter::depth() member function. - added Poco::XML::XMLWriter::uniquePrefix() and Poco::XML::XMLWriter::isNamespaceMapped(). - Poco::FileChannel now supports a new rotateOnOpen property (true/false) which can be used to force rotation of the log file when it's opened. - fixed a bug in Poco::XML::XMLWriter::emptyElement(): need to pop namespace context - OS X builds now use Clang as default compiler - Updated SQLite to 3.7.14.1 - POCO_SERVER_MAIN macro now has a try ... catch block for Poco::Exception and writes the displayText to stderr. - Poco/Platform.h now defines POCO_LOCAL_STATIC_INIT_IS_THREADSAFE macro if the compiler generates thread-safe static local initialization code. Release 1.4.4 (2012-09-03) ========================== - ZipStream now builds correctly in unbundled build. - added proxy digest authentication support to Net library - integrated MySQL BLOB fixes from Franky Braem. - use standard OpenSSL import libraries (libeay32.lib, ssleay32.lib) for Crypto and NetSSL_OpenSSL Visual Studio project files. - fixed a potential buffer corruption issue in Poco::Net::SecureStreamSocket if lazy handshake is enabled and the first attempt to complete the handshake fails - Poco::DateTimeParser::tryParse() without format specifier now correctly parses ISO8601 date/times with fractional seconds. - Poco::Process::launch() now has additional overloads allowing to specify an initial directory and/or environment. - Poco::Net::FTPClientSession: timeout was not applied to data connection, only to control connection. - Fixed potential IPv6 issue with socket constructors if IPv6 SocketAddress is given (contributed by ??????? ????????? <[email protected]>). - Added an additional (optional) parameter to Poco::Thread::setOSPriority() allowing to specify a scheduling policy. Currently this is only used on POSIX platforms and allows specifying SCHED_OTHER (default), SCHED_FIFO or SCHED_RR, as well as other platform-specific policy values. - Added Poco::Crypto::DigestEngine class providing a Poco::DigestEngine interface to the digest algorithms provided by OpenSSL. - Fixed some potential compiler warnings in Crypto library - In some cases, when an SSL exception was unexpectedly closed, a generic Poco::IOException was thrown. This was fixed to throw a SSLConnectionUnexpectedlyClosedException instead. - Added Poco::ObjectPool class template. - Poco::Net::HTTPServer has a new stopAll() method allowing stopping/aborting of all currently active client connections. - The HTTP server framework now actively prevents sending a message body in the response to a HEAD request, or in case of a 204 No Content or 304 Not Modified response status. - fixed a DOM parser performance bug (patch by Peter Klotz) - fixed SF# 3559325: Util Windows broken in non-Unicode - updated iOS build configuration to use xcode-select for finding toolchain - Poco::Net::SecureSocketImpl::shutdown() now also shuts down the underlying socket. - fixed SF# 3552597: Crypto des-ecb error - fixed SF# 3550553: SecureSocketImpl::connect hangs - fixed SF# 3543047: Poco::Timer bug for long startInterval/periodic interval - fixed SF# 3539695: Thread attributes should be destroyed using the pthread_attr_destroy() - fixed SF# 3532311: Not able to set socket option on ServerSocket before bind Added Poco::Net::Socket::init(int af) which can be used to explicitely initialize the underlying socket before calling bind(), connect(), etc. - fixed SF# 3521347: Typo in UnWindows.h undef - fixed SF# 3519474: WinRegistryConfiguration bug Also added tests and fixed another potential issue with an empty root path passed to the constructor. - fixed SF# 3516827: wrong return value of WinRegistryKey::exists() - fixed SF# 3515284: RSA publickey format(X.509 SubjectPublicKeyInfo) - fixed SF# 3503267: VxWorks OS prio is not set in standard constructor - fixed SF# 3500438: HTTPResponse failure when reason is empty - fixed SF# 3495656: numberformater, numberparser error in mingw - fixed SF# 3496493: Reference counting broken in TaskManager postNotification - fixed SF# 3483174: LogFile flushing behavior on Windows Flushing is now configurable for FileChannel and SimpleFileChannel using the "flush" property (true or false). - fixed SF# 3479561: Subsequent IPs on a NIC is not enumerated - fixed SF# 3478665: Permission checks in Poco::File not correct for root - fixed SF# 3475050: Threading bug in initializeNetwork() on Windows - fixed SF# 3552680: websocket small frames bug and proposed fix - fixed a WebSocket interop issue with Firefox - added Poco::Net::MessageHeader::hasToken() - Poco::AtomicCounter now uses GCC 4.3 builtin atomics on more platforms - fixed SF# 3555938: NetSSL: socket closed twice - socket exceptions now include OS error code - fixed SF# 3556975: Need to fix Shared Memory for memory map - Poco::Net::SecureSocketImpl::close() now catches exceptions thrown by its call to shutdown(). - fixed SF# 3535990: POCO_HAVE_IPv6 without POCO_WIN32_UTF8 conflict - fixed SF# 3559665: Poco::InflatingInputStream may not always inflate completely - added Poco::DirectoryWatcher class - fixed SF# 3561464: Poco::File::isDevice() can throw due to sharing violation - Poco::Zip::Compress::addRecursive() has a second variant that allows to specify the compression method. - Upgraded internal SQLite to 3.7.14 Release 1.4.3p1 (2012-01-23) ============================ - fixed SF# 3476926: RegDeleteKeyEx not available on Windows XP 32-bit Release 1.4.3 (2012-01-16) ========================== - fixed a compilation error with Data/MySQL on QNX. - fixed Util project files for WinCE (removed sources not compileable on CE) - removed MD2 license text from Ackowledgements document - fixed iPhone build config for Xcode 4.2 (compiler name changed to llvm-g++) - Poco::Util::XMLConfiguration: delimiter char (default '.') is now configurable. This allows for working with XML documents having element names with '.' in them. - Poco::Util::OptionProcessor: Required option arguments can now be specified as separate command line arguments, as in "--option value" in addition to the "--option=value" format. - Poco::Util::HelpFormatter: improved option help formatting if indentation has been set explicitely. - added Mail sample to NetSSL_OpenSSL, showing use of Poco::Net::SecureSMTPClientSession. - added additional read() overloads to Poco::Net::HTMLForm. - fixed SF# 3440769: Poco::Net::HTTPResponse doesn't like Amazon EC2 cookies. - added support for requiring TLSv1 to Poco::Net::Context. - added an additional constructor to Poco::Net::HTTPBasicCredentials, allowing the object to be created from a string containing a base64-encoded, colon-separated username and password. - Poco::Zip::ZipStreamBuf: fixed a crash if CM_STORE was used. - Added setContentLength64() and getContentLength64() to Poco::Net::HTTPMessage. - added Poco::Environment::osDisplayName(). - fixed SF# 3463096: WinService leaves dangling handles (open() now does not reopen the service handle if it's already open) - fixed SF# 3426537: WinRegistryConfiguration can't read virtualized keys - added Poco::Buffer::resize() - fixed SF# 3441822: thread safety issue in HTTPClientSession: always use getaddrinfo() instead of gethostbyname() on all platforms supporting it - added version resource to POCO DLLs - fixed SF# 3440599: Dir Path in Quotes in PATH cause PathTest::testFind to fail. - fixed SF# 3406030: Glob::collect problem - added Poco::Util::AbstractConfiguration::enableEvents() - Poco::AtomicCounter now uses GCC builtins with GCC 4.1 or newer (contributed by Alexey Milovidov) - made Poco::Logger::formatDump() public as it may be useful for others as well (SF# 3453446) - Poco::Net::DialogSocket now has a proper copy constructor (SF# 3414602) - Poco::Net::MessageHeader and Poco::Net::HTMLForm now limit the maximum number of fields parsed from a message to prevent certain kinds of denial-of-service attacks. The field limit can be changed with the new method setFieldLimit(). The default limit is 100. - Poco::NumberFormatter, Poco::NumberParser and Poco::format() now always use the classic ("C") locale to format and parse floating-point numbers. - added Poco::StreamCopier::copyStream64(), Poco::StreamCopier::copyStreamUnbuffered64() and Poco::StreamCopier::copyToString64(). These functions use a 64-bit integer to count the number of bytes copied. - upgraded internal zlib to 1.2.5 - upgraded internal sqlite to 3.7.9 - XML: integrated bugfix for Expat bug# 2958794 (memory leak in poolGrow) - Added support for HTTP Digest authentication (based on a contribution by Anton V. Yabchinskiy (arn at bestmx dot ru)). For information on how to use this, see the Poco::Net::HTTPCredentials, Poco::Net::HTTPDigestCredentials and Poco::Net::HTTPAuthenticationParams classes. - Poco::Net::HTTPStreamFactory and Poco::Net::HTTPSStreamFactory now support Basic and Digest authentication. Username and password must be provided in the URI. - added Poco::Net::WebSocket, supporting the WebSocket protocol as described in RFC 6455 - NetSSL_OpenSSL: added client-side support for Server Name Indication. Poco::Net::SecureSocketImpl::connectSSL() now calls SSL_set_tlsext_host_name() if its available (OpenSSL 9.8.6f and later). - added Poco::Net::HTTPClientSession::proxyConnect() (factored out from Poco::Net::HTTPSClientSession::connect()) - added Poco::Process::kill(const Poco::ProcessHandle&) which is preferable to kill(pid) on Windows, as process IDs on Windows may be reused. - fixed SF# 3471463: Compiler warnings with -Wformat - Poco::Util::Application::run() now catches and logs exceptions thrown in initialize() - Fixed a WinCE-specific bug in Poco::Util::ServerApplication where uninitialize() would be called twice. - fixed SF# 3471957: WinRegistryKey::deleteKey() unable to delete alt views - Added additional constructor to Poco::ScopedLock and Poco::ScopedLockWithUnlock accepting a timeout as second argument. - Added Poco::Logger::parseLevel() - Poco::format(): an argument that does not match the format specifier no longer results in a BadCastException. The string [ERRFMT] is written to the result string instead. - PageCompiler: added createSession page attribute.
NEWS: Version 2.5.3 ------------- - Updated zoneinfo to 2016d - Fixed parser bug where unambiguous datetimes fail to parse when dayfirst is set to true. (gh issue #233, pr #234) - Bug in zoneinfo file on platforms such as Google App Engine which do not do not allow importing of subprocess.check_call was reported and fixed by @savraj (gh issue #239, gh pr #240) - Fixed incorrect version in documentation (gh issue #235, pr #243) Version 2.5.2 ------------- - Updated zoneinfo to 2016c - Fixed parser bug where yearfirst and dayfirst parameters were not being respected when no separator was present. (gh issue #81 and #217, pr #229) Version 2.5.1 ------------- - Updated zoneinfo to 2016b - Changed MANIFEST.in to explicitly include test suite in source distributions, with help from @koobs (gh issue #193, pr #194, #201, #221) - Explicitly set all line-endings to LF, except for the NEWS file, on a per-repository basis (gh pr #218) - Fixed an issue with improper caching behavior in rruleset objects (gh issue #104, pr #207) - Changed to an explicit error when rrulestr strings contain a missing BYDAY (gh issue #162, pr #211) - tzfile now correctly handles files containing leapcnt (although the leapcnt information is not actually used). Contributed by @hjoukl (gh issue #146, pr #147) - Fixed recursive import issue with tz module (gh pr #204) - Added compatibility between tzwin objects and datetime.time objects (gh issue #216, gh pr #219) - Refactored monolithic test suite by module (gh issue #61, pr #200 and #206) - Improved test coverage in the relativedelta module (gh pr #215) - Adjusted documentation to reflect possibly counter-intuitive properties of RFC-5545-compliant rrules, and other documentation improvements in the rrule module (gh issue #105, gh issue #149 - pointer to the solution by @phep, pr #213). Version 2.5.0 ------------- - Updated zoneinfo to 2016a - zoneinfo_metadata file version increased to 2.0 - the updated updatezinfo.py script will work with older zoneinfo_metadata.json files, but new metadata files will not work with older updatezinfo.py versions. Additionally, we have started hosting our own mirror of the Olson databases on a github pages site (https://dateutil.github.io/tzdata/) (gh pr #183) - dateutil zoneinfo tarballs now contain the full zoneinfo_metadata file used to generate them. (gh issue #27, gh pr #85) - relativedelta can now be safely subclassed without derived objects reverting to base relativedelta objects as a result of arithmetic operations. (lp:1010199, gh issue #44, pr #49) - relativedelta 'weeks' parameter can now be set and retrieved as a property of relativedelta instances. (lp: 727525, gh issue #45, pr #49) - relativedelta now explicitly supports fractional relative weeks, days, hours, minutes and seconds. Fractional values in absolute parameters (year, day, etc) are now deprecated. (gh issue #40, pr #190) - relativedelta objects previously did not use microseconds to determine of two relativedelta objects were equal. This oversight has been corrected. Contributed by @elprans (gh pr #113) - rrule now has an xafter() method for retrieving multiple recurrences after a specified date. (gh pr #38) - str(rrule) now returns an RFC2445-compliant rrule string, contributed by @schinckel and @armicron (lp:1406305, gh issue #47, prs #50, #62 and #160) - rrule performance under certain conditions has been significantly improved thanks to a patch contributed by @dekoza, based on an article by Brian Beck (@exogen) (gh pr #136) - The use of both the 'until' and 'count' parameters is now deprecated as inconsistent with RFC2445 (gh pr #62, #185) - Parsing an empty string will now raise a ValueError, rather than returning the datetime passed to the 'default' parameter. (gh issue #78, pr #187) - tzwinlocal objects now have a meaningful repr() and str() implementation (gh issue #148, prs #184 and #186) - Added equality logic for tzwin and tzwinlocal objects. (gh issue #151, pr #180, #184) - Added some flexibility in subclassing timelex, and switched the default behavior over to using string methods rather than comparing against a fixed list. (gh pr #122, #139) - An issue causing tzstr() to crash on Python 2.x was fixed. (lp: 1331576, gh issue #51, pr #55) - An issue with string encoding causing exceptions under certain circumstances when tzname() is called was fixed. (gh issue #60, #74, pr #75) - Parser issue where calling parse() on dates with no day specified when the day of the month in the default datetime (which is "today" if unspecified) is greater than the number of days in the parsed month was fixed (this issue tended to crop up between the 29th and 31st of the month, for obvious reasons) (canonical gh issue #25, pr #30, #191) - Fixed parser issue causing fuzzy_with_tokens to raise an unexpected exception in certain circumstances. Contributed by @MichaelAquilina (gh pr #91) - Fixed parser issue where years > 100 AD were incorrectly parsed. Contributed by @Bachmann1234 (gh pr #130) - Fixed parser issue where commas were not a valid separator between seconds and microseconds, preventing parsing of ISO 8601 dates. Contributed by @RyansS (gh issue #28, pr #106) - Fixed issue with tzwin encoding in locales with non-Latin alphabets (gh issue #92, pr #98) - Fixed an issue where tzwin was not being properly imported on Windows. Contributed by @labrys. (gh pr #134) - Fixed a problem causing issues importing zoneinfo in certain circumstances. Issue and solution contributed by @alexxv (gh issue #97, pr #99) - Fixed an issue where dateutil timezones were not compatible with basic time objects. One of many, many timezone related issues contributed and tested by @labrys. (gh issue #132, pr #181) - Fixed issue where tzwinlocal had an invalid utcoffset. (gh issue #135, pr #141, #142) - Fixed issue with tzwin and tzwinlocal where DST transitions were incorrectly parsed from the registry. (gh issue #143, pr #178) - updatezinfo.py no longer suppresses certain OSErrors. Contributed by @bjamesv (gh pr #164) - An issue that arose when timezone locale changes during runtime has been fixed by @carlosxl and @mjschultz (gh issue #100, prs #107, #109) - Python 3.5 was added to the supported platforms in the metadata (@tacaswell gh pr #159) and the test suites (@moreati gh pr #117). - An issue with tox failing without unittest2 installed in Python 2.6 was fixed by @moreati (gh pr #115) - Several deprecated functions were replaced in the tests by @moreati (gh pr #116) - Improved the logic in Travis and Appveyor to alleviate issues where builds were failing due to connection issues when downloading the IANA timezone files. In addition to adding our own mirror for the files (gh pr #183), the download is now retried a number of times (with a delay) (gh pr #177) - Many failing doctests were fixed by @moreati. (gh pr #120) - Many fixes to the documentation (gh pr #103, gh pr #87 from @radarhere, gh pr #154 from @gpoesia, gh pr #156 from @awsum, gh pr #168 from @ja8zyjits) - Added a code coverage tool to the CI to help improve the library. (gh pr #182) - We now have a mailing list - [email protected], graciously hosted by Python.org. Version 2.4.2 ------------- - Updated zoneinfo to 2015b. - Fixed issue with parsing of tzstr on Python 2.7.x; tzstr will now be decoded if not a unicode type. gh #51 (lp:1331576), gh pr #55. - Fix a parser issue where AM and PM tokens were showing up in fuzzy date stamps, triggering inappropriate errors. gh #56 (lp: 1428895), gh pr #63. - Missing function "setcachesize" removed from zoneinfo __all__ list by @RyansS, fixing an issue with wildcard imports of dateutil.zoneinfo. (gh pr #66). - (PyPi only) Fix an issue with source distributions not including the test suite. Version 2.4.1 ------------- - Added explicit check for valid hours if AM/PM is specified in parser. (gh pr #22, issue #21) - Fix bug in rrule introduced in 2.4.0 where byweekday parameter was not handled properly. (gh pr #35, issue #34) - Fix error where parser allowed some invalid dates, overwriting existing hours with the last 2-digit number in the string. (gh pr #32, issue #31) - Fix and add test for Python 2.x compatibility with boolean checking of relativedelta objects. Implemented by @nimasmi (gh pr #43) and Cédric Krier (lp: 1035038) - Replaced parse() calls with explicit datetime objects in unit tests unrelated to parser. (gh pr #36) - Changed private _byxxx from sets to sorted tuples and fixed one currently unreachable bug in _construct_byset. (gh pr #54) - Additional documentation for parser (gh pr #29, #33, #41) and rrule. - Formatting fixes to documentation of rrule and README.rst. - Updated zoneinfo to 2015a.
Version 1.12.0 (29 Sep 2016) Daniel Stenberg (29 Sep 2016) - RELEASE-NOTES: 1.12.0 - [David Drysdale brought this change] ares-test-misc: test ares_create_query with escaped trailing dot - ares_create_query: avoid single-byte buffer overwrite ... when the name ends with an escaped dot. CVE-2016-5180 Bug: https://c-ares.haxx.se/adv_20160929.html - ares_library_initialized.3: added - make: bump CARES_VERSION_INFO for release David Drysdale (29 Sep 2016) - man: update ares_init_options.3 Daniel Stenberg (29 Sep 2016) - ares_library_init.3: corrected the ares_library_init_mem proto - README.md: remove space from link - README: link to the correct c-ares badge! Reported-by: David Hotham Fixes #63 - docs: minor formatting edits - ares_destroy.3: formatting polish - ares_init.3: split the init docs into two separate man pages - SECURITY: point to the vulnerabilities page now - RELEASE-NOTES: synced with daa7235b1a5 - ares_create_query.3: edit language Tried to make the man page more readable. David Drysdale (26 Sep 2016) - test: fix gMock to work with gcc >= 6.x Taken from: google/googletest#705 (comment) Daniel Stenberg (26 Sep 2016) - [Brad House brought this change] headers: remove checks for and defines of variable sizes ... they're not really used and by avoiding them in the ares_build.h output we make the public header less dependent on data sizes. David Drysdale (24 Sep 2016) - api: add ARES_OPT_NOROTATE optmask value Fix up a couple of problems with configuring whether c-ares rotates between different name servers between requests. Firstly, ares_save_options() returns (in *optmask) the value of (channel->optmask & ARES_OPT_ROTATE), which doesn't necessarily indicate whether the channel is or is not actually doing rotation. This can be confusing/incorrect if: - the channel was originally configured without ARES_OPT_ROTATE (so it appears that the channel is not rotating) - the /etc/resolv.conf file includes the 'rotate' option (so the channel is actually performing rotation). Secondly, it is not possible to reliably configure a channel to not-rotate; leaving off ARES_OPT_ROTATE is not enough, since a 'rotate' option in /etc/resolv.conf will turn it on again. Therefore: - add an ARES_OPT_NOROTATE optmask value to allow explicit configuration of no-rotate behaviour - in ares_save_options(), report the value of channel->rotate as exactly one of (optmask & ARES_OPT_ROTATE) or (optmask & ARES_OPT_NOROTATE). In terms of back-compatibility: - existing apps that set ARES_OPT_ROTATE will continue to rotate, and to have ARES_OPT_ROTATE reported back from ares_save_options() - existing apps that don't set ARES_OPT_ROTATE will continue to use local config/defaults to decide whether to rotate, and will now get ARES_OPT_ROTATE or ARES_OPT_NOROTATE reported back from ares_save_options() rather than 0. - ares_init_options: only propagate init failures from options Commit 46bb820be3a8 ("ares_init_options: don't lose init failure") changed init behaviour so that earlier errors in initialization weren't lost. In particular, if the user passes in specific options but they are not applied (e.g. because of an allocation failure), that failure needs to be reported back to the user; this also applies when duplicating a channel with ares_dup(). However, other initialization failures can be ignored and overridden -- in particular, if init_by_resolv_conf() or init_by_environment() fail, then falling back to default values is OK. So only preserve failures from the init_by_options() stage, not from all initialization stages. Fixes issue 60. - test: Force reinstall of libtool on OSX Travis build environment appears to have changed. - test: Add valgrind build variant - test: Add null pointer to gtest args GoogleTest assumes that there is a null pointer in argv[argc], so make it look like that. Without this change, tests run with command-line arguments get memory errors under valgrind/ASAN. Daniel Stenberg (21 Aug 2016) - AUTHOR: maybe gitgub isn't really an author =) - AUTHORS: added contributors from the git log - LICENSE.md: add a stand-alone license file Just the MIT license used in the top the source files moved out to a stand-alone file for easier reference and discovery. - README: added "CII best practices" badge - SECURITY.md: suggested "security process" for the project David Drysdale (17 Aug 2016) - test: Add Clang static analysis build to Travis Run scan-build over the library source code, but skip the tests. Needs a later Clang install in Travis - test: more info on how to run fuzz testing - test: make fuzzer driver code C not C++ - test: fuzzer mode for AFL's persistent mode When fuzzing with AFL, if the LLVM-based instrumentation is used (via the afl-clang-fast wrapper), then it is possible to have a single execution of the fuzzer program iterate multiple times over the fuzzing entrypoint (similar to libFuzzer's normal mode of execution) with different data. This is much (e.g. 10x) faster. Add code to support this, by checking whether __AFL_LOOP is defined at compile-time. Also, shift the code to effectively be C rather than C++. - test: simplify deps for fuzzer entrypoint No need to depend on the rest of the test code (ares-test.h) for the fuzzer entrypoint; this makes the entrypoint slightly simpler to build with LLVM's libFuzzer. Also shift the code to effectively be C rather than C++ - test: disable MinGW tests The test binary built in the MinGW build is failing for some reason. It works for me when I build locally, so I'm guessing it's down to some sort of AppVeyor environment issue. Disable for now. Daniel Stenberg (16 Aug 2016) - read_tcp_data: remove superfluous NULL check CID 56884 by Coverity. The pointer is already derefenced before this point so it can't be NULL here anyway. - web: http => https GitHub (20 Jul 2016) - [David Drysdale brought this change] Merge pull request #59 from fuze/master Update msvc_ver.inc for VS2015 Update 3 - [Chris Araman brought this change] Update msvc_ver.inc support Visual Studio 2015 Update 3 David Drysdale (2 May 2016) - Fix trailing comment for #endif Daniel Stenberg (30 Apr 2016) - email: use Gisle's "new" address David Drysdale (18 Apr 2016) - test: drop superfluous fuzz inputs Where there are multiple fuzz input files that only differ in the first two bytes (the query ID), just keep the first such file. svante karlsson (15 Apr 2016) - Update msvc_ver.inc support Visual Studio 2015 Update 2 David Drysdale (31 Mar 2016) - test: Run fuzzcheck.sh in Travis build - test: add fuzzing check script to tests Add a test script that runs the fuzzing command over the corpus of DNS packets. This doesn't actually do any fuzzing (it just runs them as inputs without generating any variations) but it does ensure that the fuzzing entrypoint is still working. - test: allow multiple files in aresfuzz command line If no arguments are specified, use stdin as input. Otherwise treat each argument as a filename and feed its contents to the fuzz entrypoint. - test: Add corpus of DNS packets For fuzz testing it is useful to start from a corpus of valid packets, so fill out the test/fuzzinput/ directory with a bunch of inputs. These packets were generated by temporarily modifying the c-ares process_answer() function to save off any incoming response messages. - test: Add utility to show DNS packet from file - [nordsturm brought this change] Fix nsort initialization Author: Alexander Drachevskiy http://c-ares.haxx.se/mail/c-ares-archive-2014-07/0004.shtml http://c-ares.haxx.se/mail/c-ares-archive-2014-07/0014.shtml - test: Check setting nsort=0 option is respected - test: Update fuzzing function prototype libFuzzer changed expected return type from void to int in LLVM 3.8. - Explicitly clear struct servent before use On a build where MSAN has been manually set up (which involves using an MSAN-instrumented version of the standard C++ library, see https://github.com/google/sanitizers/wiki/MemorySanitizerLibcxxHowTo) there's a warning about use of uninitialized memory here. It might be a false positive, but the fix is trivial so include it. - test: for AF_UNSPEC, return CNAME only for AAAA, but valid A record Also shuffle expected responses rsp6/rsp4 into the order they will occur. - [Chris Araman brought this change] msvc_ver.inc: support Visual Studio 2015 Update 1 - build: commonize MSVC version detection Remove the need to copy/paste version number mapping between Makefile.msvc and test/Makefile.msvc. - test: Use different name in live test - test: Only pass unused args to GoogleTest - ahost.c: add cast to fix C++ compile If ahost.c is force-compiled as C++ the missing cast from (void *) to (char **) is problematic. - ares_library_cleanup: reset ares_realloc too Otherwise a subsequent use of the library might use a previous incarnation's realloc() implementation. Daniel Stenberg (9 Mar 2016) - [Brad House brought this change] configure: check if tests can get built before enabled The current approach for disabling tests is not a good solution because it forces you to pass --disable-tests, rather than auto-detect if your system can support the tests in the first place. Many (most?) systems do not have C++11. This also causes issues when chain-building c-ares, the hosting system needs to be updated to support passing this additional flag if necessary, it doesn't seem reasonable to add this requirement which breaks compatibility. This change auto-detects if the system can build the tests and automatically disable them if it cannot. If you pass --enable-tests to configure and the system cannot build them either due to lack of system support, or because cross-compilation is being used, it will throw an appropriate error since the user indicated they really did want the tests. David Drysdale (3 Mar 2016) - [Viktor Szakats brought this change] Makefile.m32: add support for CROSSPREFIX - [Viktor Szakats brought this change] Makefile.m32: add support for extra flags Allow specification of CARES_{LD,C}FLAG_EXTRAS envvars for mingw - test: Build with MinGW on AppVeyor - test: avoid in6addr_* constants These aren't available on MinGW, so use explicit addresses instead. - test: add missing #includes for dns-proto.cc - [Gregor Jasny brought this change] Fix man page typos detected by Lintian Daniel Stenberg (19 Feb 2016) - configure: acknowledge --disable-tests Fixes #44 - AUTHORS: added contributors from the 1.11.0 release - bump: start working on the next version Version 1.11.0 (19 Feb 2016) Daniel Stenberg (19 Feb 2016) - RELEASE-NOTES: final edits for 1.11.0 David Drysdale (15 Feb 2016) - ares_dup.3: remove mention of nonexistent function ares_dup_options() doesn't exist, so don't document it. - test: skip repeated build steps Top-level buildconf/configure now triggers for the test/ subdir too, so don't need to do explicitly. - test: namespaces unavailable when cross-compiling Daniel Stenberg (13 Feb 2016) - configure: only run configure in test when NOT cross-compiling ... as the tests won't run cross-compiled anyway David Drysdale (13 Feb 2016) - test: prefer ON_CALL to EXPECT_CALL to reduce flakes For UDP tests, there's a chance of a retry. EXPECT_CALL only expects a single request to arrive at the server; ON_CALL allows for a UDP retry and repeats the same answer. Note that ON_CALL and EXPECT_CALL can't be mixed in the same test, and that tests that have a varied sequence of responses for the same repeated request still have to use EXPECT_CALL. Daniel Stenberg (13 Feb 2016) - configure: run configure in 'test' too Having the test dir completely stand-alone causes too many issues for users and devs. It still needs to be built specifically. - configure: build silently by default - buildconf: run test/buildconf too if present - test/configure: build silently by default - [Gregor Jasny brought this change] dist: Distribute README.md Closes #42 Version 1.11.0 (11 Feb 2016) Daniel Stenberg (11 Feb 2016) - Makefile.am: distribute the test dir too - RELEASE-NOTES: synced with 385582bd14b68a - [Nicolas \"Pixel\" Noble brought this change] ares_win32_init: make LoadLibrary work when using UNICODE too Closes #17 David Drysdale (11 Feb 2016) - Use "resolve" as synonym of "dns" in nsswitch.conf Modern Linux systems may have libnss_resolve from systemd as the resolver, which is then configured in /etc/nsswitch.conf with the "resolve" keyword rather than "dns". Fixes #33 - ares_set_socket_callback: make manpage match code The code in ares_process.c that invokes the socket creation/connection callback only checks for rc < 0, not for standard ares error codes. - Merge pull request #36 from AGWA-forks/master Add ares_set_socket_configure_callback() - test: Update init tests to match behaviour Unreadable config files are now treated the same way as absent config files. - [Fedor Indutny brought this change] Ignore `fopen` errors to use default values After 46bb820be3a83520e70e6c5f0c5133253fcd69cd `init_by_resolv_conf` errors are no longer swallowed in `ares_init_options`. This has exposed a previously unknown bug in `lookups` initialization code. If there is no lookup configuration in `resolv.conf`, `init_by_resolv_conf` will attempt to read it from other files available on the system. However, some of these files may have restricted permissions (like `600`), which will lead to `EACCESS` errno, which in turn is handled like a fatal error by `init_by_resolv_conf`. However, it sounds illogical that this error should be handled as a fatal. There is a `init_by_defaults` call that overrides `lookups` with default value, and certainly possible absence of lookup information is the reason why this function exists in a first place! I suggest handling any `fopen` errors as non-fatal ones, allowing to pick up the `lookups` value from different config files, or to pick up default value. Andrew Ayer (9 Feb 2016) - Document callback type in man page for ares_set_socket_callback - Add ares_set_socket_configure_callback() This function sets a callback that is invoked after the socket is created, but before the connection is established. This is an ideal time to customize various socket options. David Drysdale (9 Feb 2016) - test: ares_set_socket_callback failure behaviour - test: Check ares_parse_txt_reply_ext() entrypoint - [Fedor Indutny brought this change] txt: introduce `ares_parse_txt_reply_ext` Introduce `ares_txt_ext` structure with an extra `record_start` field, which indicates a start of a new TXT record, thus allowing to differentiate the chunks in the same record, from a chunks in a different record. Introduce a new API method: `ares_parse_txt_reply_ext` that works with this kind of struct. - doc: Update missed repo references - doc: Update docs on contributing - test: Run command line tools in Travis Do a quick execution of each of the command line tools in the continuous integration build, so that any (say) sanitizer failures show up. - acountry: drop inert test If ver_1 is true, then z0 and z1 must both be 'z', and so (z0 != 'z' && z1 != 'z') can never be true. CID 56879, pointed out by Coverity. - doc: update badge locations to master repo - test: Enable maintainer mode + debug in Travis - test: Add an iOS build target - test: Ignore SIGPIPE in tests - test: More initialization tests - test: Improve containerized test mechanism Aim is to ensure that code coverage information can escape the container. To do this: - Enter a new mount namespace too, so that we can... - Bind mount the expected source directory into the container - Share memory with the sub-process so coverage information is shared too. - test: Make contained tests easier to write - test: Add framework for containerized testing On Linux we can potentially use user and UTS namespaces to run a test in a pseudo-container with: - arbitrary filesystem (e.g. /etc/resolv.conf, /etc/nsswitch.conf, /etc/hosts) - arbitrary hostname/domainname. Include a first pass at the framework code to allow this, along with a first test case that uses the container. - test: Use a longer timeout for less flakiness Having occasional test failures from timeout before multiple queries can complete, so up the default timeout for the test from 100ms to 1500ms. - test: Make failure tests more robust Different platforms will do different numbers of allocations in the processing of a given API call; just check that the return code is either success or ENOMEM, and free off any returned state in the former case. Also cope with ECONNREFUSED as well as ENOTFOUND. - test: Get test code building under Windows - Initial nmake file based off library nmake file - Cast socket call arguments to (char *) - Use wrapper sclose() that maps to closesocket() or close() - Build a config.h indicating presence of headers - Conditionally include netdb.h - Remove unnecessary include of sys/socket.h - Force longer bitmask for allocation failure tracking - Call WSAStartup() / WSACleanup() in main() - Set TCP_NODELAY for mock server - Turn on tests in AppVeyor build - test: Disable tests that manipulate env on Windows - test: Move file lists into Makefile.inc In preparation for a Win32 build of the test suite. - test: Add a simple multi-server test Check rotate option does something - test: Allow for multiple mock servers - Update the MockServer to allow separate specification of UDP and TCP ports - Have an array of mock servers listening on consecutive sets of ports. - Rename Process(fd) to ProcessFD(fd) to avoid confusion. - Initialize channel by using the new ares_set_servers_ports() entrypoint, so multiple ports on the same loopback address can be used. - test: Update test for set/get_servers variants Ports are significant in the _ports_ variant functions, so update test to cope. - test: Make GetNameServers() utility function port-aware Also make it generally available. - test: more testing, including of internal static functions - test: more tests, especially fallback processing - Make mock server listen on UDP + TCP in parallel. - Test UDP->TCP fallback on truncation - Test EDNS->no-EDNS fallback - Test some environment init options - Test nonsense reply test: short response - test: more tests, particularly of initialization - test: Run mock tests over both TCP and UDP With the exception of a few tests that make use of the timed retry aspect of UDP. - test: Run mock tests over both IPv4 and IPv6 - test: Add more tests for edge cases - test: more nooks and crannies of pton functions - test: More tests for PTR parsing - test: Use of HOSTALIAS environment variable - test: Add RAII utility classes for testing - TempFile holds specific contents - EnvValue sets an environment variable - test: More search domain scenarios - test: Remove duplicate flags from Makefile.am - test: Make test code leak-free - test: More tests - test use of sortlist - test gethostbyname(AF_UNSPEC) - test: Test ares_gethostbyname_file() - test: Add more tests of ares_getnameinfo() - test: Tweak tests, add alloc failure test - test: Test init with options - test: More tests - ares_inet_net_pton() variants - ares_getsock() variants - test: Expose ProcessWork() function - test: More parsing tests Including: - Split each parse function test set out into separate files. - Add an allocation failure test for each parsing function. - Add error check test for each parsing function. - test: Add various additional tests - test: More tests Include tests of internal functions, based on the value of the CARES_SYMBOL_HIDING macro; need to configure the library with --disable-symbol-hiding to enable these tests. - test: Allow command line override of mock server port - test: Add README.md documentation - test: Temporarily avoid latest Python requests package Currently get error from Travis on this install step, and downgrading one version appears to fix the problem. "Could not find any downloads that satisfy the requirement pyOpenSSL>=0.13 (from requests[security])" - test: Add AppVeyor config file for Windows build - test: Add configuration for a Travis build Cover Linux & OSX on the container infrastructure, but install a later G++ to satisfy the tests' need for C++11. Use a build matrix to include a variety of build variants: - ASAN - UBSAN - LSAN - Coverage via coveralls.io test: invoke ASAN and coverage in Travis build Also shift to use explicit build matrix test: Use coveralls.io for coverage tracking test: Add a build with UBSAN Also expand and re-order the setting of environment variables for easier modification. test: Add LSAN build to Travis config - test: Add initial unit tests for c-ares library The tests are written in C++11, using the GoogleTest and GoogleMock frameworks. They have their own independent autoconf setup, so that users of the library need not have a C++ compiler just to get c-ares working (however, the test/configure.ac file does assume the use of a shared top-level m4/ directory). However, this autoconf setup has only been tested on Linux and OSX so far. Run with "./arestest", or "./arestest -v" to see extra debug info. The GoogleTest options for running specific tests are also available (e.g. "./arestest --gtest_filter=*Live*"). The tests are nowhere near complete yet (currently hitting around 60% coverage as reported by gcov), but they do include examples of a few different styles of testing: - There are live tests (ares-test-live.cc), which assume that the current machine has a valid DNS setup and connection to the internet; these tests issue queries for real domains but don't particularly check what gets returned. The tests will fail on an offline machine. - There a few mock tests (ares-test-mock.cc) that set up a fake DNS server and inject its port into the c-ares library configuration. These tests allow specific response messages to be crafted and injected, and so are likely to be used for many more tests in future. - To make this generation/injection easier, the dns-proto.h file includes C++ helper classes for building DNS packets. - Other library entrypoints that don't require network activity (e.g. ares_parse_*_reply) are tested directly. - There are few tests of library-internal functions that are not normally visible to API users (in ares-test-internal.cc). - A couple of the tests use a helper method of the test fixture to inject memory allocation failures, using the earlier change to the library to allow override of malloc/realloc/free. - There is also an entrypoint to allow Clang's libfuzzer to drive the packet parsing code in ares_parse_*_reply, together with a standalone wrapper for it (./aresfuzz) to allow use of afl-fuzz for further fuzz testing. - test: Add local copy of GoogleMock/GoogleTest 1.7.0 Don't check in gtest/m4 files, as they are unused and interfere with the top-level configure process. - doc: Show build badges in README.md Note that these URLs will need to be updated if/when the test branch gets pulled into the master repo/branch. - doc: Convert README to README.md Gives better display on GitHub - doc: Update in preparation for next release Assume 1.11.0 is next (as there are various API additions). Also add myself to AUTHORS. - build: Allow header compilation by Windows C++ compiler - build: Expose whether symbol hiding is on Adding the CARES_SYMBOL_HIDING definition allows the test suite to detect whether internal symbols are available or not. - build: Add autoconf macros for C++11 code using pthreads Pull in testing macros from the GNU autoconf archive to allow configure scripts to test for and setup use of a C++11 compiler (AX_CXX_COMPILE_STDCXX_11) and the pthreads library (AX_PTHREAD). Note that these macros are not used by the main library autoconf, just by the tests (which share the same m4/ directory). - build: Add a code coverage option Configure with: ./configure --enable-code-coverage Show coverage output with: make code-coverage-capture Built on m4/ax_code_coverage.m4 from the GNU autoconf archive to provide the macros to check for presence of gcov + lcov; upstream macro modified to: - Remove use of $(AM_DEFAULT_VERBOSITY) , as earlier versions of autoconf (such as the one used by default on Travis) do not have this. - Rather than automatically defining CODE_COVERAGE_RULES to be a set of makefile rules that use ifeq/endif (which is GNU make-specific), instead only define CODE_COVERAGE_RULES if coverages is turned on, and in that case don't use conditionals in the makefile. - api: Add entrypoints to allow use of per-server ports Add user-visible entrypoints ares_{get,set}_servers_ports(3), which take struct ares_addr_port_node rather than struct ares_addr_node. This structure includes a UDP and TCP port number; if this is set to zero, the channel-wide port values are used as before. Similarly, add a new ares_set_servers_ports_csv(3) entrypoint, which is analogous to ares_set_servers(3) except it doesn't ignore any specified port information; instead, any per-server specified port is used as both the UDP and TCP port for that server. The internal struct ares_addr is extended to hold the UDP/TCP ports, stored in network order, with the convention that a value of zero indicates that the channel-wide UDP/TCP port should be used. For the internal implementation of ares_dup(3), shift to use the _ports() version of the get/set functions, so port information is transferred correctly to the new channel. Update manpages, and add missing ares_set_servers_csv to the lists while we're at it - api: Add ares_set_sortlist(3) entrypoint Allow explicit configuration of the channel's sortlist, by specifying a string in the same format as the equivalent /etc/resolv.conf option. This allows library users to perform the same configuration that is available via /etc/resolv.conf, but without needing to change that file. - api: Allow injection of user-specified malloc/free functions Add a new ares_library_init_mem() initialization function for the library which allows the library user to specify their own malloc, realloc & free equivalents for use library-wide. Store these function pointers in library-wide global variables, defaulting to libc's malloc(), realloc() and free(). Change all calls to malloc, realloc and free to use the function pointer instead. Also ensure that ares_strdup() is always available (even if the local environment includes strdup(3)), and change the library code to always use it. Convert calls to calloc() to use ares_malloc() + memset - api: Add option to expose some internal functions Purely for testing, add --enable-expose-statics option to configure which converts some static internal functions to be externally visible. - api: Expose the ares_library_initialized() function - ahost: Allow repeated -s <domain> options This also removes a potential leak where later -s options would replace earlier ones without freeing the relevant string. - Mark unhittable lines Add comments for the benefit of the lcov tool, marking lines that cannot be hit. Typically these are fall-back protection arms that are already covered by earlier checks, and so it's not worth taking out the unhittable code (in case someone changes the code between the two places in future). - ares_set_servers_csv.3: make return type match code - bitncmp: update comment to match code behaviour - ares_striendstr: fix so non-NULL return can happen This looks to have been broken since it was first introduced in 2005 in commit aba0b775ea30 ("Added ares_getnameinfo which mimics the getnameinfo API") - config_sortlist: free any existing sortlist on (re)alloc failure If we get an allocation failure on 2nd or later entry in the sortlist, the code would return ENOMEM but still leave the initial entries allocated. Ensure that *sortlist is set to NULL whenever ENOMEM is returned. - ares_dup: clear new channel on failure If the attempt to transfer IPv6 servers from the old to the new channel fails, the previous code would still return a channel to the user even though an error return code was generated. This makes it likely that users would leak the channel, so explicitly clear the channel in this case. - ares_init_options: don't lose init failure If (say) init_by_options() fails, the subsequent call to init_by_defaults() was overwriting the return code with success. Still call init_by_defaults() regardless, but track its return value separately - ares_gethostbyname: don't leak valid-but-empty hostent If an AF_UNSPEC query gets a valid response to its AAAA query, but which has no IPv6 addresses in it, then the code chains on to a A record query. However, the hostent from the AAAA response was being leaked along the way (because it gets replaced before the follow-on end_hquery() invocation). - ares_parse_txt_reply: propagate errors from per-substring loop If we get an allocation failure when processing a particular substring in a TXT record, that failure is silently lost; fix that by propagating errors from the inner loop to the outer loop. - process_answer: fix things up correctly when removing EDNS option When a server rejects an EDNS-equipped request, we retry without the EDNS option. However, in TCP mode, the 2-byte length prefix was being calculated wrong -- it was built from the answer length rather than the length of the original request. Also, it is theoretically possible that the call to realloc() might change the data pointed to; to allow for this, qbuf also needs updating. (Both these fixes were actually included in a patchset sent on the mailing list in Oct 2012, but were included with other functional changes that didn't get merged: http://c-ares.haxx.se/mail/c-ares-archive-2012-10/0004.shtml) - ares__read_line: clear buf pointer on realloc failure - ares_expand_name: check for valid bits in label length The top two bits of the label length indicate whether this is a label length (00) or an index to a name elsewhere in the message (11). RFC1035 4.1.4 says that the other possible values for the top two bits (01, 10) are reserved for future use. Daniel Stenberg (23 Jan 2016) - [Gregor Jasny brought this change] Fix typos detected by lintian Closes #32 - [Gregor Jasny brought this change] Distribute all man pages - README.cares: s/I/Daniel ... and add a pointer to an existing version of the original area 1.1.1 package.a - read_tcp_data: don't try to use NULL pointer after malloc failure CID 56884, pointed out by Coverity. We really should make this function return an error code so that a malloc() failure can return back a major failure. - configure_socket: explicitly ignore return code CID 56889 in Coverity pointed out the return code from setsocknonblock() is ignored, and this added typecast to (void) makes it explicit. - ahost: check the select() return code Fixes CID 137189, pointed out by Coverity David Drysdale (18 Jan 2016) - Fix buildconf on platforms using glibtoolize Commit c49a87eea538 changed buildconf to only check for libtoolize, but missed a line - Don't exit loop early leaving uninitialized entries Update for commit affc63cba875d. The original patch from Gregor Jasny did not have the break statement; I incorrectly added it to prevent continuing the loop. However, the later entries in the array would then be left uninitialized, causing problems for later cleanup. So fix to match Gregor's original patch, with apologies. Daniel Stenberg (18 Jan 2016) - buildconf: remove check for libtool, it only requires libtoolize David Drysdale (17 Jan 2016) - [Gregor Jasny brought this change] Use libresolv to initialize cares on iPhone targets On iPhone targets like iOS, watchOS or tvOS the file /etc/resolv.conf cannot be used to configure cares. Instead the resolver library is queried for configuration values. CC: Yury Kirpichev <[email protected]> Daniel Stenberg (17 Jan 2016) - README: updated to new repo URL David Drysdale (14 Jan 2016) - [Lei Shi brought this change] Fixing slow DNS lookup issue This patch is fixing the dns lookup issue due to dummy dns information of a disconnected adapter(in my case is a bluetooth adapter). I changed the dns lookup policy to try GetNetworkParams first because the GetNetworkParams provides the most reliable dns information (lots of checks were done by system). I also filter out inoperable adapter in DNS_AdaptersAddresses in case GetNetworkParams fail. - Merge pull request #30 from p-push/vs-2015 Support Visual Studio 2015 Oleg Pudeyev (3 Jan 2016) - [Gisle Vanem brought this change] Support Visual Studio 2015 David Drysdale (11 Nov 2015) - [Andrew Andkjar brought this change] added another version case to Makefile.msvc nmake version 11.00.61030.0 resolves to CC_VERS_NUM = 110 - Merge pull request #26 from bitbouncer/vs-2013 added define for visual studio 2013 svante karlsson (25 Jun 2015) - added define for visual studio 2013 Jakub Hrozek (6 Nov 2014) - ares__read_line: free buf on realloc failure - Destroy options if ares_save_options fails It's possible that, if ares_save_options failed, the opts structure would contain some allocated memory. Calling ares_destroy_options in this case is safe, because ares_save_options zeroes out the memory initially. - [David Drysdale brought this change] Continue loop if space for hostname not large enough When attempting to build a search domain from the local hostname (used as a fallback when no other methods have given a search domain), the code doubles the buffer size on each loop iteration. However, the loop previously had a WHILE_FALSE terminator so the continue statement exited the loop rather than going round again. Daniel Stenberg (30 Oct 2014) - ares_getnameinfo.3: there is no ares_getaddrinfo David Drysdale (30 Sep 2014) - [Gregor Jasny brought this change] Prevent tmpbuf from overrunning Fix Coverity error CID 56886. Signed-off-by: Gregor Jasny <[email protected]> - [Gregor Jasny brought this change] Re-start loop if select fails Fix Coverity error CID 56882 Signed-off-by: Gregor Jasny <[email protected]> - [Gregor Jasny brought this change] Free temporary variable in error path Fix Coverity CID 56890 Signed-off-by: Gregor Jasny <[email protected]> - [Gregor Jasny brought this change] Fix integer shift overflow if both tcp_socket and udp_socket are set The problem occurs if at the start of the loop the sockindex is at the last valid ARES_GETSOCK_MAXNUM position. If then both udp_socket and tcp_socket are valid, sockindex gets incremented for UDP first and points one entry behind the array for the tcp block. So the fix is to check after every increment of sockindex if it is still valid. Fix Coverity error CID 56878 Signed-off-by: Gregor Jasny <[email protected]> - [Gregor Jasny brought this change] Null check before dereference Fix Coverity error CID 56880 Signed-off-by: Gregor Jasny <[email protected]> Jakub Hrozek (28 Jul 2014) - [Gisle Vanem brought this change] Comment in ares_ipv6.h David Drysdale (25 Jul 2014) - CONTRIBUTING: add file to indicate mailing list is preferred - Add -t u option to ahost Add an option to allow specification of the AF_UNSPEC address family. Jakub Hrozek (24 Jul 2014) - host_callback: Fall back to AF_INET on searching with AF_UNSPEC Previously, when an ares_gethostbyname() searched with AF_UNSPEC and the first AF_INET6 call only returned CNAMEs, the host_callback never retried AF_INET. This patch makes sure than on ARES_SUCCESS, the result of AF_INET6 is taken as authoritative only if the result contains some addresses. - [David Drysdale brought this change] Move memset call below platform-specific declarations A GitHub commenter [1] says that my recent change to ahost.c has problems compiling on Windows + C89 platforms. [1] c-ares/c-ares@ee22246507c9#commitcomment-6587616 - [David Drysdale brought this change] Update ahost man page to describe -s option. Commit ee22246507c9 added the -s <domain> option to the ahost command, but neglected to update the man page to describe it. Also fix typo in description of -t option. - ares_parse_soa_reply: Do not leak rr_name on allocation failure If ares_malloc_data failed, already allocated rr_name would go out of scope. - [David Drysdale brought this change] Don't override explicitly specified search domains Only set search domains from /etc/resolv.conf if there isn't a value already present in the channel. - [David Drysdale brought this change] Allow specification of search domain in ahost Add the "-s domain" command line option to override the search domains. Daniel Stenberg (12 May 2014) - Revert "ares_parse_aaaa_reply: fix leak when reply contains 1 alias and no address" This reverts commit 440110b303fdbfadb3ad53d30eeb98cc45d70451. - [Frederic Germain brought this change] ares_parse_aaaa_reply: fix leak when reply contains 1 alias and no address - [Doug Kwan brought this change] ares_build.h: fix building on 64-bit powerpc There are two issues. 1. gcc actually does not use __ppc__ and __ppc64__ but __PPC__ and __PPC64__. The tests of __ILP32__ and __LP64__ are sufficient for gcc. 2. clang defines __GNU__ and defines both __ppc64__ and __ppc__ when targeting ppc64. This makes CARES_SIZEOF_LONG to be 4 on a ppc64 system when building with clang. My patch is two change the order of the checks so that we check the 64-bit case first. - refresh: updated now with automake 1.14 - [David Drysdale brought this change] single_domain: Invalid memory access for empty string input We noticed a small buglet in ares_search() when it gets an empty string as input -- the single_domain() utility function in ares_search.c accesses invalid memory (before the start of the string). Guenter Knauf (31 Aug 2013) - Fixed warning 'type specifier missing'. Daniel Stenberg (30 Aug 2013) - [Tor Arntsen brought this change] ares_rules.h: CARES_SIZEOF_LONG doesn't exist anymore, don't test for it It was removed in f19387dd72432 - nowarn: use <limits.h> instead of configure for size of long This makes the header file much more multi-arch friendly and can be used as-is with both 32 bit and 64 bit builds. - timeoffset: made static and private ares__timeoffset() was only used once within this single source file - timeadd: make static ares__timeadd() was only ever used from within the same source Yang Tse (18 Jul 2013) - xc-am-iface.m4: comments refinement - configure: fix 'subdir-objects' distclean related issue See XC_AMEND_DISTCLEAN comments for details. - configure: automake 1.14 compatibility tweak (use XC_AUTOMAKE) - xc-am-iface.m4: provide XC_AUTOMAKE macro Daniel Stenberg (12 May 2013) - gitignore: ignore all ares_*pdf but also CHANGES.dist - bump: start working towards 1.10.1
No changelog found. github changes: Merge pull request TritonDataCenter#52 from untitaker/generic-todo-prop-params Merge pull request TritonDataCenter#51 from nim65s/master Remove ansi dependency (TritonDataCenter#53) Share parameters between new and edit Add a move command Fix editor support (TritonDataCenter#47) Add a copy command (TritonDataCenter#50) Merge pull request TritonDataCenter#46 from untitaker/no-delete-button Replace cancel button with hint to hit ctrl-c Remove delete button from editor Exclude buggy setuptools-scm version Show error messages in UI (TritonDataCenter#43) delete cmd: Show tasks that will be deleted (TritonDataCenter#44) Fix tests done cmd: Show done tasks (TritonDataCenter#45) Don't strip time from datetime objects (TritonDataCenter#41) Add `default_list` in config for new todos (TritonDataCenter#40) Add shortcut to edit textfield in editor (TritonDataCenter#39) Merge pull request TritonDataCenter#6 from pimutils/widget-improvements Add basic editing shortcuts to text widgets Merge pull request TritonDataCenter#38 from untitaker/coc Add CoC Merge pull request TritonDataCenter#37 from untitaker/glob-clarify Clarify what path is supposed to match Don't require setuptool_scm at runtime Fix inconsistent minimum todo ID Merge pull request TritonDataCenter#30 from untitaker/color-option Implement color option Fix typo
(compiled from github commit log with tag: line) ------------------------------------- (v1.10.9) Merge pull request #46 from sashs/dev @sascha Schirra (v1.10.8) Merge pull request #44 from sashs/dev @sascha Schirra (v1.10.6) Bugfix: 'str' object has no attribute 'dataDirectory' @sascha Schirra (v1.10.5) Merge pull request #41 from sashs/dev @sascha Schirra (v1.10.4) cache implementation changed @sascha Schirra (v1.10.2) Merge pull request #30 from sashs/dev @sascha Schirra (v1.10.1) version and description changed @sascha Schirra (v1.10.0) Bugfix: crash when try to print stack_pivots and no gadgets are loaded @sascha Schirra (v1.9.11) Merge pull request #29 from sashs/dev @sascha Schirra
chardet 3.0.2 Fixes an issue where detect would sometimes return None instead of a dict with the keys encoding, language, and confidence (Issue #113, PR #114). chardet 3.0.1 This bugfix release fixes a crash in the EUC-TW prober when it encountered certain strings (Issue #67). chardet 3.0.0 This release is long overdue, but still mostly serves as a placeholder for the impending 4.0.0 release, which will have retrained models for better accuracy. For now, this release will get the following improvements up on PyPI: Added support for Turkish ISO-8859-9 detection (PR #41, thanks @queeup) Commented out large unused sections of Big5 and EUC-KR tables to save memory (8bc4b89) Removed Python 3.2 from testing, but add 3.4 - 3.6 Ensure that stdin is open with mode 'rb' for chardetect CLI. (PR #38, thanks @lpsinger) Fixed chardetect crash with non-ascii file names (PR #39, thanks @nkanaev) Made naming conventions more Pythonic throughout (no more mTypicalPositiveRatio, and instead typical_positive_ratio) Modernized test scripts and infrastructure so we've got Travis testing and all that stuff Rename filter_without_english_words to filter_international_words and make it match current Mozilla implementation (PR #44, thanks @rsnair2) Updated filter_english_letters to match C implementation (c665459) Temporarily disabled Hungarian ISO-8859-2 and Windows-1250 detection because it is very inaccurate (da6c0a0) Allow CLI sub-package to be importable (PR #55) Add a hypotheis-based test (PR #66, thanks @DRMacIver) Strip endianness from UTF with BOM predictions so that the encoding can be passed directly to bytes.decode() (PR #73, thanks @snoack) Fixed broken links in docs (PR #90, thanks @roskakori) Added early exit to chardetect when encoding is detected instead of looping through entire file (PR #103, thanks @jpz) Use bytearray objects internally instead of wrap_ord calls, which provides a nice performance boost across the board (PR #106) Add language property to probers and UniversalDetector results (PR #180) Mark the 5 known test failures as such so we can have more useful Travis build results in the meantime (d588407)
Pkgsrc changes: Adapt PLIST. Upstream changes: 1.18.2 2017-02-20 [Bug] #895: Fix a bug in server-mode concerning multiple interactive auth steps (which were incorrectly responded to). Thanks to Dennis Kaarsemaker for catch & patch. [Bug] #713: (via #714 and #889) Don't pass initialization vectors to PyCrypto when dealing with counter-mode ciphers; newer PyCrypto versions throw an exception otherwise (older ones simply ignored this parameter altogether). Thanks to @jmh045000 for report & patches. [Bug] #44: (via #891) SSHClient now gives its internal Transport a handle on itself, preventing garbage collection of the client until the session is closed. Without this, some code which returns stream or transport objects without the client that generated them, would result in premature session closure when the client was GCd. Credit: @w31rd0 for original report, Omer Anson for the patch. [Bug] #862: (via #863) Avoid test suite exceptions on platforms lacking errno.ETIME (which seems to be some FreeBSD and some Windows environments.) Thanks to Sofian Brabez. [Bug] #853: Tweak how RSAKey.__str__ behaves so it doesn't cause TypeError under Python 3. Thanks to Francisco Couzo for the report. [Support] #866: (also #838) Remove an old test-related file we don't support, and add PyPy to Travis-CI config. Thanks to Pierce Lopez for the final patch and Pedro Rodrigues for an earlier edition. 1.18.1 2016-12-12 [Bug] #859: (via #860) A tweak to the original patch implementing #398 was not fully applied, causing calls to invoke_shell to fail with AttributeError. This has been fixed. Patch credit: Kirk Byers. 1.18.0 2016-12-09 [Feature] #398: Add an environment dict argument to Client.exec_command (plus the lower level Channel.update_environment and Channel.set_environment_variable methods) which implements the env SSH message type. This means the remote shell environment can be set without the use of VARNAME=value shell tricks, provided the server's AcceptEnv lists the variables you need to set. Thanks to Philip Lorenz for the pull request. [Feature] #780: (also #779, and may help users affected by #520) Add an optional timeout parameter to Transport.start_client (and feed it the value of the configured connection timeout when used within SSHClient.) This helps prevent situations where network connectivity isn't timing out, but the remote server is otherwise unable to service the connection in a timely manner. Credit to @sanseihappa. [Support] #819: Document how lacking gmp headers at install time can cause a significant performance hit if you build PyCrypto from source. (Most system-distributed packages already have this enabled.) [Support] #854: Fix incorrect docstring/param-list for Transport.auth_gssapi_keyex so it matches the real signature. Caught by @Score_Under. [Support] #792: Minor updates to the README and demos; thanks to Alan Yee. [Support] #801: Skip a Unix-only test when on Windows; thanks to Gabi Davar. For pre-1.18.0 changes, see http://www.paramiko.org/changelog.html
The previous version in pkgsrc had a critical bug where status would not update and nagios log "wproc: Core Worker seems to be choked". More details at http://tracker.nagios.org/view.php?id=642 Here is the complete Changelog 4.3.2 - xxxx-xx-xx ------------------ FIXED * Every 15sec /var/log/messages is flooded with "nagios: set_environment_var" (John Frickson) * Changed release date to ISO format (yyyy-mm-dd) (John Frickson) * `make all` fails if unzip is not installed (John Frickson) * Quick Search no longer allows search by Alias (John Frickson) * flexible downtime on a service immediately turns off notifications (John Frickson) * Fix to allow url_encode to be called twice (Z. Liu) * Update timeperiods.cfg.in (spelling) (Parth Laxmikant Kolekar) * Spelling fixes (Josh Soref) * Vent command pipe before remove to avoid deadlocks on writing end (Kai Kunstmann) * CGI utility cgiutil.c does not process relative config file path names properly (John Frickson) * xdata/xodtemplate.c bug in option-deprecation code (John Frickson) * Wildcard searching causes service status links to not work properly (John Frickson) * Quick search with no hits shows a permission denied error (John Frickson) * Setting a service as its own parent is not caught by the sanity checker (-v) and causes a segfault (John Frickson) 4.3.1 - 2017-02-23 ------------------ FIXES * Service hard state generation and host hard or soft down status (John Frickson) * Comments are duplicated through Nagios reload (John Frickson) * host hourly value is incorrectly dumped as json boolean (John Frickson) * Bug - Quick Search no longer allows search by IP (John Frickson) * Config: status_update_interval can not be set to 1 (John Frickson) * Check attempts not increasing if nagios is reloaded (John Frickson) * nagios hangs on reload while sending external command to cmd file (John Frickson) * Feature Request: return code xxx out of bounds - include message as well (John Frickson) 4.3.0 - 2017-02-21 ------------------ SECURITY FIXES * Fix for CVE-2016-6209 - The "corewindow" parameter (as in http://localhost/nagios?corewindow=www.somewhere.com) has been disabled by default. See the UPGRADING document for how to enable it. (John Frickson) FIXES * Fix early event scheduling (pmalek / John Frickson) * on-demand host checks triggered by service checks cause attempt number increments (fredericve) * Service notification not being send when host is in soft down state (John Frickson) * configure does not error if no perl installed on CentOS 7 (John Frickson) * failed passive requests leave .ok files in checkresults dir (caronc) * Services don't show in status.cgi if "noheader" specified (John Frickson) * Standardized check interval config file names (John Frickson) * "Event Log" (showlog.cgi) could not open log file (John Frickson) * "nagios_check_command" has been deprecated since v3.0. Last vestiges removed (John Frickson) ENHANCEMENTS * Added new flag to cgi.cfg: tac_cgi_hard_only to show only HARD states (John Frickson) * Add broker-event for the end of a timed event (NEBTYPE_TIMEDEVENT_END) (John Frickson) * There is no Macro to retrieve addresses of hostgroup members (now $HOSTGROUPMEMBERADDRESSES$) (John Frickson) * Add "Page Tour" videos to several of the core web pages (John Frickson) * Added a login page, and a `Logoff` links (John Frickson) * On the status map, the host name will be colored if services are not all OK. (John Frickson) * Added "Clear flapping state" command on host and services detail pages. (John Frickson) * User-entered comment now displays below generated comment for downtime (John Frickson) 4.2.4 - 2016-12-07 ------------------ SECURITY FIXES * Fixed another root privilege escalation (CVE-2016-9566) Thanks for bringing this to our attention go to Dawid Golunski (http://legalhackers.com). 4.2.3 - 2016-11-21 ------------------- SECURITY FIXES * Fixed a root privilege escalation (CVE-2016-8641) (John Frickson) FIXES * external command during reload doesn't work (John Frickson) * Nagios provides no error condition as to why it fails on the verify for serviceescalation (John Frickson) * No root group in FreeBSD and Apple OS X (John Frickson) * jsonquery.html doesn't display scheduled_time_ok correctly (John Frickson) * daemon_dumps_core=1 has no effect on Linux when Nagios started as root (John Frickson) * Configuration check in hostgroup - misspelled hostname does not error (John Frickson) * contacts or contact_groups directive with no value should not be allowed (John Frickson) * Compile 64-bit on SPARC produces LD error (John Frickson) * HOSTSTATEID returns 0 even if host does not exist (John Frickson) * Submitting UNREACHABLE passive result for host sets it as DOWN if the host has no parents (John Frickson) * nagios: job XX (pid=YY): read() returned error 11 (changed from LOG_ERR to LOG_NOTICE) (John Frickson) * Fix for quick search not showing services if wildcard used (John Frickson) 4.2.2 - 2016-10-24 ------------------ SECURITY FIXES * There was a fix to vulnerability CVE-2008-4796 in the 4.2.0 release on August 1, 2016. The fix was apparently incomplete, as there was still a problem. However, we are now getting all RSS feeds using AJAX calls instead of the (outdated) MagpieRSS package. Thanks for bringing this to our attention go to Dawid Golunski (http://legalhackers.com). ENHANCEMENTS * Update status.c to display passive check icon for hosts when passive checks are enabled and actives disabled (John Frickson) FIXES * Fix permissions for Host Groups reports (status.cgi) (Patrik Halfar) * Service Parents does not appear to be functioning as intended (lev) * Availability report mixes up scheduled and unscheduled warning percentages (Helmut Mikulcik) * Invalid values for saved_stamp in compute_subject_downtime_times() (John Frickson) * Remove deprecated "framespacing" (John Frickson) * The nagios tarball contains two identical jquery copies (John Frickson) * extinfo.cgi does not set content-type (most cgi's don't) (John Frickson) * Timeperiods are corrupted by external command CHANGE_SVC_CHECK_TIMEPERIOD (xoubih) * Quick search doesn't show hosts without services (service status detail page) (John Frickson) * In host/services details view, if exactly 100 entries would not show last one (John Frickson) * nagios host URL parameter for NEW map doesn`t work - Network Map for All Hosts (John Frickson) * next_problem_id is improperly initialized (gherteg) * Passive problems not showing as "unhandled" (John Frickson) * September reported as Sept instead of Sep (Rostislav Opočenský) * Notifications are not sent for active alerts after scheduled downtime ends (John Frickson) * Nagios 4.2.0 not working on Solaris (John Frickson) * install-exfoliation and install-classicui don't work FreeBSD and Mac OS X (John Frickson) * Updated makefile to delete some no-longer-needed files (John Frickson) 4.2.1 - 2016-09-06 ------------------ FIXES * Fix undefined variable php error (John Frickson) * Links on the sidebar menu under 'Problems' are indented too far (John Frickson) * Using $ARGn$ Macros in perfdata (John Frickson) * using a wildcard in search returns service status total all zero's (John Frickson) * read_only does not take priority (deppy) * Running nagios -v on 4.2.0 takes 90+ seconds (John Frickson) * Bare "make" invoked in subtarget (mjo) * Theme images/stylesheets installed with inconsistent permissions (mjo / John Frickson) * Missing Image for Host and Service State Trends in Availability Report (nichokap / John Frickson) * Maintain non-persistent comments through reload (John Frickson) * Servicegroup availability report ignores includesoftstates in service report links (PriceChild) * error: format not a string literal and no format arguments (Karsten Weiss) * Synced config.guess and config.sub with GNU (Zakhar Kleyman) 4.2.0 - 2016-08-01 ------------------ SECURITY FIXES * Fixed vulnerability CVE-2008-4796 (John Frickson) * Fixed vulnerability CVE-2013-4214 (John Frickson) * web interface vulnerable to Cross-Site Request Forgery attacks (John Frickson) ENHANCEMENTS * Increase socket queue length for listen() * Added host name to the website page title (leres / John Frickson) * Added additional icons for NetBSD and SuSE (John Frickson) * The new Status Map will now use cgi.cfg options (John Frickson) default_statusmap_layout will default to "6" for the new map * The new Status Map will now show some valid values in the popup for "Nagios Process" (John Frickson) FIXES * Network outage view without access to all hosts (John Frickson) * Core workers looping (John Frickson) * service query returns duplicate host_name and description fields in the returned data (John Frickson) * HTML output of plug-ins is parsed in wrong way => webgui unusable (John Frickson) * Command worker fails to handle SIGPIPE * "View Status" links under "Map" broken in Nagios Core Version 4.1.1 (John Frickson) * Can't send big buffer - wproc: Core Worker seems to be choked (velripn / John Frickson) * Too big CPU load on FreeBSD and other systems using poll() interface (cejkar) * Flexible downtime recorded as unscheduled downtime (John Frickson) * Service Flexible downtimes produce 1 notification before entering (John Frickson) * Once you "set flap_detection_enabled 0" it should remove flapping state from the host/services page (John Frickson) * New map doesn't finish loading if a logo image is not found (John Frickson) * Extraneous Div end tag in map.html (Scott Wilkerson) * Issue with "Problems" section (John Frickson) * Status Map icons and online/offline status dots disappear in IE11 (John Frickson) * New network map overlays the nagios process with objects (John Frickson) * Added Default-Start and Default-Stop to the init script (John Frickson) * Compile / logging issues with BSD 6 * Related to above, Fixed a lot of incorrectly handled time_t's in *printf's (John Frickson) * New map not working for RU locale (actually, most locales) (John Frickson) * Replaced all instances of signal() with sigaction() + blocking (John Frickson) * UTF-8 characters like german ä are not processed properly by function url_encode (John Frickson) * nagios worker processes can hog CPU (huxley / John Frickson) * custom time periods that include special characters were not being handled in reports (John Frickson) * Fixed init script to wait up to 90 seconds then kill the nagios process (John Frickson) * No Host Groups results in wrong error message (John Frickson) * Setup Nagios users to view specific host is not working in the new network map (John Frickson) * statusjson.cgi fails glibc realloc truncate response output (John Frickson) * Report Time Period does not work if an @ character is in the timeperiod name (John Frickson) * State History does not use actual plugin long_output (John Frickson) * Time period corruption (xoubih) * Tactical Overview - Disabled Flap Detection Link (John Frickson) 4.1.1 - 08/19/2015 ------------------ FIXES * CGI Could not read object configuration data (broken by error in 4.1.0) * exclude (!) not working (broken by mis-applied fix for 4.1.0) 4.1.0 - 08/18/2015 ------------------ ENHANCEMENTS * Promoted JSON CGIs to released status (Eric Stanley) * New graphical CGI displays: statusmap, trends, histogram (Eric Stanley) * Make sticky status for acks and comments configurable enhancement #20 (Trevor McDonald / Scott Wilkerson) * Add host_down_disable_service_checks directive to nagios.cfg #44 (Trevor McDonald / Scott Wilkerson) * httpd.conf doesn't support Apache versions > 2.3 (DanielB / John Frickson) FIXES * Fix for not all service dependencies created (John Frickson) * Fix SIGSEGV with empty custom variable (orbis / John Frickson) * Fix contact macros in environment variables (dvoryanchikov) * Fixed host's current attempt goes to 1 after going to hard state (John Frickson) * Fixed two bugs/problems: Replace use of %zd in base/utils.c & incorrect va_start() in cgi/jsonutils.c (Peter Eriksson) * Fixed: Let remove_specialized actually remove all workers (Phil Mayers) * Fixed log file spam caused when using perfdata command directives in nagios.cfg (shashikanthbussa) * Fixed off-by-one error in bounds check leads to segfault (Phil Mayers) * Added links for legacy graphical displays (Eric Stanley) * Update embedded URL's to https versions of Nagios websites (scottwilkerson) * Fixed doxygen comments to work with latest doxygen 1.8.9.1 #30 (Trevor McDonald) * Fixed makefile target "html" to PHONY to fix GitHub issue #28 (Trevor McDonald) * Fixed typo as per GitHub issue #27 (Trevor McDonald) * Fixed jsonquery.php 404 not found error, and disabled Send Query button until form populates #43 (Scott Wilkerson) * Fixed linking in Tactical Overview for several of the Host entries in Featured section #48 (Scott Wilkerson) * Fixed passing limit and sort options to pagination and sort links #42 (Scott Wilkerson) * Added form field for icon URL and clean-up when it changes in CGI Status Map. (Eric Stanley) * Added options to cgi.cfg to uncheck sticky and send when acknowledging a problem (Trevor McDonald) * Low impact changes to automate the generation of RPMs from nagios.spec file. (T.J. Yang) * Update index.php (Trevor McDonald) * Fixed escaping of corewindow parameter to account for possible XSS injection (Scott Wilkerson) * Typo correction (T.J. Yang) * Make getCoreStatus respect cgi_base_url (Moritz Schlarb) * Adjusted map layout to work within frames (Eric Stanley) * Fixed map displays are now the full size of browser window (Eric Stanley) * Fixed labels and icons on circular markup no longer scale on zoom (Eric Stanley) * Got all maps except circular markup working with icons (Eric Stanley) * Fixes to make legacy CGIs work again. (Eric Stanley) * Fixes to make all/html target tolerant of being run multiple times (Eric Stanley) * For user-supplied maps, converted node group to have transform (Eric Stanley) * Fixed issue transitioning from circular markup map to other maps (Eric Stanley) * Fix displayForm to trigger on the button press (Scott Wilkerson) * Fix fo getBBox crash on Firefox (Eric Stanley) * Fixed map now resets zoom when form apply()'d (Eric Stanley) * Fixed so close box on dialogs actually closes dialog (Eric Stanley) * Corrected directive in trends display (Eric Stanley) * Fixed minor issue with link in trends links (Eric Stanley) * Fixed issue with map displaying on Firefox (Eric Stanley) * Added exclusions for ctags generation (Eric Stanley) * Update map-popup.html (Scott Wilkerson) * Initial commit of new graphical CGIs (Eric Stanley) * Fixed Github bug #18 - archivejson.cgi returns wrong host for state change query (Eric Stanley) * Status JSON: Added next_check to service details (Eric Stanley) * Fixed escaping of keys for scalar values in JSON CGIs (Eric Stanley) * build: Include <sys/loadavg.h> if it exists. (Eric J. Mislivec) * lib-tests: test-io{cache|broker} need -lsocket to link. (Eric J. Mislivec) * lib-tests: test-runcmd assumes GNU echo. (Eric J. Mislivec) * lib-tests: Signal handlers don't return int on most platforms, and using a cast was the wrong way to resolve this. (Eric J. Mislivec) * Fix some type/format mismatch warnings for pid_t. (Eric J. Mislivec) * Fix build on Solaris. (Eric J. Mislivec) * runcmd: Fix build when we don't HAVE_SETENV. (Eric J. Mislivec) * Fixed checkresult output processing (Eric Mislivec) * Corrected escaping of long output macros (Eric Mislivec) * Fixed null pointer dereferences in archive JSON (Eric Stanley) * Fixed memory overwrite issue in JSON string escaping (Eric Stanley) * JSON CGI: Now escaping object and array keys (Eric Stanley) KNOWN ISSUES * New map does not account for multiple parents, leaving "legacy" map as an option in the menu
branch joyent/release/2012Q4
openssl doesn't compile
http://pastebin.com/dJW53fWV
The text was updated successfully, but these errors were encountered: