Marvin 6.3.4 is included
Marvin 6.3.3 is included
Marvin 6.3.2 is included
Marvin 6.3.1 is included
JChem Base - DB functionalities
Drivers were refreshed for the following databases:
hsqldb 2.3.1 to 2.3.2
postgres 9.1.901 to 9.3.1101
db2 9.5.0.7 to 10.5.0.2-FP002
mssql (sqljdbc) 1.0 to 4.0
Command line tool 'jcman' can upgrade a single table.
Search Engine
Memory need of database searches was reduced.
Search exception is thrown from now on for
query properties on R-atoms and attachment points;
rb* query property in R-group definitions (it is supported only in the root of an R-group query).
Simpler display of group hits is used in jcsearch command line application.
Standardizer
JChem Cartridge
JChem Base - DB functionalities
Search Engine
R-group decomposition
Standardizer
Several standardized molecules of "Clean 2D" with "Template based" option were not displayed properly in the Standardizer GUI.
"Strip Salts" action failed to produce correct output when multiple structures were specified in the input file.
When specifying input structures without coordinates (e.g. in a SMILES file), "Convert Double Bonds" action reported incorrectly: the user was informed about conversion of double bonds in molecules without double bonds.
The first letter of a typed word did not appear in the search box of the "Configure Actions" panel.
JChem Base
Removals from the public API
class removed
methods removed
from chemaxon.sss.search.MolSearchOptions class: setMarkushArom(int), getMarkushArom()
from chemaxon.sss.search.MolSearch class: setStandardizer(chemaxon.reaction.Standardizer, boolean, boolean)
from chemaxon.jchem.db.Importer class: getDuplicateIDs(), getImportedIDs(), getFieldNames(), getFieldNames(InputStream, int)
from chemaxon.util.HitDisplayTool class: constructor HitDisplayTool(HitColoringAndAlignmentOptions, MolSearchOptions, chemaxon.reaction.Standardizer, Molecule)
from chemaxon.sss.search.JChemSearchOptions class: constructor JChemSearchOptions()
from chemaxon.sss.search.MolSearchOptions class: constructor MolSearchOptions()
from chemaxon.sss.search.SearchOptions class: constructor SearchOptions(), setSearchType(int)
from chemaxon.jchem.db.UpdateHandler class: setStandardizationEnabled(boolean)
from chemaxon.descriptors.DescriptorGenerator class: setStandardizer(chemaxon.reaction.Standardizer)
from chemaxon.sss.search.SearchHit class: constructor SearchHit(int[], int[][]), setSingleHit(int[]), setGroupHit(int[][])
from chemaxon.util.HitDisplayUtil class: color(Molecule, Molecule, int[], HitColoringAndAlignmentOptions)
static field removed
Full regeneration is needed in the case of specific tables to use JChem 6.3.0. Please, regenerate 'Any structures', 'Query structures', and 'Markush libraries' type JChem tables and indexes after upgrade. The new table version is 6300000.
Marvin 6.2.4 is included
Marvin 6.2.3 is included
Search Engine
R-group decomposition
Search Engine
JChem Cartridge
Oracle 12c is supported from now on; install and upgrade issues with Oracle 12.1.0.1 have been fixed.
Creation of public synonyms during installation is optional.
Specifying the JChem Cartridge server property "jcserver.maxmem" is no more mandatory; "jcserver.maxmem" can now be included in "ignore.properties.for." lists.
JChem Base - DB functionalities
Oracle JDBC driver upgraded to 11.2.0.4
DB2 driver was upgraded to db2jcc-9.5.0.7.
Search Engine
The use of nested defined R-group queries is also supported during R-group search.
In R-group query structures, the default value of occurrence condition has been changed from ">0" to "all".
Vague bond level values in SearchConstants were changed.
VAGUE_BOND_OFF: from 1 to 0
VAGUE_BOND_LEVEL1: from 0 to 1
Markush Search
Performance of Markush search has been substantially improved.
Memory requirements of Markush search (e.g., the size of structure cache) has become approximately 3 times smaller.
Search on Markush library tables has become 20-30 percent faster (independently of search options).
The default option for handling rings with ambiguous aromaticity in Markush structures has been changed from MATCH_AMBIG_IF_POSSIBLE to ALL_MATCH_AMBIG. In general, this change results in marginal differences in hit results, but makes the search significantly faster (3-5 times speed-up was measured).
JChem Cartridge
Config-util printed Java stack trace when used before JCC was installed.
Cost estimation didn't work when no search type was specified.
JChem Base - DB functionalities
StructureTableOptions.setMysqlTableType() threw IllegalArgumentException.
UpdateHandler.createTable() threw Exception on MS SQL Server if schema name was explicitly set in StructureTableOptions.
Regeneration or upgrade of Chemical Terms columns may have failed with database read error.
Corrupt Java annotations in IBM DB2 JDBC driver caused an irrelevant error message in Apache Tomcat logs.
Transaction was committed during UpdateHandler.execute() even when autoCommit was set to false.
Search Engine
Matching of homology groups in complex R-group queries having R-logic conditions was incorrect in particular cases.
rb* in R-group queries with R-logic and R-atoms with two attachment points did not work correctly.
s* property did not work correctly on ringSegment homology groups.
Search exception is thrown from now on for
R-group atoms with at least two connections and specific R-logic that allows optional occurrence;
homology groups in rings, except for ringsegment and atomic homologies;
a nested R-atom if it has restH condition and is connected to an attachment point;
undefined R-atoms connected to other R-atoms.
The hit could be missed in R-group search when the root contained homologies and R-logic was defined.
Complex R-group queries having R-atoms next to each other were not handled correctly during search.
Queries with ringsegment homology group and Any atoms did not find their hits in the case of database search.
Some properties of homology groups were not correctly handled in Query type tables.
Calling JChemSearch.setFilterIDList() with empty array switched off filtering.
Maximum result count option was not handled correctly in the case of similarity search in database using custom descriptor tables.
Certain recursive SMARTS expressions that have negative clauses and subexpressions containing "#1" were erroneuously matched to hydrogens (e.g. "[!$([#16])]").
In MCS search, "keep rings" option was not handled properly for fused rings in particular cases.
Standardizer
"Clean 2D" Standardizer action saves the coordinates of the template molecule in the configuration xml file.
"Strip Salts" Standardizer action recognizes and removes custom salts.
Screen
Screen3D Rank Mismatch type error is fixed.
Faulty ScreenMD command line example has been fixed.
Clustering
Search Engine
Search option ignoreCTException has been removed, haltOnError can be used instead.
Methods removed from the public API:
[chemaxon.jchem.db.JChemSearch.getCurrentId()](https://apidocs.chemaxon.com/jchem/doc/dev/java/api/chemaxon/jchem/db/JChemSearch.html#getCurrentId())
chemaxon.sss.search.SearchOptions.setIgnoreCTExceptions(boolean)
[chemaxon.sss.search.SearchOptions.isIgnoreCTExceptions()](https://apidocs.chemaxon.com/jchem/doc/dev/java/api/chemaxon/sss/search/SearchOptions.html#isIgnoreCTExceptions())
Deprecated methods in chemaxon.sss.search.SearchHit class:
SearchHit(int[], int[][]) constructor
setSingleHit(int[]), setGroupHit(int[][]) methods
Reactor
Standardizer
Full table regeneration is needed to use JChem 6.2.0. Please, regenerate all JChem tables and indexes after upgrade. The new table version is 6200000.
Marvin 6.1.9 is included
JChem Base - DB functionalities
Marvin 6.1.5 is included
Standardizer
"Clean 2D" Standardizer action did not save the coordinates of the template molecule in the configuration xml file.
"Strip Salts" Standardizer action did not recognize and remove custom salts.
"Neutralize" Standardizer action produced valence error for tetra-substituated, negatively charged boron compounds.
Screen Suite
JChem Base - DB functionalities
Standardizer
JChem Cartridge
Potential database session leaks were fixed for the following cases:
use of auto-calculated Chemical Terms columns;
use of jc_react;
when errors occurred during initial search (structure cache load).
Upgrade program failed while rebuilding indexes.
JChem Base - DB functionalities
Transaction was committed during UpdateHandler.execute even if autoCommit was set to false.
UpdateHandler inserted wrong values in CLOB columns in Oracle databases when value had less than 12 characters.
Search Engine
Erroneous import from .skc files containing structures with contracted groups (e.g., -CN) caused missing hits.
JChemSearch was slow when query was new Molecule() or null and hit molecules were retrieved by calling getHitsAsMolecules() method.
E/Z configuration of perspectively drawn cyclohexene was identified incorrectly.
LibMCS
Reactor
Full table regeneration is needed to use JChem 6.1.2, please regenerate all JChem tables and indexes after upgrade. The new table version is 6120000.
Marvin 6.1.1 is included
Full table regeneration is needed to use JChem 6.1.1, please regenerate all JChem tables and indexes after upgrade. The new table version is 6110000.
JChem Cartridge
Index parameter ("nfp") has been introduced to ignore and to log errors from index data generation during the existence of a JChem index (CREATE INDEX, ALTER INDEX, INSERT, UPDATE).
New jc_fuse function has been added to fuse molecules.
JChem Base - DB functionalities
Bundled Derby has been upgraded to version 10.10.1.1.
New column, cd_taut_frag_hash, has been added to the database.
Search Engine
Standardizer
New editor of Standardizer action "Strip Salt" has been introduced.
Set Standardizer configuration can be copied to the clipboard as action string from Standardizer GUI and Standardizer Editor.
New options of Standardizer actions "Map" and "Map Reaction" have been introduced. Mapping style can be selected and changing bonds can be marked.
The default abbreviated group order has changed in case of action "Create group". Abbreviations of amino acids are listed in front of the other abbreviated groups.
JKlustor
Library MCS
Screen Suite
Screen and Descriptor API: documentation is improved. Example codes are provided.
Screen3D: The overlay result file name contains the query, target base name, method name, and a timestamp.
JChem Cartridge
Windows service didn't start with Java 7 after successful installation.
Exclusion for abbreviated group checking didn't work.
JC_TANIMOTO threw NPE in index scan mode when executed with NULL as query structure.
JChem Base - DB functionalities
JChem Manager and chemaxon.jchem.db.Importer failed to import date formats into PostgreSQL tables.
JChem Manager may have become unresponsive on import cancellation.
Exporter with setSelectStatement option threw Unexpected Error.
Search Engine
The working memory consumption of JChem search was unreasonably large, especially for large structure tables.
RgSearch threw ArrayIndexOutOfBoundsException in case of R-logic, RestH, homology.
RgSearch threw ArrayIndexOutOfBoundsException when R-group definition or root contained link node.
ArrayIndexOutOfBoundsException could have occurred when whole reactions were used as query structures during tautomer search in reaction tables.
ArrayIndexOutOfBoundsException could have occurred in superstructure search when hit coloring was applied with targets containing homology groups in R-group definitions.
Complex rgroup queries with homologies could fail to hit target.
Duplicate filtering could fail in case of structures with stereo information expressed with explicit hydrogen atoms in symmetric bridged systems.
searchOptions.setTimeoutLimitMilliseconds(-1) was not handled correctly when the query had to be enumerated.
Maximum result count option was not handled correctly in case of similarity search in database using custom descriptor tables.
Standardizer
Installation/deployment
JChem Base - DB functionalities
Direct access of fields in StructureTableOptions class has been deprecated, new constructors and setter/getter methods should be used instead.
Some functions of chemaxon.jchem.db.Importer class have been deprecated and better API is provided instead. As part of this, IntArray utility class was deprecated. No replacement is provided as it is not used in the API anymore.
Search Engine
Full table regeneration is needed to use JChem 6.1, please regenerate all JChem tables and indexes after upgrade. The new table version is 6100000.
Installation/deployment
JChem Cartridge
Search Engine
JChem Base - DB functionalities
Search Engine
Search Engine
Marvin 6.0.2 is included
JChem Cartridge
Search Engine
Handling of filter queries, filter ID lists, and not lists was unreasonably slow.
MolSearchOptions.setChemTermsFilter(String) was ignored in search. Methods MolSearch.setFilter(String) and MolSearch.setFilterConfig(java.io.File) were removed. Use methods SearchOptions.setChemTermsFilter(String) and SearchOptions.setChemTermsFilterConfig(java.io.File) instead.
Standardizer
Licensing
JChem Cartridge
New methods have been added to load, pin and drop cache directly from memory for an index.
Installer offers to recreate or empty the installation schema (depending on whether DBA privileges are available or not), in case the schema already exists and is not empty.
jcf.molconvert function makes it possible to set a new-line character for ending the string. The default behavior is no new-line character for smiles and smarts, and new-line character in case of other output formats.
Two-host installation has been simplified.
A command line tool has been provided for changing the JChem Cartridge server's network configuration.
JChem Base - DB functionalities
A new class, called CacheManager, is provided in the API to load / update cache w/o search and for other cache-related functions. API Documentation
isCacheLoaded and isCacheLoadStarted functions have been added to CacheManager.
New method has been added to CacheManager to directly drop cache from memory.
New functions have been added to CacheManager class to pin a cache into memory. The default pinning behavior can also be set.
Search Engine
From now on, tautomer full structure search in database considers tetrahedral and double bond stereochemistry in tautomer region as well.
Tautomer search option "tautomer search on with ignore stereo information in tautomer regions" is now available for full structure search in database, too.
Performance of tautomer, full structure search in database was increased. Speed-up is proportional to the number of tautomer enumerates of the query and in certain cases can mean a 1000x speed-up.
New Maximum Common Substructure (MCS) search engine has been released.
It features greatly improved algorithm, which usually gives better results in shorter time.
Multiple MCS search results are also supported now.
The command line MCS application uses the new MCS module, its options changed slightly.
Similarity search hit display and molecule alignment utilize the improvements of the new MCS algorithms.
Memory and database search uniformly handle empty structures in case of superstructure search. Empty target molecules are no longer retrieved as hits with non-empty query structure because they conventionally represent unknown compounds.
Markush Viewer
Preview of enumerates has been placed in the GUI.
Fragments tab of View panel has been reorganized.
JKlustor
Screen Suite
Screen3D: MCS-based 3D alignment has been developed for MMP like molecule pairs.
Screen API: a self-describing, easy to integrate API was created with an example solution for graphical user interface.
Improved MCS algorithm is used in MCS type 3D alignments.
Documentation was improved.
Reactor
Standardizer
New Standardizer graphical user interface is introduced.
Adding custom abbreviated group definitions is available to be used in "Alias to Group" action. To provide custom abbreviated groups, users have to create a user.abbrevgroup file in the $HOME/chemaxon/
directory, and insert the selected abbreviation groups into it.
Custom/external Standardizer actions can be integrated into Standardizer via menu Preferences > Action Manager in Standardizer GUI.
Action "Map" and "Map Reaction" use the improved Automapper tool in case of reaction mapping.
New Standardizer actions:
Convert Pi-metal Bonds
Disconnect Metal Atoms
Replace Atoms
Strip Salts
Metabolizer
New product for the enumeration of xenobiotic metabolites and for major metabolite prediction. Main features:
Metabolite enumeration engine with multi-core processor support.
Full Java API for integrators.
Graphical user interface for scientists with manual and automatic enumeration modes.
Command line tool for batch enumeration.
Built-in human phase I xenobiotic biotransformation library.
Custom metabolism with custom biotransformation libraries.
Likelihood prediction, MS mass calculation, production and accumulation indicator calculations.
JChem Cartridge
JChem Base - DB functionalities
JChemSearch failed with NullPointer exception when connection.autoCommit was set to false if the structure cache had not been registered yet. A runtime exception with a descriptive error message is thrown now instead.
Search in read-only HSQL databases failed with error.
Some molecules threw exception upon import into tables with "duplicate search uses tautomers" setting.
Markush structures containing double bonds in their R-group definitions could not be imported in "Any" type table.
"Table contains obsolete data" warning message was missing when the table should have been regenerated.
Search Engine
Structure with undefined R-atom having X-alias label was incorrectly recognized as Markush structure.
Chemical Terms filtering could not be used along with formula search in case of DB search with an empty query structure.
Search in tables with "duplicate search uses tautomers" setting could lose hit in case of duplicate search, if the molecule contained charge and charge ignore option was chosen.
Screen Suite
Standardizer
Search Engine
The following deprecated methods have been removed from MolSearchOptions and JChemSearchOptions classes: isPerfectSearchType(), isSubgraphSearch(), setSubgraphSearch(), isSuperstructureSearch(), setSuperstructureSearch(), isExactFragment(), setExactFragment(), isFullFragment(), setFullFragment(), isQHomologyHandling(), setQHomologyHandling().
SearchOptions.isTautomerDuplicateFiltering and SearchOptions.setTautomerDuplicateFiltering have been removed;
chemaxon.sss.search.MCES class has been deprecated, it is replaced by a new MCS search engine.
Standardizer
Full table regeneration is needed to use JChem 6.0, please regenerate all JChem tables and indexes after upgrade. The new table version is 6000000.
Marvin 5.12.6 is included
JChem Cartridge
Marvin 5.12.4 is included
JChem Cartridge
JChem Base - DB functionalities
StackOverFlowError was generated during import into tables with 'duplicate search uses tautomers' setting or in duplicate tautomer search for some rare ring systems.
Some molecules threw exception upon import into tables with 'duplicate search uses tautomers' setting, and these molecules were not imported.
JChem Cartridge
Index data on CLOB structure columns:
Creating JChem index on CLOB structure columns used significant amount of temporary tablespace that was not released when index building was completed.
Index data on regular CLOB structure columns took up unnecessary amount of disk space.
Search Engine
Setting 'Duplicate search uses tautomers' table option resulted in tautomer search regardless of search type intended by the user. This gave false search result and caused significant slowdown.
Searches failed with StackOverflowError when query structure contained bond query property.
Searching queries containing homology groups and D<n> or s<n> properties threw exception if the target contained explicit hydrogens.
JChem Base - DB functionalities
JKlustor
LibMCS
Screen
Search Engine
In case of tautomer search tetrahedral and double bond stereochemistry are considered in tautomer region (duplicate search in all cases; full structure and full fragment search in memory).
New tautomer search option "tautomer search on with ignore stereo information in tautomer regions" is introduced (duplicate search in all cases; full structure and full fragment search in memory).
Timeout step limit in Molsearch is now disabled by default.
API changes:
GenericTautomerProtectsChirality function has been deprecated, as a more advanced method is available.
The following methods have been deprecated in MolSearchOptions and JChemSearchOptions classes: isPerfectSearchType(), isSubgraphSearch(), isSuperstructureSearch(), isFullFragment(), setSubgraphSearch().
JChem Base - DB functionalities
Oracle JDBC driver upgraded to JDBC API version 6 (from version 5). The Oracle database version of the driver remains 11.1.0.7.
Following the deprecation of chemaxon.reaction.Standardizer, public methods with the old Standardizer parameter have their correspondent new versions with new Standardizer parameter.
API changes:
UpdateHandler.setStandardizationEnabled(boolean) has been deprecated.
StructureTableOptions.tautomerSwitchOffAllProtections has been deprecated.
Memory need of structure cache has been increased: ca. 160 MB/1 million drug-like molecules.
Standardizer
Reaction Library
JChem Cartridge
Location of the Marvin Services descriptor file was limited to ${user.home}/.chemaxon when Marvin Services were used with auto-calculated Chemical Terms columns.
Upgrade failed with ORA-22324: altered type has compilation errors on Oracle 10g.
Insertion of second NULL structure into duplicate filtered index failed with ORA-20103: Structure is a duplicate.
Search Engine
JChemSearch filterQuery was not considered if filter rejected all targets.
Query structures with radical query properties could result invalid hits containing invalid valence.
Duplicate search and searches with exact query atom matching could result invalid hits in case of ionic target molecules.
Slowdown of search was experienced when the query had rings containing polymer groups and polymer end group matching search option was switched off.
JChem search caches could become outdated in case of long-term DB searches.
Search hit coloring did not work with Standardizer action "Neutralize".
Markush Search
JChem Base - DB functionalities
Standardization of tables, created with JChem Manager, could change in some cases from custom standardized to default standardized.
Creation of JChemSearch result table failed with "DB2 SQL Error: SQLCODE=-204, SQLSTATE=42704, QLERRMC=NULL" on DB2
IgnoreCTExceptions search option did not work in DB search.
Reactor
Standardizer
Configuration XML file containing action "Create Group" with default abbreviated groups was not read correctly.
When a configuration contained action "Create Group", Standardizer applied actions both "Contract group" and "Clean 2D".
Deprecation note of the StandardizerException API DOC has been fixed.
Installation/deployment
Invalid paths remained in the path system environment variable after uninstall.
Marvin and JChem installers do not delete the contents of the destination directory any more, only notify the user that some files/folders may be overwritten during the installation process.
Licensing
Full table regeneration is needed to use JChem 5.12, please regenerate all JChem tables and indexes after upgrade. The new table version is 5120000.
JChem Base - DB functionalities
JChem Cartridge
JC_MOLWEIGHT failed with ORA-00932 on polymers with undefined repetition count.
Cost estimation did not work; the cost estimation calibrator failed with NoClassDefFoundError or other error message.
JChem Base - DB functionalities
Search Engine
Using R-group query containing R-logic threw ArrayIndexOutOfBoundsException.
ArrayIndexOutOfBoundsException was thrown by RepeatingUnitEnumerator in case of SRU polymers with position variation bonds within the repeating unit.
Reactor
The enumeration process hung when reaction scheme was defined with an R-group and set its occurrence to zero.
Reactor did not remove invalid atom and bond flags from products.
If Reactor was cancelled during running in "Manual product selection" mode, broken MRV
output file was generated (file closing tag was missing).
Standardizer
Licensing
JChem Base - DB functionalities
JChem tables using custom standardization created with previous JChem version could not be regenerated.
JChem Manager GUI: custom standardization XML was written into database without XML header.
jcman command line tool: database table creation with custom standardizer did not convert file references to inline structure strings.
Valence property of metal query atoms were lost in some cases.
Search Engine
Duplicate search did not run correctly in "Any" and "Molecule" type tables in case of polymer structures.
Chemical terms filtering resulted missing hits in similarity search.
Rgroup search with queries having exclusively unused Rgroup definitions retrieved the same hit infinite times.
Standardizer
Marvin 5.11.1 is included
JChem Cartridge
JChem Base - DB functionalities
Bundled derby JDBC driver upgraded to 10.8.1.2.
Bundled HSQL JDBC driver upgraded to 2.2.9. Version 1.8 of HSQLDB is not supported hereafter.
VMN import improvements:
VMNs of type "display" are now read.
VMN abbreviated group list has been extended: carbon chains up to 50 members have been added.
AV (abnormal valence) property is now stored in atom property and not set as atom valence. The VMN valence representation will be revised in a later version.
Deuterium and tritium count property is handled properly in VMN (added as D and T ligands for non-homology atoms). D and T are transposed during the import in comparison to the VMN, as this represents the correct information in the majority of the MMS database.
Correcting incorrect atom types in VMNs: C0 is transformed to CHK; C1 is transformed to C; homology groups in ring are transformed to XX
Attachment bond type is set to parent R-atom bond type if different.
VMN import option is available for switching off corrections.
Search Engine
New methods - FormulaSearch.isValidQuery and FormulaSearch.isValidTarget - can be used to validate formulas before use.
Performance improvement - For non-markush table types the standardized structure is stored in cxsmarts format if possible.
Valence property is now handled correctly in Markush searches.
Metabolizer preview
Reaction Library
Reaction Library has been expanded with the following reactions:
Reduction of esters to alcohols with LiAlH4
1,2,4-Oxadiazole formation
Oxazole formation from beta-ketoester and amine
Reaction of iso(thio)cyanate with nucleophile to (thio)urea or (thio)carbamate
Vilsmeier aldehyde synthesis
Gattermann-Koch synthesis of aldehyde
Hydroformylation of alkenes to aldehydes
Reduction of esters to aldehydes with DIBAL-H
Phthalazinone formation from phthtalaldehyde acid and hydrazine
Oxazole formation from propargyl alcohol and amide
Pyrazine formation from 1,2-dione and 1,2-diamine
Pyrimidine formation from 1,3-diketone and guanidine
Pyridazine formation from alpha-aminoketones
Standardizer
Structure Checker
Structure Checker is going to be moved to the MarvinBeans package. Until it is done, the new Structure Checker GUI is available in both JChem and MarvinBeans packages as Structure Checker JChem and Structure Checker , respectively.
Substructure Checker feature is accessible only in Structure Checker JChem until the complete relocation of Structure Checker.
Documentation
JChem Cartridge
jc_tanimoto failed with ORA-06502: character to number conversion error with some NLS settings.
jc_formula_eqb function threw ORA-29902: error in executing ODCIIndexStart() routine.
Stale connections were throwing error after Oracle restart (oracle.connection.cache.ValidateConnection property incorrectly set during installation).
JChem Base - DB functionalities
Search Engine
Change of the semantics of halt on error false: General search errors (query, search option dependent and license errors) are not only logged but stop the search process and the corresponding exceptions are thrown. chemaxon.util.search.SearchException and ChemaxonException are deleted.
Position variation bonds in "Any" tables threw exception.
DB search on markush table did not throw license exception if there was no license.
Alignment could not be turned on/off at similarity search in hit display mode.
Ordered filter queries were not handled correctly in case of similarity search in DB.
Filter ID not lists were not handled correctly in case of similarity search in DB.
Result ordering by molecule IDs did not work correctly in case of similarity search in databases.
JChemSearch.getHitsAsMolecules(...) could have missed the hit in case of superstructure search, explicit hydrogens on the target and "Any" or "Molecule" tables.
Errors occurred during similarity search in DB if filter lists were used and the non-hits were required.
Similarity search in database with empty query structure crashed.
Search results were incorrect if empty and non-empty queries were searched consecutively in DB (using the same JChemSearch object).
Stereo information was not properly saved in database for certain molecules.
Full table regeneration is needed to use JChem 5.11, please regenerate all JChem tables and indexes after upgrade. The new table version is 5110000.
Marvin 5.10.5 is included
Marvin 5.10.4 is included
JChem Base - DB functionalities
Search Engine
R-group decomposition: generated R-group coordinates were wrong for "keep coordinates" option in case of Hydrogens originating from implicit H.
Reaction search required reactor license in some cases.
R-logic was not working correctly in all cases for database search. (Some non-default occurrence and restH settings.)
Formula search related to empty structures could give wrong results.
Screen
Reactor
Licensing
Installation/deployment
JChem Cartridge
Readmol and writemol functions have been added to read and write molecules from/in files.
Index parameter is provided to store errors in a database table.
Oracle log entries are available on server side (no need for DBA).
Molecule converting function and parameter types have been extended: conversion between VARCHAR2/BLOB/CLOB types is possible in all directions. See more in the documentation about jc_molconvert, jc_molconvertv, jc_molconvertb and jc_molconvertc functions.
Connections opened from JCC server maintain the CLIENT_INFO, MODULE and ACTION columns in the V$SESSION data dictionary view.
The use of service names and full connection strings are allowed instead of only service ids during installation/upgrade.
Size of cd_smiles column in the index tables has been increased to 4000 characters.
haltOnError parameter has been added for jc_evaluate.
Global option for configuring Marvin Services to be accessed in jc_evaluate.
JChem Base - DB functionalities
API changes:
Deprecated constructor ConnectionHandler(Connection) has been removed from the public API.
The first parameter of FingerprintHandler.save() function has been changed from ConnectionHandler to DatabaseProperties; old function has been deprecated.
Search Engine
API changes:
RgDecompResults returns the Decomposition objects in RgDecompResults.getDecompositions().
RGroupDecomposition.setQuery(Molecule, int) has been deprecated. setQuery(Molecule) and getSearchOptions().setUndefinedRAtom(int) can now be called separately in the same way as in case of MolSearch.
Reaction Library has been expanded with the following reactions:
Sonogashira coupling;
Negishi coupling;
Suzuki coupling;
Friedlander quinoline synthesis;
Fischer indole synthesis;
Huisgen 1,5-disubstituted triazole synthesis;
Huisgen 1,4 disubstituted triazole synthesis;
Synthesis of spirochromanone;
Heck coupling;
Buchwals-Hartwig cross coupling;
2+3 imidazole synthesis;
Williamson ether synthesis.
Standardizer
Web Services
Documentation
JChem Cartridge
Inserting large structures into duplicate filtering index failed with ORA-04091.
jc_delete failed with IllegalStateException when the table was not JChem-indexed.
Highlight superstructure & similarity search failed without informative error message when rowid parameter is wrong.
jc_compare failed with "ORA-29532: [...] Exhausted Resultset" was in case of some queries, when the index was created with haltOnError=nf parameter.
Session longops showed only the first half of the index creation when creating index on Markush table.
Creating index with haltOnError=nf failed with error on Markush tables in some cases.
Some structures may have remained unindexed with duplicateFiltering=y and haltOnError=nf index parameters.
Installer and upgrader command line user interface may have been garbled (due to excessive delay in JChem Server start-up).
Misleading error message was appeared in the case of jc_evaluate errors in domain index scan mode.
Search had the potential to hang due to connection problems in JChem server.
CREATE INDEX failed with ORA-06502 ... character string buffer too small (other SQLs failing with error messages might be affected).
jc_react(4) didn't abort on some errors.
Creating and rebuilding Markush tables with haltOnError=nf option failed when there was an error during molecular descriptor creation. The information in v$session_longops table shows more precise values during these operations.
JChem Base - general
Search Engine
Hits in ambiguous aromatic rings with adjacent R-groups were not found by aromatic queries.
Hit display and coloring of R-group queries in Markush search did not work correctly.
jcunique command line utility didn't work if the user didn't have a database connection.
Query structure having R-groups did not match its enumerate as target during database substructure search.
Structures with double bond stereochemistry difference due to explicit/implicit hydrogen representation could not be found in duplicate search.
Markush reduction incorrectly removed R-group definitions.
Full structure search error involving explicit and implicit hydrogens with exact radical matching.
Full table regeneration is needed to use JChem 5.10, please regenerate all JChem tables and indexes after upgrade. The new table version is 5100000.
JChem Base - DB functionalities
Marvin 5.9.3 is included
JChem Cartridge
JChem Base - DB functionalities
JChem Base - DB functionalities
Unique smiles export: Explicit hydrogens are not removed from exotic (or erroneous) atoms with valence error thus keeping the hydrogen count information, e.g., pentavalent boron or sulphur compounds.
CXSMILES import/export handles every special atom available in the Periodic System dialog window of MarvinSketch.
JChem Cartridge
JChem Base - DB functionalities
Standardizer
JKlustor
JChem Cartridge
Function is implemented to check compliance of molecule with index "structureType".
JChem Cartridge Owner can view the license information via table function.
Creating index and rebuilding index can also be tracked via the v$session_longops table.
Provide SQL interface to administratively kill (runaway) searches.
JChem Base - jcman
JChem Base - DB functionalities
Search Engine
Standardizer
Reaction Library has been expanded with the following reactions:
Acylation of nucleophiles with carboxylic acids
Hell-Volhard-Zelinsky bromination
Reduction of oxocompounds with NaBH4
Hydrolysis of carboxylic acid halides and anhydrides
Acylation of nucleophiles with carboxylic acid anhydrides
2+2*1+1 Imidazole synthesis
Hydrolysis of amides
Knorr pyrrole synthesis
3+2 Dihydroimidazole thione synthesis
Transesterification reaction
2+3 Imidazole synthesis
Cross-Claisen condensation
3+2 Pyrazole synthesis
Hinsberg thiophene synthesis
Reduction of esters
Hantzsch pyrrole synthesis
3+2 Furan synthesis
Pinner reaction
Reduction of nitriles
Paal-Knorr thiophene synthesis
Paal-Knorr pyrrole synthesis
3+2 Pyrazole synthesis
Pictet-Spengler isoquinoline synthesis
Benzimidazole synthesis
2,3-Dihydro-1H-benzimidazole synthesis
Benzothiazole synthesis
Benzoxazole synthesis from aldehyde
Hantzsch thiazole synthesis
Tetrazole synthesis
Huisgen triazole synthesis
1,2,4-Triazole synthesis
Guareschy-Thorpe pyridone synthesis
JChem Cartridge
jc_matchcount was not working correctly in domain index scan.
Cost estimation was not generated for searches in other users' schema.
WS-AJAX example
JChem Base - general
JChem Base - DB functionalities
Searches on HSQLDB database threw DatabaseSearchException: "ERROR: Table "TEST_TABLE" could not fit into structure cache (out of memory)."
Update log purge blocked other searches for long time.
Search Engine
Using implicitHMatching ignore option, special hydrogens are still taken into account. Special hydrogens are: 0 or multiple bonds, isotope, radical, or charge information.
Inserting polymers with H endgroups into tautomer duplicate filtered tables threw exception.
R-group decomposition refused targets with position variation bonds.
Reactor
Achiral reaction product "remembered" the stereo information of the reactant.
Pressing "Apply" button in reaction editor did not save the modification of the reaction.
Standardizer
Structure Checker
Structure Checker
No table regeneration is needed to use JChem 5.9.
New table version of "Markush library" and "Query structures" type tables, and tables with "Duplicate search uses tautomers" option is 5080000, while in case of other table types table version is 5070000. All the new tables get CT version 5070000 and MD version 5080100.
Marvin 5.8.2 is included
JChem Base - general
JChemBase - DB functionalities
Searching with polymers or on polymers could cause ArrayIndexOutOfBoundsException before version 5.8.
Peptides from peptide sequence import did not match itself during duplicate search.
Search Engine
Reactor
Table regeneration is needed to use JChem 5.8.1; please, regenerate 'Markush libraries' type JChem tables and indexes after upgrade.
The new table version is 5080100.
JChem Cartridge
Selectivity and cost estimations are available for JC_TANIMOTO.
New option to defer error handling for index rebuild.
Indexing of structures with formula as long as 4000 characters (from the previous 100 characters) in regular structure tables is allowed.
Oracle client is no more required for installation/upgrade.
haltOnError option for jc_evaluate_x to return NULL on error.
haltOnError option for the MOLCONVERT function.
Search Engine
Markush descriptors are loaded into structure cache, resulting in better screening performance.
Fingerprint is used for Markush structures in case of homology translation off.
Search option for using SSSR or CSSR in SMARTS matching has been added.
Explicit hydrogen is now allowed to be used in structural key molecules.
Markush Viewer
R-group tree is colored if the displayed Markush structure is a colored searching result.
The loaded file opens with expanded R-group tree on the first level.
The Nesting View highlights the appropriate tree node.
Reaction Library has been expanded with the following reactions:
Fischer esterification;
Synthesis of acid chlorides;
Synthesis of acid bromides
Reduction of carboxylic acids to primary alcohols;
Synthesis of carboxylic acid anhydrides;
Alpha halogenation of carboxylic acids;
Synthesis of cyclic anhydrides;
Acylation of nucleophiles with acid chlorides;
Schotten-Baumann reaction;
N-acylation of azides.
Documentation
JChem Cartridge
Privilege re-grant was required after upgrade or (more rarely) after index rebuild.
Upgrader ignored user's instruction: not to recalculate CT columns.
jc_insert with the userDefColMap option aborted with error when SELECT was specified as target.
Non-ASCII character output of jc_molconvert was incorrectly encoded. (In particular conversion to SVG resulted in partial garbage.)
Similarity search returned inconsistent results with multiple query structures.
Searches with filterQuery aborted with ORA-20102 when executed in functional/filter mode.
Updates to duplicate-filtering index with same structure in different format may have failed.
Search with 't:d requireCommit:n' sometimes failed with "unknown option name: requirecommit".
Errors during JC_EVALUATE were identified with incorrect messages.
Inserting duplicate into CLOB/BLOB column of regular structure tables threw ORA-29532 instead of ORA-20103.
Adding Molecular Descriptors failed with NPE on NULL structures.
jc_compare('t:d requireCommit:n') didn't return some hits when the value of the earlyResults search option (100 by default) was less than the size of the total result sets.
ALTER INDEX REBUILD on compressed tables failed with ORA-39726.
jc_evaluate_x returned SMILES with "\n" appended.
Dependency on the JCC server's locale of country/language settings of database sessions removed.
JChem Base - DB functionalities
JChemBase - general
Search Engine
SMARTS search returned possible false hits if the query structure contained an atom that could be part of an aromatic ring and was connected to an aromatic ring by a single bond.
Fixed query pseudo atom matching to undefined R atoms in target.
Fixed similarity result coloring in case of exchanged atom orders.
Queries containing R-group definitions could miss hits when an R-group member's attachment points did not have the last atom index.
Markush Viewer
Ctrl + o didn't open Markush Viewer file chooser unless the file menu was clicked previously.
Fixed a file open error in Markush Viewer (JChem x64).
Repeating units were not visible in all views in Markush Viewer.
Fingerprints
Standardizer
Table regeneration is needed to use JChem 5.8; please, regenerate 'Markush libraries', tables with 'Duplicate search uses tautomers' option and 'Query structures' type JChem tables and indexes after upgrade.
The new table version is 5080000.
Marvin 5.7.1 is included
Search Engine
Markush Search
R-group decomposition handles queries with both defined and undefined R-groups.
Markush Viewer: new display options of molecule properties and size customization are implemented.
NMR Predictor
Reactor
License
JChemBase-DB functionalities
JChem Base - jcman
JChem Base - general
JChem Cartridge
Markush Search
Standardizer
Full table regeneration is needed to use JChem 5.7, please regenerate all JChem tables and indexes after upgrade.
The new table version is 5070000.
JChemBase - general
JChem Cartridge - documentation
Search Engine
Jcunique: the new command-line tool of chemical structure duplicate filtering handles multiple input.
Broad and narrow homology translations can be enabled and disabled. Both broad and narrow translations are disabled by default.
Added haltOnError option to JChemSearchOptions to stop search at any error. (This corresponds to JChem behaviour prior to 5.6.) The new default has changed for Markush tables: not to stop at errors, but continue search with processing further records.
Updated FormulaSearch method signatures and apidoc.
RGroupDecomposition: improved handling of substituted aromatic N:
Automatic R-atom addition adds ligand to aromatic N;
In case of automatic R-atom addition undefined R-atom matching option default value becomes group-H-empty.
Improved logging in JChemSearch.
Markush Search
Explicit H in query now matches to implicit H in Markush target.
Added support for atomic query properties: s, s<n>, D<n>, u, rb, rb<n>, R<n>, X<n>, H<n>.
Markush Viewer: new desktop application and GUI component to visualize Markush structures in organized ways.
Equal translation of homology groups now works.
Homology groups can match on homology groups that are a superset if broad translation is allowed, they can match on subset homology group if narrow translation is allowed.
Sped up JCB and Cartridge search utilizing Markush screen.
Sped up database search and import combinatorial Markush structures.
JChem Base-DB functionalities
JChem Cartrigde
Support ValidateConnection Oracle connection cache property ("oracle.connection.cache.ValidateConnection=true" in jcart.properties)
Support for deferred error handling.
Documentation
Search Engine
Markush Search
NULL cd_markush field values do not halt search.
DB import / table regeneration failed due to Supergraph generation failure in case when attachment is present in scaffold.
Improved VMN import error handling and reporting.
JCmem Base-DB functionalities
Tautomerization / tautomer duplicate search threw ArrayIndexOutOfBoundsException in some cases.
"jcman d" did not accept connection parameters on the command line.
HSQLDB V2.0 and above threw SQLSyntaxErrorException: "type not found or user lacks privilege: NULL" when creating JChemProperties table.
JChem Base-jcman
JChem Cartridge
Upgrade of JChem Base structure tables failed with license errors.
Similarity search with NULL query structure failed with ORA-29532 in non-domain-index scan mode.
Searches in JCB tables failed with intermittent "The url cannot be null" error.
Some index parameters supported only for regular structure tables (AUTOCALCCT et al., DUPLICATEFILTERING, TDF, EXCLUSIVEDF) were not rejected for JCB tables.
Structure search on non-markush structures in Markush indexes may have resulted in incorrect outcome (including mistakenly reported errors).
Metabolizer
Reactor
Standardizer
Resize cursor image now appears on splitpane dividers on mouseover.
Standardizer (GUI) application saves the excluded group list of "Contract group", "Expand group", and "Ungroup" actions.
Web Services
Fix ConnectionWS and JChemSearchWS documentation.
MolConvertWS SOAP documentation fixed.
Installation/deployment
Documentation
Full table regeneration is needed to use JChem 5.6, please regenerate all JChem tables and indexes after upgrade.
The new table version is 5060000.
Reactor
Search Engine
JChem Cartridge
PL/SQL procedure for turning off statement caching in JSPs:
Staging schema is emptied at the end of an upgrade performed without DBA credentials.
Markush search
JChem Cartridge
Adding new operator (with new supporting functions) failed during upgrade.
Inserting with duplicate filtering failed with ORA-06531 for empty structures in some cases.
Search operators in composite queries sometimes failed with "ORA-20102: Invalid search option: error: unknown option name: earlyresults"
Documentation
Installation/deployment
JChem Base-DB functionalities
Fixed ArrayIndexOutOfBoundsException bug when Similarity Search is run with maxResults and non-hits options.
Fixed search to return correct similarity values for queries with non-hit and limited result count options.
Incorrect similarity values were given back when filterIDList or filterIDNotList was set.
Duplicate search failed to find large molecule with many ring systems.
Markush Search
NullPointerException in Markush search for certain queries fixed.
R-group query on Markush search: HitDisplayTool threw exception.
Similarity
Full table regeneration is needed to use JChem 5.5.1, please regenerate all JChem tables and indexes after upgrade.
The new table version is 5050100.
JChem Base
Possibility to change the table options with jcman command line tool.
Improved logging of structure cache events.
New constructor in ConnectionHandler; clarification of API doc of setConnection() and connectToDatabase() methods; new usage examples of class.
JChem table option to switch off all tautomer protection for tautomer tables.
New search option in MolSearch: During tautomer duplicate search all protections can be switched off (considers all theoretically possible tautomers).
Search type option has been moved to the constructor of MolSearchOptions and JChemSearchOptions.
Improved SearchOptions, MolSearchOptions and JChemSearchOptions apidoc.
Deprecated methods have been removed from MolSearchOptions and JChemSearchOptions classes.
JCSearch: Implemented multiple queries when searching in a database table with --and, --or and/or -n options. >
JChem Cartridge
The operators jc_containsb, jc_equalsb, jc_matchcountb, jc_tanimotob and jc_dissimilarityb will be deprecated in favor of their overloaded counterparts: jc_contains, jc_equals, jc_matchcount, jc_tanimoto and jc_dissimilarity.
Search type option value deprecations: "t" for similarity search is deprecated in favor of "i"; "r" for superstructure search is deprecated in favor of "u".
Index parameter to turn off all "protects" during generic tautomer creation.
Formula search function jcf.formula_search.
Option for forcing JCC server to open new database connections.
Search Engine
Sophisticated formula search is available.
Syn-anti stereo information is supported in searching. Allene and axial stereo support is available in memory search.
R-group search significant speed-up.
Improved hit highlighting of similarity search results.
HitDisplayTool rotates reaction components separately.
Comprehensive stereo model is the default for non-duplicate and non-markush searches.
Retrieval of R atom indexes in R-group search hits.
Searching with R-group queries now supports R-group IDs above 32.
Improved implicit H matching documentation.
Extended stereo model documentation.
Markush Search
Handling of large Markush structures in DB, search and enumeration. These large Markush structures typically contain a scaffold with 1-attachment R-atoms and thousands of small R-group definitions.
Markush search speed-up in DB. About 7x speed-up measured.
Simple R-group queries are supported in Markush Search.
Hetero ring homology groups accept any atom type except noble gases and alkali metals provided that the structure is suitable. Hetero ring nature should be fulfilled even if the query contains only carbon and any/query atoms.
Rgroups with hydrogen definitions are not required for full match.
Web Services Server
Create batchEvaluate() method in ChemicalTermsWS.
Eliminate superfluous evaluate() methods with specified output types in ChemicalTermsWS.
Standardizer
"Tautomerize" action creates chemically more reasonable tautomer. The created tautomer is not the canonical tautomer.
"Tautomerize" Standardizer action ungroups all S-groups.
New Standardizer action: remove stereo search markers from double bonds.
Reactor
Reactor GUI improvements:
Unsuccessful reactions can be generated;
Synthesis code can be generated;
Manual drawing of input reactants;
Manual selection of preferred regioisomeric products;
Imporved launch speed of Reactor GUI.
Reactor allows copying property fields from reactants to output products/reactions.
Screen
JChem Base
Fixed exception during export of NULL CLOB field
Data upgrade (jcman u) failed to do some structural changes
Evaluation of command line parameters caused error by the jcman script on Solaris.
JChemSearch.getScreenedCount() returned incorrect number
Database search incorrectly returned all structures from the table when structural key/keys was/were defined and the query structure was the/a structural key.
JChemSeach.setFilterIDList() did not accept null as parameter.
JChem Cartridge
Some database objects supporting JChem indexes were not created in the table space specified for CREATE INDEX
Index creation with duplicateFiltering=y
hung sporadically
Search Engine
Retrieval of R atom indexes in R-group search hits.
Fixed database searching in reaction agents.
Fixed searching molecules with attached data without an explicit query operator.
HitDisplayTool alignment fixed and improved execution speed.
Fixed exception in hit coloring and alignment during tautomer search.
Fixed R-group query search R-logic interpretation. Improved execution speed of R-group query searches.
HitDisplayTool similarity search uses same default setting as jcsearch command line tool.
Markush Search
Fixed exception during hit alignment of Markush structures.
Fixed hit alignment of Markush structures.
Searching queries with R0 and R property works correctly both for multiple attachment and multiple occurrence Rgroups.
Query-side user defined homologies required markush license
Standardizer
Parity and wedge information were not recalculated when isotope data changed
Standardizer did not standardize agent components in reactions
Standardizer removed stereo information in some cases if the input molecule was in mrv format.
Reactor
Full table regeneration is needed to use JChem 5.5, please regenerate all JChem tables and indexes after upgrade.
The new table version is 5050000.
JChem Cartridge
JChem Base
JChem Base
HitDisplayTool highlight improvements for R-groups. (R-group atoms and bonds are now always correctly coloured in Markush targets.)
HitDisplayTool on Markush targets: Added option to remove non-hit definitions from hits returned by HitDisplayTool.
Markush structure reduction aligns only the scaffold, R-group definitions remain intact.
Insert function of the db_search JSP example has been changed regarding to the duplicate filtering option changes in JChem 5.4
JChem Cartridge
JChem Base
Search didn't work correctly in case of ambiguous aromatic queries and basic aromatization specified by xml configuration
Search threw exception when searching with wiggly bonds in exact stereo search.
Search option for markush display mode was not considered when coloring and alignment were disabled in HitDisplayTool
Search threw an exception when findAll() was used with implicitHMatching options set to ignore
R0 SMARTS searching threw exception in certain cases involving implicit H.
x (ring bond number) query property threw exception in SMARTS.
A new MySql based 'out of memory' issue was documented in the JChem FAQ.
Documentation part about bundled JDBC drivers added.
Changed deprecated Mysql TYPE keyword to ENGINE in DDL statements
Markush Search
JChem Cartridge
Reactor
Standardizer
Evaluator
The tautomer duplicate tables have to be regenerated. The current table version is: 5040100
The database version does not change, current table version is: 504000
JChem Base
Metabolizer
Structure Checker
The tautomer duplicate tables has to be regenerated. The current table version is: 5040005
JChem Base
Search engine
Hit visualization method for similarity search results using MCS (maximum common substructure) coloring and optional display of query and similarity score.
Enantiomer stereo search option.
Double bond stereo is considered if one endpoint is an aromatic ring atom.
SearchHit object is used inside the search classes to alleviate group hit and single hit handling.
Database functionalities
Similarity search is now multi-threaded
Fingerprint screening and ABAS are now running in parallel to return first results faster.
Non-tautomer duplicate search is implemented on tautomer duplicate tables. Changed tautomer search option to 3-way option accordingly.
Duplicate filtering has been changed from a import option to a table option. This option must be set during the table creation.
Cache refresh speedup for Oracle: Several ids are included in one change log record.
Tables with the same name in different databases are supported in the structure cache.
New constants in DatabaseConstants class can be used for database connection.
Markush add-on:
Homology properties in searching and enumeration.
Cyclyl homology group (any ring) added.
Any group homology atom (alternatively XX) in ring represents a ring segment.
Markush DARC(VMN) structures are now stored in database in original binary format (instead of using MRV conversion).
Marking (tagging) Markush structure by multiple queries. (New java class: chemaxon.sss.search.MarkushTagger). To be used later in random enumeration biased towards exemplified structures.
Any homology group (XX) enumeration and search speedup due to less definitins used (but with same meaning): cyclyl, carbontree, metal and halogen groups.
Cyclic homology groups cannot have substituting alkyl chain.
Heterocyclic homology groups definition changed: they must have at least one carbon atom as well.
Some homology groups were renamed.
New native attachment point representation is used.
To reduce combinatorial explosion, for repeating units now maximum 10 cases are considered. Furthermore, moieties (brackets with no crossing bond) and multipliers ( brackets with one crossing bond) are ignored. (Repetition = 1 is assumed and brackets are removed during enumeration.)
jcsearch command-line
JChem Manager application
New duplicate filter option added to table creation and table options pane.
--nodup option was moved from import options to table creation options.
Inappropriate standardizer actions are excluded from jcman GUI.
JChem Cartridge
Allow the use of SELECT SQL statements to specify Standardizer configuration for indexes.
Allow specification of a new Standardizer configuration during index rebuild.
Index parameter to create MD with default settings.
Allow to ignore JChem Server properties for specific server.sh/server.bat commands.
API changes: The "tautomer" jc_compare option is deprecated in favor of the new "tautomerSearch" option. The following deprecated jc_compare options have been removed: exactRadicalMatchingOption, exactIsotopeMatchingOption, exactChargeMatchingOption.
Support in JChem Cartridge for Oracle 9.2 ceases with JChem 5.4. (Support in JChem Base for Oracle 9.2 is continued.)
The function jc_insert, the procedures jc_update and jc_delete have been deprecated in favor of their counterparts in jchem_table_pkg.
install-interact.sh and install-interact.bat have been deprecated in favor of install.sh and install.bat; upgrade-evol.sh and upgrade-evol.bat have been deprecated in favor of upgrade.sh and upgrade.bat
R-Group decomposition
More consistent R-tables in case of symmetrical scaffolds. This is achieved by ordering of hits, group hits are preferred over H and empty in order of R atoms. The new search option --hitOrdering:g can be used to order hits by R-atom matches. These are processed in the order of R-group numbers: 1. heavy group, 2. H atom, 3. empty group
New output option using the new explicit attachment point representation.
Deprecated methods from RGroupDecomposition are removed.
Web Service Integration
JChem manager functions are implemented in the WS and Ajax example.
Retreiving a molecule's additional data from related tables in RelSearchWS.
Exporting data from related tables in RelSearchWS.
Basic markush functionalities are implemented in the WS and Ajax example.
MolSearch functions are implemented in the WS.
Exported column headers are the same as shown in the search results.
Binary output formats in MarkushWS are supported.
Metabolizer
Standardizer
Predefined Mesomer Transform Actions in Standardizer Editor.
Predefined Solvent Removal Actions for Standardizer Editor.
Standardizer Transform Action options have been simplified.
Introducing categories and category based filtering in Standardizer Editor.
Reactor
New virtual reaction library in the "chemaxon_reactions.zip" file containing systematically listed and designed synthetic reactions.
Synthesis Code Generation in Reactor GUI.
Reaction functional group list extension.
Recently used files in Reactor Wizard.
Reaction example tester improvements.
Reaction functional group list extension.
Basic prochiral reaction support
Disable testing of individual examples in reaction example tester
Automated synthesis code generation in Reactor command line application with --generate-id command line option
Structure Checker Editor
Screen
Extended connectivity fingerprint (ECFP/FCFP)
Shape similarity and ligand based 3D screening
JKlustor
JChem Base
Chemical Terms and Molecular Descriptors version numbers were separated in the JChem Properties table.
During searching with cyclic homology groups on spiro rings, the connecting atom was missing from the hit.
Moieties (repeating units without crossing bonds - used to express stoichiometry ratios) are now ignored in Markush search
Fixed DB search bug of basic aromatization with vague bond level 1 at certain queries.
Fixed SearchOptions.setSearchOptions(String) dependence on order of options.
x in SMARTS expression threw exception.
R0 in SMARTS threw exception when H was involved.
Ambiguous H atoms in SMARTS are now handled correctly.
MSSQL threw exception when removing a custom column in JChem Manager GUI.
Reaction fingerprint generator did not handle correctly reactions containing S-groups
The speed of reaction fingerprint generation was improved
Web Service Integration
JChem Cartridge
jc_tanimoto > Z returned hits with similarity values equal to Z.
CREATE INDEX with duplicate filtering hanged (on finding duplicates)
Screen
Inconsistency in default parameters of ChemicalFingerprint
No error message when descriptor type is missing in screenmd
Standardizer
Standardizer input panel preview crashed in case of unimportable files
Number of hydrogens was not updated during neutralization (neutralize action)
Reactor
Reverse reaction option in the Reactor GUI did not swapped reactant/product input controls
Fixed an issue caused properties lost in certain cases at Reaction Editor
Reactor generated empty product instead of [H] or [H+]
JKlustor
JChem Base:
Change in API of UpdateHandler class: if updates in a structure table were in transaction, chemaxon.jchem.db.UpdateHandler.saveUpdateLogs() must be called before committing or rollbacking transaction
New public class for marking (tagging) Markush structure by multiple queries.
Deprecated methods:
public boolean isStructureCaching()
in the chemaxon.jchem.db.JChemSearch
public void setDuplicateFiltering(boolean filtering)
in the chemaxon.jchem.db.UpdateHandler
public void setDuplicateImportAllowed(boolean b)
in chemaxon.jchem.db.Importer
New methods:
public void setDuplicateImportAllowed(int i)
in the chemaxon.jchem.db.Importer
public void setDuplicateFiltering(int i)
in the chemaxon.jchem.db.UpdateHandler
public void setDuplicateFilteringOption(java.lang.String tableName, boolean value)
in the chemaxon.jchem.db.DatabaseProperties
public boolean isDuplicateFilteringOption(String tableName)
in the chemaxon.jchem.db.DatabaseProperties
SearchOptions.setHitOrdering(int value)
in the chemaxon.util.SearchOptions
Full table regeneration is needed to use JChem 5.4, please regenerate all JChem tables and indexes after upgrade.
The new table version is 5040004.
JChem Cartridge
The database version does not change, current table version is: 5030300
JChem Web Services
JChem Cartridge
JChem Base
Atom with s* property and atomlist neighbour had false hits.
Markush reduction to hit without homology expansion threw NPE if the target had converted homologies.
JChem Cartridge
The database version does not change, current table version is: 5030300
JChem Base
Search option charge:i sets implicitHMatching:i only in case of duplicate search type.
Regenerate Molecular Descriptor tables at upgrade
New read-only database type is supported in the JChem: Composite
JChem Cartridge
JChem Server accepts JChem Cartridge connections at one single port
Ability to specify a different account for use_password
Allow calling use_password (set_password) only to selected Oracle users
Optionally require each request to JChem Server to provide a password when database access involved
Application specific PL/SQL exceptions (with possibly concise messages) are raised for frequent types of user input errors instead of letting Oracle throw ORA-29532.
JChem Base
JChemSearch.getHitsAsMolecules(idtlist, options, dataFieldNames, dataFieldValues) returned wrong hitlist if an invalid cd_id was in the idlist.
chemaxon.jchem.db.UpdateHandler.recalculateMDTables() threw NullPointerException if progress writer was null.
Substructure search with C86 fullerene freezed
JChem Cartridge
Double backslashes in jcart.properties were incorrectly copied during upgrade
Searches with result sets limited by rownum < ... failed when not each indexed structure could be expressed in CxSMILES
Only indexes are automatically upgraded during upgrade which require index data recalculation
Absolute path to license directory with trailing slash was not recognized as absolute during upgrade
JChem Web Services
Fix batch conversion of MRV files to Image files in Web Services
Using one unified and compressed all.js file in the Ajax example.
Using Cache-Control in the response HTTP headers of the Web Services Server.
JChemSearchWS - Binary formats are allowed in the getHitsAndData, any case formats are allowed in the exportResult
The database version does not change, current table version is: 5030300
The database version does not change, current table version is: 5030300
JChem Base
Standardizer
Reactor
The database version does not change, current table version is: 5030300
JChem Base
Dropped tables will be removed from the structure cache
Molecular Descriptor handling in JChem Manager GUI.
Defining custom standardization has been improved with the Standardizer GUI in JChem Manager.
Set the earliest possible table version to newly created tables.
Cartridge
Allow to configure port of RMI server objects (jchem.server.rmi.port)
Upgrade supports multiple JChem Cartridge instances sharing the same JChem package on the file system
Fingerprint index subtypes (idxSubType=fp) didn't handle NULLs
Documentation
JChem Base
Exception was thrown in import on the tables which used structural keys.
Change default cache expiration time to unlimited (0)
Expired caches weren't really removed from cache pool
Searching Rgroups had screening errors.
Searching cyclic homology groups on structures containing hydrogen with two ring bonds threw ArrayIndexOutOfBoundsException
Alkyl could match explicit hydrogens attached to hetero atoms.
Repeating units containing letter in the subscript are now considered as polymers
Duplicate search of markush structures in database failed if the structures contained user-defined homology groups.
Acyclic carbon with single or aromatic query bond didn't match alkyl homology atom.
Brackets were not rotated with the molecule during polymer substructure hit highlighting.
Ambiguous aromaticity checking could cause stack overflow
Improved substructure search performance with some ambiguous aromatic queries
Searching with user defined homology group that had invalid context lead to stack overflow error.
Alkyl could match explicit hydrogens attached to hetero atoms.
Cartridge
Updating a null structure gave error
Two-host installation failed with error about missing structure.cache.id
Upgrade failed with PLS-00103 on Windows
Fingerprint index subtypes (idxSubType=fp) didn't handle NULLs
Standardizer
Screen
Tables and indices with tautomer duplicate option need to be regenerated. Current table version is: 5030300
JChem Base
New method for handling log tables and search caches
s and s* query property handling implemented for query homology atoms.
New search option value for implicitHMatcing: "ignore". "Charge:ignore" search option now forces implicitHMatcing:ignore.
jcsearch accepts empty query string, it can be used to just filter molecules with chemical terms
Acyl pseudo atom is not handled as homology atom and can only be matched by itself to comply MMS behaviour
Developers guide documentation hierarchy has been changed.
JChem Cartridge
Login name of the JCC "super user" can be encrypted
jchem_core_pkg.use_password() accepts encrypted passwords
Provide more control over the number of cached connections to users
Better support for upgrading two-host installations
(CLOB, BLOB, VARCHAR2) binding added to JC_COMPARE
JChem Web Services
Display relational data in the Ajax example
Auto detection of other fields in RelAdminWS if at least one field is given
Chemically intelligent sorting for cd_formula
Sorting results by primary-key in RelSearchWS
Sorting in the Ajax example (in non-relational mode)
Reactor
JKlustor
Standardizer
JChem Base
Structure of 'update log tables' has been changed.
All tetrahedral stereo centers are protected in duplicate tautomer search.
NPE was thrown during searching some Markush DARC (VMN) files.
Duplicate and substructure search on markush structures with Superatom sgroups could crash.
Searching complex patent documents could have resulted search timeout because of user-defined homology groups.
Markush reduction to hit caused exception in some cases if the structure contained user-defined homology groups.
Field connections are not stored and reused any more in JChem Manager.
New derby related driver libraries are put to the JChem lib/jdbc folder. Old derby jar files have been removed.
cd_pre_calculated column creation threw exception in case of MS Acces and HSQLDB
Searching with fullerene freezed
JChem Cartridge
get_idx_stats() failed with ORA-29532 error
Users not owning JChem indices were unable to use JChem functions (FROM DUAL)
jc_compare with requireCommit:n t:d didn't find structure
Updating a row of a regular structure table having duplicate filtering enabled with the same structure as already existed in the row failed with duplicate structure exception
Cost estimations provided to Oracle Optimizer were highly inaccurate (since 5.3.0)
get_hit_count function failed if called before jc_compare operator was called
Similarity searches with parametrized metrics failed with certain locales/NLS settings
Certain custom settings were lost during upgrade
CLOB and BLOB user defined functions fail with ORA-00932
JChem Web Services
New exceptions in RelWS
SOAP message link fixes for method getConnection
Wrong config.xml was generated in the Web Servicews Windows installer.
Screen
JKlustor
Standardizer
Markush tables need to be regenerated. Furthermore, Markush DARC(VMN) files should be imported again (and if .mrv conversion was used in the process, they should be converted again) for new developments to take effect.
A new column - its name is cache_id- will be generated for update log tables.
Also a new table (cache registration table) is created for all JChem property tables (<property table name>_cr). Current table version is: 5030200
JChem Base
JChem Web Services
Tables and indices with tautomer duplicate option need to be regenerated. Current table version is: 5030100
The database version does not change, current table version is: 5030002
JChem Web Services
The database version does not change, current table version is: 5030002
JChem Base
Pre-regeneration ability of JChem Tables
Search engine
Homology groups are now supported on the query side.
R-group decomposition integration: New method: JChemSearch.getHitsAsRgDecomp() to obtain ligands, R-group decomposition table, covering Markush structure.
Enhanced undefined R-atom feature:
Multiple atom indexes are returned and colored for group hits. (Added MolSearch.findFirstGroup(), findNextGroup(), findAllGroups(). )
Option to fine-tune R atom matching: possible combinations of group- , H- and empty matching. (Added SearchConstants.UNDEF_R_MATCHING_GROUP_H and SearchConstants.UNDEF_R_MATCHING_GROUP_H_EMPTY.)
Multiple attachment R-atoms are handled
R-atom matching limitations relieved.
Equality check of R-atoms with the same number.
New search options "RLigandEqualityCheck:y/n" and " bridgingRAllowed:n/y".
Vague bond level 1 is extended: 1-atom single and single/double bond ligands of an aromatic ring and single bonds between aromatic rings are considered as single/aromatic and single/double/aromatic.
Special data sgroups designated for duplicate searching : data sgroups with name starting with [DUP] are automatically considered in duplicate search.
Reduced atom-by-atom search (MolSearch) memory requirements.
New similarity metrics supported on cached fingerprint.
API: New constants in chemaxon.sss.SearchConstants for denoting special matches in hits: HIT_R (former R_NODE_PLACEHOLDER), HIT_MULTICENTER, HIT_UNMAPABLE, HIT_LP, HIT_R_EMPTY_MATCH.
Automatically use the right stereo model in all search types and table types.
Semantics of D<n> query property becomes the same as s<n>.
New search option: tautomer duplicate filter
New search option: ignore Chemical Terms errors during DB search for structures of invalid type (syntactical errors are still thrown).
R-group decomposition
R-group decomposition can now be used with JChem Base, JChem Cartridge and MolSearch licenses. Previous licenses (Fragmenter, JKlustor, JChem for Excel) continue to work.
R-group decomposition can generate a covering Markush structure (RgMolecule). (command line: rgdecomp -M, API: MarkushGenerator ).
RGroupDecomposition has a new API , most of the old API has been deprecated.
Now results are returned in a Decomposition object.
R-atoms are added automatically if query does not contain them. In this case these R-atoms can match the empty set by default.
Attachment option atom label with R-symbol (ATTACHMENT_RLABEL) is added.
Alignment is made optional in rgdecomp (default: true for 2D output): added parameter -k, --keep-coordinates.
R-group decomposition command-line aromatizes query and target by default (-s 'aromatize' is the default).
Jcsearch command-line
Similarity search exports similarity values.
Exception is thrown if no query specified.
New option to return database fields as SDF fields
JChem Manager application
Markush add-on:
Import of Markush DARC (VMN - format of the Merged Markush Service) files into the database.
More than two attachment points for R-groups are now supported (with a temporary representation).
More intelligent handling of user-defined homology group definitions and enumeration definitions. All groups can have context sensitive definitions. Enumeration for user defined groups can be different than the search definition. During enumeration any numbers of connections for the homology atom are possible.
Rgroup definitions with single atoms don't need to have explicit attachment points.
During hit retrieval/coloring: homology groups are expanded according to the hit if the appropriate Markush display mode is chosen. The former HitColoringAndAlignmentOptions field "enumerateMarkush" is replaced by the new field "markushDisplayMode".
Double bond stereo is ignored for double bonds coming from bond lists.
Markush code can use custom reagent ID if present
The bundled database drivers has been moved to a separate directory in the JChem lib. The name of the directory is "jdbc"
JChem Cartridge
Markush support in JChem Cartridge
Provide the ability to index columns containing fingerprints (as opposed to structures).
Generic support for metrics in default similarity search.
New option list for jc_dissimilarity() .
Error messages are more to the point.
Ability to have a usable index, even if not all structures could be indexed.
jchem_core_pkg.get_hit_count to support views and jcf.hitColorAlign support views as well
Ability to obtain runtime information on memory usage and outstanding index scan tasks
Web service Integration
Relational data handling in JChem web services
Ajax example: Spreadsheet sorting by columns.
JChem Web Services Windows installer provides possibility to create and run Web Services Server as windows service.
Implement Batch Standardization Web Service
Input Format Optional Parameter on MolConvertWS
Input Format Optional Parameter on StandardizerWS
Return cd_id from AddStructure Web Service Method
Split off JChemSearchWS functionality to ConnectionWS and DataManipulationWS
Added Javascript WS examples (relational data, imggen) and python examples (molconvert, reactor)
Simple PHP example for Web Services
Standardizer
Map action in Standardizer (it maps also molecules, not just reactions)
Search options can be set for transformation actions in Standardizer.
Reactor
Reactor pre-filters reactants in combinatorial mode. As a result, combinatorial mode reaction processing became much faster.
Ratio of the reactants can be set for Reactor.
Reactor supports a new output type: fused reaction output. Fused reaction output contains the reactants, and all generated products in one reaction structure.
Reactor generates synthesis code for reaction output
Superatom sgroup-related exception fixed
Metabolizer
Fragmenter
JKlustor
JChem Base
Temporary memory allocation reduced during cache loading
Query properties spoiled stereo information when implicit H should have been involved in query to describe stereo information.
Exporter / SQLToFileHandler were inefficient when exporting by cd_id lists.
Substructure hit highlighting didn't work if a homology group was in the hit and rotation was chosen as well.
The default value of 'hitIncludesRNodes' in MolSearchOptions is set to "true". Jcsearch output now uses symbols instead of negative constants to denote R-atoms, empty matches.
setStereoModel(STEREO_MODEL_DEFAULT) - incorrectly - threw an IllegalArgumentException.
JChemSearchOptions.setMaxResultCount now throws IllegalArgumentException if maxResultCount parameter is a negative number. API doc has been improved as well.
jchem batch scripts were not installed properly and they ignored JCHEMHOME system variable.
JChem Cartridge
Incomplete cancellations of operations are now handled.
Decimal number predicates failed with Swedish, Hungarian etc. locales.
jc_tanimoto operator failed with ORA-29531 when executed in functional mode (select jc_tanimoto() from t).
JKlustor
JChem Base:
The following deprecated methods were removed from jchem.db.JChemSearch:
public float getDissimilarityThreshold()
public int getAbsoluteStereo()
public int getDoubleBondStereoMatchingMode()
public String getFilter()
public String getFilterConfigFileName()
public String getFilterQuery()
public int getHCountMatching()
public int getMaxResultCount()
public long getMaxTime()
public int getOption(int option)
public int getSearchType()
public boolean getTautomerSearch()
public int getVagueBondLevel()
public boolean isExactQueryAtomMatching( )
public boolean isExactStereoMatching()
public boolean isStereoSearch()
public boolean isWaitingForResult()
public void run_NE()
public void setAbsoluteStereo(int absoluteStereo)
public void setDescriptorConfig(String descriptorConfig)
public void setDescriptorName(String descriptorName)
public void setDissimilarityMetric(String dissimilarityMetric)
public void setDissimilarityThreshold(float dissimilarityThreshold)
public void setDoubleBondStereoMatchingMode(int mode)
public void setExactQueryAtomMatching(boolean exactQueryAtomMatching)
public void setExactStereoMatching(boolean exactStereoMatching)
public void setFilter(String filterExpression)
public void setFilterConfigFileName(String fileName)
public void setFilterQuery(String filterQuery)
public void setHCountMatching(int HCountMatching)
public void setMatchCountBetween(int hitLimitLow, boolean isLowerLimitIncluded, int hitLimitHigh, boolean isHigherLimitIncluded)
public void setMatchCountInRelation(String relation, int hitLimit)
public void setMaxResultCount(int maxResultCount)
public void setMaxTime(long maxTime)
public void setOption(int option, int value)
public void setReturnsNonHits(boolean value)
public void setTautomerSearch(boolean value)
public void setSearchType(final int searchType)
public void setStereoSearch(boolean stereoSearch)
public void setVagueBondLevel(int level)
public void setWaitingForResult(boolean waitingForResult)
The following deprecated methods were removed from jchem.db.UpdateHandler:
public static void createStructureTable(ConnectionHandler conh, String tableName, int numberOfInts, int numberOfOnes, int numberOfEdges, String columnDefs)
public static void createStructureTable(ConnectionHandler conh, String tableName, int numberOfInts, int numberOfOnes, int numberOfEdges, String columnDefs, String standardizerConfig, boolean absoluteStereo)
public static void createStructureTable(ConnectionHandler conh, String tableName, int numberOfInts, int numberOfOnes, int numberOfEdges, String columnDefs, String standardizerConfig, boolean absoluteStereo, Map chemTermColsCfg, int tableType)
public static void regenerateTable(ConnectionHandler ch, String tableName, boolean changeStandardization, String standardizerConfig, Map chemTermColCfg, ProgressWriter pw)
public static void regenerateTable(ConnectionHandler ch, String tableName, boolean changeStandardization, String standardizerConfig, ProgressWriter pw)
public static void regenerateTable(ConnectionHandler ch, String tableName, ProgressWriter pw)
public UpdateHandler(Connection con, int mode, String tableName, String additionalColumns)
public void close_NE()
public void execute_NE()
public int execute_NE(boolean returnLastId)
public void init_CISSNE(ConnectionHandler conHandler, int mode, String tableName, String additionalColumns)
public void setValueForAdditionalColumn_ISINE(int index, String value, int sqlType)
New public method in jchem.fragmenter.Fragmenter: setAttachmentPointType(int attachmentPointType).
Moved fragmenter classes from chemaxon.reaction to chemaxon.fragmenter, deprecated public classes in chemaxon.reaction.
Synthesizer classes are discontinued. (They were completely removed from JChem.)
Full table regeneration is needed to use JChem 5.3, please regenerate all JChem tables and indexes after upgrade.
The new table version is 5030002
JChem Base
JChem Cartridge
JChem Base
--isotope:i option did not work for H isotopes in tautomer region, when running a tautomer duplicate search against a database table created with "Duplicate search uses tautomers" option on.
jcman t <row> has been fixed for PostgreSQL
JChem Cartridge
The database version does not change, current table version is: 5020400
JChem Base
The database version does not change, current table version is: 5020400
JChem Base
jcsearch exports similarity values in case of similarity search and sdf, mrv output.
JChemSearch.getDissimilarityMetrics returns the newly available similarity metrics.
New search option, exactSpecialAtomMatching: enlisted special atoms lose their special meaning (e.g. X does not match Cl, only X)
Similarity search returns most similar hits if hit count is limited. The maxTime option is recommended instead of maxHits in the case of descriptor similarity search.
JChem Base
Similarity search returned different similarity values for the same query when Chemical Terms filter was used.
StructureSearch.restoreRearrangedHitIndexes threw AIOBE in case excluded atoms had been set.
If a phase shiftable polymer was searched by a non-polymer, AIOBE was thrown.
JChem Cartridge
Web service integration
The database version does not change, current table version is: 5020400
JChem Base
"Regenerate all but CT columns" option is implemented.
CT component in "add column" dialog is improved.
Handle structure name fields during import
Tautomer duplicate tables/indexes protect tetrahedral stereo centers in tautomer regions.
.NET integration with JNBridge is not supported any more in the JChem Base
Web service integration
JChem Base
DB Import intermittently hanged, if an error occurred during writing to the DB
X query did not return X pseudo atom in substructure search. (Only halogens.)
JChemSearchOptions.descriptorConfig had no effect with JChemSearch.
JChem Cartridge
Standardizer
Tables and indices with tautomer duplicate option need to be regenerated. Current table version is: 5020400
JChem Cartridge
Chemical terms
The database version does not change, current table version is: 5020100
JChem Cartridge
Metabolizer
Standardizer
Reactor
The database version does not change, current table version is: 5020100
JChem Base
JChem Cartridge
Web service integration
Query information in the Url updates the settings on Query pane
Allowed Configuration of Data Manipulation Function in AJAX example
Extended the Ajax example to be able to work via https properly
Metabolizer
JChem Base
Search failed with AIOBE in case the database contained polymer and non-polymer structures as well.
Fixed bad pseudo atom handling
Fixed various errors during import and searching of molecules containing multicenter atoms
Edit and insert did not work with custom chemical terms fields in the JSP and AJAX example
JChem Cartridge
Screening-only structure search ('t:na') always returned zero
Statistics calibrator failed with SQLException
Java switch -d64 could not be specified for JChem Server on Solaris
Upgrade failed when statistics package was installed
Web service integration
JChemSearchWS returned Database Column types as textual descriptions instead of numeric types
HTML Special Characters are handled in MolConvert
Chemical Terms columns are returned as part of Structure Table Information
Not allow to insert or edit Chemical Terms fields in Ajax example
Hit coloring did not work in the Ajax example
Standardizer
The database version does not change, current table version is: 5020100
JChem Base
Faster substructure, full, full fragment, duplicate and superstructure search in database. (~30% speedup)
Enhanced stereo labels "and" and "or" are now interpretable without wedge for one stereo center groups.
Star atoms are interpreted as AH query atom if they are not polymer end-group.
Chemical Terms field regeneration option has been added in the JChem Manager GUI.
JChem Cartridge
Function (jcf.exec_c) to execute native programs
Operator (jc_tversky) and functions (jcf.tversky) for similarity calculations on chemical hashed fingerprints using the Tversky formula.
Web service integration
JChem Base
Duplicate search on Markush structures threw AIOBE exception if the structure contained polymers.
Structure matching on heteroaryl homology group must have a hetero atom in the aromatic ring(system).
Comprehensive stereo model allowed non-stereo query to match on stereo target in case of exact stereo matching.
Fixed ArrayIndexOutOfBoundsException when performing tautomer duplicate search on a table created with "Duplicate search uses tautomers" option.
NullPointerException was thrown during search at monomers with two terminal oxigens if transformMonomer search option is set.
Table regeneration: Successful regeneration was reported even if there were problematic structures.
JChem Cartridge
Web service integration
Reactor
Reactants order in the reaction definition was not recognized correctly in some cases.
In some cases stereoselective reactions generated more products than it was expected.
LibMCS
The database version does not change, current table version is: 5020100
JChem Base
Polymer search improvements:
Monomers (mon) now have either/unknown(eu) repeat pattern,
SSS: unspecified polymer endgroup (* atom) matches known endgroup,
SSS: all query polymers can match polymers in copolymers
SRU polymer (n) does not match graft and crosslink (xl) polymer types,
New search options to switch on/off phase shift, and for copolymer matching,
Attached data matching now handles data attached to brackets,
Anypolymer (any) matching implemented,
SRU polymer (n) without crossing bonds is handled as a monomer unit (mon),
Improved ladder type polymer matching.
Comprehensive stereo model is implemented for duplicate search (exact stereo option).
JSP example:
Advanced query pane: New text area for additional free-form search options.
Advanced query pane: New diastereomer option in the stereo radio group.
Markush tables: Separate Hit reduction page from enumeration.
Ajax example has been removed from examples of the JChem package. It is available in the ChemAxonWebServices package.
Standardizer
Added option to set "loose" aromatization method
New standardizer action: convert to enhanced stereo
Web service integration
JChemSearchWS returns similarity value if exists
AJAX GUI example: Opportunity to omit DB username and password from config.xml, display a login window where these parameters can be given.
AJAX GUI example: Generate a URL after a submitted search and return the same query results if this URL is copied to the address bar of the browser.
Chemical Terms Python Script example for JChem Web Services is available in the ChemAxonWebServices package.
Documentation hierarchy of ChemAxonWebServices has been changed, they are placed in the doc directory in the ChemAxonWebServices package. JChem and Marvin documentation are also copied there.
Metabolizer
JChem Base
JSP example: Markush enumeration methods threw exception when the count of total enumerated molecules was large.
JSP example: Random Markush enumeration did not return random structures, always the first enumerated was returned.
Markush search: fixed slow substructure search in case of user-defined homology groups and ambiguous aromaticity.
Markush search: fixed NPE related to superatom sgroup at position variation bond.
"Update logs to keep" option has been removed from the JChem Manager, update logs will not be deleted automatically any more.
Tautomer search threw LicenseException (Isomers Plugin Group)
Possible deadlock during structure table regeneration in the case of certain MS SQL Server configurations
Duplicate search in tautomer duplicate tables did not work correctly in case of certain heterocycles.
RGroup decomposition used incorrect undefined rgroup matching option since 5.2.0
JChem Cartridge
Web service integration
Major refactoring in the Ajax client (gui.js, event.js)
User friendly error message when connection timeout is due or there is an error during export
Standardizer
Removal action in Standardizer (keep the largest/smallest fragment, remove the largest/smallest fragment) always identifies the number of atoms correctly
Standardizer correctly neutralizes aromatic nitrogen with negative charge
LibMCS
Tables and indices with tautomer duplicate option need to be regenerated. The database version has been changed, current table version is: 5020100
New .NET API is available for JChem. (From JChem 5.1.5)
New JChem installer for Linux with bundled Java. (From JChem 5.1.5)
JDBC drivers are included in JChem distribution.
New Web Service interface is available for JChem.
JChem Base:
Main search types are renamed: "Duplicate" is now used instead of "Perfect", "Full" instead of "Exact" and "Full fragment" instead of "Exact fragment".
Polymer search and storage.
Searching of attached data to atoms and bonds in MolSearch and JChemSearch.
New search feature: undefined R-atom can match more than one atom during substructure, full and full fragment search. If undefined R-atoms are present in the query, substitution is not allowed on other atoms.
Repeating units can be used in queries and registered and searched in Markush structures in the database.
Homology groups (aryl, alkyl, etc.) support for Markush structures registered in the database.
Improved chemical hashed fingerprint, resulting in more efficient substructure, full and full fragment searches. Similarity measure also improved.
Ajax client application for JChem Web Services
Improvements in aromatization of query structures containing query bonds.
Support for new import formats in JChem: Mol2 and InChi
New API method in ConnectionHandler for simpler database access
Table creation: "Duplicate filtering uses tautomers" option is renamed to "Duplicate search uses tautomers".
Synthesis browser has been removed from JChemManager.
MOL, SDF, RXN compression option has been "off" by default in JChem Manager
JChem Cartridge
The meaning of jc_compare option 't:f' has been changed to "FULL structure search".
Interactive command line installer
Web service Integration
Web Service Server
Introduction of the new Web Service Server. Chemaxon Web services extend access to Chemaxon tools to any web-friendly language over the Internet or an internal network. This server supports Linux, Unix, and Windows environments.
JChemSearch Web Service Implementation: search your database through web services.
ChemTerms Web Service Implementation: run property calculations and predictions over the web.
MolConvert Web Service implementation: convert molecules to any format by using this service.
Standardizer Web Service Implementation: transform molecules to a uniform standard with this service.
Ajax client application
The Ajax client application uses the SOAP interface of JChem Web Services. It provides a user friendly GUI with draggable, resizable windows. Main features:
Query pane with structure, chemical terms and general database field searches.
Scrollable spreadsheet view capable of handling millions of molecules.
Export search results.
Print preview page.
.
Chemical Terms
Standardizer
Standardizer can handle transformations involving attachment points
Multiprocessor support in Standardizer
Metabolizer
Reactor
Multiprocessor support in Reactor
The "--ignore-error" option in Reactor command line application ignores all errors, not just import/export errors
API support for Reactor input mode (sequential, combinatorial) handling
Removed --fragmentation-id and --fragment-data-tag command line options from Reactor command line applications, and deprecated methods related to fragmentation-id and fragment-data-tag handling.
JChem Base:
The following deprecated parts have been removed from JChemSearch API:
QM_DEFAULT
QM_ALWAYS_SMILES
public static final int QM_ALWAYS_SMARTS = 2;
public String getFilterTable()
public void setFilterTable(String filterTable)
public boolean isDeleteFilterTableWhenReady()
setDeleteFilterTableWhenReady(boolean deleteFilterTableWhenReady)
public float getSimilarityThreshold()
public void setSimilarityThreshold(float similarityThreshold)
public int getQueryMode()
public void setQueryMode(int queryMode)
public float getSimilarity(int index)
public boolean isExactChargeMatching( )
public boolean isExactIsotopeMatching( )
public void setExactIsotopeMatching(boolean exactIsotopeMatching)
public void setExactChargeMatching(boolean exactChargeMatching)
public void setExactRadicalMatching(boolean exactRadicalMatching)
public boolean isExactRadicalMatching( )
public void setConnection(Connection connection)
From UpdateHandler API:
public void setValuesForFixColumns(byte[] structure)
public void setValuesForFixColumns(int id, byte[] structure)
public void setValuesForFixColumns(int id, String structure) throws SQLException, MolFormatException, UpdateHandlerException
public void setValuesForFixColumns(String structure) throws SQLException, MolFormatException, UpdateHandlerException
public void setValuesForFixColumns_BNE(byte[] structure)
public void setValuesForFixColumns_IBNE( int id, byte[] structure)
public void setValuesForFixColumns_ISNE(int id, String structure)
public void setValuesForFixColumns_SNE(String structure)
*_NE (no-exception) and similar methods are deprecated in
Full table regeneration is needed to use JChem 5.2, please regenerate all of your database tables after upgrade.
JChem Base
The database version does not change, current table version is: 50103
New .NET API is available for JChem
New JChem installer for Linux with bundled Java.
JChem Base
Improved Developer Guide - Retrieving Results and added property table information to "JChem chemical database concepts"
API doc of setInputMolecule and setStructure in UpdateHandler has been improved
JChem Cartridge
Batch files in JChem package did not accept command line parameters.
JChem Base
NullPointerException was thrown during upgrade from a version before 3.2 where UL tables had not been existing.
dom4j.jar in package was upgraded to latest stable version (1.6.1)
JChem Cartridge
JChem Base
The database version does not change, current table version is: 50103
JChem Base
JChem Cartridge
JChem Cartridge
JChem Cartridge
Standardizer
JChem Base:
Tautomer search now considers explicit Hydrogens in the query.
Developers Guide was extended with molecular descriptor similarity search example.
JKlustor:
JChem Base:
Empty query search in database was corrected for exact and superstructure searches.
EXACT and PERFECT search did not work for reaction tables
HashCode generation expands S-groups before calculation (this bugfix effects API behavior change)
Exact stereo search did not work for substructure and exact fragment search types if the query was not stereo-specific but the target was.
JChem Cartridge:
current table version is: 50103
Hash code of reaction tables has changed, so reaction tables have to be regenerated.
JChem Base:
Standardizer:
JChem Base
JChem Cartridge
Importing certain structures into Oracle databases using multi-byte character sets (such as AL32UTF8) failed with "ORA-24816: Expanded non LONG bind data supplied after actual LONG or LOB column.
Non-index-owner was unable to search with JCC privileges granted through a role.
JKlustor
JChem Base
current table version is: 50101
The database version does not change, but if you have tautomer duplicate filtering tables and they contains structures with isotope H (deuterium, tritium) we recommend the regeneration.
JChem Base:
Standardizer:
JChem Base:
Position variation bonds can be used in queries.
Position variation can be used in Markush structures (target side).
New architecture for tautomer duplicate filter table/JChem index option: generic tautomers are used. This allows more correct and faster operation. Stereo features are ignored in the tautomer regions.
Tautomer search ignores stereo features in the tautomer regions (all relevant search types). Stereochemistry outside tautomer regions are checked by default.
Aromatization of query structures: rings containing atom lists, not lists and query atoms are aromatized if query expresses aromatic rings also.
Stereo search type options (stereo and exact stereo) are unified in one option which also provides a new stereo search type: diastereomer search.
New search option: check sp hybridization.
New search option: undefined R-atom matches other undefined R-atoms only (by default, it matches anything).
SMARTS "x" property supported in searching, meaning the number of ring bonds for the given query atom.
Superstructure search is now default for query tables in jcsearch.
Empty structure for SUPERSTRUCTURE search now matches everything.
Search uses explicit H-s on target in case of Markush structures.
A new Chemical Terms filter was added for db_search JSP example: Rule of 3.
JChem Developers Guide has a new chapter: JChem chemical database concepts.
JChem Cartridge:
Search option for including non-committed recently inserted/upgraded records for perfect search
Duplicate filtering for non-JChem tables including tautomer duplicate filtering
Alter index option for regular structure tables to recalculate the index data without having to drop the index.
New graphical installer including initial configuration, Windows service installation, upgrade support.
jc_evaluate allows CT expressions evaluating to Boolean.
Removing the mappingStyle option from jc_react. (This option has been deprecated since JChem 3.2.)
Chemical terms
Standardizer
Action string and XML tag changes in Standardizer configuration
Standardizer and Reactor Wizard GUI facelifting
Standardizer configuration editor facelifting and refactor. Stand-alone runmode. New engine, new icon sets, new action editor panels. Old version exists, but deprecated
Standardizer action for converting alias and label to abbreviated group
JChem Base:
Hash Code is used for exact search whenever possible to speed up screening
A new public table type option has been created: mysqlTableType in StructureTableOptions for MySql. Created JChem table type is depending on it's value
Values:
MYSQL_DEFAULT_TABLE_TYPE - uses the default table type
MYSQL_FORCE_INNO_DB - create InnoDb table
MYSQL_FORCE_MYISAM - create MyIsam table.
For the property table a new API method was created: createPropertyTable for mysql in DatabaseProperties, it has an additional parameter. The table type setting is possible with this parameter.
JChemSearchOptions, MatchCountOptions implements Serializable
JChem Cartridge:
JChem Base:
Search in database sometimes returned a few more hits than the limit set for maximum result count
Hit coloring fix: superatom S-groups are now colored if the S-group contains hit atoms
If an upper case character was in the table name, molecular descriptors didn't work in some cases
Occasional bug when regeneration Chemical Terms columns for Markush structures in fixed (appeared in Instant JChem)
JChem Cartridge:
JChem Base:
JChemSearchOptions.setMatchCountOptions() had no effect.
When adding new Chemical Terms columns to an existing query table, the results were calculated with normal standardization (opposed to query standardization)
The following settings were lost if set via JChemSearch.setSearchOptions(JChemSearchOptions): dissimilarityMetric; descriptorConfig; descriptorName; optimizeQueries
Some Markush structures with Superatom Sgroup were not found due to incorrect attachment point calculation.
Deprecated applet parameters were used in Legend.jsp in db_search JSP example.
JChem Cartridge:
Specifying null as jchemproperties table for jc_insert resulted in ORA-00903.
Fixed wrong jc_compare results due to incorrect evaluation order of search properties.
DELETE row and direct locator INSERT did not work with regular structure tables having CLOB structure column".
Standardizer:
Reactor:
JChem Cartridge:
Chemical Terms:
Standardizer:
JChem Base:
SearchOptions.get/setOption() could not handle similarity search type.
Improved reaction searching speed in case of reacting center query property.
JChem Cartridge:
"jc_matchcount always returned 1"
When finding duplicates, jc_insert always reported 1 as the cd_id of the matching structure found in the database.
jc_compare's tautomerSearch options always turned on tautomer searching, even if value 'n' was specified.
jc_compare's tautomerSearch option is now deprecated. Instead, "tautomer" should be used (in order to be consistent with jcsearch).
jc_insertb didn't accept table name value as string constant in PL/SQL
Chemical Terms:
Reactor:
Marvin 5.0.2 is included
Chemical Terms:
Initialization of Chemical Terms Evaluator is faster
hasValenceError() function has been added
Bugfixes:
JChem Base: Fix for "Hits may appear multiple times in hit list in case of enumerated PERFECT search"
JChem Base: Fix for "No valid license has been found. Product name: Markush Enumeration Plugin" (in case of searches containing query features)
JChem Cartridge: Fix for "JChem Server stops on user log-off when installed as a Windows Service"
JChem Cartridge: Fix for "Deadlock in DELETE FROM update log table"
JChem Cartridge: Fix for "Indexing without index parameters aborts with error message"
Marvin 5.0.1 is included
JChem Cartridge: support for automatic Chemical Terms calculation
Chemical Terms:
enumeration() returns all or a given number of enumerated structures
evaluate command line parameter -f
has been changed: now -f, --format <format>
specifies the output format if the result is molecule
Standardizer:
neutralize action does not neutralize mesomeric atoms in the form of A+A- (like nitro)
neutralize action also removes mapped and isotopic hydrogens if required
unmap action removes atom maps from molecules, too (not only from reactions)
LibraryMCS: the API is more concise and clear
JChemSearch: setStructureCaching() was removed from API, only cached mode is available from now.
Bugfixes:
Problems with new column "cd_sortable_formula" with certain databases (MySQL 4.1 and older, MS Access, Derby) fixed.
Missing Markush license problem (in case of some searches containing query features) fixed.
Regeneration speedup for "jcman u" and at JChemManager GUI startup
Exporter.setSelectStatement(): problem fixed when specifying additional data fields
JChem Cartridge: fixes in server.sh and server.bat
JChem Cartridge: fixing "haltOnBadFormat index parameter has no effect"
MCS: methods getResultQueryBonds() and getResultTargetBonds() always returned null
Chemical Terms: majorMs() function threw exception in JChem 5.0.0
Chemical Terms: Fixing "Boolean operator "!" (NOT) is not always recognized in Chemical Terms expressions"
LibrayMCS: ClusterEnumerator.next() failed when cluster count was zero
Marvin 5.0 included.
Tautomer searching of JChem Base and Cartridge does not require explicit tautomer plugin license key.
Standardizer groups "query" and "target" for JChem Base and Cartridge are deprecated, but still work. Instead, RemoveExplicitH actions are not performed on queries.
Support of coordination compound representation in JChem Base and Cartridge.
New table types:
Query structures
Markush libraries
Improved API support for hit coloring
JChemSearch.getHitsAsMolecules() to support coloring of database search hits
HitDisplayTool to support hit coloring of arbitrary Molecule objects
Structure searching in database and memory:
Progressive return of results in JChem Base and JChem Cartridge
New generic query atom types for structural search types: AH, QH, M, MH, X, XH, G1-G18. See the documentation for more details.
API: Unified search options of database and in-memory search See: API documentation.
API: Custom atom & bond comparators to modify search behaviour (for advanced usage)
Search with Chemical Terms filter can use stored sub-expressions from C.T. columns.
Substructure and exact structure searching in combinatorial Markush structures, Markush structure reduction to hit.
Performance enhancements of structure searching in database with queries containing atom lists, query bonds and higher vague bond options.
Only narrow ends of wedge bonds are considered in 2D representation of the molecules, following IUPAC recommendations. To convert your existing 2D molecules created with the both-end interpretation to the new convention, use the ConvertWedgeInterpretation Standardizer action.
Aromatization will not aromatize rings that contain query bonds, to allow specification of explicit non-aromatic bonds. Example: [#6]=,:1-[#6]=,:[#6]-[#6]=,:[#6]-[#6]=,:1 SMARTS query is now not changed by aromatization.
JSP example improvements
Checkbox for duplicate checking at insert and update dialog
Sophisticated search options(ignore stereo, charge, isotope, vague bond options, etc.)
Display options for search results
Enumeration controls for Markush tables
Table option to considers tautomers during duplicate filtering
JChemManager (jcman) GUI : table options dialog
New field in JChem Base tables "cd_sortable_formula"
to allow sorting by formula
Simplified installation/configuration for JChem Cartridge
JChem Cartridge provides cost estimation for Oracle Optimizer
Hit coloring and alignment support in JChem Cartridge
Reactor:
Improved abbreviated group support
Output reactions can be mapped in "changing" (Chemaxon) style
Improved reaction mapping checker and automapper algorithm
Added command line parameter -A (--skip-reaction-mapping-check ): skip reaction mapping check (API: Reactor.setSkipReactionMappingCheck(boolean)).
Minor changes in Reactor API
Various bug fixes
Standardizer:
New tasks: ClearIsotopes, Neutralize, WedgeClean, and ConvertWedgeInterpretation
Chemical Terms:
Integration of user-developed calculations as plugin calculations made easier
New functions and plugin calculations:
Marvin 4.1.14 included.
LibraryMCS 0.6:
Speed and cluster quality improvements
Export bottom layer
Various bug fixes
Bugfixes:
Marvin 4.1.13 included.
Synthesis table creation fixed for PostgreSQL
Standardizer:
Marvin 4.1.12 included.
R-group search: support for s* (substitution as drawn) query property
Structure flipping fixed for hit alignment
JChemManager: Chemical Terms evaluation error alone doesn't result in the structure being discarded during import when "Halt on error" is turned off.
JChem Cartridge: Fixing "DELETE row and direct locator INSERT not working with regular structure tables having CLOB structure column"
JChem Cartridge: Fixing concurrency bug which occurs with jc_react when used with combinatorial reactant matching.
Marvin 4.1.11 included.
JChem Cartridge: fixing bugs in user defined operator.
JChemSearch/JSP example: JChemSearch does not round the molweights any more. Client application gets molweights with proper precision from elemental analyzer
Chemical Terms:
Marvin 4.1.9 included.
JChem Cartridge: fixing problem "jc(f)_standardize doesn't work when options are specified in addition to 'config'".
JChemSearch.setOrder() fixed
Export of Chemical Terms columns fixed
R-group search fix (in case of matching implicit hydrogens)
Exception with bond topology query fixed
Deprecated classes (API): SerialMoleculeGenerator, MoleculeGenerator, MoleculeGeneratorConfig (these classes will be removed in JChem 3.3 release)
JSP db_search example: cut end of custom field values in default layout, if field value is longer than 30 chars.
Marvin 4.1.8 included.
UpdateHandler.setIgnoreChemicalTermsExceptions() to allow insert / update in spite of errors during the calculation of one or more Chemical Terms columns
Standardizer:
"Set" action of AbsoluteStereo task clears the absolute stereo flag if the molecule doesn't contain chiral atom(s)
New task: ConvertDoubleBonds (converts the representation of double bonds with unspecified CIS/TRANS stereo information to wiggly or crossed type)
Chemical Terms:
Bugfixes:
UpdateHandler CLOB support fixed
JSP database example: coloring fixed for implicit hydrogens and R-group queries
JChem Cartridge: fixing bug "jchem_core_pkg.use_password may cause pending operations to abort with 'Connection closed' error message"
JChem Cartridge: fixing bug "jc_evaluate and jcf.t_evaluate cannot be used with CLOB queries"
Marvin 4.1.7 included.
Improved alignment for reactions in MolHandler.align(). Rotation is performed on a per-fragment basis.
JChem Cartridge: vagueBond search option added
JChem Cartridge: CLOB support (limited to "US-ASCII" encoding) added
JChem Cartridge: VARCHAR2 operators overloaded with CLOB/BLOB
JChem Cartridge: jcf package for overloaded functional equivalents created
Chemical Terms:
Bugfixes:
Marvin 4.1.6 included.
LibraryMCS:
Keep rings option
Speed improvement
Enhanced clustering algorithm
Various bug fixes
JChem Cartridge: jchem_core_pkg.set_password function added
JSP examples
jsp1_x example has been moved to a new directory: db_search.
The simple JSP example accessible from local jchemsite.
Bugfixes:
Fix for rare problem during the import of multi-line SDF data fields
JSP database example: Hit alignment fix in case of different query and target dimensions
jcman command line import: cd_id field import fix
JChem Cartridge: Fix for password field behaviour in the administration GUI
JChem Cartridge: Fix for mapping style deprecation problem in jc_react
Reactor: pyridinium ions in the reagents became doubly protonated in the products bug fixed
Marvin 4.1.5 included.
Bugfixes:
Fingerprint generation: possible search problem for certain queries fixed, slight search performance improvement
R-group search: restH option fixed
...MatchCountInRelation() performance enhancements (classes chemaxon.sss.Search, chemaxon.jchem.db.JChemSearch and jc_matchCount cartridge operation comparisons are affected)
Coloring fix in the JSP database example for superstructure mode
Fixed: pKa calculation through Chemical Terms was slow in JChem 3.2.2 version.
Marvin 4.1.4 included.
New search option: stereo model
jcsearch returns property(SDF tag) CD_ID when searched in database
LibMCS: Enhanced user interface
Bugfixes:
Marvin 4.1.3 included.
JChem Cartridge: Reaction similarity search works with operators placed before the WHERE clause as well
JChem Cartridge: Tautomer search support added
Reactor:
Removed command line parameter -V (--filter-valence-error) and Reactor.setFilterValenceError(boolean) method from API.
Command line parameter -a (--mapping-style) works again, because automatic handling of mapping styles is slow in some cases. It will be removed in the near future. (API: deprecated Reactor.setMappingStyle(int)).
Bugfixes:
Marvin 4.1.2 included.
.NET Support via JNBridge
JChem Base
Derby support added.
Installer for easier deployment
chemaxon.jchem.db.Importer does not write duplicate structure information to standard error by default, use setInfoStream() if needed.
Multi-processor support during import and regeneration.
Structural search:
Searching of mixture, formulation and component brackets
Reacting center bond query feature
Tautomer search option
Default aromatization type changed to general
No-structures return only no-structures in exact and superstructure search
Flexible search options: ignore charge, valence, isotope and radical, mixture brackets, vague bond matching
New class: chemaxon.sss.search.StandardizedMolSearch for doing standardization and search in the same step.
R-group search support for reactions
Utility class Updater to help the upgrade process in JChem-based applications.
MolHandler.align()expands S-groups for correct alignment.
Table types were introduced in JChem.
Reaction similarity search:
ReactionFingerprint descriptor (implemented as MolecularDescriptor)
API classes: ReactionFingerprint, RFParameters, RFGenerator
Reaction fingerprint metrics: ReactantTanimoto, ProductTanimoto, CoarseReactionTanimoto, MediumReactionTanimoto, StrictReactionTanimoto
UpdateHandler.setValuesForFixColumns[...] methods were deprecated. Use setStructure(String) or setStructure(byte[]) and setID()
JChem Cartridge:
Bug fixes:
Superstructure search fails on NULL
structures
Operator jc_formula_eqb
returns bogus results
New features:
jchem_core_pkg.get_idx_stats
added to allow obtaining index statistics
DDL functions for handling JChem-tables added
config_jcart_users.sql
added for access rights management of JChem Cartridge users.
jc_react4
accepts SELECT statements for reactants (direct insert into product table)
more options for jc_react
R-group decomposition API extension: added findLigand(int ligandId, int[] hit, int[] ligandIds), getLigandIds(int rindex, int[] hit, int[] ligandIds), getLigandId(int rindex, int[] hit, int[] ligandIds).
Reactor:
Graphical user interface for Reactor
Reactor configuration XML files are no longer supported.
Command line parameter -g (--single) is changed to -l (--single).
Added command line parameter -M (--map-result): maps output reaction in specified style (API: Reactor.setOutputReactionMappingStyle(int)).
Added command line parameter -V (--filter-valence-error): using this option products with valence error(s) can be filtered out (API: Reactor.setFilterValenceError(boolean)).
Added command line parameter -T (--standardize-products): standardize products according to configuration (API: Reactor.setProductStandardizer(Standardizer)).
Separate standardization of each reactant and product using standardizer task groups.
Removed command line parameter -y (--standardization-type), because reactants and products can be standardized separately (API: removed Reactor.setStandardizationType(int)).
Removed command line parameter -a (--mapping-style), because reaction mapping style is handled automatically (API: deprecated Reactor.setMappingStyle(int)).
Standardizer:
Graphical user interface for Standardizer
Graphical configuration builder utility for Standardizer configurations
R-group definition removal method added to Removal
New tasks: Tautomerize, Mesomerize, MapReaction, and UnmapReaction
Added task groups: an option to select the tasks to be processed. Added command line parameter -u (--active-groups). API: setActiveGroups(String[] groups) and setActiveGroup(String group).
Chemical Terms:
Molecules and functional groups can also be referred by names, not only by explicit SMARTS strings.
Chemical Terms editor with syntax highlighting (in Reactor GUI).
Several new plugin calculations: distance, angle, dihedral, stericHindrance, leconformer, conformers, hasValidConformer, canonicalTautomer, stereoisomers, tetrahedralStereoisomers, doubleBondStereoisomers, chiralCenter, sigmaOrbitalElectronegativity, piOrbitalElectronegativity, solventAccessibleSurfaceArea, vanDerWaalsSurfaceArea
New function: molString
Fragmenter:
Changed parameter -n (--no-data): atom label and/or fragment ID is not written depending on the setting ("L" and/or "I")
FragmentStatistics: added parameter -m (--min-atom-count) to exclude small fragments from the statistics.
Added parameter -g (--ignore-error) to most of the command line tools. If this is specified, molecule import errors are ignored and processing is continued with the next molecule. Otherwise the program exits with error (as before).
Markush enumeration API (R-group, atom list, bond list, link node)
Bugfixes:
Marvin 4.0.6 included.
JChem Cartridge: new table functions: jctf_evaluate
and jctf_react4
JChem Cartridge: upgrade process refined (abort upgrade on error)
Importer option to collect the cd_id values for imported structures
Empty lines in SMILES files are now accepted as empty structures during JChem import
Bugfixes:
Marvin 4.0.5 included.
JChemSearch.setStrucureCaching() has been deprecated. Only cached mode will be available in the future.
JChem Cartridge: jc_insert function supports SDF and RDF tags
JChem Cartridge: jc_react supports synthesis codes
Bugfixes:
Marvin 4.0.4 included.
Standardizer task name changes:
AddExplicitH replaces the former Hydrogenize task.
RemoveExplicitH replaces the former Dehydrogenize and ImplH tasks.
The old names are deprecated but kept for compatibility.
JChem Cartridge: Non-intrusive upgrade process to minimize impact on users' dependent objects.
Bugfixes:
Search: bug concerning generic bonds connected to R-groups fixed.
Structure cache: occasional NullPointerException and possibility of a deadlock fixed.
HSQLDB: improved cache loading (reduced memory footprint), uses BITAND in non-cached mode, HXSQL treated as HSQLDB
JChemSearch: bugfix for empty query
UpdateHandler: custom DB field names treated case-insensitive (fixes "SQL type not supported" problem for MS SQLServer)
JChem Cartridge:
JChemSearch: EXACT search mode uses hash code for screening if possible (speedup).
The upgrade of the JChem table structure (might be necessary when migrating from an older version) is also available from command-line by invoking
jcman u
Bugfixes:
JChemSearch: structures specified inside the Chemical Terms expressions were not standardized.
JChemSearch: in some cases false hits with -1 cd_id were returned.
JChemSearch: exception for SIMILARITY search + empty query + Max. result count fixed.
UpdateHandler: fix for Oracle JDBC bug workaround of inserting big LOB values (caused import problem in some cases).
Marvin 4.0.2 included.
New search mode: EXACT_FRAGMENT
Support for queries with link nodes
JChemSearch.setFilterIDNotList() for excluding a subset of the table from the search.
JChem Cartridge:
jc_evaluation_x
and jc_evaluationb_x
added to enable generation of tautomers, resonants....
haltOnBadStructures
option added to jc_insert
(allow to discard badly formatted structures in order to insert all correct structures)
Added a few PL/SQL utility functions in the jchem_utils package.
Bugfixes:
JChem Cartridge:
Confusing error message "ORA-00942: table or view does not exist" during installation removed.
Workaround for the bug "dbms_lob.freetemporary does not free temporary BLOBs".
Search: fixed ArrayIndexOutOfBoundsException on hydrogens with query properties.
Search: Fixed isotope matching inconsistencies related to complex smarts expressions.
Change in caching system: the cache logs are stored in separate tables for each structure table.
The log tables are created automatically on the first start of the jcman GUI.
The number of update logs to keep after cache update can also be changed from the jcman GUI in the Advanced tab of the Options dialog.
JChem Cartridge
Multiple query structures can be specified to a single search operator with implicit UNION operations between the result sets.
jc_compare_vb for VARCHAR2 targets and BLOB queries
Bugfixes:
UpdateHandler update operation fixes
Importer : file and DB field names are treated in case-insensitive way
Search: R-group search bug fixed for EXACT search mode
JChem Cartridge
Bugfixes:
Search: Fixed exception with component level grouping query.
JChem Cartridge
Fixed bug: SELECT ... INTERSECT SELECT ... returns corrupt results
Fixed bug: options for jc_compare are evaluated all lower-cased.
Fixed bug: unfetched results "come back" to queries with no results.
Fixed bug concerning JChemSearch.setFilterIDList() with empty result set.
Marvin 4.0.1 included.
JChem Base
HSQLDB support added.
Structural Keys for speeding up substructure search of a user-defined set of query structures.
JChemSearch
New Search features
Filtering by a set of specified cd_id values via setFilterIDList(int[]).
The default setting for setStructureCaching changed to true
.
The SQL specified for setFilterQuery(String) can also be used for ordering the result with an "ORDER BY" clause.
Custom select statement can be sepecified for Exporter allowing the export of related data from other tables and the ordering of structures.
The compression of the cd_structure
field can be disabled in the options menu of JChemManager.
All RDBMS-dependent options are hard coded for the supported databases, the correspondig menus have been removed from the GUI.
JSP example web application
Ability to search on previous hit lists.
Improved administration in setup.jsp.
Session ID prevents sessions interfering if accessed from the same computer.
Search: new query properties: substitution count (s<n>, s), ring bond count (rb<n>, rb), unsaturated atom (u); searching lone pairs
Standardizer:
stoichiometry expansion
template based clean
new Removal methods: "keepSmallest" and "removeLargest"
API: added methods
getAppliedTaskIDs()
getAppliedTaskIndexes()
Reactor: standardization can be specified directly in the -S, --standardize
parameter.
New and improved reactions in the Chemaxon Reaction Library.
FragmentStatistics: added parameter -e, --default-activity
to set activity for fragments with no activity value.
R-group decomposition added.
Bugfixes:
Search: searching for chiral atoms with symmetrical ligands
Search: Database storage of H2 molecules
Search: R-atoms match to themselves in EXACT search mode
Search: stereo double bond matches target double bond with implicit H ligand and various other double bond stereo fixes
PMapper: output reflects the original atom order (instead of the atom order in the standardized molecule)
PMapper: improved pharmacophore type perception based on calculator plugins
Reactor: requires double bond stereo matching for all reactant double bonds, marks unspecified double bond stereo on product side by wiggly bond ligand
JChem Cartridge: Fix for bug "All users use connections with the same identity in Tomcat even if Tomcat is not configured for 'superuser-mode'".
Marvin 3.5.9 included.
JChem accepts SDFiles with missing molfile section
Bugfixes:
Marvin 3.5.8 included.
Bugfixes:
LibMCS -m flag ignored the minimum MCS size set, it works now
PERFECT search fix for certain cases
Search fix for explicit H-s near query bond
Search fix for inconsistent results of some bond topology queries
Cartridge: custom standardization table setting fixed for non-JChem cartridge tables
Cartridge: Fix bug "absoluteStereo index parameter has no effect on search"
Cartridge: Fix bug "chemical terms returning values of types other than java.lang.Double are not allowed"
Cartridge: Fix bug "setting fingerprint properties as index parameters has no effect"
Cartridge: Documentation bug (superstructure search)
New Features:
Marvin 3.5.7 included.
New Features
JChem Cartridge
empty and null string support
BLOB support
superstructure search (isin())
maxHitCount
Operator jc_standardize
added
multi-threaded index creation
use_password() to avoid the need for a highly privileged user in Tomcat
support in the administration GUI for Tomcat security domains
Bugfixes:
Transaction related bug fixed for generateResultTable
Molecular weight always has the desired number of decimals in the table
UpdateHandler: exception handling fix in deleteRows()
Search bugfix: double bond stereo matching with isotopic H ligand fixed.
Search bugfix: matching of implicit H to isotopic H in case of EXACT searching fixed.
Unlabeled chiral center in enhanced stereo molecule is considered ABS.
Bugfixes:
Marvin 3.5.5 included.
Bugfixes:
JChemSearch treats input strings as SMILES in the default query mode (QM_DEFAULT) if the search mode is SUPERSTRUCTURE.
Fixes for empty structures.
Fix for MS Access
Compare closes output streams properly.
Convenience scirpt/batch program optimize in examples/bin is fixed.
Ring count query property [R] in SSS mode of MCS fixed.
Fix of perfect search for certain molecules with multiple chiral centres.
JChem Cartridge: fixes bug resulting in "ORA-00942: table or view does not exist
" errors for certain search operations accessing JChem tables with non-domain-index scan method.
JChem Cartridge: fix bug resulting in "ORA-01000: maximum open cursors exceeded
" errors for certain operations on Oracle 10g.
Bugfixes:
Marvin Document (MRV) import bugfix.
Structures with undefined R-groups (R1, R2, etc. atoms) will import without error.
Cartridge : bugfix for structures that cannot be described in cxsmiles format.
MCS: strongly interconnected structures like cubane will not crash MCS.
Search: bugfixes related to bond topology query property at double bonds and excluded atoms.
Marvin 3.5.4 included.
New features:
in LibraryMCS
fast search option: up to 5 times faster than standard mode
low memory mode: bit slower than normal mode, though uses significantly less memory
new termination condition: minimal similarity measurement
more suitable default values
Bugfixes:
Marvin 3.5.3 included.
Bugfixes:
Speedup: Molecular Descriptor screening queries with Chemical Terms filter expressions are faster.
Minor GUI fix in SynthesisBrowser.
UpdateHandler fix: >4k molecules are properly inserted into Oracle LOB (BLOB, CLOB) cd_structure field in INSERT_WITH_ID mode.
Cartridge: the administrator password is stored with MD5 encoding for the configuration interface. Since this is an incompatible change, the file [user_home]\chemaxon\.cartridge (under Windows) or [user_home]/.chemaxon/.cartridge (under Linux) should be deleted to provide access again to the administration page.
ChemicalFingerprint generation does not require Standardizer license when used with the default configuration.
Improvements
Changes in behavior
JChem Cartridge: Accept ANY ATOM in SMILES targets.
JChem Cartridge: jc_insert(<structure>, <target-table>, <jchemproperties>, 'true', 'false')
discards duplicates. In previous versions, duplicates were inserted and a warning output in the session trace files.
Bugfixes:
Bugfixes:
JChem Cartridge: Fix memory leak during domain index scanned searches
JChem Cartridge: Fix hang during domain index scanned searches
JChemSearch bugfix: slight chance of deadlock in multi-thread mode eliminated
JChemSearch: getResult() no longer throws exception if result table is used.
BLOB and CLOB type cd_structure
can store bigger than 4K structure strings (Oracle bug workaround).
Search
Bugfixes:
JChemSearch bugfix for cases when matchCount includes 0 (only fixed in cached mode yet).
NullPointerException at the end of import fixed.
JChem Cartridge: jc(f)_molweight and jc(f)_formula no more fail when when used in "SELECT ... FROM dual" statements
JChem Cartridge: Fix "non statement parsed" error for DDL operations.
JChem Cartridge: "specifying the TABLESPACE index parameter without the STORAGE parameter has no effect" fixed.
Bugfixes:
Bugfixes:
Occasional exception in Importer fixed
jcman
failed to run in command-line mode without a graphical environment
License management problem fixed.
New Features:
Marvin 3.5.1 included.
JChem Base
The structure of JChem tables changed, 3 more columns were added:
cd_hash : hash code for speeding up duplicate filtering during import (registration). With this column there's no need for a composite index on the fingerprint columns, therefore the length of the fingerprint is no longer limited by the maximum length of composite fingerprints in the database.
cd_flags : for storing molecule-specific tags. Currently only indicates if the missing chiral flag should be overridden in imported structures. This means there's no need to change the chiral flag field in the original molecule string when the import option "Set chiral flag for MDL formats" is enabled.
cd_timestamp : the timestamp of the insertion of the structure.
The old tables are transformed automatically into the new format on the first start of the jcman GUI.
JChemSearch
Multiple search threads for increased performance on multi-processor systems. Currently only for searches that use structure cache.
Timeout option to abort searches which the client stopped checking.
New search options:
Stereo search can be turned off
Double bond stereo matching mode
Exact charge matching
Exact isotope matching
Exact query atom matching
Exact radical matching
Exact stereo matching
Hydrogen count matching
Match count with boundaries
Match count in relation
Structure Cache improvements:
Incremental cache update: the cache won't be reloaded after every change to the table, only the changed rows are updated if possible.
Improved memory control:
maximum cache size may be specified with setMaxCacheSize
auto detection of available memory
minimum non-cached memory size may be specified with setMinNonCachedMemory. This amount will be reserved for other allocations.
least recently used tables are dropped from the cache if necessary.
Note: StructureCache
is no longer a public API, and direct use of the class is not recommended any more, since some incompatible changes had to be made for the new features.
Rxnfile import / export
Structure search speedup
Import speedup
JSP example web application
Chemical Terms expression can be specified for the query
Structure caching can be turned on / off using the configuration file.
Please make sure you have set the appropriate cache setting after upgrading your JChem version..
For more information see the JSP setup guide.
The status of the Structure Cache can be monitored from the "About" dialog
Evaluator
Added Language Reference.
Added Working Examples.
Added topology analyser plugin references (see the Short Reference).
Bugfixes
MySQL 4.x compatibility issue fixed
Compatibility issue fixed when upgrading early versions of JChem
JSP example : problem with deleted structures fixed
Other minor bugfixes
Search
New search mode: SUPERSTRUCTURE search.
Double bond stereo: adjoining wiggly bond means "cis or trans"
new jcsearch options: --stereoSearch, --exactStereoSearch, -t:c (count hits), --maxResults:
Standardizer
Synthesizer
JChem Cartridge
New options to jc_compare.
jc_evaluate for calculation based on chemical terms.
Dramatically improved performance and stability.
Maximum Common Structures of a compound set
Bugfixes:
Bugfixes:
Connection timeout and API fixed in StructureCache.
Update non-JChem tables fixed in JChem Cartridge.
Insert, update, index columns in non-JChem tables containing reaction SMILES fixed in JChem Cartridge.
The speed of updating and deleting records from non-JChem tables with JChem Cartridge drastically improved.
Marvin 3.4.3. included.
Search
Bugfixes:
Marvin 3.4.2. included.
JChem Base
JChemSearch
FilterQuery option
SMILES/SMARTS input mode option
Reduced memory footprint for structure caching.
Restructured for efficiency.
Chiral flag can be set for MDL formats on import, if missing.
Filtering of empty structures is optional for import.
BLOB and CLOB columns can also be used for the cd_structure
field of structure tables.
Use DatabaseTools.readBytes to retrieve a BLOB, CLOB or LONGVARBINARY fields in a unified way.
Improved popup window check in the JSP example.
Bugfixes
SynthesisBrowser saves connection data
JSP example fixed for descriptors without coloring
Database compatibility fixes for PostgreSQL
Molecular Descriptor bug on MySQL fixed.
Other minor bugfixes
JChem Cartridge
Overall stability on all platforms has been substantially improved.
Performance and stability of the jc_insert operator has been improved.
Performance of index creation on non-JChem tables have been substantially improved.
Automatic check of version conformance have been implemented between Java libraries installed in Oracle and those used for the JChem Streams WEB application.
Automatic check of JChem table versions have been implemented, means to upgrade to new table versions has been provided.
The following index parameters have been added (Extensible Index, jc_idxtype):
std_config
, to specify standardizer configuration
RegenerateTable
, to create index on a structure table generated by an earlier, incompatible version of JChem
The following operators have been added:
jc_compare
jc_tpsa
jc_react
jc_transform
jc_molconvert
jc_molconvertb
The following bugs have been fixed:
Marvin 3.3.2. included.
JChem Cartridge
jc_matchcount operator added
bugfixes
Fragmenter
JSP example application:
Popup window check fixed
Multi-line data fields displayed correctly
Other minor bug fixes
JChemSearch:
Fixed problem with filter table + empty query.
Fixed result table append mode.
JChem Base
Custom standardization can be specified for structure tables.
"Assume absolute stereo flag" option for structure tables.
Import-export support for Marvin Document file format.
Minor GUI improvements in JChemManager ( jcman ).
Speedup for import with duplicate filtering.
Improved hit coloring.
Duplicate IDs can be retrieved from Importer by using setStoreDuplicates(boolean) and getDuplicateIDs() .
Negated (not contains) searches supported by JChemSearch and available in the JSP example application.
Absolute stereo matching mode can be specified for JChem search with setAbsoluteStereo(int)
SMARTS import mode can be explicitly specified for MolHandler.
Bugfixes
Retrieving the ID of last inserted structure got much faster for MySQL
Proper error message from JChemSearch when specified table doesn't exist.
Structure table field cd_smiles can contain more than 254 character long SMILES for Microsoft Access.
Occasional error at table regeneration fixed.
Properly determining maximum allowed fingerprint length for all supported databases.
Oracle Cartridge
Improved speed and stability of JChem Cartridge
DML functionality (insert, update)
Search
MDL Enhanced stereo representation for relative stereoconfiguration (handling of ABS, OR and AND labels at chiral centers.)
New options (get & set methods):
ExactRadicalMatching, ExactIsotopeMatching, ExactChargeMatching, ExactQueryAtomMatching replace ExactAtomMatching
DoubleBondStereoMatching replaces StereoCareChecking.
Query/TargetAbsoluteStereo (ignore chiral flag)
addMatch methods: Enhanced performance if certain query and target atoms are assigned to each other before the search.
getMatchCount() and isMatchCountInRelation() methods for counting the number of occurrences of a query in a target molecule and for efficiently deciding conditions related to this.
In script jcsearch :
multiple queries from file
&& (AND), || (OR) for multiple queries
negated (not contains) searches
database search mode
Screen
New molecular descriptors:
Topological Polar Surface Area
hydrogen bond donor/acceptor atom count
logP/logD values
molecular mass
heavy atom count
Plug-in system for user-defined molecular descriptors.
Molecular descriptor sets: user defined combination of arbitrary molecular descriptors; combined and component-wise dissimilarity calculations.
New pharmacophore definition using standard SMARTS notation.
API changes:
MDParameters
and its derived classes for each molecular descriptor types (e.g. CFParameters
, PFParameters
, HBParameters
) are publicly available.
New classes have been added: ScalarDescriptor
, HAcc
, HDon
, LogD
, LogP
, TPSA
, Heavy
, Mass
.
Bug fixes:
Scaled Tanimoto similarity formula corrected.
Generation of ChemicalFingeprint works with multithreading.
Chemical Term Evaluator
New expression syntax
Input contexts
New command line interface
Reactor
New options:
file storage of input molecules (--file-storage
)
standardization type: pre, post, or pre-post (--standardization-type
)
ignore reaction conditions (--no-condition
)
return only some of the products (--extract
)
remove duplicated product references (--remove-duplicate-refs
)
New expression syntax in reaction definitions
Synthesizer
Fragmenter
JChem Base
Marvin 3.2 included.
Import of non-structural SMILES data fields is supported. (Strings after the SMILES, separated by TAB.)
Search:
Enhanced performance of substructure search, especially in case of reactions.
Combinatorial explosion is avoided in many cases.
Several bugs are also fixed.
Query bond types "Single or Double", "Single or Aromatic" and "Double or Aromatic" are supported during substructure search.
JSP example
Substructure hit coloring
Hit alignment
Bugfixes
API changes:
The order of query and target atom type has changed in MolSearch.areMatchingBondTypes()
2D and 3D molecule alignment with MolHandler.align()
Bugfixes:
Exception fixed when JChemSearch was run with search type "Perfect", and logging enabled.
Fixed bug when empty field list was specified for Exporter.
Oracle cartridge
Screen
user defined fuzzy smoothing using pharmacophore type specific smoothing vectors
better formula for asymmetric Tanimoto metric, performs significantly better
median hypothesis is now available
improved pharmacophore perception (mapping)
hitstatistics outputs hits in molecular structure file
generatemd is capable of producing statistics on descriptors generated
JChem Base
Screen
JChem Base
Marvin 3.1.1 included.
Structural fingerprints are changed for certain molecules, regeneration of structure tables suggested for optimal search results
R-group search
connections between R-groups allowed
speedup
RDfile import/export
Binary "AND" operator is used for Oracle (speedup)
JChemManager: Minor GUI improvements
JSP example
Multiple users (login page)
Multiple tables (table selection screen)
Supports Molecular Descriptor (e.g.: pharmacophore) similarity searches
Remembers parameters set for last search
API changes:
ID of last inserted molecule is returned by all supported databases by UpdateHandler
Dissimilarity should be specified instead of similarity in JChemSearch
Bugfixes:
Duplicate filter did not work for some structures on import
R-group search: occasional Cis/Trans stereo problem fixed
Structure search bug concerning chirality fixed
Table creation with PostgreSQL fixed
DB2 export bug fixed
regeneration of tables from command line fixed
JSP example: problems with non-default property table fixed
R-logic bug fixed
Reaction search (search for reactions by reaction queries)
Search for transformation
Search for reaction component
Stereoselective reaction search (inversion/retention)
Chemical expressions
Chemical Terms (chemical expression language)
Evaluator (evaluating chemical terms)
Molecule Transformations
Standardization (mezomers, tautomers, counter ions, etc.)
Ionization (pH dependent ionized microspecies calculation)
Screen (virtual screening)
Configurable molecular descriptor generator
Topological fingerprint
Pharmacophore fingerprint
automatic pharmacophore point identification
fuzzy smoothing
Hypothesis generation
Virtual screening
Dissimilarity metrics
Euclidean, Tanimoto
numerous varieties (normalization, scaling, weighting, directing) that can be combined
Metric optimizer
tweaks metric parameters (scale factor, asymmetry factor, weights) to enrich hits
hit statistics to analyze and evaluate metric performance
SynthesisDesign.html (virtual synthesis suite)
Reaction modeling
Metabolism simulation
Trillian (drug design suite)
Marvin 2.10.5 included.
Fixed bug of parity handling affecting duplicate filtering on import
Fixed bug of double bond stereo handling
Fixed bug of exact matching in case of queries containing generic atoms
Accelerated R-group search
R-groups can have primary and secondary attachment point on the same atom (bugfix)
New methods in MolSearch allow the exclusion of query and target atoms. setQuery(Molecule mol, int[] exclude)
and setTarget(Molecule mol, int[] exclude)
Marvin 2.10.2 included.
R-group search
New query atom conditions:
aliphatic/aromatic
valence
connection count
hydrogen connection count
ring count
smallest ring size
New search options in MolSearch:
subgraphSearch
orderSensitiveSearch
exactAtomMatching
exactStereoMatching
Isotope sensitivity (earlier versions did not distinguish different isotopes).
Improved search performance in case of explicit hydrogens.
User's guide for search
JKlustor:
Two new parameters added to Compr.
Bug fixes including Compr overflow bug for very large datasets.
The ID of the last imported molecule is returned by using UpdateHandler.execute(boolean returnLastId)
.
Note: This feature works only for Oracle yet.
Marvin 2.9.12 included.
PostgreSQL support added.
File-table field pairs can be specified also from command line on import.
Bugfixes for trigger creation/removal, HTMLTools.convertForJavaScript(), connection dialog, stereo checking in exact search, and more.
JKlustor improvements:
Marvin 2.9.11 included.
DB2 support added.
Enhanced multiuser support.
A new import/export text file format, the JTF added.
New classes added to JChem API providing import/export capabilities:
Importer
Exporter
ProgressWriter
From now Oracle uses triggers for incrementing the CD_ID column.
JChem will detect older tables and creates the triggers. Do not run another copy of JChemManager when asked to proceed. Closing other JChem applications is also recommended.
Workaround for MM MySQL jdbc driver bug, reduced memory need in case of structure caching and exporting
Bug fix: Sometimes not the correct parity information was calculated when explicit H atoms were connected to chiral atoms. In that case of databases containing such atoms, the regeneration of the structure tables is advised.
Minor GUI improvements.
Using older JChem versions after installing this version in not recommended.
Marvin 2.9.8 included.
Bug fix for missing structures in SDF export.
Marvin 2.9.5 included.
Method for checking if connection is alive: isConnectionAlive
.
Workaround for occasional communication link failure with MySQL
Marvin 2.9.2 included.
Fix: Windows style line separators in the export operation of JChemManager under Windows.
JKlustor:
Marvin 2.9 included.
Faster structure searching due to caching SMILES strings and fingerprints at the same time. See JChemSearch.structureCaching(boolean)
.
Marvin 2.8 included.
JKlustor:
Visualizing results. A new module, CreateView, composes an SDfile that contains both structures and calculation results. The generated SDfiles can be displayed by the MarvinView application.
Jarp: Optionally, nearest neighbor search can be run separately from clustering. (It helps to refine the setting of the clustering parameters, because the time consuming part of the process can be run before clustering.)
Marvin 2.7.12 included.
JKlustor:
Marvin 2.7.9 included.
Jarp:
Methods are added to the UpdateHandler
class for creating and dropping structure tables and for retrieving the names of structure tables.
Marvin 2.7.7 included.
Jarp:
common neighbors (-c
option) are taken as a proportion of the number of elements in the shorter list. (Previously all elements in the two lists were used.) This results faster calculation and less singletons.
Optional centroid calculation.
Better command line syntax checking.
To save memory space, the descriptors are stored in float
(4 bytes) instead of double
(8 bytes) values.
Fixing a bug (since 1.5.2) that spoiled the default setting for the existence of the bitwise AND operator in the case of MSSQL Server, MS Access, and MySQL.
Marvin 2.7.4 included.
New add-on module for clustering: JKlustor.
Improved compatibility with the Interbase Server product of Inprise (previously Borland).
Support of auto-incrementing the cd_id
column by trigger.
Support of bitwise (binary) AND by built-in or user-defined functions in the database.
Information on integrating JChem with Apache and Tomcat.
Fix for exact searching of molecules containing pyrrole type N.
Because of changes that affect fix columns in the database, regeneration of the structure tables is advised.
Marvin 2.6.6 (includes bugfixes in stereo information retrieval from 3D, handling NOT lists, cleaning, ...)
JChemSearch application for substructure searching in structure files from command line.
jcman can be applied as a command line application.
cd_smiles
column stores H-s only for heteroatoms of aromatic systems.
Bugfix for chiral searching of 3D structures that have implicit H on chiral carbon.
Structures with query features may be entered into structure tables.
Hill order is applied at the calculation of the value of the cd_formula
column.
Marvin 2.6.1 included.
New applications in the bin
directory:
mview
- displaying structure files.
molconvert
- interconverting various file formats.
Stereo recognition at searching.
New property in JChemSearch
: similarity
.
Results can be ordered by
the calculated similarity in the case of similarity searching
the cd_id
values in all cases
New import/export formats in JChemManager: Daylight Smiles and MDL Molfile
New fix columns: cd_formula
and cd_molweight
. If you would like to add these columns into an existing structure table, follow these steps:
Export the old structure table into an SDfile.
Drop the old structure table.
Create a new structure table with the same columns defined.
Import the SDfile.
The examples will work only if you perform the above steps.
Workaround for ambiguities of Smiles notation: Explicit single bond ("-") in generated Smiles code when aromatic rings are attached by one single bond.
Regeneration menu option in JChemManager. The cd_smiles
column needs to be regenerated in structure tables created with previous versions.
Fixes in the examples: workaround for a bug in IE's JavaScript interpreter at opening Insert or Modify windows.
New JavaBean: JChemSearch
.
ActiveX and ASP compatibility.
New JSP 1.x and ASP examples.
Upgrade to Marvin 2.4
Upgrade to Marvin 2.3.1.
Structure searching stored procedures for Oracle8 i .
Caching is extended to similarity search.
Fingerprint indexes are created in the Create option in JChemManager.
Marvin handling in JSP example is friendlier.
Bug fix in cache creation for searching.
Fixes for problems at inserting rows into structure tables in the case of some database engines, like Oracle and MS Access. (Faster import and fix for problems at concurrent structure insertions.)
Upgrade to Marvin 2.3.
Skipping erroneous structures during SDF import.
JSP example has been modified for JSP 1.0 compatibility. Caching fingerprints has been removed from the example.
Fix for problem at viewing the Marvin applets from JChemManager's help
Fixing problem in recognizing MS Access.
Fixing bug at creating tables in the case of some JDBC drivers when the database doesn't support transactions.
Fixes in jcman, msketch, and generfp scripts for Sun compatibility.
Fixes in jcman.bat, msketch.bat, and generfp.bat for Windows95 compatibility.
Workaround for a Java bug that didn't allow starting JChemManager in some environments.
Java installation program.
Batch files and shell scripts for calling JChemManager (jcman
), MarvinSketch (msketch
) and GenerFP (generfp
).
Link fixes in documentation.
Marvin Beans can be added to forms visually.
Help menu option in JChemManager.
Modified license file.
Fixing a bug that disabled the usage of any bond
in substructure searching.
Bugfix in SDF export.
Bugfixes concerning exact and similarity searching
Bugfix in interpreting fingerprints.