diff --git a/INCHI-1-DOC/CHANGELOG.md b/INCHI-1-DOC/CHANGELOG.md index ba06dc99..563c96bd 100644 --- a/INCHI-1-DOC/CHANGELOG.md +++ b/INCHI-1-DOC/CHANGELOG.md @@ -1,5 +1,16 @@ # Change log +## v1.07.5 2026-02-04 + +### Fixed + +- 127 `Coverity Scan` high and medium impact bugs fixed or addressed +- GHI #189: Exception in libinchi.dll when converting some specific polymer structure +- GHI #165, #164, #161, #160, PR #163, #162 -- initial `Coverity Scan` detections +- `.rc` files to `CMake` build system for metadata +- PR #138: stack buffer overflow in `CleanOrigCoord` +- Several _Google oss-fuzz_ issues + ## v1.07.4 2025-07-03 ### Features @@ -33,7 +44,7 @@ - GHI #71: 32-bit InChI version requiring ibgcc_s_dw2-1.dll on Windows 32-bit platforms (thanks to Norwid Behrnd) a few bugs in the code have been detected and fixed libgcc_s_dw2-1.dll added to INCHI-1-BIN folders - GHI #70: Update license -- Copyright (c) 2024 IUPAC and InChI Trust instead of Copyright (c) 2024 InChI Project -- GHI #67: GetStructFromInchi() now working in v1.07.2 (thanks to Greg Landrum) all variable initializations checked and fixed which caused this issue essential part of InChI tests from now on as all bugs reported by Paul Thiessen/Evan Bolton had the same origin +- GHI #67: GetStructFromInchi() now working in v1.07.2 (thanks to Greg Landrum) all variable initializations checked and fixed which caused this issue essential part of InChI tests from now on as all bugs reported by Paul Thiessen/Evan Bolton had the same origin - GHI #65:changing descriptions in default output for tautomerisms (thanks to Norwid Behrnd) - GHI #58 and #59: 7 bug fixes detected by AFL++ fuzzer (thanks to @skorpion89) - GHI #43: add changes to new version (thanks to Burt Leland) several very important bug fixes related to /InChI2InChI /FixedH /RecMet options @@ -78,7 +89,7 @@ - 33 buffer overflow issues due to use of large array dimensions - 157 security bugs related to improper `NULL` pointer dereferencing which might cause crashes or exits - 71 memory leaks -- 530 potential applications of optional [bounds checking functions](/README.md#BCF) +- 530 potential applications of optional [bounds checking functions](/README.md#BCF) Additionally, 29 potential security issues have been marked for further revision. diff --git a/INCHI-1-DOC/CHANGELOG.pdf b/INCHI-1-DOC/CHANGELOG.pdf index bbd28df7..00376b74 100644 Binary files a/INCHI-1-DOC/CHANGELOG.pdf and b/INCHI-1-DOC/CHANGELOG.pdf differ diff --git a/INCHI-1-DOC/FAQ/doc/inchi-faq.doc b/INCHI-1-DOC/FAQ/doc/inchi-faq.doc index f7bc5f7e..c45f52e0 100644 Binary files a/INCHI-1-DOC/FAQ/doc/inchi-faq.doc and b/INCHI-1-DOC/FAQ/doc/inchi-faq.doc differ diff --git a/INCHI-1-DOC/FAQ/doc/inchi-faq.docx b/INCHI-1-DOC/FAQ/doc/inchi-faq.docx index ca1eb8e3..728aa87d 100644 Binary files a/INCHI-1-DOC/FAQ/doc/inchi-faq.docx and b/INCHI-1-DOC/FAQ/doc/inchi-faq.docx differ diff --git a/INCHI-1-DOC/FAQ/html/inchi-faq.html b/INCHI-1-DOC/FAQ/html/inchi-faq.html index fe692c32..70b30a78 100644 --- a/INCHI-1-DOC/FAQ/html/inchi-faq.html +++ b/INCHI-1-DOC/FAQ/html/inchi-faq.html @@ -143,7 +143,7 @@

