diff --git a/CHANGELOG.txt b/CHANGELOG.txt
index 756433b61f7255ab276d3789f2085a8eaef12f0d..7fa72744ab8b0779c24e9f1a12418f72c903e4c8 100644
--- a/CHANGELOG.txt
+++ b/CHANGELOG.txt
@@ -1,4 +1,4 @@
-Changes in Release 2.x
+Changes in Release 2.7.0
 --------------------------------------------------------------------------------
 
  * mmCIF writing support.
@@ -21,7 +21,6 @@ Changes in Release 2.6.1
 
  * Bugfix in DockQ computation when using ost.mol.scoring
 
-
 Changes in Release 2.6.0
 --------------------------------------------------------------------------------
 
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 7a659871bf319f7f99ed8ddcbce1d581f191bb9f..9fd6b1c0339e3108d6a60d346ec4b6b82bcdb2ff 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -14,8 +14,8 @@ cmake_policy(SET CMP0060 NEW)
 project(OpenStructure CXX C)
 set (CMAKE_EXPORT_COMPILE_COMMANDS 1)
 set (OST_VERSION_MAJOR 2)
-set (OST_VERSION_MINOR 6)
-set (OST_VERSION_PATCH 1)
+set (OST_VERSION_MINOR 7)
+set (OST_VERSION_PATCH 0)
 set (OST_VERSION_STRING ${OST_VERSION_MAJOR}.${OST_VERSION_MINOR}.${OST_VERSION_PATCH} )
 set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${PROJECT_SOURCE_DIR}/cmake_support)
 include(OST)
diff --git a/docker/Dockerfile b/docker/Dockerfile
index 4f7de8f9a7e3f0deb4d9b49d5c4e417b4c289049..075735de67f94fa7207ed4ff6bfd69377bdaa500 100644
--- a/docker/Dockerfile
+++ b/docker/Dockerfile
@@ -2,7 +2,7 @@ FROM ubuntu:22.04
 
 # ARGUMENTS
 ###########
-ARG OPENSTRUCTURE_VERSION="2.6.1"
+ARG OPENSTRUCTURE_VERSION="2.7.0"
 ARG SRC_FOLDER="/usr/local/src"
 ARG CPUS_FOR_MAKE=2
 ARG OPENMM_VERSION="7.7.0"
diff --git a/modules/conop/src/compound_lib.cc b/modules/conop/src/compound_lib.cc
index befb94b4a73bf618d1cd75ec25504cbad2ea6a1a..c84b0e9b7837036a66c737fc86c93d9d929bcf93 100644
--- a/modules/conop/src/compound_lib.cc
+++ b/modules/conop/src/compound_lib.cc
@@ -235,7 +235,7 @@ String CompoundLib::GetOSTVersionUsed() {
     }
     assert(SQLITE_DONE==sqlite3_step(stmt));
   } else {
-    LOG_WARNING("your compound library might be outdated.");
+    LOG_ERROR(sqlite3_errmsg(db_->ptr));
     sqlite3_finalize(stmt);      
     return String();
   }
@@ -409,6 +409,16 @@ CompoundLibPtr CompoundLib::Load(const String& database, bool readonly)
     LOG_ERROR(sqlite3_errmsg(lib->db_->ptr));
     return CompoundLibPtr();
   }
+
+  // Use ost_version as proxy if the loaded library has anything to do with
+  // what we expect. We don't check for supported version here. This is done
+  // later.
+  String ost_version_used = lib->GetOSTVersionUsed();
+  if(ost_version_used == "") {
+    throw ost::Error("Could not read OST version from loaded SQLITE DB - "
+                     "no valid CompoundLib");
+  }
+
   String aq;
   sqlite3_stmt* stmt;
   // check if SMILES are available
diff --git a/modules/io/src/mol/mmcif_writer.cc b/modules/io/src/mol/mmcif_writer.cc
index 32762231346f063e7617d8975350542d825c3a60..495e79a8c7d554f39025ffb705fc61bd2f77f6dc 100644
--- a/modules/io/src/mol/mmcif_writer.cc
+++ b/modules/io/src/mol/mmcif_writer.cc
@@ -684,6 +684,7 @@ namespace {
     desc.Add("auth_asym_id");
     desc.Add("id");
     desc.Add("pdbx_PDB_ins_code");
+    desc.Add("pdbx_PDB_model_num");
     ost::io::StarWriterLoopPtr sl(new ost::io::StarWriterLoop(desc));
     return sl;
   }
@@ -849,7 +850,7 @@ namespace {
     }
     const std::vector<String>& aln = it->second;
     int label_seq_id = 0; // 0-based index
-    std::vector<ost::io::StarWriterValue> at_data(17);
+    std::vector<ost::io::StarWriterValue> at_data(18);
 
     for(auto res: res_list) {
       String comp_id = res.GetName();
@@ -920,6 +921,10 @@ namespace {
         at_data[15] = ost::io::StarWriterValue::FromInt(atom_site_ptr->GetN());
         // pdbx_PDB_ins_code
         at_data[16] = ost::io::StarWriterValue::FromString(ins_code);
+        // pdbx_PDB_model_num
+        // always 1 for now, value must be updated if MMCifWriter supports
+        // writing of multiple models
+        at_data[17] = ost::io::StarWriterValue::FromInt(1);
         atom_site_ptr->AddData(at_data);
       }
       ++label_seq_id;
diff --git a/singularity/Singularity b/singularity/Singularity
index bc04d900abcd31a9e93314ea46f93d34eace5d4a..57dee2eb53faad64c77557d7ddc53e03bb3c90ba 100644
--- a/singularity/Singularity
+++ b/singularity/Singularity
@@ -1,5 +1,5 @@
 BootStrap: docker
-From: registry.scicore.unibas.ch/schwede/openstructure:2.6.1-jammy
+From: registry.scicore.unibas.ch/schwede/openstructure:2.7.0-jammy
 %post
 ##############################################################################
 # POST