LC/MS support in ChemSpectra#264
Draft
Nicolass67 wants to merge 33 commits intomasterfrom
Draft
Conversation
This reverts commit 61c5d7c.
…poser, update dependencies to Flask 2.x and Gunicorn 22.x, and remove obsolete LCMS files. Introduce new chemotion converter profiles for LCMS.
Co-authored-by: Cursor <cursoragent@cursor.com>
…S image generation from peak.jdx files
…e ZIP responses with JCAMP and images
…t helper functions in share.py for improved filename handling
…ms functions, and clean up related code in chemotion_converter_lcms.py to streamline LCMS processing.
…improve retention of retention time source
…params functions, and implement data extraction for MS peaks in chemotion_converter_lcms.py to enhance LCMS processing.
…by refining active MS threshold handling and implementing conditional coloring for MS peaks based on the threshold. Default to 5% when the threshold is missing or uninitialized.
…upport for lcms_mz_page header extraction and conditional inclusion in JCAMP output.
… requests and refresh logic, enhancing data integrity checks and file reading methods. Update TransformerModel to ensure robust filename handling when retrieving JCAMP files.
…ra. Consolidate LCMS response building into dedicated helper functions, streamline parameter extraction, and enhance file handling for improved data integrity. Update configuration settings and remove unused code to optimize performance.
…Update to_zip_flat_bagit_response for single-level zips, enhancing file naming conventions and entry stem management. Adjust tests to reflect changes in UV/Vis handling within LCMS composer path.
…SConverterAppComposer for improved file response generation. Update TransformerModel to utilize build_lcms_composer for LC/MS file processing, ensuring robust handling of various data types. Refactor LCMSConverterAppComposer to include tf_csv method and optimize image preview logic.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What this feature does
ChemSpectra can now process LC/MS data from OpenLab and ChemStation JCAMP exports (typical
.jdxworkflows from those stacks). The backend reads the.jdxfiles, builds previews and structured output for the UI.User-facing behaviour
Upload formats:
bagit.txtand spectra underdata/)..jdxfiles: same JCAMPs packaged without BagIt - either at the root of the zip or in one top-level folder (typical export layout).When LC/MS processing fails:
Technical scope (short)
Per-file JCAMP typing (MS / NI / LC/MS) drives routing. LC/MS files are merged through a dedicated composer and preview path; combined “multi-curve” images follow the same rules as for other BagIt content (LC/MS composers are excluded where needed).
LCMS-related request parameters (e.g. wavelength / mz page) are passed through in a clear, isolated way for the UI and processing.