Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
160 commits
Select commit Hold shift + click to select a range
5ba93aa
Update config.py to use default_dict.py
ZacharyACohen Aug 20, 2025
0fdaf3f
Replace hardcoded Mass Tags with JSONs
ZacharyACohen Aug 20, 2025
87ad728
Add JMod GUI
ZacharyACohen Aug 21, 2025
a007983
Convert mass tag json compositions to mass.compositions
ZacharyACohen Aug 25, 2025
d96750a
Merge branch 'Jmod_logging' into Jmod_GUI
ZacharyACohen Aug 25, 2025
74a9af1
Merge Logging into GUI
ZacharyACohen Aug 25, 2025
e2e58dd
Merged Jmod_logging into Jmod_GUI
ZacharyACohen Aug 25, 2025
cacf052
Close plots and run matplotlib with AGG
ZacharyACohen Aug 26, 2025
28de915
Added Mass Tag Validation and Updated Mass Tags
ZacharyACohen Aug 27, 2025
bc7479a
Set up logger to work in TKinter, run main in thread
ZacharyACohen Aug 27, 2025
bb3a0e6
Log Errors and Show Popup in TK
ZacharyACohen Aug 27, 2025
11088d1
Partial Mass Tags in GUI and JSON tempfile
ZacharyACohen Sep 2, 2025
30fa17d
Deal with windows path length limit, add some logs
ZacharyACohen Sep 2, 2025
90a24e4
Add Subsets folder with .gitkeep placeholder
ZacharyACohen Sep 2, 2025
8bd14da
Change tag6 to PSMtag
ZacharyACohen Sep 3, 2025
a5055c4
Extra check for long paths at GUI run
ZacharyACohen Sep 3, 2025
03b7955
Added GUI params, disable run button during search
ZacharyACohen Sep 4, 2025
1df42b5
Declutter Ident Log Output
ZacharyACohen Sep 5, 2025
e9c236f
Add JSON Presets for config
ZacharyACohen Sep 5, 2025
ed45737
Bug Fix, make parameters update on JSON load
ZacharyACohen Sep 16, 2025
da4cf13
Various speedup code in progress
ZacharyACohen Sep 26, 2025
478c833
Pull Current Main into Jmod_Logging
ZacharyACohen Sep 26, 2025
1678cc9
Pull Merged Jmod Logging and Main Updates into Jmod GUI
ZacharyACohen Sep 26, 2025
b598377
Add PSMtag_5plex_1Da
ZacharyACohen Sep 26, 2025
3b9c7f5
Replace base Python with numpy call in spectral_fitting.fit_to_lib, ~…
danielgeiszler Oct 1, 2025
2070791
Replace another base Python with numpy call in spectral_fitting.fit_t…
danielgeiszler Oct 1, 2025
f93c144
Set seeds for FDR analysis
danielgeiszler Oct 2, 2025
58a9028
Fix typos in log
danielgeiszler Oct 2, 2025
27e37e5
Correctly call function in run_jmod.py
danielgeiszler Oct 2, 2025
67d96a7
Remove redundant declarations of seed
danielgeiszler Oct 2, 2025
cbd91cd
Fix warning regarding machine precision in fdr_analysis.ms1_quant
danielgeiszler Oct 2, 2025
88c7272
Fixed seeds in threads
danielgeiszler Oct 3, 2025
87b61f0
Fix irreproducibility in same folder due to appending to decoylibsear…
danielgeiszler Oct 3, 2025
8ad24e4
rollback thread settings at the OS level
danielgeiszler Oct 3, 2025
2ed8e70
Fix rcond flag in np.linalg.lstsq for numerical stability
danielgeiszler Oct 3, 2025
69ca984
Switch read_out.py from pandas to polars for speedup
danielgeiszler Oct 6, 2025
b9a7223
Merge branch 'JMod_spectral_fitting_speedup' into polars_conversion
danielgeiszler Oct 7, 2025
1a6a250
Merge branch 'set_seeds' into polars_conversion
danielgeiszler Oct 7, 2025
7b9d822
Change . imports to src imports
danielgeiszler Oct 7, 2025
f28aff8
Add polars to windows env file
danielgeiszler Oct 7, 2025
69c539e
MS1 cor channels speedup
ZacharyACohen Oct 27, 2025
e34effe
Update config.py to not break tests
ZacharyACohen Oct 27, 2025
d53a3c9
Cleanup Branch
ZacharyACohen Oct 27, 2025
e9bb1cd
Cleanup
ZacharyACohen Oct 27, 2025
bb165db
Clean up MS1 isotopes functions after testing
ZacharyACohen Oct 28, 2025
6d84960
Merge branch 'JMod_speedup' into merge_jmod_speedup_branch
danielgeiszler Oct 28, 2025
ee5bb96
Numba windows dependencies test
danielgeiszler Oct 29, 2025
2029fb2
Add some tests for MS1 cor channels and iso fns
ZacharyACohen Oct 29, 2025
eecc389
Add UV compatibility for testing
danielgeiszler Oct 29, 2025
1ac6e6a
Test fix TF for windows install
danielgeiszler Oct 29, 2025
3109fef
Test fix TF for windows install
danielgeiszler Oct 29, 2025
ad9d138
tag debug
danielgeiszler Oct 29, 2025
5da7554
remove tag debug statements
danielgeiszler Oct 29, 2025
77c4b8c
Update wrong tag error message
ZacharyACohen Oct 29, 2025
f842548
Multithread random forest training
danielgeiszler Oct 29, 2025
567cb6d
re-implement fit_to_lib speedups python -> numpy calls
danielgeiszler Oct 29, 2025
a9981f4
re-implement fit_to_lib speedups python -> numpy calls
danielgeiszler Oct 29, 2025
25238b9
closest_ms1spec docstring fix
danielgeiszler Oct 31, 2025
1288367
Remove redundancy in fill_scan_values and add docstrings
ZacharyACohen Oct 31, 2025
6f0a407
New iso_fns docstrings and tests
ZacharyACohen Oct 31, 2025
883ffb5
Add more MS1_cor_channels tests
ZacharyACohen Oct 31, 2025
6b9f1da
Ensure popups are on correct display for multiwindow
ZacharyACohen Oct 31, 2025
8665beb
Prompt user at GUI startup if they are on mac with TK 8.6.12
ZacharyACohen Oct 31, 2025
f7a3662
Switch to absolute imports from relative
ZacharyACohen Oct 31, 2025
82e999d
Run JMod in process, add stop button, fix logs
ZacharyACohen Nov 4, 2025
9eb5897
Remove redundant file/channel prints for output
ZacharyACohen Nov 4, 2025
5f3e81f
Add PSMtag d0 preset
ZacharyACohen Nov 4, 2025
c347326
Merge remote-tracking branch 'origin/dev' into GUI_updates
ZacharyACohen Nov 5, 2025
68c2441
resolve merge conflicts
KevinMcDonnell6 Nov 5, 2025
bc556f4
update presets
KevinMcDonnell6 Nov 5, 2025
6661687
remove lib from presets
KevinMcDonnell6 Nov 5, 2025
9fc5aaa
Make JMOD saved jsons indented
ZacharyACohen Nov 6, 2025
7857a66
Presets do not set speclib to empty
ZacharyACohen Nov 6, 2025
6f8ce02
Fix config settings bug
KevinMcDonnell6 Nov 7, 2025
c8fd86f
GUI updates
KevinMcDonnell6 Nov 7, 2025
6d6a0e2
Fix log.log time synch
ZacharyACohen Nov 7, 2025
271ba84
add uv.lock
KevinMcDonnell6 Nov 7, 2025
4ba8063
Synch Log.log with other loggers
ZacharyACohen Nov 7, 2025
d24a050
Merge branch 'dev' into GUI_updates
KevinMcDonnell6 Nov 7, 2025
d7819dc
Fix windows env.yml
ZacharyACohen Nov 7, 2025
0c2fe07
remove .d
KevinMcDonnell6 Nov 7, 2025
3dba300
Fix macos tensorflow library
danielgeiszler Nov 10, 2025
0e3ae42
Pass in .config, minor changes, docstrings
ZacharyACohen Nov 13, 2025
5cd9a5e
Add final tests for ms1_cor_channels
ZacharyACohen Nov 13, 2025
235c58d
Move tests to test folder
ZacharyACohen Nov 13, 2025
529086e
Merge remote-tracking branch 'origin/dev' into ms1_cor_channels_testing
ZacharyACohen Nov 13, 2025
9340abe
Pull remote dev into local
ZacharyACohen Nov 13, 2025
d29164a
Merge dev into branch
ZacharyACohen Nov 13, 2025
d75f6ce
Put things in functions
ZacharyACohen Nov 13, 2025
d7d67c3
Add some mass tag tests
ZacharyACohen Nov 13, 2025
918a678
Remove duplicate split_frag_name
ZacharyACohen Nov 13, 2025
49d80e5
Add more mass_tag tests
ZacharyACohen Nov 14, 2025
cf88830
Cleanup test_mass_tags
ZacharyACohen Nov 14, 2025
4e2d435
tests
Nov 14, 2025
1ac37e0
merge conflicts solved
Nov 14, 2025
e17e0c3
Move GUI class definition
ZacharyACohen Nov 14, 2025
8d4a78f
changed coverage
Nov 14, 2025
6d520a8
Comment out some unused functions
ZacharyACohen Nov 14, 2025
38fc02f
Quick test that GUI initializes
ZacharyACohen Nov 14, 2025
4c73e6d
Merge branch 'dev' into ms1_cor_channels_testing
ZacharyACohen Nov 17, 2025
e6fbbca
Cleanup
ZacharyACohen Nov 17, 2025
6f173ab
Fix isotope multithread bug
KevinMcDonnell6 Nov 17, 2025
c4ca5d6
Fix output dataframe size
KevinMcDonnell6 Nov 17, 2025
f5d4f74
Merge branch 'dev' into ms2_iso
KevinMcDonnell6 Nov 17, 2025
c693686
Add test to filename of GUI test file
ZacharyACohen Nov 17, 2025
c39318a
Rework pathlength error handling and fix pre-run GUI logs
ZacharyACohen Nov 17, 2025
ee7711a
Add WinError 206 as option for failing path length test
ZacharyACohen Nov 17, 2025
9f59452
Actually discriminate between long path error and parent dir not exis…
ZacharyACohen Nov 17, 2025
3e43b3f
Cleanup
ZacharyACohen Nov 17, 2025
7eae9b1
Bugfix longpaths
ZacharyACohen Nov 17, 2025
a1efd84
Simply output folder naming convention
ZacharyACohen Nov 17, 2025
8edbe6a
Simplify Output Folder Naming Scheme 2
ZacharyACohen Nov 17, 2025
a0038e6
Add datestamp to foldername if already exists
ZacharyACohen Nov 19, 2025
545fb8b
Add progress messages for long functions to GUI logger
ZacharyACohen Nov 19, 2025
2c88523
more tests
Nov 19, 2025
57a04be
Make some logs debug, fix debug logging
ZacharyACohen Nov 19, 2025
e418b0f
Bugfix mass tag logs
ZacharyACohen Nov 19, 2025
7aff1ae
Disable editing for text logger, change how it handles empty logs
ZacharyACohen Nov 20, 2025
03bccca
Add Lineskips to GUI Logger
ZacharyACohen Nov 20, 2025
1bc3839
Merge remote-tracking branch 'origin/dev' into ms1_cor_channels_testing
ZacharyACohen Nov 20, 2025
897f8e3
Make tests use stable PSMtag_5plex
ZacharyACohen Nov 20, 2025
2877633
Docstrings and commenting out code
ZacharyACohen Nov 20, 2025
40f305d
Fix neutral loss bug; remove NL dependence on pyteomics
ZacharyACohen Nov 20, 2025
7483289
Add iso_function tests
ZacharyACohen Nov 20, 2025
89e99ba
Clean up run_jmod and ms1_cor_channels
ZacharyACohen Nov 20, 2025
1fc9d5b
Windows paths if windows to load_fasta
ZacharyACohen Nov 24, 2025
412b1cd
Replace MS1_cor with MS1_cor_channels for all runs
ZacharyACohen Nov 24, 2025
3dbeba9
Small MS1 quant refactor
ZacharyACohen Nov 24, 2025
ef3dba0
Add GUI tests
ZacharyACohen Nov 25, 2025
853c2b6
Add a space to /S paths to avoid warning
ZacharyACohen Nov 25, 2025
9ab691f
Fix decoy count error
KevinMcDonnell6 Nov 25, 2025
277a721
Bugfix: Couldn't use tag in GUI right when you made it
ZacharyACohen Nov 26, 2025
c0d2ad1
more tests
Dec 1, 2025
8682398
Add Buttons linking to commands, tutorial, yt, github
ZacharyACohen Dec 1, 2025
ee229aa
Make presets in its own container
ZacharyACohen Dec 1, 2025
7e59d40
Make preset loaded in at runtime so even if defaults change and prese…
ZacharyACohen Dec 1, 2025
8650a93
Add text to create tag specifying that it is the modified mass
ZacharyACohen Dec 1, 2025
ce6e5c4
Change preset back to LF
ZacharyACohen Dec 1, 2025
7c8bf0d
Bugfix filepaths when running from .bat; File not found error handling
ZacharyACohen Dec 2, 2025
d059f5e
Delete .coverage
euniceseo Dec 2, 2025
df8ba10
Delete .vscode directory
euniceseo Dec 2, 2025
cacdc03
Delete .coverage.Eunices-MacBook-Pro.local.36503.XqhIdqqx
euniceseo Dec 2, 2025
67cf1f6
Merge branch 'dev' into ms1_cor_channels_testing
ZacharyACohen Dec 2, 2025
72eb0f8
BugFix for pyinstaller compiled multiprocessing
ZacharyACohen Dec 3, 2025
ef107c4
Cleanup and Documentation for GUI Code
ZacharyACohen Dec 3, 2025
33aac6c
Add documentation and instructions for fit_whole_MS1
ZacharyACohen Dec 3, 2025
ad2e319
Add first iteration of queue
ZacharyACohen Dec 4, 2025
2c5172d
Make Existing Presets Be Indented JSONs
ZacharyACohen Dec 4, 2025
f497566
Add -z to Queue, change paths for queue and mzml dropdown
ZacharyACohen Dec 4, 2025
c84249d
Do not stop JMod processing if one file fails
ZacharyACohen Dec 4, 2025
0753780
Fix run from GUI params bug
ZacharyACohen Dec 4, 2025
378de13
Add Temporary JMod Icon
ZacharyACohen Dec 5, 2025
9ac98ff
Rename folders of failed runs:
ZacharyACohen Dec 8, 2025
6220caf
Add Icon to Toolbar for GUI
ZacharyACohen Dec 8, 2025
bf45c6d
Fix issues with Pyinstaller Compiling
ZacharyACohen Dec 11, 2025
2050705
GMM for stopping
danielgeiszler Dec 11, 2025
912a154
Fix errors not logging after renamed file
ZacharyACohen Dec 12, 2025
7c16797
Don't make presests folder open on next askopen prompt
ZacharyACohen Dec 12, 2025
cbad2ab
Remove some GUI tests after changed exit behavior
ZacharyACohen Dec 12, 2025
2d3d48e
Merge branch 'dev' into GUI_queue
ZacharyACohen Dec 12, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added Help/JMod Tutorial.pdf
Binary file not shown.
Empty file added Help/commands.pdf
Empty file.
Empty file added Help/outputs.pdf
Empty file.
9 changes: 9 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -41,9 +41,18 @@ In a dedicated terminal, type:

If run successfully, the inputted configurations alongside `"Loading library..."` should be printed.

To set up a UV environment to run JMod in, please first install UV with either ```pip install uv``` or [via wget/curl](https://docs.astral.sh/uv/getting-started/installation/#standalone-installer) if it is not already installed.

In a dedicated terminal in the JMod source directory (that contains the pyproject.toml), type:
1. ```uv sync --python 3.11``` (note: this will download the correct python version if it is not already on your system)
2. ```source .venv/bin/activate```
3. ```python run_jmod.py <args>```

#### Windows
If on a Windows machine, please use the `data/jmod_env_windows.yml` file to set up your environment. Set up will follow the same steps as Linux/MacOS.

If on a Windows machine, replace Step 2. with ```.venv/bin/activate``` to enter the virtual environment.


### Outputs

Expand Down
295 changes: 0 additions & 295 deletions config.py

This file was deleted.

Binary file added data/JMod_icon.ico
Binary file not shown.
Binary file added data/JMod_icon.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added data/environment_with_numba.yml
Binary file not shown.
Loading