-Noteworthy changes in version 0.4.3 (unreleased)
+Noteworthy changes in version 1.3.2 (unreleased)
+------------------------------------------------
+
+ * Remove support for libgpgme-pth. As far as we know, this was never used,
+ and GnuPG is going to use our own npth in the future.
+
+
+Noteworthy changes in version 1.3.1 (2011-06-16)
+------------------------------------------------
+
+ * Ported to Windows CE.
+
+ * Detect GPG versions not supporting ---passwd.
+
+ * Interface changes relative to the 1.3.0 release:
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ GPGME_EXPORT_MODE_MINIMAL NEW
+ GPGME_STATUS_SUCCESS NEW
+ gpgme_err_code_from_syserror NEW
+ gpgme_err_set_errno NEW
+ gpgme_error_from_errno CHANGED: Return gpgme_error_t (compatible type).
+ gpgme_error_from_syserror NEW
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.3.0 (2010-01-11)
+------------------------------------------------
+
+ * GPGME does not come with an internal libassuan version anymore.
+ The external libassuan 1.1.0 release or later is required. For
+ application programmers on systems that can resolve inter-library
+ dependencies at runtime, this is a transparent change.
+
+ * New engine GPGME_PROTOCOL_G13 to support the new g13 tool.
+
+ * New engine GPGME_PROTOCOL_UISERVER to support UI Servers.
+
+ * New API to change the passphrase of a key.
+
+ * Interface changes relative to the 1.2.0 release:
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ GPGME_STATUS_INV_SGNR NEW.
+ GPGME_STATUS_NO_SGNR NEW.
+ GPGME_PROTOCOL_G13 NEW.
+ gpgme_op_g13_mount NEW.
+ gpgme_g13_result_t NEW.
+ GPGME_PK_ECDSA NEW.
+ GPGME_PK_ECDH NEW.
+ gpgme_op_passwd_start NEW.
+ gpgme_op_passwd NEW.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.2.0 (2009-06-18)
+------------------------------------------------
+
+ * New encryption flag GPGME_ENCRYPT_NO_ENCRYPT_TO to disable default
+ recipients.
+
+ * gpgme_new will fail if gpgme_check_version was not called, or a
+ selftest failed (for example, if -mms-bitfields was not used on
+ MingW32 targets).
+
+ * New functions gpgme_io_read and gpgme_io_write for use with
+ gpgme_passphrase_cb_t and gpgme_edit_cb_t functions.
+
+ * New functions gpgme_result_ref and gpgme_result_unref to detach
+ result structures from a context.
+
+ * New functions gpgme_op_export_keys_start and gpgme_op_export_keys
+ that allow to specify exported keys through gpgme_key_t objects
+ instead of patterns.
+
+ * New mode of operation gpgme_export_mode_t that allows exporting
+ external keys.
+
+ * Interface changes relative to the 1.1.7 release:
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ GPGME_KEYLIST_MODE_EPHEMERAL NEW.
+ GPGME_PROTOCOL_ASSUAN NEW.
+ gpgme_assuan_data_cb_t NEW.
+ gpgme_assuan_inquire_cb_t NEW.
+ gpgme_assuan_status_cb_t NEW.
+ gpgme_op_assuan_transact_start NEW.
+ gpgme_op_assuan_transact NEW.
+ gpgme_op_assuan_result NEW.
+ gpgme_op_import_keys NEW.
+ gpgme_op_import_keys_start NEW.
+ gpgme_subkey_t EXTENDED: New fields is_cardkey, card_number.
+ GPGME_ENCRYPT_NO_ENCRYPT_TO NEW.
+ gpgme_check_version CHANGED: Is now a macro.
+ gpgme_new EXTENDED: More failure codes.
+ gpgme_io_read NEW.
+ gpgme_io_write NEW.
+ gpgme_result_ref NEW.
+ gpgme_result_unref NEW.
+ gpgme_export_mode_t NEW.
+ gpgme_export_ext_start EXTENDED: Arg RESERVED is now a MODE flag.
+ gpgme_op_export EXTENDED: Arg RESERVED is now a MODE flag.
+ gpgme_op_export_ext_start EXTENDED: Arg RESERVED is now a MODE flag.
+ gpgme_op_export_ext EXTENDED: Arg RESERVED is now a MODE flag.
+ gpgme_op_export_keys_start NEW.
+ gpgme_op_export_keys NEW.
+ GPGME_DATA_ENCODING_URL NEW.
+ GPGME_DATA_ENCODING_URL0 NEW.
+ GPGME_DATA_ENCODING_URLESC NEW.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.1.8 (2008-12-08)
+------------------------------------------------
+
+ * SIGPIPE is now again ignored as described in the manual. Fixes
+ regresion introduced with 1.1.6.
+
+
+Noteworthy changes in version 1.1.7 (2008-10-17)
+------------------------------------------------
+
+ * Using GPGME_KEYLIST_MODE_LOCAL combined with
+ GPGME_KEYLIST_MODE_EXTERN is now supported; it uses the
+ --locate-keys feature of gpg (>= 2.0.10).
+
+ * The encoding of gpgme_data_t objects can affect the output encoding
+ of export, sign and encrypt operations now (the same operations
+ that are also affected by the ASCII mode switch). We believe this
+ change in the ABI is innocent enough not to break existing
+ applications (it only affects the S/MIME backend on certain
+ operations).
+
+ * The reference manual now includes the specification of "The GnuPG
+ UI Server protocol".
+
+ * A new function gpgme_cancel_async can be used to asynchronously
+ cancel any pending operation at any time, from any thread.
+
+ * Interface changes relative to the 1.1.6 release:
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_op_encrypt CHANGED: Output encoding can affect result.
+gpgme_op_encrypt_start CHANGED: Output encoding can affect result.
+gpgme_op_encrypt_sign CHANGED: Output encoding can affect result.
+gpgme_op_encrypt_sign_start CHANGED: Output encoding can affect result.
+gpgme_op_sign CHANGED: Output encoding can affect result.
+gpgme_op_sign_start CHANGED: Output encoding can affect result.
+gpgme_op_export CHANGED: Output encoding can affect result.
+gpgme_op_export_start CHANGED: Output encoding can affect result.
+gpgme_op_export_ext CHANGED: Output encoding can affect result.
+gpgme_op_export_ext_start CHANGED: Output encoding can affect result.
+gpgme_cancel_async NEW
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.1.6 (2008-01-04)
+------------------------------------------------
+
+ * Bug fixes for for W32.
+
+ * A new, experimental (and thus undocumented and potentially
+ unstable) interface for accessing gpg-conf through GPGME has been
+ added.
+
+ * Interface changes relative to the 1.1.1 release:
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ gpgme_signature_t EXTENDED: New field chain_model.
+ gpgme_op_getauditlog_start NEW.
+ gpgme_op_getauditlog NEW.
+ GPGME_AUDITLOG_HTML NEW.
+ GPGME_AUDITLOG_WITH_HELP NEW.
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.1.5 (2007-07-09)
+------------------------------------------------
+
+ * Bug and portability fixes (mainly for W32).
+
+
+Noteworthy changes in version 1.1.4 (2007-03-05)
+------------------------------------------------
+
+ * Detect and bail out on double plaintext messages. This is required
+ so that applications can properly detect the signed parts of a
+ message. Actual there is now a double protection as GnuPG 1.4.7
+ will detect this case too.
+
+
+Noteworthy changes in version 1.1.3 (2007-01-29)
+------------------------------------------------
+
+ * Fixed a memory leak in gpgme_data_release_and_get_mem.
+
+ * Fixed a bug in Windows command line quoting.
+
+
+Noteworthy changes in version 1.1.2 (2006-03-02)
+------------------------------------------------
+
+ * Fixed a bug in the W32 glib backend.
+
+
+Noteworthy changes in version 1.1.1 (2006-02-23)
+------------------------------------------------
+
+ * Fixed a bug in that the fingerprints of subkeys are not available.
+
+ * Clarified usage of the SECRET flag in key listings. It is now
+ reset for stub keys.
+
+ * Reading signature notations and policy URLs on key signatures is
+ supported. They can be found in the new field notations of the
+ gpgme_key_sig_t structure. This has to be enabled with the keylist
+ mode flag GPGME_KEYLIST_MODE_SIG_NOTATIONS.
+
+ * A new gpgme_free() function solves the problem of using different
+ allocators in a single program. This function should now be used
+ instead calling free() to release the buffer returned by
+ gpgme_data_release_and_get_mem. It is recommended that you always
+ do this, but it is only necessary on certain platforms, so backwards
+ compatibility is provided. In other words: If free() worked for
+ you before, it will keep working.
+
+ * New status codes GPGME_PKA_TRUST_GOOD and GPGME_PKA_TRUST_BAD.
+ They are analyzed by the verify handlers and made available in the
+ new PKA_TRUST and PKA_ADDRESS fields of the signature result structure.
+
+ * Interface changes relative to the 1.1.0 release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_key_sig_t EXTENDED: New field notations.
+GPGME_KEYLIST_MODE_SIG_NOTATIONS NEW
+gpgme_free NEW
+GPGME_STATUS_PKA_TRUST_BAD NEW
+GPGME_STATUS_PKA_TRUST_GOOD NEW
+gpgme_signature_t EXTENDED: New field pka_trust.
+gpgme_signature_t EXTENDED: New field pka_address.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.1.0 (2005-10-01)
+------------------------------------------------
+
+ * You can now configure the backend engine file name and home
+ directory to be used, as default and per context.
+
+ * Information about the recipients of an encrypted text is now
+ available at decryption time.
+
+ * New status GPGME_STATUS_PLAINTEXT. This is analyzed by the decrypt
+ and verify handlers, the information about the plaintext filename,
+ if available is made available in the new field file_name of the
+ respective result structure.
+
+ * The code for "automagically detecting the thread library" has been
+ removed from libgpgme. It is deprecated since version 0.4.3.
+ Since then, you had to link against libgpgme-pthread for
+ applications using pthread and libgpgme-pth for applications using
+ GNU Pth.
+
+ The code was removed because it caused compilation problems on
+ systems where the pthread.h header from GNU Pth is available in
+ addition to the system header (FreeBSD 6 and later for example).
+
+ * "./autogen.sh --build-w32" does now build gpgme.dll.
+
+ * [W32] The environment variable GPGME_DEBUG now uses a semicolon as
+ delimiter. The standard install directory is used when locating
+ gpg or gpgsm before finally falling back to the hardwired name.
+
+ * There is a new flag for keys and subkeys, is_qualified, which
+ indicates if a key can be used for qualified signatures according
+ to local government regulations.
+
+ * You can associate a filename with a data object using the new
+ function gpgme_data_set_file_name(). This filename will be stored
+ in the output when encrypting or signing the data and will be
+ returned when decrypting or verifying the output data.
+
+ * You can now set notation data at signature creation with the new
+ function gpgme_sig_notation_add().
+
+ * Interface changes relative to the 1.0.3 release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_set_engine_info NEW
+gpgme_ctx_get_engine_info NEW
+gpgme_ctx_set_engine_info NEW
+gpgme_recipient_t NEW
+gpgme_decrypt_result_t EXTENDED: New field recipients.
+gpgme_verify_result_t EXTENDED: New fields pubkey_algo, hash_algo.
+gpgme_decrypt_result_t EXTENDED: New field plaintext_filename.
+gpgme_verify_result_t EXTENDED: New field plaintext_filename.
+GPGME_STATUS_PLAINTEXT NEW
+gpgme_key_t EXTENDED: New field is_qualified.
+gpgme_subkey_t EXTENDED: New field is_qualified.
+gpgme_data_get_file_name NEW
+gpgme_data_set_file_name NEW
+gpgme_sig_notation_flags_t NEW
+GPGME_SIG_NOTATION_HUMAN_READABLE NEW
+GPGME_SIG_NOTATAION_CRITICAL NEW
+gpgme_sig_notation_clear NEW
+gpgme_sig_notation_add NEW
+gpgme_sig_notation_get NEW
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.0.3 (2005-06-20)
+------------------------------------------------
+
+ * Previousy, GPGME would use a default "include certs" of 1. This
+ has been changed. Now GPGME will use the crypto backend engines
+ default unless you set the value with gpgme_set_include_certs()
+ explicitely. A new macro GPGME_INCLUDE_CERTS_DEFAULT can be used
+ as a value to explicitely request the new default behaviour.
+
+ Because the default changes, this is a slight change of the API
+ semantics. We consider it to be a bug fix.
+
+ * A bug which made GPGME hang has been fixed. If you have
+ experienced hanging before, please try out this version and let me
+ know if you still experience hanging problems.
+
+ * Interface changes relative to the 0.9.0 release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_set_include_certs CHANGED DEFAULT
+GPGME_INCLUDE_CERTS_DEFAULT NEW
+GPGME_STATUS_SIG_SUBPACKET NEW
+GPGME_STATUS_NEED_PASSPHRASE_PIN NEW
+GPGME_STATUS_SC_OP_FAILURE NEW
+GPGME_STATUS_SC_OP_SUCCESS NEW
+GPGME_STATUS_CARDCTRL NEW
+GPGME_STATUS_BACKUP_KEY_CREATED NEW
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 1.0.2 (2004-12-28)
+------------------------------------------------
+
+ * Changed the license of the library to the GNU Lesser General Public
+ License (LGPL), version 2.1 or later.
+
+
+Noteworthy changes in version 1.0.1 (2004-10-22)
+------------------------------------------------
+
+ * Only bug fixes.
+
+
+Noteworthy changes in version 1.0.0 (2004-09-30)
+------------------------------------------------
+
+ * Version 1.0.0! We are proud to present you with a thoroughly
+ tested and stable version of the GPGME library. A big Thank You!
+ to all the people who made this possible.
+
+ The development will be branched into a stable 1.x.y series and the
+ head.
+
+ * The gpgme.m4 macro supports checking the API version. Just prepend
+ it to the required version string, separated by a colon. For
+ example, this release has the version "1:1.0.0". The last release
+ to which this version is (mostly) ABI compatible is "1:0.4.2",
+ which is the default required version.
+
+
+Noteworthy changes in version 0.9.0 (2004-06-08)
+------------------------------------------------
+
+ * The type gpgme_key_t has now a new field keylist_mode that contains
+ the keylist mode that was active at the time the key was retrieved.
+
+ * The type gpgme_decrypt_result_t has a new field "wrong_key_usage"
+ that contains a flag indicating that the key should not have been
+ used for encryption.
+
+ * Verifying a signature of a revoked key gives the correct result now
+ (GPG_ERR_CERT_REVOKED error code).
+
+ * Clarified that the error code GPG_ERR_NO_DATA from the decrypt &
+ verify operations still allows you to look at the signature
+ verification result.
+
+ * Clarified that patterns in keylisting operations have an upper
+ limit, and thus are not suited to list many keys at once by their
+ fingerprint. Also improve the error message if the pattern is too
+ long for the CMS protocol to handle.
+
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_key_t EXTENDED: New field keylist_mode.
+gpgme_decrypt_result_t EXTENDED: New field wrong_key_usage.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+
+Noteworthy changes in version 0.4.7 (2004-04-29)
+------------------------------------------------
+
+ * Correctly initialize the fields expired, revoked, invalid, and
+ disabled in the gpgme_key_t structures.
+
+ * A bug fix: The flag wrong_key_usage of gpgme_signature_t was
+ accidently of type int instead unsigned int.
+
+ * Interface changes relative to the 0.4.5 release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_signature_t CHANGED: wrong_key_usage is unsigned int now.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Noteworthy changes in version 0.4.6 (2004-04-06)
+------------------------------------------------
+
+ * Bug fixes
+
+
+Noteworthy changes in version 0.4.5 (2004-03-07)
+------------------------------------------------
+
+ * GPGME is now compiled with LFS (large file support) by default.
+ This means that _all_ programs using GPGME must be compiled with
+ LFS support enabled by default. You can do this easily with
+ autoconf, by using the AC_SYS_LARGEFILE macro. Or you can do this
+ without autoconf by defining the preprocessor symbol
+ _FILE_OFFSET_BITS to 64 (by passing the -D_FILE_OFFSET_BITS=64 to
+ the C compiler command line, or by defining this preprocessor
+ symbol before including any system header files). For more
+ details, read the section on LFS in the manual.
+
+ Up to now, it was undocumented that GPGME was not using LFS.
+ But the public interfaces use off_t, and file descriptors are
+ exchanged between the application and GPGME. This was an oversight,
+ and bound to cause troubles in the future.
+
+ Writing GPGME as a dual mode library that seamlessly supports LFS
+ while keeping backwards compatibility is possible, but does not
+ solve the problem: Many applications already expect GPGME to have
+ LFS (they are compiled with off_t being a 64bit value). This is true
+ in particular for the popular Gtk+ and Qt programs.
+
+ So, although this is an ABI (but not an API) break, we will not
+ change the library version to reflect that. Because the interfaces
+ affected are probably not used yet in any GPGME 0.4 based
+ application, we don't expect any real failures from this change.
+ In fact, applications already using LFS will have some subtle bugs
+ fixed.
+
+ However, if you encounter an application using GPGME 0.4.x that
+ does _not_ use LFS by default (off_t is a 32bit value), _and_
+ uses at least one of the functions gpgme_data_seek,
+ gpgme_data_new_from_filepart, or a gpgme_data_seek_cb_t with
+ gpgme_data_new_from_cbs, then indeed this library will be ABI
+ incompatible with the program. As said above, we don't believe
+ such a program exists. If we are in error, then you have two
+ options: As a quick hack, you can configure GPGME with the
+ --disable-largefile option. This will revert the change, and GPGME
+ will not use LFS. However, GPGME will be incompatible with
+ programs that expect GPGME to use LFS. All applications are
+ required to use LFS when using GPGME, so this is only good as a
+ temporary local work-around.
+
+ The other option is to change the versioning of the library and
+ recompile all applications. We have reserved a special version of
+ the library for that, so you can do that without expecting a
+ version clash in the future. Furthermore, everyone who does this
+ will agree on the version to use (this is important for
+ distribution makers). Read the comment in configure.ac (before
+ LIBGPGME_LT_AGE) if you want to do this. Please don't do this
+ blindly: As stated above, we think it is unlikely this measure is
+ needed. Still, it is there if necessary. If in doubt, contact us
+ and we will give our advise for your specific situation.
+
+ * New key listing mode GPGME_KEYLIST_MODE_VALIDATE for validation of
+ the listed keys.
+
+ * New interface gpgme_cancel() that can be used to cancel
+ asynchronous operations.
+
+ * Interface changes relative to the 0.4.4 release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_data_seek_cb_t CHANGED: off_t is now a largefile type.
+gpgme_data_seek CHANGED: off_t is now a largefile type.
+gpgme_data_new_from_filepart CHANGED: off_t is now a largefile type.
+GPGME_KEYLIST_MODE_VALIDATE NEW
+gpgme_cancel NEW
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Noteworthy changes in version 0.4.4 (2004-01-12)
+------------------------------------------------
+
+ * The member "class" in gpgme_key_sig_t and gpgme_new_signature_t has
+ been renamed to "sig_class", to avoid clash with C++ compilers. In
+ the C API, the old name "class" has been preserved for backwards
+ compatibility, but is deprecated.
+
+ * Interface changes relative to the 0.4.3 release:
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_key_sig_t CHANGED: class deprecated, use new sig_class.
+gpgme_new_signature_t CHANGED: class deprecated, use new sig_class.
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+Noteworthy changes in version 0.4.3 (2003-10-06)
------------------------------------------------
* libgpgme should not be used for threaded programs anymore. This
variables of course also include the configuration for the thread
package itself. Alternatively, use libtool.
+ * gpgme_strerror_r as a thread safe variant of gpgme_strerror was
+ added.
+
* gpgme-config doesn't support setting the prefix or exec prefix
anymore. I don't think it ever worked correctly, and it seems to
be pointless.
than an unsigned long (the old class field is preserved for
backwards compatibility).
- * Interface changes relative to the 0.4.3 release:
+ * A new function gpgme_set_locale() is provided to allow configuring
+ the locale for the crypto backend. This is necessary for text
+ terminals so that programs like the pinentry can be started with
+ the right locale settings for the terminal the application is running
+ on, in case the terminal has different settings than the system
+ default (for example, if it is a remote terminal). You are highly
+ recommended to call the following functions directly after
+ gpgme_check_version:
+
+ #include <locale.h>
+
+ setlocale (LC_ALL, "");
+ gpgme_set_locale (NULL, LC_CTYPE, setlocale (LC_CTYPE, NULL));
+ gpgme_set_locale (NULL, LC_MESSAGES, setlocale (LC_MESSAGES, NULL));
+
+ GPGME can not do this for you, as setlocale is not thread safe, and
+ there is no alternative.
+
+ * The signal action for SIGPIPE is now set to SIG_IGN by
+ gpgme_check_version, instead the first time a crypto engine is
+ started (which is not well defined).
+
+ * In the output of gpgme_hash_algo_name, change RMD160 to RIPEMD160,
+ TIGER to TIGER192, CRC32-RFC1510 to CRC32RFC1510, and CRC24-RFC2440
+ to CRC24RFC2440. For now, these strings can be used as the MIC
+ parameter for PGP/MIME (if appropriately modified).
+
+ * Interface changes relative to the 0.4.2 release:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+gpgme_strerror_t NEW
gpgme_get_key CHANGED: Fails correctly if key ID not unique.
gpgme_key_t EXTENDED: New field can_authenticate.
gpgme_subkey_t EXTENDED: New field can_authenticate.
gpgme_new_signature_t CHANGED: New type for class field.
+gpgme_set_locale NEW
+gpgme_hash_algo_name CHANGED: Slight adjustment of algo names.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
-
Noteworthy changes in version 0.4.2 (2003-07-30)
------------------------------------------------
GPGME_ATTR_SIG_CLASS NEW
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+Noteworthy changes in version 0.3.16 (2003-11-19)
+-------------------------------------------------
+
+ * Compatibility fixes for GnuPG 1.9.x
+
Noteworthy changes in version 0.3.15 (2003-02-18)
-------------------------------------------------
* Made the W32 support more robust.
- Copyright 2001, 2002 g10 Code GmbH
+ Copyright 2001, 2002, 2003, 2004, 2005, 2007, 2008, 2009,
+ 2010 g10 Code GmbH
This file is free software; as a special exception the author gives
unlimited permission to copy and/or distribute it, with or without