openfluid icon indicating copy to clipboard operation
openfluid copied to clipboard

Refactoring of wares signatures management

Open jctophefabre opened this issue 4 years ago • 0 comments

Major refactoring of wares signatures definitions and management for better consistency and improved features.

The signature of a ware will now be stored as an external single JSON file, gathering all metadata:

  • current signature data
  • data stored in the wareshub.json file
  • other pertinent metadata These informations will be automatically integrated in the binary of ware at build time.

TODO

build process

  • [X] Define file names and formalism used in metadata
  • [x] Provide a tool to transform the json data into source code to be be integrated on-the-fly at build time
  • [x] #1157
  • [x] Update OpenFLUID modules for CMake to adopt the build process (see also #878, #873)

framework

  • [x] #1160
  • [x] Create the WareSrcOperations class which inherits from WareSrcContainer adding configure, build, doc generation and other tasks processing
  • [x] Update the WareSrcManager regarding the WorkspaceManagerclass
  • [x] Replace Domain, Process, Method in simulator signature by Tags
  • [x] Update signatures data structures
  • [x] Remove the signature macros
  • [x] Remove wareshub.json from templates for wares creation
  • [x] Remove references to wareshub.json file
  • [x] Add serialization from and to signatures, using JSON format
  • [x] Replace XML format by JSON for storage of ghosts simulators definitions
  • [x] Use same data structure for simulators signatures and ghosts
  • [x] Ensure JSON consistency between signature JSON format and reporting in JSON format
  • [x] Update the scientific documentation generation (see also #489)

cli

  • [x] Provide migation tool using command line

ui

  • [x] Provide a signature editor in Devstudio/source code edition in Builder
  • [x] Mark current signature macros as deprecated in Devstudio editor (in syntax coloration file)
  • [x] Update ghost editor in Builder to use the signature editor
  • [x] Provide migation tool in DevStudio
  • [x] Remove signature code insertion from right-click in DevStudio

tests

  • [x] Update the organisation of testing wares sources
  • [x] Update CMake functions to build testing wares

doc

  • [ ] Update development part in Doxygen documentation

jctophefabre avatar May 27 '21 14:05 jctophefabre