Skip to content

Commit

Permalink
ENH: make everything pip installable through pyproject.toml
Browse files Browse the repository at this point in the history
Add commandline entries to all python scripts
  • Loading branch information
jstout211 committed Apr 30, 2024
1 parent 16254e6 commit 7d02940
Show file tree
Hide file tree
Showing 8 changed files with 76 additions and 15 deletions.
6 changes: 3 additions & 3 deletions nih2mne/calc_mnetrans.py
Original file line number Diff line number Diff line change
Expand Up @@ -471,8 +471,7 @@ def view_coreg(dsname=None, trans_file=None, subjects_dir=None):
surfaces=['head', 'white'], coord_frame='meg')
_ = input('Press enter to close')


if __name__=='__main__':
def main():
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-subjects_dir', help='''Set SUBJECTS_DIR different
Expand Down Expand Up @@ -526,7 +525,8 @@ def view_coreg(dsname=None, trans_file=None, subjects_dir=None):
if args.view_coreg:
view_coreg(args.dsname, mne_trans_name, subjects_dir)


if __name__=='__main__':
main()



7 changes: 5 additions & 2 deletions nih2mne/make_meg_bids.py
Original file line number Diff line number Diff line change
Expand Up @@ -635,7 +635,8 @@ def _get_conversion_dict(input_path=None, subject_in=None, bids_id=None,
# =============================================================================
# Commandline Options
# =============================================================================
if __name__ == '__main__':

def main():
import argparse
parser = argparse.ArgumentParser('''
Convert MEG dataset to default Bids format using the MEG hash ID or
Expand Down Expand Up @@ -969,4 +970,6 @@ def _get_conversion_dict(input_path=None, subject_in=None, bids_id=None,
# deriv_path=deriv_path,
# surf=surf)


if __name__ == '__main__':
main()

4 changes: 3 additions & 1 deletion nih2mne/megcore_prep_mri_bids.py
Original file line number Diff line number Diff line change
Expand Up @@ -288,7 +288,7 @@ def preproc(bids_path=None,


#%% Commandline Options parsing
if __name__=='__main__':
def main():
import argparse
parser = argparse.ArgumentParser(description=desc)
single_parser = parser.add_argument_group('Single File only')
Expand Down Expand Up @@ -367,6 +367,8 @@ def preproc(bids_path=None,
mripreproc(bids_path, t1_bids_path, deriv_path, surf=proc_surf)


if __name__=='__main__':
main()

#%% Some minimal tests
#$(pwd)/nih2mne/megcore_prep_mri_bids.py -gen_swarmfile -swarm_fname TEST.sh -bids_root /fast/BIDS_HV_V1/bids/
Expand Down
6 changes: 4 additions & 2 deletions nih2mne/utilities/fix_dsname.py
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,10 @@ def fixDsName(input_name):
# print(out_name)
shutil.move(in_name, out_name)

if __name__=='__main__':
def main():
input_name = sys.argv[1]
fixDsName(input_name)


if __name__=='__main__':
main()

4 changes: 3 additions & 1 deletion nih2mne/utilities/make_meg_bids_fromcsv.py
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ def make_serial_proc(csvfile, run=False, return_cmd=False):
import subprocess
subprocess.run(cmd_chain)

if __name__ == '__main__':
def main():
import argparse
template = op.join(op.dirname(__file__),'..', 'templates', 'bids_entry_template.csv')
template = op.abspath(template)
Expand Down Expand Up @@ -161,3 +161,5 @@ def make_serial_proc(csvfile, run=False, return_cmd=False):
elif args.write_swarmf:
make_swarm_file(csvfile, write=True)

if __name__ == '__main__':
main()
6 changes: 3 additions & 3 deletions nih2mne/utilities/print_bids_table.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,8 +41,7 @@ def get_bids_table(bids_dir, ses='1'):
return dframe



if __name__ == '__main__':
def main():
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-bids_dir',
Expand Down Expand Up @@ -78,6 +77,7 @@ def get_bids_table(bids_dir, ses='1'):
pivot.to_csv(out_fname)
print(f'Table saved to {out_fname}')


if __name__ == '__main__':
main()


6 changes: 3 additions & 3 deletions nih2mne/utilities/qa_fids.py
Original file line number Diff line number Diff line change
Expand Up @@ -72,8 +72,7 @@ def plot_fids_qa(subjid=None, bids_root=None, outfile=None):
)
plt.show()


if __name__ == '__main__':
def main():
import argparse
parser = argparse.ArgumentParser()
parser.add_argument('-subject',
Expand Down Expand Up @@ -113,5 +112,6 @@ def plot_fids_qa(subjid=None, bids_root=None, outfile=None):
except:
print(f'Failed to create QA image for {subject}')


if __name__ == '__main__':
main()

52 changes: 52 additions & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
[build-system]
requires = ["setuptools"]
build-backend = "setuptools.build_meta"

[project]
name = "nih2mne"
description = "General integration functions for mne and mne-bids for NIH users"
readme = "README.md"
requires-python = "<3.12"
#keywords = ["one", "two"]

authors = [
{ name="Jeff Stout", email="[email protected]" },
]

license = {text = "UNLICENSE"}
classifiers=[
"Programming Language :: Python :: 3",
"License :: OSI Approved :: UNLICENSE",
"Operating System :: Linux/Unix",
]
dependencies = [
'mne<1.7', 'numpy', 'pytest', 'joblib', 'nibabel','mne_bids','pandas', 'wget',
'pyctf-lite @ git+https://github.com/nih-megcore/[email protected]#egg=pyctf-lite'
]
dynamic = ["version"]

[project.optional-dependencies]
testing = ['datalad','pytest','pygit2']

[project.scripts]
"bstags.py"='nih2mne.bstags:main'
"calc_mnetrans.py"='nih2mne.calc_mnetrans:main'
"make_meg_bids.py"='nih2mne.make_meg_bids:main'
"make_meg_bids_fromcsv.py" = 'nih2mne.utilities.make_meg_bids_fromcsv:main'
"print_bids_table.py"='nih2mne.utilities.print_bids_table:main'
"fix_dsname.py"='nih2mne.utilities.fix_dsname:main'
"megcore_prep_mri_bids.py"='nih2mne.megcore_prep_mri_bids:main'
"qa_fids.py"='nih2mne.utilities.qa_fids:main'
#'nih2mne/eyetracking_preprocessing.py',
#'cmdline/make_bids_fs_swarm.sh',


"process_meg.py" = "enigmeg.process_meg:main"
"enigma_prep_QA.py" = 'enigmeg.QA.enigma_prep_QA:main'
"Run_enigma_QA_GUI.py" = 'enigmeg.QA.Run_enigma_QA_GUI:main'
"parse_bids.py" = 'enigmeg.parse_bids:main'


[tool.setuptools.packages.find]
include = ["nih2mne*"]
#exclude = ["extras*", "conda*"]

0 comments on commit 7d02940

Please sign in to comment.