CoreMS 3.1.0__tar.gz → 4.0.0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {CoreMS-3.1.0 → corems-4.0.0/CoreMS.egg-info}/PKG-INFO +153 -65
- {CoreMS-3.1.0 → corems-4.0.0}/CoreMS.egg-info/SOURCES.txt +38 -1
- corems-4.0.0/CoreMS.egg-info/requires.txt +40 -0
- corems-4.0.0/CoreMS.egg-info/top_level.txt +7 -0
- corems-4.0.0/Dockerfile +37 -0
- {CoreMS-3.1.0 → corems-4.0.0}/MANIFEST.in +1 -1
- CoreMS-3.1.0/README.md → corems-4.0.0/PKG-INFO +163 -59
- CoreMS-3.1.0/CoreMS.egg-info/PKG-INFO → corems-4.0.0/README.md +103 -75
- {CoreMS-3.1.0 → corems-4.0.0}/corems/__init__.py +17 -14
- {CoreMS-3.1.0 → corems-4.0.0}/corems/chroma_peak/calc/ChromaPeakCalc.py +227 -7
- corems-4.0.0/corems/chroma_peak/calc/subset.py +196 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/chroma_peak/factory/chroma_peak_classes.py +481 -129
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/factory/parameters.py +50 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/factory/processingSetting.py +332 -43
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/input/parameter_from_json.py +83 -3
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/output/parameter_to_dict.py +31 -2
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/output/parameter_to_json.py +71 -0
- corems-4.0.0/corems/mass_spectra/calc/lc_calc.py +5790 -0
- corems-4.0.0/corems/mass_spectra/calc/lc_calc_operations.py +1127 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/factory/GC_Class.py +16 -4
- corems-4.0.0/corems/mass_spectra/factory/lc_class.py +2721 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/input/brukerSolarix.py +11 -12
- corems-4.0.0/corems/mass_spectra/input/brukerSolarix_utils.py +73 -0
- corems-4.0.0/corems/mass_spectra/input/corems_hdf5.py +1710 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/input/mzml.py +265 -68
- corems-4.0.0/corems/mass_spectra/input/parserbase.py +239 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/input/rawFileReader.py +541 -48
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/output/export.py +1210 -195
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/AutoRecalibration.py +6 -3
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/Calibration.py +120 -79
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/MassErrorPrediction.py +2 -2
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/MassSpectrumCalc.py +90 -11
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/MeanResolvingPowerFilter.py +13 -2
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/NoiseCalc.py +24 -18
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/factory/MassSpectrumClasses.py +23 -8
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/input/baseClass.py +11 -4
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/input/coremsHDF5.py +32 -9
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/input/massList.py +46 -28
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/output/export.py +35 -17
- corems-4.0.0/corems/molecular_id/data/FAMES_REF.msp +980 -0
- corems-4.0.0/corems/molecular_id/data/PNNLMetV20191015.msp +157267 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/factory/EI_SQL.py +16 -3
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/factory/MolecularLookupTable.py +14 -9
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/factory/classification.py +121 -40
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/factory/lipid_molecular_metadata.py +15 -10
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/factory/molecularSQL.py +3 -5
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/factory/spectrum_search_results.py +3 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/search/compoundSearch.py +2 -3
- corems-4.0.0/corems/molecular_id/search/database_interfaces.py +1527 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/search/lcms_spectral_search.py +47 -9
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/search/molecularFormulaSearch.py +326 -170
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/search/priorityAssignment.py +20 -18
- {CoreMS-3.1.0 → corems-4.0.0}/corems/ms_peak/calc/MSPeakCalc.py +5 -2
- {CoreMS-3.1.0 → corems-4.0.0}/corems/ms_peak/factory/MSPeakClasses.py +54 -5
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/calc/TransientCalc.py +4 -1
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/input/brukerSolarix.py +9 -21
- corems-4.0.0/examples/archive/scripts/CoreMS_tutorial.py +94 -0
- corems-4.0.0/examples/archive/scripts/DI HR-MS Halogens Bruker.py +196 -0
- corems-4.0.0/examples/archive/scripts/DI HR-MS MassList.py +385 -0
- corems-4.0.0/examples/archive/scripts/GC-MS MetabRef.py +213 -0
- corems-4.0.0/examples/archive/scripts/GC-MS NetCDF.py +217 -0
- corems-4.0.0/examples/archive/scripts/HR-MS Thermo Raw 21T.py +136 -0
- corems-4.0.0/examples/archive/scripts/LC-ICPMS_metal_peaks.py +297 -0
- corems-4.0.0/examples/archive/scripts/LCMS-Thermo.py +460 -0
- corems-4.0.0/examples/archive/scripts/LCMS_isotopes.py +283 -0
- corems-4.0.0/examples/archive/scripts/MSParams_example.py +21 -0
- corems-4.0.0/examples/archive/scripts/Molecular Formula Data Aggreation.py +84 -0
- corems-4.0.0/examples/archive/scripts/Single Mz Search.py +69 -0
- corems-4.0.0/examples/test_notebooks.py +145 -0
- corems-4.0.0/pyproject.toml +98 -0
- corems-4.0.0/setup.py +7 -0
- corems-4.0.0/support_code/atom_parsers/AtomsDescription.py +359 -0
- corems-4.0.0/support_code/atom_parsers/CreateAtomsDescription.py +56 -0
- corems-4.0.0/support_code/nmdc/filefinder.py +90 -0
- corems-4.0.0/support_code/nmdc/lipidomics/lipidomics_workflow.py +748 -0
- corems-4.0.0/support_code/nmdc/lipidomics/manifest_examples.py +49 -0
- corems-4.0.0/support_code/nmdc/metabolomics/gcms_workflow.py +158 -0
- corems-4.0.0/support_code/nmdc/metabolomics/lcms_metabolomics_targeted_search.py +59 -0
- corems-4.0.0/support_code/nmdc/metabolomics/lcms_metabolomics_workflow.py +248 -0
- corems-4.0.0/support_code/nmdc/metabolomics/metabolomics_collection.py +628 -0
- corems-4.0.0/support_code/nmdc/metadata/dms_api.py +42 -0
- corems-4.0.0/support_code/nmdc/nom/archived_scripts/nmdc_metadata_gen.py +288 -0
- corems-4.0.0/support_code/nmdc/nom/archived_scripts/nom_grow_workflow.py +209 -0
- corems-4.0.0/support_code/nmdc/nom/nom_workflow.py +312 -0
- corems-4.0.0/support_code/windows_only_importers/BrukerCompassXtract.py +180 -0
- corems-4.0.0/support_code/windows_only_importers/ThermoMSFileReader.py +405 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_calibration.py +7 -4
- corems-4.0.0/tests/test_classification.py +135 -0
- corems-4.0.0/tests/test_gcms.py +103 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_input.py +68 -0
- corems-4.0.0/tests/test_lcms_collection.py +853 -0
- corems-4.0.0/tests/test_lcms_metabolomics.py +297 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_mass_spectrum_export_import.py +7 -2
- corems-4.0.0/tests/test_molecular_formula_db_factory.py +42 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_molecular_formula_search.py +18 -11
- corems-4.0.0/tests/test_noise_calc.py +92 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_search_mass_list.py +6 -2
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_setting_settings.py +26 -0
- corems-4.0.0/tests/test_time_range_filtering.py +312 -0
- corems-4.0.0/tests/test_wf_lipidomics.py +232 -0
- CoreMS-3.1.0/CoreMS.egg-info/requires.txt +0 -25
- CoreMS-3.1.0/CoreMS.egg-info/top_level.txt +0 -2
- CoreMS-3.1.0/Dockerfile +0 -30
- CoreMS-3.1.0/corems/mass_spectra/calc/lc_calc.py +0 -1422
- CoreMS-3.1.0/corems/mass_spectra/factory/lc_class.py +0 -1118
- CoreMS-3.1.0/corems/mass_spectra/input/corems_hdf5.py +0 -530
- CoreMS-3.1.0/corems/mass_spectra/input/parserbase.py +0 -66
- CoreMS-3.1.0/corems/molecular_id/search/database_interfaces.py +0 -837
- CoreMS-3.1.0/requirements.txt +0 -25
- CoreMS-3.1.0/setup.py +0 -42
- CoreMS-3.1.0/tests/test_classification.py +0 -39
- CoreMS-3.1.0/tests/test_gcms.py +0 -131
- CoreMS-3.1.0/tests/test_molecular_formula_db_factory.py +0 -32
- CoreMS-3.1.0/tests/test_wf_lipidomics.py +0 -268
- {CoreMS-3.1.0 → corems-4.0.0}/CoreMS.egg-info/dependency_links.txt +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/LICENSE +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/chroma_peak/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/chroma_peak/calc/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/chroma_peak/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/constant.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/input/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/encapsulation/output/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/calc/GC_Calc.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/calc/GC_Deconvolution.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/calc/GC_RI_Calibration.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/calc/MZSearch.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/calc/SignalProcessing.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/calc/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/factory/chromat_data.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/input/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/input/andiNetCDF.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/input/boosterHDF5.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/input/massList.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectra/output/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/CalibrationCalc.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/KendrickGroup.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/NoiseCalc_Bayes.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/PeakPicking.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/calc/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/input/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/input/boosterHDF5.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/input/numpyArray.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/mass_spectrum/output/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_formula/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_formula/calc/MolecularFormulaCalc.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_formula/calc/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_formula/factory/MolecularFormulaFactory.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_formula/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_formula/input/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_formula/input/masslist_ref.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/calc/ClusterFilter.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/calc/MolecularFilter.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/calc/SpectralSimilarity.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/calc/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/calc/math_distance.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/input/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/input/nistMSI.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/search/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/molecular_id/search/findOxygenPeaks.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/ms_peak/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/ms_peak/calc/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/ms_peak/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/calc/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/factory/TransientClasses.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/factory/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/input/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/corems/transient/input/midasDatFile.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/disclaimer.txt +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ChemstationMSFileReader.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ChemstationMSFileReader.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/RawFileReaderLicense.doc +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.BackgroundSubtraction.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.BackgroundSubtraction.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.Data.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.Data.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.MassPrecisionEstimator.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.MassPrecisionEstimator.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.RawFileReader.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/ThermoFisher.CommonCore.RawFileReader.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/__init__.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/OpenMcdf.Extensions.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/OpenMcdf.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/OpenMcdf.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/System.IO.FileSystem.AccessControl.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/System.IO.FileSystem.AccessControl.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/System.Security.AccessControl.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/System.Security.AccessControl.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/System.Security.Principal.Windows.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/System.Security.Principal.Windows.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.BackgroundSubtraction.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.Data.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.Data.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.dll +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.xml +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/ext_lib/version +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/setup.cfg +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_mass_spectrum.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_molecular_formula.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_mspeak.py +0 -0
- {CoreMS-3.1.0 → corems-4.0.0}/tests/test_output.py +0 -0
|
@@ -1,18 +1,62 @@
|
|
|
1
|
-
Metadata-Version: 2.
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
2
|
Name: CoreMS
|
|
3
|
-
Version:
|
|
3
|
+
Version: 4.0.0
|
|
4
4
|
Summary: Mass Spectrometry Framework for Small Molecules Analysis
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
Author-email: "Corilo, Yuri" <corilo@pnnl.gov>
|
|
6
|
+
License: BSD
|
|
7
|
+
Project-URL: Homepage, https://github.com/EMSL-Computing/CoreMS
|
|
8
|
+
Project-URL: Repository, https://github.com/EMSL-Computing/CoreMS
|
|
9
|
+
Project-URL: Issues, https://github.com/EMSL-Computing/CoreMS/issues
|
|
8
10
|
Classifier: License :: OSI Approved :: BSD License
|
|
9
|
-
Classifier: Programming Language :: Python :: 3.8
|
|
10
11
|
Classifier: Programming Language :: Python :: 3.9
|
|
11
12
|
Classifier: Programming Language :: Python :: 3.10
|
|
12
13
|
Classifier: Programming Language :: Python :: 3.11
|
|
14
|
+
Classifier: Programming Language :: Python :: 3.12
|
|
15
|
+
Classifier: Programming Language :: Python :: 3.13
|
|
13
16
|
Classifier: Development Status :: 4 - Beta
|
|
17
|
+
Requires-Python: >=3.10
|
|
14
18
|
Description-Content-Type: text/markdown
|
|
15
19
|
License-File: LICENSE
|
|
20
|
+
Requires-Dist: beautifulsoup4>=4.12.3
|
|
21
|
+
Requires-Dist: chardet>=5.2.0
|
|
22
|
+
Requires-Dist: h5py>=3.13.0
|
|
23
|
+
Requires-Dist: IsoSpecPy>=2.2.2
|
|
24
|
+
Requires-Dist: lmfit>=1.3.0
|
|
25
|
+
Requires-Dist: lxml>=5.2.0
|
|
26
|
+
Requires-Dist: matplotlib>=3.9.0
|
|
27
|
+
Requires-Dist: ms-entropy>=1.2.2
|
|
28
|
+
Requires-Dist: netCDF4>=1.7.0
|
|
29
|
+
Requires-Dist: numpy>=2.1.0
|
|
30
|
+
Requires-Dist: openpyxl>=3.1.2
|
|
31
|
+
Requires-Dist: pandas>=2.2.2
|
|
32
|
+
Requires-Dist: psycopg2-binary>=2.9.10
|
|
33
|
+
Requires-Dist: pyswarm>=0.6
|
|
34
|
+
Requires-Dist: pythonnet>=3.0.3
|
|
35
|
+
Requires-Dist: pymzml>=2.5.11
|
|
36
|
+
Requires-Dist: requests>=2.32.0
|
|
37
|
+
Requires-Dist: ripser>=0.6.4
|
|
38
|
+
Requires-Dist: s3path>=0.5.0
|
|
39
|
+
Requires-Dist: scikit_learn>=1.5.0
|
|
40
|
+
Requires-Dist: scipy>=1.14.0
|
|
41
|
+
Requires-Dist: seaborn>=0.13.2
|
|
42
|
+
Requires-Dist: setuptools>=72.0.0
|
|
43
|
+
Requires-Dist: SQLAlchemy>=2.0.0
|
|
44
|
+
Requires-Dist: packaging>=23.0
|
|
45
|
+
Requires-Dist: toml>=0.10.2
|
|
46
|
+
Requires-Dist: tqdm>=4.66.0
|
|
47
|
+
Provides-Extra: dev
|
|
48
|
+
Requires-Dist: pylint; extra == "dev"
|
|
49
|
+
Requires-Dist: pytest>=8.3.2; extra == "dev"
|
|
50
|
+
Requires-Dist: pytest-cov>=5.0.0; extra == "dev"
|
|
51
|
+
Requires-Dist: pytest-xdist>=3.6.1; extra == "dev"
|
|
52
|
+
Requires-Dist: pyprof2calltree; extra == "dev"
|
|
53
|
+
Requires-Dist: memory_profiler; extra == "dev"
|
|
54
|
+
Requires-Dist: twine; extra == "dev"
|
|
55
|
+
Requires-Dist: bump2version; extra == "dev"
|
|
56
|
+
Requires-Dist: psutil>=5.6.6; extra == "dev"
|
|
57
|
+
Requires-Dist: PyWavelets; extra == "dev"
|
|
58
|
+
Requires-Dist: pdoc>=14.1.0; extra == "dev"
|
|
59
|
+
Dynamic: license-file
|
|
16
60
|
|
|
17
61
|