InChI FAQ
  • 6.1. How does InChI represent compounds with mobile H atoms (tautomerism, for example)?
  • 6.2. Why is there a Fixed-H layer if tautomeric groups are shown in the main layer?
  • 6.3. Can InChI contain multiple mobile H groups in the hydrogen layer?
  • -
  • 6.4. If it seems that InChI does not recognize tatomerism in my molecule, what is the reason and how may this be corrected (if at all)?
  • +
  • 6.4. If it seems that InChI does not recognize tautomerism in my molecule, what is the reason and how may this be corrected (if at all)?
  • @@ -153,8 +153,8 @@

    InChI FAQ
  • 7.2. What is the InChI definition of a salt?
  • 7.3. How does InChI represent organometallic compounds?
  • 7.4. What is the difference between the salt and metal disconnection?
  • -
  • 7.5. Can a metal-reconnected layer (/r) consist of more than one entity?
  • - +
  • 7.5. Can a metal-reconnected layer (/r) consist of more than one entity?
  • +
  • Stereochemistry @@ -178,8 +178,8 @@

    InChI FAQ
  • 9.3. Why may isotopic shift +0 appear in InChI?
  • 9.4. Does InChI recognize the one-letter symbols of deuterium and tritium?
  • 9.5. What is the ordering of D and T in the isotopic layer?
  • -
  • 9.6. Can InChI represent nuclear isomers?
  • - +
  • 9.6. Can InChI represent nuclear isomers?
  • +

  • Charge, Protons and Radicals @@ -187,14 +187,14 @@

    InChI FAQ
  • 10.1. How does InChI manage charge?
  • 10.2. What does the /p layer mean?
  • 10.3. Can InChI represent radicals?
  • -
  • 10.4. Can InChI represent different spin states?
  • +
  • 10.4. Can InChI represent different spin states?
  • Other
    1. 11.1. What is the 'Auxiliary Information' (AuxInfo) in the InChI output?
    2. -
    3. 11.2. How may I see which original atom numbers correspond to InChI numbers?
    4. +
    5. 11.2. How may I see which original atom numbers correspond to InChI numbers?
  • @@ -204,7 +204,7 @@

    InChI FAQ
  • 12.2. Can I compare structures by looking at specific layers from their InChIs?
  • 12.3. If two InChIs are the same, do they refer to the same compound?
  • 12.4. If two InChIs are different, do they refer to different compounds?
  • -
  • 12.5. How can I compare similar compounds?
  • +
  • 12.5. How can I compare similar compounds?
  • @@ -219,7 +219,7 @@

    InChI FAQ
  • 13.7. Are there known InChIKey collision(s)?
  • 13.8. Why does InChIKey use only 26 capital letters?
  • 13.9. What is the hash function used internally for InChIKey?
  • -
  • 13.10. What if I need a longer InChI hash?
  • +
  • 13.10. What if I need a longer InChI hash?
  • @@ -238,7 +238,7 @@

    InChI FAQ
  • 14.11. Why then does the inchi-1 executable of the InChI Software generate InChI for atomic silver if the input MOL file contains just a silver atom?
  • 14.12. Why does the InChI for lithium hydride lack an Li-H connection?
  • 14.13. I generated Non-standard InChI for lithium hydride with RecMet option; why does it still lack Li-H connection?
  • -
  • 14.14. Why is "/s" absent in the isotopic-stereo sub-layer in the example below?
  • +
  • 14.14. Why is "/s" absent in the isotopic-stereo sub-layer in the example below?
  • @@ -268,7 +268,7 @@

    InChI FAQ
  • 15.22. What does the SUU option do?
  • 15.23. What does the RecMet option do?
  • 15.24. What does the FixedH option do?
  • -
  • 15.25. What does the SaveOpt option do?
  • +
  • 15.25. What does the SaveOpt option do?
  • @@ -282,7 +282,7 @@

    InChI FAQ
  • 16.6. Does InChI require all atoms including hydrogens in the input?
  • 16.7. What are the problems if I can't find out about this?
  • 16.8. Can the InChI Software fix these problems automatically?
  • -
  • 16.9. Can I regenerate the structure from InChI?
  • +
  • 16.9. Can I regenerate the structure from InChI?
  • @@ -531,7 +531,7 @@

    2.14. Can search engines use InChIs?

    Both InChI and InChIKey strings can be used in a web-based query that has high recall and precision.

    InChIKey may be more suited for Web searching as it includes no "special symbols" (like slash, plus, etc., which break the query into separate search items), just capital English letters and hyphens ("minus" characters).

    - + @@ -549,7 +549,7 @@

    3.1. Is InChI free?

    3.2. Is InChI open?

    -

    It is intended that the source code is freely re-usable and a license has been developed to reflect that. Since the InChI source code has a normative role (i.e. it acts as the final arbiter of the correctness) it is not freely modifiable, although it is open to anybody to view and build an InChI binary.

    +

    It is intended that the source code is freely reusable under the MIT License.

    @@ -558,6 +558,7 @@

    3.3. What is the InChI Licence?

    Up to Fall 2011, InChI software was published under the GNU Lesser General Public Licence, LGPL version 2.1.

    Since the release 1.04 of the InChI software of Fall 2011, it has been replaced with the more permissive IUPAC/InChI-Trust Licence for the International Chemical Identifier (InChI) Software version 1.04, September 2011 ("IUPAC/InChITrust InChI Licence No. 1.0").

    The text of the IUPAC/InChI-Trust Licence may be found here
    PDF format / DOC format
    (it is also included in the distribution package as the file LICENCE).

    +

    Since release 1.07 thee InChI software is released under the MIT License.

    @@ -635,7 +636,7 @@

    4.3. Specifically, what are InChI layers?

    Note: The Fixed-H layer is optional (absent in Standard InChI) and can be selected by using the FixedH option of the InChI Software. The Reconnected layer is also optional (absent in Standard InChI) and can be selected by using the RecMet option.

    - +

    While the InChI is divided up into different layers to describe different types of structural information, each of these layers is also split into sub-layers to allow full description of each part of the structure (note: there is no sub-sub-layering).

    For instance, the Main layer can be split up into three sub-layers:

    @@ -1880,9 +1881,9 @@

    15.16. What are the 'stereo interpretation' options?

    These are several options which modify the interpretation of input stereochemical data. In principle, they would be considered related to structure perception. However, as the Standard InChI, by definition, requires the use of absolute stereo (or no stereo at all), these 'stereo interpretation' options assume generation of Non-standard InChI.

    The stereo interpretation options are:

    @@ -1892,7 +1893,7 @@

    15.17. What are the 'InChI creation' options?

    The 'InChI creation' options affect what the InChI algorithm does, not just the structure perception. They modify the defaults specified for Standard InChI and significantly affect the result (e.g., additional InChI layers may appear). Using any of the creation options