scitex-app 0.1.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.
Files changed (41) hide show
  1. scitex_app-0.1.0/.github/workflows/cla.yml +33 -0
  2. scitex_app-0.1.0/.github/workflows/publish-pypi.yml +27 -0
  3. scitex_app-0.1.0/.github/workflows/test.yml +26 -0
  4. scitex_app-0.1.0/.gitignore +659 -0
  5. scitex_app-0.1.0/.readthedocs.yaml +31 -0
  6. scitex_app-0.1.0/CLA.md +80 -0
  7. scitex_app-0.1.0/CONTRIBUTING.md +69 -0
  8. scitex_app-0.1.0/LICENSE +20 -0
  9. scitex_app-0.1.0/PKG-INFO +235 -0
  10. scitex_app-0.1.0/README.md +195 -0
  11. scitex_app-0.1.0/docs/sphinx/api/scitex_app.rst +27 -0
  12. scitex_app-0.1.0/docs/sphinx/cli.rst +30 -0
  13. scitex_app-0.1.0/docs/sphinx/conf.py +64 -0
  14. scitex_app-0.1.0/docs/sphinx/index.rst +25 -0
  15. scitex_app-0.1.0/docs/sphinx/installation.rst +39 -0
  16. scitex_app-0.1.0/docs/sphinx/mcp.rst +51 -0
  17. scitex_app-0.1.0/docs/sphinx/quickstart.rst +47 -0
  18. scitex_app-0.1.0/examples/00_run_all.sh +19 -0
  19. scitex_app-0.1.0/examples/01_basic_file_operations.py +53 -0
  20. scitex_app-0.1.0/examples/02_custom_backend.py +70 -0
  21. scitex_app-0.1.0/pyproject.toml +56 -0
  22. scitex_app-0.1.0/src/scitex_app/__init__.py +35 -0
  23. scitex_app-0.1.0/src/scitex_app/_cli/__init__.py +9 -0
  24. scitex_app-0.1.0/src/scitex_app/_cli/_introspect.py +203 -0
  25. scitex_app-0.1.0/src/scitex_app/_cli/_main.py +166 -0
  26. scitex_app-0.1.0/src/scitex_app/_cli/_mcp.py +161 -0
  27. scitex_app-0.1.0/src/scitex_app/_mcp/__init__.py +5 -0
  28. scitex_app-0.1.0/src/scitex_app/_mcp/server.py +156 -0
  29. scitex_app-0.1.0/src/scitex_app/sdk/__init__.py +130 -0
  30. scitex_app-0.1.0/src/scitex_app/sdk/_client.py +94 -0
  31. scitex_app-0.1.0/src/scitex_app/sdk/_cloud_data.py +69 -0
  32. scitex_app-0.1.0/src/scitex_app/sdk/_cloud_external.py +38 -0
  33. scitex_app-0.1.0/src/scitex_app/sdk/_cloud_files.py +165 -0
  34. scitex_app-0.1.0/src/scitex_app/sdk/_cloud_jobs.py +56 -0
  35. scitex_app-0.1.0/src/scitex_app/sdk/_cloud_scitex.py +43 -0
  36. scitex_app-0.1.0/src/scitex_app/sdk/_filesystem.py +112 -0
  37. scitex_app-0.1.0/src/scitex_app/sdk/_protocol.py +114 -0
  38. scitex_app-0.1.0/tests/__init__.py +3 -0
  39. scitex_app-0.1.0/tests/conftest.py +20 -0
  40. scitex_app-0.1.0/tests/test__filesystem.py +126 -0
  41. scitex_app-0.1.0/tests/test__sdk.py +107 -0
