Skip to content

Latest commit

 

History

History
186 lines (140 loc) · 14.9 KB

CHANGELOG.md

File metadata and controls

186 lines (140 loc) · 14.9 KB

Themis ChangeLog

0.10.0, February 6th 2018

TL;DR: Multi-platform, multi-language compatibility improved.

⚠️ Incompatibility issues:

  • If you are using Themis on x64 systems, consider upgrading every Themis library/wrapper you were using to 0.10.0. Incompatibility issues may arise between previous Themis versions and 0.10.0 on x64 machines (#279).

  • Rubythemis has breaking changes for Secure Cell Token Protect mode (#281). We added checks for other language wrappers to make sure this won't happen again (#282, #283).

Check the Migration Guide for more details.

Docs:

Infrastructure:

  • Added support of Ubuntu 17.10.
  • Removed support of Ubuntu 16.10 and Ubuntu 17.04 (no more compiled binaries for these OSs now).
  • Added CLI utils for easy testing of Secure Cell, Secure Message, and Key generation on local machine. Available for Python, Ruby, Go, NodeJS, and PHP. Check the Console Utils guide for more details and usage description/guide.
  • Added Integration test suit for the majority of the available language wrappers, which was the catalyst for many fixes in this release.
  • Added support of CircleCI 2.0 with multiple workflows. This allows testing each language wrapper and integrations between them easily and quickly (#295, #299).

Code:

  • Core:
    • Fixed incompatibility issue that existed in Secure Cell between x32 and x64 machines (#279);
    • Added C examples for using buffer API in Secure Session (#271);
    • Fixed possible SigFault in Secure Message at the point of providing an incorrect private key path (#286).
  • C++ wrapper:
    • Added a set of unit tests (#292).
  • Android wrapper:
    • simplified Android build by providing a ready-to-use Docker container. No need to compile BoringSSL manually now! (#273 by @secumod).
  • iOS wrapper:
    • Updated Secure Comparator definitions and provided code samples (#287, #288).
  • GoThemis:
    • Added get_remote_id function, which is making SecureSession easier to use (#272);
    • Added CLI utils and integration tests that allow you to test Secure Cell, Secure Message, and Key generation on your local machine (#277, #293, #305, #306).
  • JSThemis:
    • Added a separate installation step in Makefile. Now you can install jsthemis via make jsthemis_install (#302);
    • Added CLI utils and integration tests that allow you to test Secure Cell, Secure Message, and Key generation on your local machine (#277, #293, #305, #306).
  • RubyThemis:
    • Fixed arguments' order for Secure Cell in the Token Protect mode, which caused incompatibility with older versions of rubythemis (#281). Please check the migration guide for the details;
    • Added CLI utils and integration tests that allow you to test Secure Cell, Secure Message, and Key generation on your local machine (#277, #293, #305, #306)
  • PyThemis:
    • Improved the installation process via Makefile for python3 users (#300);
    • Added CLI utils and integration tests that allow you to test Secure Cell, Secure Message, and Key generation on your local machine (#277, #293, #305, #306).
  • PHPThemis:
    • Added support of PHP 7.0, 7.1, 7.2 (#278, #280);
    • Added a package for phpthemis. Now you don't need to compile it from sources. See the installation PHP guide for more details;
    • Improved unit tests. Now it's easy to run tests because all the dependencies are handled by a php-composer (#284, #285, #303);
    • Added a memory test suit, which allows us to keep a closer eye on PHPThemis' memory usage (#298);
    • Added CLI utils and integration tests that allow you to test Secure Cell, Secure Message, and Key generation on your local machine (#277, #293, #305, #306).

0.9.6, December 14th 2017

TL;DR: OpenSSL 1.1 support.

Docs:

Infrastructure:

  • Removed support for Ubuntu Precise.
  • Fixed .rpm package versioning (#240).
  • Added a handy command for preparing and running of all the tests make test (#243).
  • Added small changes and updates into Makefile to make it even better and fixed the installing dependencies (#236, #239, #250).

Code:

  • Core:
    • added OpenSSL 1.1 support (#208).
  • Android wrapper:
    • fixed Secure Cell in token protect mode (#251);
    • fixed casting warnings in JNI code (#246).
  • iOS wrapper:
    • updated wrapper to be compatible with Swift4 (#230);
    • added nullability support (#255);
    • made the NSError autoreleasing (#257, #259) from @valeriyvan;
    • fixed warnings that appeared due to renaming error.h files (#247);
    • updated and refactored tests (#231, #232).
  • GoThemis:
    • added compatibility with old Go (1.2) (#253);
    • fixed tests (#261).
  • JSThemis:
    • fixed installation path for macOS (#237, #238).
  • PyThemis:
    • fixed compatibility with version 0.9.5 (#241), pushed as a separate package 0.9.5.1.

0.9.5, September 13th 2017

TL;DR: Mostly usability fixes for wrappers.

Infrastructure:

  • You can now download pre-built Themis packages from our package server.
  • Enhanced building process for MacOS (working now!) (#215).
  • Enhanced building process for Debian 9.x (working even better now!).
  • Updated documentation and examples to make it easier to understand.
  • Now we use Bitrise as a separate CI for iOS wrapper.
  • Test and code coverage are automagically measured now!

Code:

  • Core: disabled SHA1 support.
  • Secure Comparator: magically improved code readability (#196, #195).
  • iOS wrapper: added support of dynamic frameworks and bitcode (#222, #219, #205).
  • GoThemis: refactored custom error (themisError) type.
  • PHP wrapper: updated tests.
  • PyThemis: considerably improved example projects.

0.9.4, November 22nd 2016

This is tiny intermediary release to lock ongoing changes in stable form for all languages:

  • BoringSSL support on Android and Linux
  • Fixed some leaks and code styling problems (thanks to @bryongloden)
  • Memory management updates for stability in languages, which rely on sloppy GC
  • Fix Themis build errors under certain conditions
  • Secure Comparator examples for many languages
  • Swift3 support + numerous enhancements from @valeriyvan, thanks a lot!
  • GoThemis: fixed rare behavior in Secure Session wrapper
  • GoThemis examples
  • JsThemis syntax corrections and style fixes
  • JsThemis Nan usage to enhance compatibility
  • More and better Themis Server examples
  • Enhanced error messages (now with proper spelling!)
  • Corrections for RD_Themis

0.9.3.1, August 24th 2016

Updating podspec to be compatible with CocoaPods 1.0

0.9.3, May 24th 2016

Infrastructure:

  • Lots of new high-level language wrappers
  • Enhanced documentation
  • Lots of various demo projects
  • Updated Themis Server
  • Better make system verbosity (now you can actually see what succeeded and what didn't)
  • Infrastructure to build Java on all platforms

Code:

0.9.2, November 4th 2015

Infrastructure:

  • Much better documentation
  • We've introduced Themis Server, interactive environment to debug your apps and learn how Themis works.
  • Tests for all platforms and languages.
  • Themis is now integrated with Circle CI, with controls every repository change and tests it
  • Added conditional compilation for advanced features (see 4.5 and our blog for more information)
  • Doxygen-friendly comments in code

Code:

  • Python Themis wrapper is now Python 3 / PEP friendly.
  • Android Themis wrapper for Secure Message now works in Sign/Verify mode, too.
  • PHP Themis wrapper now supports Secure Session (although with some advice on use cases, see docs).
  • iOS wrapper supports iOS 9, lots of minor fixes.
  • Better exceptions and verbose errors in some wrappers.
  • Longer RSA keys support
  • Better abstractions for cryptosystem parameters like key lengths.
  • Zero Knowledge Proof-based authentication called Secure Comparator. Advanced experimental feature.