|
|
18
62
|
|
|
@@ -20,7 +64,10 @@ License-File: LICENSE
|
|
|
20
64
|
|
|
21
65
|
<br>
|
|
22
66
|
<br>
|
|
23
|
-
<a href="https://doi.org/10.5281/zenodo.
|
|
67
|
+
<a href="https://doi.org/10.5281/zenodo.4641552"><img src="https://zenodo.org/badge/DOI/10.5281/zenodo.4641552.svg" alt="DOI"></a>
|
|
68
|
+
<a href="https://github.com/EMSL-Computing/CoreMS/actions/workflows/ci.yml"><img src="https://github.com/EMSL-Computing/CoreMS/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
|
|
69
|
+
<a href="https://pypi.org/project/CoreMS/"><img src="https://img.shields.io/pypi/v/CoreMS.svg" alt="PyPI"></a>
|
|
70
|
+
<a href="https://pypi.org/project/CoreMS/"><img src="https://img.shields.io/pypi/pyversions/CoreMS.svg" alt="Python versions"></a>
|
|
24
71
|
<br>
|
|
25
72
|
</div>
|
|
26
73
|
|
|
@@ -39,9 +86,8 @@ License-File: LICENSE
|
|
|
39
86
|
- [Installation](#corems-installation)
|
|
40
87
|
- [Thermo Raw File on Mac and Linux](#thermo-raw-file-access)
|
|
41
88
|
- Execution
|
|
42
|
-
- [
|
|
89
|
+
- [Building and Running the Docker Image](#docker-image)
|
|
43
90
|
- [Example for FT-ICR Data Processing](#simple-script-example)
|
|
44
|
-
- [Python Examples](examples/scripts)
|
|
45
91
|
- [Jupyter Notebook Examples](examples/notebooks)
|
|
46
92
|
- Sibling Projects
|
|
47
93
|
- [EnviroMS](https://github.com/EMSL-Computing/EnviroMS)
|
|
@@ -65,7 +111,7 @@ CoreMS aims to provide
|
|
|
65
111
|
|
|
66
112
|
## Current Version
|
|
67
113
|
|
|
68
|
-
`
|
|
114
|
+
`4.0.0`
|
|
69
115
|
|
|
70
116
|
***
|
|
71
117
|
|
|
@@ -167,6 +213,7 @@ As an open source project, CoreMS welcomes contributions of all forms. Before co
|
|
|
167
213
|
- Calculated ICR Resolving Power based on magnetic field (B), and transient time(T)
|
|
168
214
|
|
|
169
215
|
### LC-MS Signal Processing, Molecular Formula Search and Assignment, and Spectral Similarity Searches
|
|
216
|
+
See walkthrough in [this notebook](examples/notebooks/LCMS_Tutorial.ipynb)
|
|
170
217
|
- Two dimensional (m/z and retention time) peak picking using persistent homology
|
|
171
218
|
- Smoothing, cetroid detection, and integration of extracted ion chromatograms
|
|
172
219
|
- Peak shape metric calculations including half peak height, tailing factor, and dispersity index
|
|
@@ -183,16 +230,24 @@ As an open source project, CoreMS welcomes contributions of all forms. Before co
|
|
|
183
230
|
pip install corems
|
|
184
231
|
```
|
|
185
232
|
|
|
186
|
-
|
|
233
|
+
Corems requires **Python 3.9 or later** (including Python 3.13) and is compatible with **NumPy 2.x**, **pandas 2.x**, and **SQLAlchemy 2.x**.
|
|
187
234
|
|
|
188
|
-
To
|
|
235
|
+
To install with development and testing extras:
|
|
236
|
+
|
|
237
|
+
```bash
|
|
238
|
+
pip install "corems[dev]"
|
|
239
|
+
```
|
|
240
|
+
|
|
241
|
+
By default the molecular formula database will be generated using SQLite.
|
|
242
|
+
|
|
243
|
+
To use PostgreSQL the easiest way is to build a docker container:
|
|
189
244
|
|
|
190
245
|
```bash
|
|
191
246
|
docker-compose up -d
|
|
192
247
|
```
|
|
193
248
|
|
|
194
|
-
-
|
|
195
|
-
-
|
|
249
|
+
- Change the url_database on `MSParameters.molecular_search.url_database` to: `"postgresql+psycopg2://coremsappdb:coremsapppnnl@localhost:5432/coremsapp"`
|
|
250
|
+
- Set the env variable `COREMS_DATABASE_URL` to: `"postgresql+psycopg2://coremsappdb:coremsapppnnl@localhost:5432/coremsapp"`
|
|
196
251
|
|
|
197
252
|
### Thermo Raw File Access:
|
|
198
253
|
|
|
@@ -210,66 +265,103 @@ To be able to open thermo file a installation of pythonnet is needed:
|
|
|
210
265
|
|
|
211
266
|
***
|
|
212
267
|
|
|
213
|
-
## Docker
|
|
268
|
+
## Building and Running the CoreMS Docker Image <a name="docker-image"></a>
|
|
214
269
|
|
|
215
|
-
|
|
270
|
+
CoreMS provides a Dockerfile that packages the entire application (including .NET 8 runtime for Thermo .raw file support) into a self-contained image. This is useful for running CoreMS in a reproducible environment without installing dependencies on your host system.
|
|
216
271
|
|
|
217
|
-
###
|
|
272
|
+
### Prerequisites
|
|
273
|
+
- Docker installed and running on your system.
|
|
274
|
+
- The CoreMS repository cloned locally.
|
|
275
|
+
- Navigate to the root of the CoreMS repository before running any commands.
|
|
218
276
|
|
|
219
|
-
|
|
220
|
-
- A custom python distribution will all dependencies installed
|
|
221
|
-
- A Jupyter notebook server with workflow examples
|
|
222
|
-
- A PostgreSQL database for the molecular formulae assignment
|
|
277
|
+
### Building the Docker Image
|
|
223
278
|
|
|
224
|
-
|
|
279
|
+
The Makefile provides convenience targets for building the image. The image is tagged with the current version from `.bumpversion.cfg`.
|
|
225
280
|
|
|
226
|
-
|
|
281
|
+
**On Linux/Windows (standard build):**
|
|
282
|
+
```bash
|
|
283
|
+
make build-image-local
|
|
284
|
+
```
|
|
227
285
|
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
286
|
+
**On macOS (cross-platform build for linux/amd64):**
|
|
287
|
+
```bash
|
|
288
|
+
make build-image-mac-local
|
|
289
|
+
```
|
|
231
290
|
|
|
232
|
-
|
|
233
|
-
volumes:
|
|
234
|
-
- ./tests/tests_data:/home/CoreMS/data
|
|
235
|
-
```
|
|
236
|
-
- change "./tests/tests_data" to your data directory location
|
|
291
|
+
This runs `docker build` with the `--platform linux/amd64` flag, which is necessary when building on Apple Silicon (M1/M2/M3) Macs to ensure compatibility.
|
|
237
292
|
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
244
|
-
```bash
|
|
245
|
-
docker-compose -f docker-compose-jupyter.yml up
|
|
246
|
-
```
|
|
293
|
+
Alternatively, you can build manually with:
|
|
294
|
+
```bash
|
|
295
|
+
docker build -t corems:<version> .
|
|
296
|
+
```
|
|
297
|
+
Replace `<version>` with your desired tag (e.g., `4.0.0`).
|
|
247
298
|
|
|
248
|
-
|
|
249
|
-
|
|
250
|
-
- Build the corems image:
|
|
251
|
-
```bash
|
|
252
|
-
docker build -t corems:local .
|
|
253
|
-
```
|
|
254
|
-
- Start the database container:
|
|
255
|
-
```bash
|
|
256
|
-
docker-compose up -d
|
|
257
|
-
```
|
|
258
|
-
- Start the Jupyter Notebook:
|
|
259
|
-
```bash
|
|
260
|
-
docker run --rm -v ./data:/home/CoreMS/data corems:local
|
|
261
|
-
```
|
|
262
|
-
|
|
263
|
-
- Open your browser, copy and past the URL address provided in the terminal: `http://localhost:8888/?token=<token>.`
|
|
299
|
+
### What the Dockerfile Does
|
|
264
300
|
|
|
265
|
-
|
|
301
|
+
The Dockerfile performs the following steps:
|
|
302
|
+
1. Starts from a `python:3.13-slim` base image.
|
|
303
|
+
2. Installs the .NET 8 runtime (required for Thermo .raw file support via PythonNET).
|
|
304
|
+
3. Copies the CoreMS source code into the image.
|
|
305
|
+
4. Installs CoreMS and all its dependencies via `pip install .`.
|
|
306
|
+
5. Installs `pytest-xdist` and `pytest-cov` for running tests.
|
|
307
|
+
6. Removes build-time dependencies (gcc, python3-dev) to keep the image lean.
|
|
266
308
|
|
|
309
|
+
### Running the Docker Image
|
|
310
|
+
|
|
311
|
+
**On Linux/Windows:**
|
|
312
|
+
```bash
|
|
313
|
+
make image-run-local
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
**On macOS:**
|
|
317
|
+
```bash
|
|
318
|
+
make image-run-mac-local
|
|
319
|
+
```
|
|
320
|
+
|
|
321
|
+
This launches an interactive bash shell inside the container:
|
|
322
|
+
```bash
|
|
323
|
+
docker run -it corems:<version>
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
From within the container, you can import and use CoreMS directly:
|
|
327
|
+
```python
|
|
328
|
+
python3 -c "import corems; print(corems.__version__)"
|
|
329
|
+
```
|
|
330
|
+
|
|
331
|
+
### Mounting Data into the Container
|
|
332
|
+
|
|
333
|
+
To process your own data files, mount a local directory into the container:
|
|
334
|
+
```bash
|
|
335
|
+
docker run -it -v /path/to/your/data:/data corilo/corems:<version>
|
|
336
|
+
```
|
|
337
|
+
Your files will then be accessible at `/data` inside the container.
|
|
338
|
+
|
|
339
|
+
### Managing the PostgreSQL Database with Docker Compose
|
|
340
|
+
|
|
341
|
+
The `docker-compose.yml` file defines a PostgreSQL database service for CoreMS. The Makefile provides targets to manage it:
|
|
342
|
+
|
|
343
|
+
**Start the database:**
|
|
344
|
+
```bash
|
|
345
|
+
make db-up
|
|
346
|
+
```
|
|
347
|
+
|
|
348
|
+
**Stop the database:**
|
|
349
|
+
```bash
|
|
350
|
+
make db-down
|
|
351
|
+
```
|
|
352
|
+
|
|
353
|
+
**View database logs:**
|
|
354
|
+
```bash
|
|
355
|
+
make db-logs
|
|
356
|
+
```
|
|
357
|
+
|
|
358
|
+
These are equivalent to running `docker-compose up -d`, `docker-compose down`, and `docker-compose logs -f` respectively.
|
|
267
359
|
|
|
268
360
|
***
|
|
269
361
|
|
|
270
362
|
## Example for FT-ICR Data Processing
|
|
271
363
|
|
|
272
|
-
More examples can be found
|
|
364
|
+
More examples can be found in the [examples/notebooks](examples/notebooks) directory
|
|
273
365
|
|
|
274
366
|
- Basic functionality example
|
|
275
367
|
|
|
@@ -349,15 +441,11 @@ UML (unified modeling language) diagrams for Direct Infusion FT-MS and GC-MS cla
|
|
|
349
441
|
|
|
350
442
|
## Citing CoreMS
|
|
351
443
|
|
|
352
|
-
If you use CoreMS in your work, please
|
|
444
|
+
If you use CoreMS in your work, please cite the archived release on Zenodo. The badge below is the *concept DOI* — it always resolves to the latest archived release, and each archived release also has its own version-specific DOI listed on that page.
|
|
353
445
|
|
|
354
|
-
|
|
446
|
+
[](https://doi.org/10.5281/zenodo.4641552)
|
|
355
447
|
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
Yuri E. Corilo, William R. Kew, Lee Ann McCue, Katherine R . Heal, James C. Carr (2024, October 29). EMSL-Computing/CoreMS: CoreMS 3.1.0 (Version v3.1.0), as developed on Github. Zenodo. http://doi.org/10.5281/zenodo.14009575
|
|
359
|
-
|
|
360
|
-
```
|
|
448
|
+
For citation metadata (BibTeX, RIS, etc.), use the "Cite this repository" button on the GitHub sidebar, click "Export" on the Zenodo page above, or see [`CITATION.cff`](CITATION.cff) in the repository root.
|
|
361
449
|
|
|
362
450
|
***
|
|
363
451
|
|
|
@@ -3,7 +3,7 @@ LICENSE
|
|
|
3
3
|
MANIFEST.in
|
|
4
4
|
README.md
|
|
5
5
|
disclaimer.txt
|
|
6
|
-
|
|
6
|
+
pyproject.toml
|
|
7
7
|
setup.py
|
|
8
8
|
CoreMS.egg-info/PKG-INFO
|
|
9
9
|
CoreMS.egg-info/SOURCES.txt
|
|
@@ -14,6 +14,7 @@ corems/__init__.py
|
|
|
14
14
|
corems/chroma_peak/__init__.py
|
|
15
15
|
corems/chroma_peak/calc/ChromaPeakCalc.py
|
|
16
16
|
corems/chroma_peak/calc/__init__.py
|
|
17
|
+
corems/chroma_peak/calc/subset.py
|
|
17
18
|
corems/chroma_peak/factory/__init__.py
|
|
18
19
|
corems/chroma_peak/factory/chroma_peak_classes.py
|
|
19
20
|
corems/encapsulation/__init__.py
|
|
@@ -34,6 +35,7 @@ corems/mass_spectra/calc/MZSearch.py
|
|
|
34
35
|
corems/mass_spectra/calc/SignalProcessing.py
|
|
35
36
|
corems/mass_spectra/calc/__init__.py
|
|
36
37
|
corems/mass_spectra/calc/lc_calc.py
|
|
38
|
+
corems/mass_spectra/calc/lc_calc_operations.py
|
|
37
39
|
corems/mass_spectra/factory/GC_Class.py
|
|
38
40
|
corems/mass_spectra/factory/__init__.py
|
|
39
41
|
corems/mass_spectra/factory/chromat_data.py
|
|
@@ -42,6 +44,7 @@ corems/mass_spectra/input/__init__.py
|
|
|
42
44
|
corems/mass_spectra/input/andiNetCDF.py
|
|
43
45
|
corems/mass_spectra/input/boosterHDF5.py
|
|
44
46
|
corems/mass_spectra/input/brukerSolarix.py
|
|
47
|
+
corems/mass_spectra/input/brukerSolarix_utils.py
|
|
45
48
|
corems/mass_spectra/input/corems_hdf5.py
|
|
46
49
|
corems/mass_spectra/input/massList.py
|
|
47
50
|
corems/mass_spectra/input/mzml.py
|
|
@@ -84,6 +87,8 @@ corems/molecular_id/calc/MolecularFilter.py
|
|
|
84
87
|
corems/molecular_id/calc/SpectralSimilarity.py
|
|
85
88
|
corems/molecular_id/calc/__init__.py
|
|
86
89
|
corems/molecular_id/calc/math_distance.py
|
|
90
|
+
corems/molecular_id/data/FAMES_REF.msp
|
|
91
|
+
corems/molecular_id/data/PNNLMetV20191015.msp
|
|
87
92
|
corems/molecular_id/factory/EI_SQL.py
|
|
88
93
|
corems/molecular_id/factory/MolecularLookupTable.py
|
|
89
94
|
corems/molecular_id/factory/__init__.py
|
|
@@ -113,6 +118,19 @@ corems/transient/factory/__init__.py
|
|
|
113
118
|
corems/transient/input/__init__.py
|
|
114
119
|
corems/transient/input/brukerSolarix.py
|
|
115
120
|
corems/transient/input/midasDatFile.py
|
|
121
|
+
examples/test_notebooks.py
|
|
122
|
+
examples/archive/scripts/CoreMS_tutorial.py
|
|
123
|
+
examples/archive/scripts/DI HR-MS Halogens Bruker.py
|
|
124
|
+
examples/archive/scripts/DI HR-MS MassList.py
|
|
125
|
+
examples/archive/scripts/GC-MS MetabRef.py
|
|
126
|
+
examples/archive/scripts/GC-MS NetCDF.py
|
|
127
|
+
examples/archive/scripts/HR-MS Thermo Raw 21T.py
|
|
128
|
+
examples/archive/scripts/LC-ICPMS_metal_peaks.py
|
|
129
|
+
examples/archive/scripts/LCMS-Thermo.py
|
|
130
|
+
examples/archive/scripts/LCMS_isotopes.py
|
|
131
|
+
examples/archive/scripts/MSParams_example.py
|
|
132
|
+
examples/archive/scripts/Molecular Formula Data Aggreation.py
|
|
133
|
+
examples/archive/scripts/Single Mz Search.py
|
|
116
134
|
ext_lib/ChemstationMSFileReader.dll
|
|
117
135
|
ext_lib/ChemstationMSFileReader.xml
|
|
118
136
|
ext_lib/RawFileReaderLicense.doc
|
|
@@ -143,17 +161,36 @@ ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.dll
|
|
|
143
161
|
ext_lib/dotnet/ThermoFisher.CommonCore.MassPrecisionEstimator.xml
|
|
144
162
|
ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.dll
|
|
145
163
|
ext_lib/dotnet/ThermoFisher.CommonCore.RawFileReader.xml
|
|
164
|
+
support_code/atom_parsers/AtomsDescription.py
|
|
165
|
+
support_code/atom_parsers/CreateAtomsDescription.py
|
|
166
|
+
support_code/nmdc/filefinder.py
|
|
167
|
+
support_code/nmdc/lipidomics/lipidomics_workflow.py
|
|
168
|
+
support_code/nmdc/lipidomics/manifest_examples.py
|
|
169
|
+
support_code/nmdc/metabolomics/gcms_workflow.py
|
|
170
|
+
support_code/nmdc/metabolomics/lcms_metabolomics_targeted_search.py
|
|
171
|
+
support_code/nmdc/metabolomics/lcms_metabolomics_workflow.py
|
|
172
|
+
support_code/nmdc/metabolomics/metabolomics_collection.py
|
|
173
|
+
support_code/nmdc/metadata/dms_api.py
|
|
174
|
+
support_code/nmdc/nom/nom_workflow.py
|
|
175
|
+
support_code/nmdc/nom/archived_scripts/nmdc_metadata_gen.py
|
|
176
|
+
support_code/nmdc/nom/archived_scripts/nom_grow_workflow.py
|
|
177
|
+
support_code/windows_only_importers/BrukerCompassXtract.py
|
|
178
|
+
support_code/windows_only_importers/ThermoMSFileReader.py
|
|
146
179
|
tests/test_calibration.py
|
|
147
180
|
tests/test_classification.py
|
|
148
181
|
tests/test_gcms.py
|
|
149
182
|
tests/test_input.py
|
|
183
|
+
tests/test_lcms_collection.py
|
|
184
|
+
tests/test_lcms_metabolomics.py
|
|
150
185
|
tests/test_mass_spectrum.py
|
|
151
186
|
tests/test_mass_spectrum_export_import.py
|
|
152
187
|
tests/test_molecular_formula.py
|
|
153
188
|
tests/test_molecular_formula_db_factory.py
|
|
154
189
|
tests/test_molecular_formula_search.py
|
|
155
190
|
tests/test_mspeak.py
|
|
191
|
+
tests/test_noise_calc.py
|
|
156
192
|
tests/test_output.py
|
|
157
193
|
tests/test_search_mass_list.py
|
|
158
194
|
tests/test_setting_settings.py
|
|
195
|
+
tests/test_time_range_filtering.py
|
|
159
196
|
tests/test_wf_lipidomics.py
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
beautifulsoup4>=4.12.3
|
|
2
|
+
chardet>=5.2.0
|
|
3
|
+
h5py>=3.13.0
|
|
4
|
+
IsoSpecPy>=2.2.2
|
|
5
|
+
lmfit>=1.3.0
|
|
6
|
+
lxml>=5.2.0
|
|
7
|
+
matplotlib>=3.9.0
|
|
8
|
+
ms-entropy>=1.2.2
|
|
9
|
+
netCDF4>=1.7.0
|
|
10
|
+
numpy>=2.1.0
|
|
11
|
+
openpyxl>=3.1.2
|
|
12
|
+
pandas>=2.2.2
|
|
13
|
+
psycopg2-binary>=2.9.10
|
|
14
|
+
pyswarm>=0.6
|
|
15
|
+
pythonnet>=3.0.3
|
|
16
|
+
pymzml>=2.5.11
|
|
17
|
+
requests>=2.32.0
|
|
18
|
+
ripser>=0.6.4
|
|
19
|
+
s3path>=0.5.0
|
|
20
|
+
scikit_learn>=1.5.0
|
|
21
|
+
scipy>=1.14.0
|
|
22
|
+
seaborn>=0.13.2
|
|
23
|
+
setuptools>=72.0.0
|
|
24
|
+
SQLAlchemy>=2.0.0
|
|
25
|
+
packaging>=23.0
|
|
26
|
+
toml>=0.10.2
|
|
27
|
+
tqdm>=4.66.0
|
|
28
|
+
|
|
29
|
+
[dev]
|
|
30
|
+
pylint
|
|
31
|
+
pytest>=8.3.2
|
|
32
|
+
pytest-cov>=5.0.0
|
|
33
|
+
pytest-xdist>=3.6.1
|
|
34
|
+
pyprof2calltree
|
|
35
|
+
memory_profiler
|
|
36
|
+
twine
|
|
37
|
+
bump2version
|
|
38
|
+
psutil>=5.6.6
|
|
39
|
+
PyWavelets
|
|
40
|
+
pdoc>=14.1.0
|
corems-4.0.0/Dockerfile
ADDED
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
FROM python:3.13-slim AS base
|
|
2
|
+
WORKDIR /home/corems
|
|
3
|
+
|
|
4
|
+
# Install .NET 8 runtime via official install script (avoids APT keyring SHA1 issue)
|
|
5
|
+
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
6
|
+
curl ca-certificates libssl3 libkrb5-3 zlib1g && \
|
|
7
|
+
curl -sSL https://dot.net/v1/dotnet-install.sh -o /tmp/dotnet-install.sh && \
|
|
8
|
+
chmod +x /tmp/dotnet-install.sh && \
|
|
9
|
+
/tmp/dotnet-install.sh --runtime dotnet --channel 8.0 --install-dir /usr/local/dotnet && \
|
|
10
|
+
rm /tmp/dotnet-install.sh && \
|
|
11
|
+
apt-get autoremove -y && apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
12
|
+
|
|
13
|
+
ENV DOTNET_ROOT=/usr/local/dotnet
|
|
14
|
+
ENV PATH="${PATH}:/usr/local/dotnet"
|
|
15
|
+
ENV PYTHONNET_RUNTIME=coreclr
|
|
16
|
+
ENV DOTNET_SYSTEM_GLOBALIZATION_INVARIANT=1
|
|
17
|
+
|
|
18
|
+
# Install the corems package (pyproject.toml defines all dependencies)
|
|
19
|
+
# gcc is needed to compile ms-entropy's Cython extension; purged afterwards to keep the image lean
|
|
20
|
+
COPY pyproject.toml README.md disclaimer.txt ./
|
|
21
|
+
COPY ./ ./
|
|
22
|
+
RUN apt-get update && apt-get install -y --no-install-recommends gcc python3-dev && \
|
|
23
|
+
python3 -m pip install --upgrade pip && \
|
|
24
|
+
python3 -m pip install --no-cache-dir . && \
|
|
25
|
+
python -m pip install pytest-xdist && \
|
|
26
|
+
python -m pip install pytest-cov && \
|
|
27
|
+
apt-get purge -y gcc python3-dev && apt-get autoremove -y && \
|
|
28
|
+
apt-get clean && rm -rf /var/lib/apt/lists/*
|
|
29
|
+
|
|
30
|
+
FROM base AS build
|
|
31
|
+
WORKDIR /home/corems
|
|
32
|
+
|
|
33
|
+
#COPY examples/notebooks/*.ipynb README.md ./
|
|
34
|
+
|
|
35
|
+
CMD ["/bin/bash"]
|
|
36
|
+
|
|
37
|
+
|