Skip to content

MORTAR v1.2.0.0-beta

Pre-release
Pre-release
Compare
Choose a tag to compare
@JonasSchaub JonasSchaub released this 15 Apr 11:49
· 53 commits to production since this release

Change notes

  • Settings menus now have proper option strings in drop-down boxes and every option has a specific tooltip
  • Minor GUI rework concerning button and other control sizes
  • Switched licence to MIT
  • Now using GitHub pages: https://felixbaensch.github.io/MORTAR/ (not updated for this beta release)
  • Updated ErtlFunctionalGroupsFinder (https://github.com/JonasSchaub/ErtlFunctionalGroupsFinder) to v1.3 which has some new functionality and less input restrictions (https://github.com/JonasSchaub/ErtlFunctionalGroupsFinder/releases/tag/V1.3.0.0)
  • Updated from Java 17 to Java 21
  • SDF and SMILES import routines improved and augmented
  • Changed CSV export separator char from being set directly to an enum constant defining the character
  • New fragmentation option in ScaffoldGeneratorFragmenter to dissect a scaffold into its single rings
  • A few changes and additions in headers of exported files
  • Added MORTAR icon to all alerts and dialogs
  • Revision of exception handling at import
  • Fixed import without adding implicit hydrogen atoms
  • Separator character is now replaced with _ in molecule names when items tab is exported to CSV
  • New row added in pipeline settings view is now pre-set to selected fragmenter and other issues fixed there
  • Keep last fragment setting for pipeline was removed since the fragmentation algorithms can be configured in this regard now
  • Fixed bug with file extension on export for Linux
  • Fixed issue #56 that coordinates were not generated for fragments exported to separate SD files
  • Multiple other small bug fixes
  • Code only:
    • Now using the spotless plugin for automatic code formatting
    • Now using SonarCloud for automatics code analysis
    • Copied source files from ErtlFunctionalGroupsFinder, Scaffold Generator (now CDK-Scaffold), and Sugar Removal Utility were replaced with their artifacts taken from Maven Central
    • Updated Gradle to v8.5, CDK to v2.9, JavaFx to 21.0.1, and spotless to v6.25
    • Conducted general code base review guided by SonarCloud analysis (https://sonarcloud.io/project/issues?resolved=false&types=CODE_SMELL&id=FelixBaensch_MORTAR)
    • Introduced a configuration properties file to read paths to icons and other resource files from
    • Fixed all the "bugs" that SonarCloud reported (https://sonarcloud.io/summary/overall?id=FelixBaensch_MORTAR): putting readers and writers in try-with-resources blocks, logic error in PreferenceContainer.addWithoutChecks(), retrieval of example parent molecule in FragmentDataModel, preventing possible division by zero in FragmentationService, better handling of InterruptedExceptions at ExecutorService shutdown
    • Most strings like log messages are now formatted correctly instead of using string concatenation
    • Improved casting and typing in most places
    • Throwing defined exception types instead of general ones in some places
    • Manual code linting and additional documentation
    • Overhaul of exporter, mostly exception treatment (more is passed on to export thread now, so that it fails properly)
    • Introduced separate display names for settings (general and for fragmenters)
    • Added SimpleIDisplayEnumConstantProperty as new JavaFX property that wraps an enum constant with associated display name and tooltip to be used in the GUI and replaced all SimpleEnumConstantNameProperty settings with SimpleIDisplayEnumConstantProperty settings
    • Reduced duplication by moving translation of preferences to properties and check of properties for preference restrictions to PreferenceUtil for SettingsContainer, FragmentationService, and ViewToolsManager
    • Added separate display names to fragmenters for usage in GUI
    • Changed integer and double filters of settings view text fields to positive value filter including zero
    • Collection util rework

What's Changed (according to GitHub pull requests)

Full Changelog: v1.1.1.0...v1.2.0.0-beta