From 372c0442e33d8a5196336e98bb90e190c823d98f Mon Sep 17 00:00:00 2001
From: Gabriel Studer <gabriel.studer@unibas.ch>
Date: Thu, 25 Jan 2024 17:55:10 +0100
Subject: [PATCH] mmcif writer: bugfix

When defining custom mmCIF entities, we should check for valid input using
the latest mmCIF dictionary
---
 modules/io/src/mol/mmcif_writer.cc | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)

diff --git a/modules/io/src/mol/mmcif_writer.cc b/modules/io/src/mol/mmcif_writer.cc
index b2851b380..921a13ed0 100644
--- a/modules/io/src/mol/mmcif_writer.cc
+++ b/modules/io/src/mol/mmcif_writer.cc
@@ -71,13 +71,14 @@ namespace {
   };
 
   void CheckValidEntityPolyType(const String& entity_poly_type) {
-    std::unordered_set<std::string> s = {"other",
+    std::unordered_set<std::string> s = {"cyclic-pseudo-peptide",
+                                         "other",
+                                         "peptide nucleic acid",
                                          "polydeoxyribonucleotide",
+                                         "polydeoxyribonucleotide/polyribonucleotide hybrid",
                                          "polypeptide(D)",
                                          "polypeptide(L)",
-                                         "polyribonucleotide",
-                                         "polysaccharide(D)",
-                                         "polysaccharide(L)"};
+                                         "polyribonucleotide"};
     if(s.find(entity_poly_type) == s.end()) {
       std::stringstream ss;
       ss << "Observed value is no valid entity_poly.type: \"";
-- 
GitLab