@@ -0,0 +1,33 @@
1
+ name: CLA Assistant
2
+
3
+ on:
4
+ issue_comment:
5
+ types: [created]
6
+ pull_request_target:
7
+ types: [opened, closed, synchronize]
8
+
9
+ permissions:
10
+ actions: write
11
+ contents: write
12
+ pull-requests: write
13
+ statuses: write
14
+
15
+ jobs:
16
+ CLAssistant:
17
+ runs-on: ubuntu-latest
18
+ steps:
19
+ - name: CLA Assistant
20
+ uses: contributor-assistant/github-action@v2.6.1
21
+ env:
22
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
23
+ PERSONAL_ACCESS_TOKEN: ${{ secrets.PERSONAL_ACCESS_TOKEN }}
24
+ with:
25
+ path-to-signatures: "signatures/cla.json"
26
+ path-to-document: "https://github.com/ywatanabe1989/scitex-app/blob/main/CLA.md"
27
+ branch: "cla-signatures"
28
+ allowlist: bot*,ywatanabe1989
29
+ custom-allsigned-prcomment: |
30
+ Thank you for signing the SciTeX CLA. Your contribution can now be reviewed.
31
+ custom-notsigned-prcomment: |
32
+ Please sign the [SciTeX CLA](https://github.com/ywatanabe1989/scitex-app/blob/main/CLA.md) before your contribution can be merged.
33
+ Comment `I have read and agree to the SciTeX CLA.` to sign.
@@ -0,0 +1,27 @@
1
+ name: Publish to PyPI
2
+
3
+ on:
4
+ push:
5
+ tags:
6
+ - 'v*'
7
+
8
+ jobs:
9
+ publish:
10
+ runs-on: ubuntu-latest
11
+ environment:
12
+ name: pypi
13
+ url: https://pypi.org/p/scitex-app
14
+ permissions:
15
+ id-token: write
16
+ steps:
17
+ - uses: actions/checkout@v4
18
+ - name: Set up Python
19
+ uses: actions/setup-python@v5
20
+ with:
21
+ python-version: "3.12"
22
+ - name: Install build tools
23
+ run: pip install build
24
+ - name: Build distribution
25
+ run: python -m build
26
+ - name: Publish to PyPI
27
+ uses: pypa/gh-action-pypi-publish@release/v1
@@ -0,0 +1,26 @@
1
+ name: Test
2
+
3
+ on:
4
+ push:
5
+ branches: [main, develop]
6
+ pull_request:
7
+ branches: [main, develop]
8
+
9
+ jobs:
10
+ test:
11
+ runs-on: ubuntu-latest
12
+ strategy:
13
+ matrix:
14
+ python-version: ["3.10", "3.11", "3.12", "3.13"]
15
+ steps:
16
+ - uses: actions/checkout@v4
17
+ - name: Set up Python ${{ matrix.python-version }}
18
+ uses: actions/setup-python@v5
19
+ with:
20
+ python-version: ${{ matrix.python-version }}
21
+ - name: Install dependencies
22
+ run: |
23
+ python -m pip install --upgrade pip
24
+ pip install -e ".[dev]"
25
+ - name: Run tests
26
+ run: pytest tests/
@@ -0,0 +1,659 @@
1
+
2
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/Specific.gitignore ###
3
+ # Please add files here
4
+
5
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/Claude.gitignore ###
6
+ docs/to_claude
7
+ docs/from_agents
8
+ docs/from_user
9
+ CLAUDE.md
10
+ .claude
11
+ mgmt
12
+ .mcp.json
13
+
14
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/Secrets.gitignore ###
15
+ .git-crypt/keys
16
+ **/*secret*
17
+
18
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/Development.gitignore ###
19
+ # old directories as trash bin
20
+ *old*
21
+ **/*old*
22
+ .old
23
+ **/.old
24
+ .dev
25
+ **/.dev
26
+ .playground
27
+ **/.playground
28
+ **/.dev
29
+ .dev
30
+ **/.legacy
31
+ .legacy
32
+
33
+ # Backup
34
+ **/*_back
35
+ **/*_backup
36
+ **/*_backups
37
+
38
+ # Renaming
39
+ **/.rename_backups
40
+ **/.rename_backups
41
+
42
+ # Logs
43
+ *.log
44
+ **/*.log
45
+ **RUNNING**
46
+ **FINISHED**
47
+ **/RUNNING
48
+ **/FINISHED
49
+ **/202?Y-*
50
+
51
+ # TODO
52
+ **/TODO.md
53
+
54
+ # Memo
55
+ GITIGNORED
56
+
57
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/MyEmacs.gitignore ###
58
+ **/*~undo-tree~
59
+ **/undohist/*
60
+
61
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/Apptainer.gitignore ###
62
+ **/*.log
63
+ **/*.sandbox/*
64
+ **/*.sif
65
+ **/build-temp-*
66
+
67
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/Django.gitignore ###
68
+ ./staticfiles*
69
+ ./static/bootstrap*
70
+
71
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/LargeFiles.gitignore ###
72
+ data/*
73
+
74
+ **/*.csv
75
+ **/*.mat
76
+ **/*.mp4
77
+ **/*.npy
78
+ **/*.pdf
79
+ **/*.pkl
80
+ **/*.png
81
+ **/*.pth
82
+ **/*.pt
83
+ **/*.chk
84
+ **/*.model
85
+ **/*.tiff
86
+ **/*.wav
87
+ **/*.jpg
88
+ **/*.jpeg
89
+ **/*.h5
90
+ **/*.zip
91
+ **/*.tar
92
+ **/*.gz
93
+ **/*.rar
94
+ **/*.7z
95
+ **/*.hdf5
96
+ **/*.npz
97
+ **/*.fits
98
+ **/*.avi
99
+ **/*.mov
100
+ **/*.mkv
101
+ **/*.gif
102
+ **/*.bmp
103
+ **/*.svg
104
+ **/*.psd
105
+ **/*.tif
106
+ **/*.raw
107
+ **/*.nii
108
+ **/*.dicom
109
+ **/*.xls
110
+ **/*.xlsx
111
+ **/*.doc
112
+ **/*.docx
113
+ **/*.ppt
114
+ **/*.pptx
115
+ **/*.txt
116
+ **/*.log
117
+ **/*.db
118
+ **/*.sqlite
119
+ **/*.xml
120
+ **/*.JNB
121
+ **/*.jnb
122
+
123
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Python.gitignore ###
124
+ # Byte-compiled / optimized / DLL files
125
+ __pycache__/
126
+ *.py[cod]
127
+ *$py.class
128
+
129
+ # C extensions
130
+ *.so
131
+
132
+ # Distribution / packaging
133
+ .Python
134
+ build/
135
+ develop-eggs/
136
+ dist/
137
+ downloads/
138
+ eggs/
139
+ .eggs/
140
+ lib/
141
+ lib64/
142
+ parts/
143
+ sdist/
144
+ var/
145
+ wheels/
146
+ share/python-wheels/
147
+ *.egg-info/
148
+ .installed.cfg
149
+ *.egg
150
+ MANIFEST
151
+
152
+ # PyInstaller
153
+ # Usually these files are written by a python script from a template
154
+ # before PyInstaller builds the exe, so as to inject date/other infos into it.
155
+ *.manifest
156
+ *.spec
157
+
158
+ # Installer logs
159
+ pip-log.txt
160
+ pip-delete-this-directory.txt
161
+
162
+ # Unit test / coverage reports
163
+ htmlcov/
164
+ .tox/
165
+ .nox/
166
+ .coverage
167
+ .coverage.*
168
+ .cache
169
+ nosetests.xml
170
+ coverage.xml
171
+ *.cover
172
+ *.py,cover
173
+ .hypothesis/
174
+ .pytest_cache/
175
+ cover/
176
+
177
+ # Translations
178
+ *.mo
179
+ *.pot
180
+
181
+ # Django stuff:
182
+ *.log
183
+ local_settings.py
184
+ db.sqlite3
185
+ db.sqlite3-journal
186
+
187
+ # Flask stuff:
188
+ instance/
189
+ .webassets-cache
190
+
191
+ # Scrapy stuff:
192
+ .scrapy
193
+
194
+ # Sphinx documentation
195
+ docs/_build/
196
+
197
+ # PyBuilder
198
+ .pybuilder/
199
+ target/
200
+
201
+ # Jupyter Notebook
202
+ .ipynb_checkpoints
203
+
204
+ # IPython
205
+ profile_default/
206
+ ipython_config.py
207
+
208
+ # pyenv
209
+ # For a library or package, you might want to ignore these files since the code is
210
+ # intended to run in multiple environments; otherwise, check them in:
211
+ # .python-version
212
+
213
+ # pipenv
214
+ # According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control.
215
+ # However, in case of collaboration, if having platform-specific dependencies or dependencies
216
+ # having no cross-platform support, pipenv may install dependencies that don't work, or not
217
+ # install all needed dependencies.
218
+ #Pipfile.lock
219
+
220
+ # poetry
221
+ # Similar to Pipfile.lock, it is generally recommended to include poetry.lock in version control.
222
+ # This is especially recommended for binary packages to ensure reproducibility, and is more
223
+ # commonly ignored for libraries.
224
+ # https://python-poetry.org/docs/basic-usage/#commit-your-poetrylock-file-to-version-control
225
+ #poetry.lock
226
+
227
+ # pdm
228
+ # Similar to Pipfile.lock, it is generally recommended to include pdm.lock in version control.
229
+ #pdm.lock
230
+ # pdm stores project-wide configurations in .pdm.toml, but it is recommended to not include it
231
+ # in version control.
232
+ # https://pdm.fming.dev/latest/usage/project/#working-with-version-control
233
+ .pdm.toml
234
+ .pdm-python
235
+ .pdm-build/
236
+
237
+ # PEP 582; used by e.g. github.com/David-OConnor/pyflow and github.com/pdm-project/pdm
238
+ __pypackages__/
239
+
240
+ # Celery stuff
241
+ celerybeat-schedule
242
+ celerybeat.pid
243
+
244
+ # SageMath parsed files
245
+ *.sage.py
246
+
247
+ # Environments
248
+ .env
249
+ .venv
250
+ env/
251
+ venv/
252
+ ENV/
253
+ env.bak/
254
+ venv.bak/
255
+
256
+ # Spyder project settings
257
+ .spyderproject
258
+ .spyproject
259
+
260
+ # Rope project settings
261
+ .ropeproject
262
+
263
+ # mkdocs documentation
264
+ /site
265
+
266
+ # mypy
267
+ .mypy_cache/
268
+ .dmypy.json
269
+ dmypy.json
270
+
271
+ # Pyre type checker
272
+ .pyre/
273
+
274
+ # pytype static type analyzer
275
+ .pytype/
276
+
277
+ # Cython debug symbols
278
+ cython_debug/
279
+
280
+ # PyCharm
281
+ # JetBrains specific template is maintained in a separate JetBrains.gitignore that can
282
+ # be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
283
+ # and can be added to the global gitignore or merged into this file. For a more nuclear
284
+ # option (not recommended) you can uncomment the following to ignore the entire idea folder.
285
+ #.idea/
286
+
287
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Django.gitignore ###
288
+
289
+
290
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/TeX.gitignore ###
291
+ ## Core latex/pdflatex auxiliary files:
292
+ *.aux
293
+ *.lof
294
+ *.log
295
+ *.lot
296
+ *.fls
297
+ *.out
298
+ *.toc
299
+ *.fmt
300
+ *.fot
301
+ *.cb
302
+ *.cb2
303
+ .*.lb
304
+
305
+ ## Intermediate documents:
306
+ *.dvi
307
+ *.xdv
308
+ *-converted-to.*
309
+ # these rules might exclude image files for figures etc.
310
+ # *.ps
311
+ # *.eps
312
+ # *.pdf
313
+
314
+ ## Generated if empty string is given at "Please type another file name for output:"
315
+ .pdf
316
+
317
+ ## Bibliography auxiliary files (bibtex/biblatex/biber):
318
+ *.bbl
319
+ *.bcf
320
+ *.blg
321
+ *-blx.aux
322
+ *-blx.bib
323
+ *.run.xml
324
+
325
+ ## Build tool auxiliary files:
326
+ *.fdb_latexmk
327
+ *.synctex
328
+ *.synctex(busy)
329
+ *.synctex.gz
330
+ *.synctex.gz(busy)
331
+ *.pdfsync
332
+ *.rubbercache
333
+ rubber.cache
334
+
335
+ ## Build tool directories for auxiliary files
336
+ # latexrun
337
+ latex.out/
338
+
339
+ ## Auxiliary and intermediate files from other packages:
340
+ # algorithms
341
+ *.alg
342
+ *.loa
343
+
344
+ # achemso
345
+ acs-*.bib
346
+
347
+ # amsthm
348
+ *.thm
349
+
350
+ # beamer
351
+ *.nav
352
+ *.pre
353
+ *.snm
354
+ *.vrb
355
+
356
+ # changes
357
+ *.soc
358
+
359
+ # comment
360
+ *.cut
361
+
362
+ # cprotect
363
+ *.cpt
364
+
365
+ # elsarticle (documentclass of Elsevier journals)
366
+ *.spl
367
+
368
+ # endnotes
369
+ *.ent
370
+
371
+ # fixme
372
+ *.lox
373
+
374
+ # feynmf/feynmp
375
+ *.mf
376
+ *.mp
377
+ *.t[1-9]
378
+ *.t[1-9][0-9]
379
+ *.tfm
380
+
381
+ #(r)(e)ledmac/(r)(e)ledpar
382
+ *.end
383
+ *.?end
384
+ *.[1-9]
385
+ *.[1-9][0-9]
386
+ *.[1-9][0-9][0-9]
387
+ *.[1-9]R
388
+ *.[1-9][0-9]R
389
+ *.[1-9][0-9][0-9]R
390
+ *.eledsec[1-9]
391
+ *.eledsec[1-9]R
392
+ *.eledsec[1-9][0-9]
393
+ *.eledsec[1-9][0-9]R
394
+ *.eledsec[1-9][0-9][0-9]
395
+ *.eledsec[1-9][0-9][0-9]R
396
+
397
+ # glossaries
398
+ *.acn
399
+ *.acr
400
+ *.glg
401
+ *.glo
402
+ *.gls
403
+ *.glsdefs
404
+ *.lzo
405
+ *.lzs
406
+ *.slg
407
+ *.slo
408
+ *.sls
409
+
410
+ # uncomment this for glossaries-extra (will ignore makeindex's style files!)
411
+ # *.ist
412
+
413
+ # gnuplot
414
+ *.gnuplot
415
+ *.table
416
+
417
+ # gnuplottex
418
+ *-gnuplottex-*
419
+
420
+ # gregoriotex
421
+ *.gaux
422
+ *.glog
423
+ *.gtex
424
+
425
+ # htlatex
426
+ *.4ct
427
+ *.4tc
428
+ *.idv
429
+ *.lg
430
+ *.trc
431
+ *.xref
432
+
433
+ # hypdoc
434
+ *.hd
435
+
436
+ # hyperref
437
+ *.brf
438
+
439
+ # knitr
440
+ *-concordance.tex
441
+ # TODO Uncomment the next line if you use knitr and want to ignore its generated tikz files
442
+ # *.tikz
443
+ *-tikzDictionary
444
+
445
+ # listings
446
+ *.lol
447
+
448
+ # luatexja-ruby
449
+ *.ltjruby
450
+
451
+ # makeidx
452
+ *.idx
453
+ *.ilg
454
+ *.ind
455
+
456
+ # minitoc
457
+ *.maf
458
+ *.mlf
459
+ *.mlt
460
+ *.mtc[0-9]*
461
+ *.slf[0-9]*
462
+ *.slt[0-9]*
463
+ *.stc[0-9]*
464
+
465
+ # minted
466
+ _minted*
467
+ *.pyg
468
+
469
+ # morewrites
470
+ *.mw
471
+
472
+ # newpax
473
+ *.newpax
474
+
475
+ # nomencl
476
+ *.nlg
477
+ *.nlo
478
+ *.nls
479
+
480
+ # pax
481
+ *.pax
482
+
483
+ # pdfpcnotes
484
+ *.pdfpc
485
+
486
+ # sagetex
487
+ *.sagetex.sage
488
+ *.sagetex.py
489
+ *.sagetex.scmd
490
+
491
+ # scrwfile
492
+ *.wrt
493
+
494
+ # svg
495
+ svg-inkscape/
496
+
497
+ # sympy
498
+ *.sout
499
+ *.sympy
500
+ sympy-plots-for-*.tex/
501
+
502
+ # pdfcomment
503
+ *.upa
504
+ *.upb
505
+
506
+ # pythontex
507
+ *.pytxcode
508
+ pythontex-files-*/
509
+
510
+ # tcolorbox
511
+ *.listing
512
+
513
+ # thmtools
514
+ *.loe
515
+
516
+ # TikZ & PGF
517
+ *.dpth
518
+ *.md5
519
+ *.auxlock
520
+
521
+ # titletoc
522
+ *.ptc
523
+
524
+ # todonotes
525
+ *.tdo
526
+
527
+ # vhistory
528
+ *.hst
529
+ *.ver
530
+
531
+ # easy-todo
532
+ *.lod
533
+
534
+ # xcolor
535
+ *.xcp
536
+
537
+ # xmpincl
538
+ *.xmpi
539
+
540
+ # xindy
541
+ *.xdy
542
+
543
+ # xypic precompiled matrices and outlines
544
+ *.xyc
545
+ *.xyd
546
+
547
+ # endfloat
548
+ *.ttt
549
+ *.fff
550
+
551
+ # Latexian
552
+ TSWLatexianTemp*
553
+
554
+ ## Editors:
555
+ # WinEdt
556
+ *.bak
557
+ *.sav
558
+
559
+ # Texpad
560
+ .texpadtmp
561
+
562
+ # LyX
563
+ *.lyx~
564
+
565
+ # Kile
566
+ *.backup
567
+
568
+ # gummi
569
+ .*.swp
570
+
571
+ # KBibTeX
572
+ *~[0-9]*
573
+
574
+ # TeXnicCenter
575
+ *.tps
576
+
577
+ # auto folder when using emacs and auctex
578
+ ./auto/*
579
+ *.el
580
+
581
+ # expex forward references with \gathertags
582
+ *-tags.tex
583
+
584
+ # standalone packages
585
+ *.sta
586
+
587
+ # Makeindex log files
588
+ *.lpz
589
+
590
+ # xwatermark package
591
+ *.xwm
592
+
593
+ # REVTeX puts footnotes in the bibliography by default, unless the nofootinbib
594
+ # option is specified. Footnotes are the stored in a file with suffix Notes.bib.
595
+ # Uncomment the next line to have this generated file ignored.
596
+ #*Notes.bib
597
+
598
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Global/Emacs.gitignore ###
599
+ # -*- mode: gitignore; -*-
600
+ *~
601
+ \#*\#
602
+ /.emacs.desktop
603
+ /.emacs.desktop.lock
604
+ *.elc
605
+ auto-save-list
606
+ tramp
607
+ .\#*
608
+
609
+ # Org-mode
610
+ .org-id-locations
611
+ *_archive
612
+
613
+ # flymake-mode
614
+ *_flymake.*
615
+
616
+ # eshell files
617
+ /eshell/history
618
+ /eshell/lastdir
619
+
620
+ # elpa packages
621
+ /elpa/
622
+
623
+ # reftex files
624
+ *.rel
625
+
626
+ # AUCTeX auto folder
627
+ /auto/
628
+
629
+ # cask packages
630
+ .cask/
631
+ dist/
632
+
633
+ # Flycheck
634
+ flycheck_*.el
635
+
636
+ # server auth directory
637
+ /server/
638
+
639
+ # projectiles files
640
+ .projectile
641
+
642
+ # directory configuration
643
+ .dir-locals.el
644
+
645
+ # network security
646
+ /network-security.data
647
+
648
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/SQL.gitignore ###
649
+ **/*.db
650
+ **/*.sqlite3
651
+ *.db-shm
652
+ *.db-wal
653
+
654
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/GitKeep.gitignore ###
655
+ !.gitkeep
656
+ !**/.gitkeep
657
+
658
+ ### Source: /home/ywatanabe/.git-templates/.gitignore-templates/Custom/SLURM.gitignore ###
659
+ slurm_logs