Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package olm for openSUSE:Factory checked in at 2023-01-18 13:09:21 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/olm (Old) and /work/SRC/openSUSE:Factory/.olm.new.32243 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "olm" Wed Jan 18 13:09:21 2023 rev:9 rq:1059021 version:3.2.14 Changes: -------- --- /work/SRC/openSUSE:Factory/olm/olm.changes 2022-11-01 13:43:02.616047816 +0100 +++ /work/SRC/openSUSE:Factory/.olm.new.32243/olm.changes 2023-01-18 13:09:22.496316710 +0100 @@ -1,0 +2,8 @@ +Sun Jan 15 20:16:18 UTC 2023 - Dirk Müller <dmuel...@suse.com> + +- update to 3.2.14: + * TypeScript type improvements. + * Improvements to Python packaging + * Documentation improvements. + +------------------------------------------------------------------- Old: ---- olm-3.2.13.tar.bz2 New: ---- olm-3.2.14.tar.bz2 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ olm.spec ++++++ --- /var/tmp/diff_new_pack.IcZHC9/_old 2023-01-18 13:09:23.036319811 +0100 +++ /var/tmp/diff_new_pack.IcZHC9/_new 2023-01-18 13:09:23.040319834 +0100 @@ -1,7 +1,7 @@ # # spec file # -# Copyright (c) 2022 SUSE LLC +# Copyright (c) 2023 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -23,7 +23,7 @@ %global descriptor An implementation of the Double Ratchet cryptographic ratchet \ in C and C++, including an implementation of the Megolm cryptographic ratchet Name: %{origname} -Version: 3.2.13 +Version: 3.2.14 Release: 0 Summary: Double Ratchet cryptographic library License: Apache-2.0 ++++++ olm-3.2.13.tar.bz2 -> olm-3.2.14.tar.bz2 ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/CHANGELOG.rst new/olm-3.2.14/CHANGELOG.rst --- old/olm-3.2.13/CHANGELOG.rst 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/CHANGELOG.rst 2022-12-05 23:58:00.000000000 +0100 @@ -1,3 +1,12 @@ +Changes in `3.2.14 <https://gitlab.matrix.org/matrix-org/olm/tags/3.2.14>`_ +=========================================================================== + +This release includes the following changes since 3.2.13: + +* TypeScript type improvements. +* Improvements to Python packaging +* Documentation improvements. + Changes in `3.2.13 <https://gitlab.matrix.org/matrix-org/olm/tags/3.2.13>`_ =========================================================================== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/CMakeLists.txt new/olm-3.2.14/CMakeLists.txt --- old/olm-3.2.13/CMakeLists.txt 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/CMakeLists.txt 2022-12-05 23:58:00.000000000 +0100 @@ -1,6 +1,6 @@ cmake_minimum_required(VERSION 3.4) -project(olm VERSION 3.2.13 LANGUAGES CXX C) +project(olm VERSION 3.2.14 LANGUAGES CXX C) option(OLM_TESTS "Build tests" ON) option(BUILD_SHARED_LIBS "Build as a shared library" ON) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/OLMKit.podspec new/olm-3.2.14/OLMKit.podspec --- old/olm-3.2.13/OLMKit.podspec 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/OLMKit.podspec 2022-12-05 23:58:00.000000000 +0100 @@ -3,7 +3,7 @@ # The libolm version MAJOR = 3 MINOR = 2 - PATCH = 13 + PATCH = 14 s.name = "OLMKit" s.version = "#{MAJOR}.#{MINOR}.#{PATCH}" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/Package.swift new/olm-3.2.14/Package.swift --- old/olm-3.2.13/Package.swift 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/Package.swift 2022-12-05 23:58:00.000000000 +0100 @@ -2,7 +2,7 @@ import PackageDescription -let major = 3, minor = 2, patch = 13 +let major = 3, minor = 2, patch = 14 let package = Package( name: "Olm", diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/README.md new/olm-3.2.14/README.md --- old/olm-3.2.13/README.md 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/README.md 2022-12-05 23:58:00.000000000 +0100 @@ -9,6 +9,66 @@ This library also includes an implementation of the Megolm cryptographic ratchet, as specified in [docs/megolm.md](docs/megolm.md). +## Installing + +### Linux and other Unix-like systems + +Your distribution may have pre-compiled packages available. If not, or if you +need a newer version, you will need to compile from source. See the "Building" +section below for more details. + +### macOS + +The easiest way to install on macOS is via Homebrew. If you do not have +Homebrew installed, follow the instructions at https://brew.sh/ to install it. + +You can then install libolm by running + +```bash +brew install libolm +``` + +If you also need the Python packages, you can run + +```bash +pip3 install python-olm --global-option="build_ext" --global-option="--include-dirs="`brew --prefix libolm`"/include" --global-option="--library-dirs="`brew --prefix libolm`"/lib" +``` + +Note that this will install an older version of the Python bindings, which may +be missing some functions. If you need the latest version, you will need to +build from source. + +### Windows + +You will need to build from source. See the "Building" section below for more +details. + +### Bindings + +#### JavaScript + +You can use pre-built npm packages, available at +<https://gitlab.matrix.org/matrix-org/olm/-/packages?type=npm>. + +#### Python + +Pre-built packages for Python are available for certain architectures at +<https://gitlab.matrix.org/matrix-org/olm/-/packages?type=PyPI>. They can be +installed by running + +```bash +pip install python-olm --extra-index-url https://gitlab.matrix.org/api/v4/projects/27/packages/pypi/simple +``` + +Currently, we try to provide packages for all supported versions of Python on +x86-64, i686, and aarch64, but we cannot guarantee that packages for all +versions will be available on all architectures. + +#### Android + +Pre-built Android bindings are available at +<https://gitlab.matrix.org/matrix-org/olm/-/packages?type=Maven>. + ## Building To build olm as a shared library run: @@ -41,15 +101,29 @@ ### Bindings -To build the JavaScript bindings, install emscripten from https://emscripten.org/ and then run: +#### JavaScript + +The recommended way to build the JavaScript bindings is using +[Nix](https://nixos.org/). With Nix, you can run + +```bash +nix build .\#javascript +``` + +to build the bindings. + +If you do not have Nix you can, install emscripten from https://emscripten.org/ +and then run: ```bash make js ``` -Note that if you run emscripten in a docker container, you need to pass through +Emscripten can also be run via Docker, in which case, you need to pass through the EMCC_CLOSURE_ARGS environment variable. +#### Android + To build the android project for Android bindings, run: ```bash @@ -57,6 +131,8 @@ ./gradlew clean build ``` +#### Objective-C + To build the Xcode workspace for Objective-C bindings, run: ```bash @@ -65,7 +141,9 @@ open OLMKit.xcworkspace ``` -To build the Python 3 bindings, first build olm as a shared library as above, and +#### Python + +To build the Python 3 bindings, first build olm as a library as above, and then run: ```bash diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/Windows64.cmake new/olm-3.2.14/Windows64.cmake --- old/olm-3.2.13/Windows64.cmake 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/Windows64.cmake 2022-12-05 23:58:00.000000000 +0100 @@ -11,8 +11,8 @@ SET(CMAKE_SYSTEM_NAME Windows) # which compilers to use for C and C++ -SET(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc) -SET(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++) +SET(CMAKE_C_COMPILER x86_64-w64-mingw32-gcc-posix) +SET(CMAKE_CXX_COMPILER x86_64-w64-mingw32-g++-posix) SET(CMAKE_RC_COMPILER x86_64-w64-mingw32-windres) # here is the target environment located diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/android/gradle.properties new/olm-3.2.14/android/gradle.properties --- old/olm-3.2.13/android/gradle.properties 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/android/gradle.properties 2022-12-05 23:58:00.000000000 +0100 @@ -26,7 +26,7 @@ # Ref: https://github.com/vanniktech/gradle-maven-publish-plugin GROUP=org.matrix.android POM_ARTIFACT_ID=olm -VERSION_NAME=3.2.13 +VERSION_NAME=3.2.14 POM_PACKAGING=aar diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/common.mk new/olm-3.2.14/common.mk --- old/olm-3.2.13/common.mk 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/common.mk 2022-12-05 23:58:00.000000000 +0100 @@ -1,4 +1,4 @@ MAJOR := 3 MINOR := 2 -PATCH := 13 +PATCH := 14 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/javascript/index.d.ts new/olm-3.2.14/javascript/index.d.ts --- old/olm-3.2.13/javascript/index.d.ts 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/javascript/index.d.ts 2022-12-05 23:58:00.000000000 +0100 @@ -18,28 +18,28 @@ declare class Account { constructor(); - free(); - create(); + free(): void; + create(): void; identity_keys(): string; sign(message: string | Uint8Array): string; one_time_keys(): string; - mark_keys_as_published(); + mark_keys_as_published(): void; max_number_of_one_time_keys(): number; - generate_one_time_keys(number_of_keys: number); - remove_one_time_keys(session: Session); - generate_fallback_key(); + generate_one_time_keys(number_of_keys: number): void; + remove_one_time_keys(session: Session): void; + generate_fallback_key(): void; fallback_key(): string; unpublished_fallback_key(): string; forget_old_fallback_key(): void; pickle(key: string | Uint8Array): string; - unpickle(key: string | Uint8Array, pickle: string); + unpickle(key: string | Uint8Array, pickle: string): void; } declare class Session { constructor(); free(): void; pickle(key: string | Uint8Array): string; - unpickle(key: string | Uint8Array, pickle: string); + unpickle(key: string | Uint8Array, pickle: string): void; create_outbound( account: Account, their_identity_key: string, their_one_time_key: string, ): void; @@ -51,7 +51,10 @@ has_received_message(): boolean; matches_inbound(one_time_key_message: string): boolean; matches_inbound_from(identity_key: string, one_time_key_message: string): boolean; - encrypt(plaintext: string): object; + encrypt(plaintext: string): { + type: 0 | 1; // 0: PreKey, 1: Message + body: string; + }; decrypt(message_type: number, message: string): string; describe(): string; } @@ -67,10 +70,13 @@ constructor(); free(): void; pickle(key: string | Uint8Array): string; - unpickle(key: string | Uint8Array, pickle: string); + unpickle(key: string | Uint8Array, pickle: string): void; create(session_key: string): string; import_session(session_key: string): string; - decrypt(message: string): object; + decrypt(message: string): { + message_index: string; + plaintext: string; + }; session_id(): string; first_known_index(): number; export_session(message_index: number): string; @@ -80,7 +86,7 @@ constructor(); free(): void; pickle(key: string | Uint8Array): string; - unpickle(key: string | Uint8Array, pickle: string); + unpickle(key: string | Uint8Array, pickle: string): void; create(): void; encrypt(plaintext: string): string; session_id(): string; @@ -92,7 +98,11 @@ constructor(); free(): void; set_recipient_key(key: string): void; - encrypt(plaintext: string): object; + encrypt(plaintext: string): { + ciphertext: string; + mac: string; + ephemeral: string; + }; } declare class PkDecryption { diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/javascript/package.json new/olm-3.2.14/javascript/package.json --- old/olm-3.2.13/javascript/package.json 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/javascript/package.json 2022-12-05 23:58:00.000000000 +0100 @@ -1,6 +1,6 @@ { "name": "@matrix-org/olm", - "version": "3.2.13", + "version": "3.2.14", "description": "An implementation of the Double Ratchet cryptographic ratchet", "main": "olm.js", "files": [ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/python/olm/__version__.py new/olm-3.2.14/python/olm/__version__.py --- old/olm-3.2.13/python/olm/__version__.py 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/python/olm/__version__.py 2022-12-05 23:58:00.000000000 +0100 @@ -2,7 +2,7 @@ __description__ = ("python CFFI bindings for the olm " "cryptographic ratchet library") __url__ = "https://github.com/poljar/python-olm" -__version__ = "3.2.13" +__version__ = "3.2.14" __author__ = "Damir JeliÄ" __author_email__ = "pol...@termina.org.uk" __license__ = "Apache 2.0" diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/olm-3.2.13/python/olm_build.py new/olm-3.2.14/python/olm_build.py --- old/olm-3.2.13/python/olm_build.py 2022-10-07 17:00:05.000000000 +0200 +++ new/olm-3.2.14/python/olm_build.py 2022-12-05 23:58:00.000000000 +0100 @@ -38,7 +38,7 @@ # so. CXX_LIB = os.environ.get("CXX_LIB") if CXX_LIB: - link_args.append(CXX_LIB) + link_args.extend(CXX_LIB.split()) headers_build = subprocess.Popen("make headers", shell=True) headers_build.wait()