+ Version 2.15 (18.10.2016)
- PR #121: Update bundled PLY version to 3.8
- Issue #117: Fix parsing of extra semi-colons inside structure declarations.
- PR #109: Update c_generator to add {} around nested named initializers.
- PR #101: Added support for parsing pragmas into the AST.
- Additional fake headers and typedefs, manifest fixes (#97, #106, #111).
- Testing with Python 3.5 instead of 3.3 now (3.4 and 3.5 are the 3.x versions
tested).
- PR #145: More complete support for offsetof()
- Issue #116: Fix line numbers recorded for empty and compound statements.
- Minor performance improvement to the invalid string literal regex.
2016-09-23 version 3.1.0 (C++/Java/Python/PHP/Ruby/Objective-C/C#/JavaScript/Lite)
General
* Proto3 support in PHP (alpha).
* Various bug fixes.
C++
* Added MessageLite::ByteSizeLong() that’s equivalent to
MessageLite::ByteSize() but returns the value in size_t. Useful to check
whether a message is over the 2G size limit that protobuf can support.
* Moved default_instances to global variables. This allows default_instance
addresses to be known at compile time.
* Adding missing generic gcc 64-bit atomicops.
* Restore New*Callback into google::protobuf namespace since these are used
by the service stubs code
* JSON support.
* Fixed some conformance issues.
* Fixed a JSON serialization bug for bytes fields.
Java
* Fixed a bug in TextFormat that doesn’t accept empty repeated fields (i.e.,
“field: [ ]”).
* JSON support
* Fixed JsonFormat to do correct snake_case-to-camelCase conversion for
non-style-conforming field names.
* Fixed JsonFormat to parse empty Any message correctly.
* Added an option to JsonFormat.Parser to ignore unknown fields.
* Experimental API
* Added UnsafeByteOperations.unsafeWrap(byte[]) to wrap a byte array into
ByteString without copy.
Python
* JSON support
* Fixed some conformance issues.
PHP (Alpha)
* We have added the proto3 support for PHP via both a pure PHP package and a
native c extension. The pure PHP package is intended to provide usability
to wider range of PHP platforms, while the c extension is intended to
provide higher performance. Both implementations provide the same runtime
APIs and share the same generated code. Users don’t need to re-generate
code for the same proto definition when they want to switch the
implementation later. The pure PHP package is included in the php/src
directory, and the c extension is included in the php/ext directory.
Both implementations provide idiomatic PHP APIs:
* All messages and enums are defined as PHP classes.
* All message fields can only be accessed via getter/setter.
* Both repeated field elements and map elements are stored in containers
that act like a normal PHP array.
Unlike several existing third-party PHP implementations for protobuf, our
implementations are built on a "strongly-typed" philosophy: message fields
and array/map containers will throw exceptions eagerly when values of the
incorrect type (not including those that can be type converted, e.g.,
double <-> integer <-> numeric string) are inserted.
Currently, pure PHP runtime supports php5.5, 5.6 and 7 on linux. C
extension runtime supports php5.5 and 5.6 on linux.
See php/README.md for more details about installment. See
https://developers.google.com/protocol-buffers/docs/phptutorial for more
details about APIs.
Objective-C
* Helpers are now provided for working the the Any well known type (see
GPBWellKnownTypes.h for the api additions).
* Some improvements in startup code (especially when extensions aren’t used).
Javascript
* Fixed missing import of jspb.Map
* Fixed valueWriterFn variable name
Ruby
* Fixed hash computation for JRuby's RubyMessage
* Make sure map parsing frames are GC-rooted.
* Added API support for well-known types.
C#
* Removed check on dependency in the C# reflection API.
2016-09-06 version 3.0.2 (C++/Java/Python/Ruby/Objective-C/C#/JavaScript/Lite)
General
* Various bug fixes.
Objective C
* Fix for oneofs in proto3 syntax files where fields were set to the zero
value.
* Fix for embedded null character in strings.
* CocoaDocs support
Ruby
* Fixed memory corruption bug in parsing that could occur under GC pressure.
Javascript
* jspb.Map is now properly exported to CommonJS modules.
C#
* Removed legacy_enum_values flag.
New Features
Edit Book: Add a tool to download external resources (images/stylesheets/etc.) that are not included in the book.
Make custom columns available in the Alter Tag Browser->Manage categories sub menu
Bug Fixes
Conversion: Fix incorrect resolution of references to resources in HTML files that exist in a folder level above the OPF file. This could lead to styles being incorrectly processed in such HTML files.
Get Books: Update the amazon store plugins for website changes
Update ozon.ru metadata download plugin to fix searching for books by ISBN
Edit Book: Fix a regression in the previous release that broke the preferences dialog for changing color schemes.
Edit Book: Better error message when user tries to open a Check Book item that refers to a file that has been deleted since the last time Check Book was run.
Based on a PR by Jussi Sallinen.
1.6.9 2016-01-11
- Fix a regression introduced in version 1.6.8, which caused
GeoIP_database_info to erroneously return NULL.
1.6.8 2016-01-11
- Allow compilation on older systems by relaxing the autoconf and automake
minimum versions. Thank you, Jose Rubio!
- Avoid potential problems in multi-threaded environments by consistently using
pread() rather than read().
- Fix various small issues reported by clang's static analyser.
1.6.7 2015-10-30
- Fixed a MSVC parser stack overflow when parsing `regionName.c` and
`timeZone.c`. Fix by elliotlo. GitHub #64.
- Updated region codes and timezones.
- When using `GEOIP_MEMORY_CACHE` with an invalid database file, the search
tree traversal could attempt to read memory outside of the memory allocated
for the memory cache, resulting in a segmentation fault. A check was added
to ensure that the traversal code does not try to read beyond the end of the
file, whether in memory, memory mapped, or on disk.
- Previously the return values from file reads were ignored. We now check
these values to ensure that there were no errors.
1.6.6 2015-07-28
- Replaced usage of deprecated fileno, read, and lseek on Visual Studio 2005+
with their ISO C++ conformant replacements.
- A warning about using a double as a float was fixed.
- Fixed segfault when doing a lookup on an empty database.
- Fixed a memcheck error from valgrind in the `_check_mtime`
function.
- Fixed `_check_mtime` to check the return value of `gettimeofday` rather than
just assuming it worked.
1.6.5 2015-02-25
- A segmentation fault in `geoiplookup` was fixed when the utility was passed
an invalid database.
- Additional validation was added for validation of the size used in the
creation of the index cache.
- Changed the code to only look up country codes by using functions which
ensure that we do not try to look past the end of an array.
1.6.4 2015-01-12
- Update Fips codes
- Several issues with the MinGW build were fixed.
- Use a constructor in pread.c to ensure the critical section is always
initialized.
- Added missing include of `io.h` on Windows.
- Fixed `configure` warning that `'missing' script is too old or missing`.
- Previously `nmake /f Makefile.vc clean` would fail on Windows. This was
fixed.
- Obsolete win32 and NetWare make files were removed.
- Numerous documentation updates.
1.6.3 2014-10-29
- Added a GEOIP_SILENCE flag. Include this flag when calling GeoIP_open to
prevent any messages from being written to stderr.
- Mitigate a possible race condition when running under threads in the
GeoIP_cleanup function.
- Added some recommendations to the docs on using this library in a
threaded application.
- Fixed some bugs discovered by coverity, including failure to check some
system call return values and making sure all strings are
null-terminated.
1.6.2 2014-07-08
- Two files required for building on Win32 were missing from the 1.6.1
release. These files were added. There are no changes affecting other
platforms.
1.6.1 2014-06-26
- Improve Win32 support
- Update FIPS codes
1.6.0 2013-10-29
- Remove geoipupdate
1.5.2 2013-10-29
- Update region and time zones
- Fix benchmark script
- Remove autogenerated files ltmain.sh, man/geoip*.1
- Explain how to download free geolite databases in the README.md and
GeoIP.conf.default
- geoipupdate returns 1 on error 0 on success instead of the error code
- README is replaced by README.md
- Add support for OS X Mavericks
1.5.1 2013-05-14
- Update time_zone for Ontario, Canada
- geoiplookup and geoiplookup6 exit code is 0 when user asked for help
- Added -h option to geoiplookup6
- Do not load the database file if nodes and file size do not make
sense.
- Keep README and man pages in pure ascii.
- It doesn't make sense to use GEOIP_INDEX_MODE with small databases
like GEOIP_COUNTRY_EDITION. Instead of undefined behaviour we handle
it silently as GEOIP_MEMORY_MODE
- Update FIPS codes for Greece
1.5.0 2013-02-21
- Rename custom_directory to GeoIP_custom_directory.
- Make sure the database match the requested type. This is helpful for
Databases with the same default name and the general geoiplookup form
(geoiplookup without a specific database)
- apps/geoiplookup6.c use the ipnum instead of the hostname for lookups.
- Use configure.ac instead of configure.in
- Region lookup is a bit faster
- Add pkg-config file
- Updates required to build a Windows DLL under MinGW
- Make API thread safe
- geoiplookup's default charset is UTF8
-l change the charset back to iso8859-1
- geoipupdate skips \r otherwise it might be part of the last
product_id
- Update time zones
- Update Region codes
- Remove the unused CITYCONFIDENCE* database types
- bootstrap rebuilds ltmain.sh
- Update README.OSX for Lion
- Change Macedonia to Macedonia, The Former Yugoslav Republic of
- Add region_name to geoiplookup GEOIP_CITY_EDITION_REV1
- Add region_name to geoiplookup GEOIP_CITY_EDITION_REV0
- Add a --disable-data-files option. This allows you to build and install
the library without having a data/GeoIP.dat file. This is useful when
building the library from a checkout of the source tree, rather than a
tarball
- Add GEOIP_ACCURACYRADIUS_EDITION and GEOIP_ACCURACYRADIUS_EDITION_V6
- Add more database types GEOIP_COUNTRYCONF_EDITION,
GEOIP_CITYCONF_EDITION, GEOIP_REGIONCONF_EDITION and
GEOIP_POSTALCONF_EDITION
- Fix default filenames for GEOIP_NETSPEED_EDITION_REV1 and
GEOIP_NETSPEED_EDITION_REV1_V6
Changes in version 0.2.8.9 - 2016-10-17
Tor 0.2.8.9 backports a fix for a security hole in previous versions
of Tor that would allow a remote attacker to crash a Tor client,
hidden service, relay, or authority. All Tor users should upgrade to
this version, or to 0.2.9.4-alpha. Patches will be released for older
versions of Tor.
o Major features (security fixes, also in 0.2.9.4-alpha):
- Prevent a class of security bugs caused by treating the contents
of a buffer chunk as if they were a NUL-terminated string. At
least one such bug seems to be present in all currently used
versions of Tor, and would allow an attacker to remotely crash
most Tor instances, especially those compiled with extra compiler
hardening. With this defense in place, such bugs can't crash Tor,
though we should still fix them as they occur. Closes ticket
20384 (TROVE-2016-10-001).
o Minor features (geoip):
- Update geoip and geoip6 to the October 4 2016 Maxmind GeoLite2
Country database.
- crypto: Don't automatically attempt to load an OpenSSL
configuration file, from the OPENSSL_CONF environment variable
or from the default location for the current platform. Always
triggering a configuration file load attempt may allow an attacker
to load compromised OpenSSL configuration into a Node.js process
if they are able to place a file in a default location.
- node: Introduce the process.release.lts property, set to "Boron".
This value is "Argon" for v4 LTS releases and undefined for all
other releases.
- V8: Backport fix for CVE-2016-5172, an arbitrary memory read.
- v8_inspector: Generate a UUID for each execution of the
inspector. This provides additional security to prevent
unauthorized clients from connecting to the Node.js process via
the v8_inspector port when running with --inspect.
Streamlink is a command-line utility that pipes video streams from various
services into a video player, such as VLC. The main purpose of Streamlink
is to allow the user to avoid buggy and CPU heavy flash plugins but still
be able to enjoy various streamed content.
Streamlink is a fork of Livestreamer
=== 3.0
Breaking changes:
* No longer supports ruby 2.0 and earlier
* Net::HTTP::Persistent::new now uses keyword arguments for +name+ and
+proxy+.
* Removed #max_age, use #expired?
New features:
* Uses connection_pool to manage all connections for a Net::HTTP::Persistent
instance.
Bug fixes:
* Add missing SSL options ca_path, ciphers, ssl_timeout, verify_depth.
Issue #63 by Johnneylee Jack Rollins.
== 1.7.0 Dunder Mifflin
* Rack 2 support
* Ensure Response body.close is called in the same thread
Fixes issues with ActiveRecord connection management [#307]
* Fix TCP/IP Backend reports incorrect port when asked to bind to 0 [meschbach]
* Work with ruby 2.3's --enable-frozen-string-literal [jeremyevans]
3.4.22 (28 March 2016)
* Sass now runs without warnings when running ruby with code style
warnings enabled.
* Sass no longer watches the current working directory unless it is on
the load path or the files being compiled are in the current working
directory. This was causing performance issues for users with large
numbers of files in their project directory. Issue #1562, Issue #1966,
Issue #2006.
* sass-convert now accepts a -q and --quiet option to disable ouput
while it is running.
* Fixed a bug in sass-convert when recursively processing CSS files into
Sass files which caused the process to crash without processing any
files. Issue #1827,
Deprecation – Must Read!
* Support for Ruby 1.8.7 and 1.9.3 is deprecated. See this blog post for
details.
* The current handling of CSS variables is deprecated. In order to
support the CSS spec as fully as possible, no Sass-specific constructs
other than #{} will be supported in CSS variable values. For
forwards-compatibility, any SassScript being used in CSS variables
must be moved into #{}.