(released on 14.12.2017)

Latest News

Unsurprisingly, 0.9.5 came out eventually. Today.2017-09-14 20:25:28

Themis 0.9.4 is out now!2016-11-22 18:09:17

Themis 0.9.3 is released!2016-05-24 16:59:33


0.9.62017-12-14 11:13:51

TL;DR: OpenSSL 1.1 support.



  • 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).


  • 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.52017-09-13 12:03:34


Mostly usability fixes for wrappers.


  • You can now download pre-built Themis packages from our package server.
  • Enhanced building process for MacOS (working now!) (https://github.com/cossacklabs/themis/issues/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!


↺

0.9.42016-11-22 18:31:44

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

↺ Read more... 15:31:54

Updating podspec to be compatible with CocoaPods 1.0

↺

0.9.32016-05-25 14:24:25


- 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

- iOS wrapper now has umbrella header.
- We added Swift language examples and howto.
- Themis wrapper for Go language: howto (examples coming soon).
- Themis wrapper for NodeJS: examples and howto.
- Google Chrome-friendly spin-off called WebThemis was released.
- Themis wrapper for C++: examples and howto.
- Secure Comparator got serious updates to eliminate possible security drawbacks pointed out by cryptographic community.

↺


08911a60f0dfa3b5...2018-01-15 16:28:39 Lagovas

compilable php7 version (#278) * fix comparison signed/unsigned * php7 with cell/message/keygenerator * compilable extension with session * previous arg format

43e75b09929dd98f...2018-01-14 17:05:53 mozhmike

PHP integration tests (#277)

7bbf8d74b89fe363...2018-01-12 17:05:19 Lagovas

fix comparison signed/unsigned (#276)

c42c452302b7cb7a...2018-01-05 23:57:57 secumod

Simplify Android build and bring up to date (#273) * Use latest Android platform and build-tools versions * Require ANDROID_NDK environment variable instead of ANDROID_NDK_ROOT * Upgrade gradle wrapper and build.gradle to support gradle 4.4.1 and Android gradle plugin 3.0.1 * Add BoringSSL as a submodule according to https://boringssl.googlesource.com/boringssl/+/HEAD/INCORPORATING.md * Add build.gradle and dummy manifest for BoringSSL * Add BoringSSL as a dependency to the main Android themis build.gradle * Update Circle CI configuration to support updated Android build * Limit JVM memory for gradle to 1GB Otherwise, builds are failing with oom * Disable parallel build for gradle and limit number of workers * Split Android test into separate build and test stages Circle CI fails with out of memory. To reduce memory usage we will compile Themis before starting the emulator. This should also fail the build early if there are any issues with Android build without having to wait for emulator to boot (which takes a while). * Disable gradle deamon in CI * Limit CMake/Ninja build concurrency for Circle CI builds of BoringSSL for Android

d5868e118bb719db...2017-12-29 12:06:33 Lagovas

support get_remote_id in gothemis (#272)


#275 Conan package

2018-01-11 00:32:36 ZaMaZaN4iK

Do you know about Conan?
Conan is modern dependency manager for C++. And will be great if your library will be available via package manager for other developers.

Here you can find example, how you can create package for the library.

If you have any questions, just ask :-)

↺

#274 Support install via `brew install`

2018-01-07 16:11:48 vixentael

As we discussed previously, this would be very useful for macOS users.

↺

#270 Fix C coding style

2017-12-25 19:29:23 secumod

Many of Themis .c files have different code style (or no code style at all?). This creates confusion for potential contributors. Let's fix one coding style for all Themis/soter (not imported) .c files. My proposal is to use clang-format tool:
* discuss and select initial coding style
* fix it by writing a .clang-format and commit it to the repository
* format Themis .c files with it
* maybe, create a Makefile target, which developers can call to format all Themis/soter sources (in case they add additional files in the future)
* finally, integrate format validation in CI (basically, fail the CI if code is not properly formatted) to enforce proper coding style for contributions

↺

#252 Move java tests into separate test suit

2017-11-05 20:41:49 vixentael

We support both Java and Android platforms, but tests are running for Android only.

Should run tests for java wrapper as well.

↺

#233 Consider docker as a build system for Themis

2017-09-21 13:05:47 secumod

Docker is a popular, clear an easy way to distribute environments. How about making preconfigured images to make it easier to build Themis for less obvious platforms, which require a lot of steps to set up the build environment, like Android?

↺

Recent builds

add SCELL_COMPAT flag to compiler options and makefile

2018-01-17 03:07:27

See more builds

Pull requests

#279 secure cell x32-x64 compatibility fix 2018-01-16 13:55:38vixentaelsecure cell x32-x64 compatibility fix

#197 Add openssl isolated keys 2017-05-18 13:41:40mnazaAdd openssl isolated keys