calkit-python 0.14.4__tar.gz → 0.14.5__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 (72) hide show
  1. calkit_python-0.14.5/.github/workflows/docs.yml +31 -0
  2. {calkit_python-0.14.4 → calkit_python-0.14.5}/.gitignore +1 -0
  3. {calkit_python-0.14.4 → calkit_python-0.14.5}/PKG-INFO +8 -2
  4. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/__init__.py +1 -1
  5. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/main.py +2 -1
  6. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/core.py +4 -2
  7. calkit_python-0.14.5/docs/CNAME +1 -0
  8. calkit_python-0.14.5/docs/img/c-to-the-k-white.svg +77 -0
  9. calkit_python-0.14.5/docs/index.md +8 -0
  10. calkit_python-0.14.5/mkdocs.yml +52 -0
  11. {calkit_python-0.14.4 → calkit_python-0.14.5}/pyproject.toml +9 -1
  12. {calkit_python-0.14.4 → calkit_python-0.14.5}/.github/FUNDING.yml +0 -0
  13. {calkit_python-0.14.4 → calkit_python-0.14.5}/.github/workflows/publish-test.yml +0 -0
  14. {calkit_python-0.14.4 → calkit_python-0.14.5}/.github/workflows/publish.yml +0 -0
  15. {calkit_python-0.14.4 → calkit_python-0.14.5}/LICENSE +0 -0
  16. {calkit_python-0.14.4 → calkit_python-0.14.5}/README.md +0 -0
  17. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/calc.py +0 -0
  18. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/check.py +0 -0
  19. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/__init__.py +0 -0
  20. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/check.py +0 -0
  21. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/config.py +0 -0
  22. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/core.py +0 -0
  23. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/import_.py +0 -0
  24. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/list.py +0 -0
  25. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/new.py +0 -0
  26. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/notebooks.py +0 -0
  27. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/office.py +0 -0
  28. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cli/update.py +0 -0
  29. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/cloud.py +0 -0
  30. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/conda.py +0 -0
  31. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/config.py +0 -0
  32. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/datasets.py +0 -0
  33. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/docker.py +0 -0
  34. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/dvc.py +0 -0
  35. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/git.py +0 -0
  36. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/gui.py +0 -0
  37. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/jupyter.py +0 -0
  38. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/magics.py +0 -0
  39. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/models.py +0 -0
  40. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/office.py +0 -0
  41. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/server.py +0 -0
  42. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/__init__.py +0 -0
  43. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/core.py +0 -0
  44. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/__init__.py +0 -0
  45. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/article/paper.tex +0 -0
  46. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/core.py +0 -0
  47. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/jfm/jfm.bst +0 -0
  48. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/jfm/jfm.cls +0 -0
  49. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/jfm/lineno-FLM.sty +0 -0
  50. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/jfm/paper.tex +0 -0
  51. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/templates/latex/jfm/upmath.sty +0 -0
  52. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/__init__.py +0 -0
  53. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/cli/__init__.py +0 -0
  54. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/cli/test_list.py +0 -0
  55. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/cli/test_main.py +0 -0
  56. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/cli/test_new.py +0 -0
  57. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_calc.py +0 -0
  58. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_check.py +0 -0
  59. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_conda.py +0 -0
  60. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_core.py +0 -0
  61. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_dvc.py +0 -0
  62. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_jupyter.py +0 -0
  63. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_magics.py +0 -0
  64. {calkit_python-0.14.4 → calkit_python-0.14.5}/calkit/tests/test_templates.py +0 -0
  65. {calkit_python-0.14.4 → calkit_python-0.14.5}/docs/environments.md +0 -0
  66. {calkit_python-0.14.4 → calkit_python-0.14.5}/docs/img/calkit-no-bg.png +0 -0
  67. {calkit_python-0.14.4 → calkit_python-0.14.5}/docs/tutorials/adding-latex-pub-docker.md +0 -0
  68. {calkit_python-0.14.4 → calkit_python-0.14.5}/docs/tutorials/conda-envs.md +0 -0
  69. {calkit_python-0.14.4 → calkit_python-0.14.5}/docs/tutorials/img/run-proc.png +0 -0
  70. {calkit_python-0.14.4 → calkit_python-0.14.5}/docs/tutorials/notebook-pipeline.md +0 -0
  71. {calkit_python-0.14.4 → calkit_python-0.14.5}/docs/tutorials/procedures.md +0 -0
  72. {calkit_python-0.14.4 → calkit_python-0.14.5}/test/pipeline.ipynb +0 -0
@@ -0,0 +1,31 @@
1
+ name: Publish docs
2
+
3
+ on:
4
+ push:
5
+ branches:
6
+ - main
7
+
8
+ permissions:
9
+ contents: write
10
+
11
+ jobs:
12
+ deploy:
13
+ runs-on: ubuntu-latest
14
+ steps:
15
+ - uses: actions/checkout@v4
16
+ - name: Configure Git Credentials
17
+ run: |
18
+ git config user.name github-actions[bot]
19
+ git config user.email 41898282+github-actions[bot]@users.noreply.github.com
20
+ - uses: actions/setup-python@v5
21
+ with:
22
+ python-version: 3.x
23
+ - run: echo "cache_id=$(date --utc '+%V')" >> $GITHUB_ENV
24
+ - uses: actions/cache@v4
25
+ with:
26
+ key: mkdocs-material-${{ env.cache_id }}
27
+ path: .cache
28
+ restore-keys: |
29
+ mkdocs-material-
30
+ - run: pip install mkdocs-material
31
+ - run: mkdocs gh-deploy --force
@@ -2,3 +2,4 @@ dev.ipynb
2
2
  *.pyc
3
3
  .DS_Store
4
4
  .vscode
5
+ site
@@ -1,8 +1,9 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: calkit-python
3
- Version: 0.14.4
3
+ Version: 0.14.5
4
4
  Summary: Reproducibility simplified.
5
- Project-URL: Homepage, https://github.com/calkit/calkit
5
+ Project-URL: Homepage, https://calkit.org
6
+ Project-URL: Repository, https://github.com/calkit/calkit
6
7
  Project-URL: Issues, https://github.com/calkit/calkit/issues
7
8
  Author-email: Pete Bachant <petebachant@gmail.com>
8
9
  License-File: LICENSE
@@ -29,6 +30,11 @@ Requires-Dist: uvicorn
29
30
  Provides-Extra: data
30
31
  Requires-Dist: pandas; extra == 'data'
31
32
  Requires-Dist: polars; extra == 'data'
33
+ Provides-Extra: dev
34
+ Requires-Dist: pytest; extra == 'dev'
35
+ Provides-Extra: docs
36
+ Requires-Dist: mkdocs; extra == 'docs'
37
+ Requires-Dist: mkdocs-material; extra == 'docs'
32
38
  Description-Content-Type: text/markdown
33
39
 
34
40
  <p align="center">
@@ -1,4 +1,4 @@
1
- __version__ = "0.14.4"
1
+ __version__ = "0.14.5"
2
2
 
3
3
  from .core import *
4
4
  from . import git
@@ -8,7 +8,6 @@ import hashlib
8
8
  import json
9
9
  import os
10
10
  import platform as _platform
11
- import shlex
12
11
  import subprocess
13
12
  import sys
14
13
  import time
@@ -458,6 +457,8 @@ def run_dvc_repro(
458
457
  objects = []
459
458
  with open("dvc.yaml") as f:
460
459
  pipeline = calkit.ryaml.load(f)
460
+ if pipeline is None:
461
+ raise_error("Pipeline is empty")
461
462
  for stage_name, stage_info in pipeline.get("stages", {}).items():
462
463
  ckmeta = stage_info.get("meta", {}).get("calkit")
463
464
  if ckmeta is not None:
@@ -255,9 +255,11 @@ def check_dep_exists(
255
255
  # Fall back to simply calling ``--version``
256
256
  cmd.append("--version")
257
257
  try:
258
- subprocess.check_output(cmd)
258
+ subprocess.run(
259
+ cmd, stdout=subprocess.DEVNULL, stderr=subprocess.DEVNULL
260
+ )
259
261
  return True
260
- except subprocess.CalledProcessError:
262
+ except FileNotFoundError:
261
263
  return False
262
264
 
263
265
 
@@ -0,0 +1 @@
1
+ docs.calkit.org
@@ -0,0 +1,77 @@
1
+ <?xml version="1.0" encoding="UTF-8" standalone="no"?>
2
+ <!-- Created with Inkscape (http://www.inkscape.org/) -->
3
+
4
+ <svg
5
+ width="210mm"
6
+ height="210mm"
7
+ viewBox="0 0 210 210"
8
+ version="1.1"
9
+ id="svg1"
10
+ xml:space="preserve"
11
+ inkscape:version="1.4 (e7c3feb1, 2024-10-09)"
12
+ sodipodi:docname="c-to-the-k-white.svg"
13
+ inkscape:export-filename="c-to-the-k.png"
14
+ inkscape:export-xdpi="36.285713"
15
+ inkscape:export-ydpi="36.285713"
16
+ xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
17
+ xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
18
+ xmlns:xlink="http://www.w3.org/1999/xlink"
19
+ xmlns="http://www.w3.org/2000/svg"
20
+ xmlns:svg="http://www.w3.org/2000/svg"><sodipodi:namedview
21
+ id="namedview1"
22
+ pagecolor="#000000"
23
+ bordercolor="#000000"
24
+ borderopacity="0.25"
25
+ inkscape:showpageshadow="2"
26
+ inkscape:pageopacity="0.0"
27
+ inkscape:pagecheckerboard="0"
28
+ inkscape:deskcolor="#d1d1d1"
29
+ inkscape:document-units="mm"
30
+ inkscape:zoom="0.88320437"
31
+ inkscape:cx="431.94986"
32
+ inkscape:cy="401.37935"
33
+ inkscape:window-width="1936"
34
+ inkscape:window-height="1186"
35
+ inkscape:window-x="0"
36
+ inkscape:window-y="25"
37
+ inkscape:window-maximized="0"
38
+ inkscape:current-layer="layer1"
39
+ inkscape:export-bgcolor="#000000ff" /><defs
40
+ id="defs1"><path
41
+ id="MJX-7-TEX-I-1D436"
42
+ d="m 50,252 q 0,115 67,221 67,106 169,168 102,62 204,63 90,0 143,-51 9,-10 15,-17 6,-7 8,-10 l 1,-3 q 3,0 27,26 7,6 15,14 8,8 16,16 8,8 10,11 l 15,15 h 6 q 14,0 14,-7 0,-4 -32,-137 -36,-139 -36,-140 -2,-5 -5,-6 -3,-1 -18,-2 h -16 q -6,6 -6,9 0,1 1,7 1,6 2,20 1,14 1,32 0,71 -32,124 -32,53 -109,54 -26,0 -56,-7 -30,-7 -72,-24 -42,-17 -83,-56 -41,-39 -73,-93 -32,-57 -51,-133 -19,-76 -19,-124 0,-114 76,-164 48,-34 118,-34 91,0 162,68 71,68 94,148 4,13 6,15 2,2 16,2 20,0 20,-9 0,-5 -1,-9 Q 618,132 523,55 428,-22 319,-22 206,-22 128,53 50,128 50,252 Z" /><clipPath
43
+ id="TRvQCFGpKKLF"><path
44
+ fill="none"
45
+ stroke="none"
46
+ d="M 0,0 H 27 V 36 H 0 Z"
47
+ id="path1" /></clipPath></defs><g
48
+ inkscape:label="Layer 1"
49
+ inkscape:groupmode="layer"
50
+ id="layer1"><use
51
+ data-c="1D436"
52
+ xlink:href="#MJX-7-TEX-I-1D436"
53
+ id="use1"
54
+ transform="matrix(0.12756991,0,0,-0.12756991,28.020344,166.98394)"
55
+ style="fill:#ffffff;fill-opacity:1;stroke:#000000;stroke-width:0;stroke-dasharray:0, 0;stroke-miterlimit:4;paint-order:normal;stroke-linejoin:round;stroke-dashoffset:0" /><g
56
+ transform="matrix(89.090601,0,0,89.090601,-156.44553,-1013.8097)"
57
+ id="g4"
58
+ clip-path="url(#clipPath9)"
59
+ style="stroke-width:0.98653504;stroke-dasharray:none;fill:#ffffff;fill-opacity:1"><g
60
+ transform="translate(3.2798571,12.382286)"
61
+ id="g2"
62
+ style="stroke-width:0.98653504;stroke-dasharray:none;fill:#ffffff;fill-opacity:1"><path
63
+ fill="#009688"
64
+ stroke="none"
65
+ paint-order="stroke fill markers"
66
+ d="m 0.192,-0.616 q 0,0.031 -0.028,0.046 -0.012,0.007 -0.026,0.007 -0.033,0 -0.048,-0.031 -0.005,-0.011 -0.005,-0.022 0,-0.031 0.028,-0.046 0.012,-0.007 0.026,-0.007 0.033,0 0.048,0.031 0.005,0.011 0.005,0.022 z"
67
+ id="path2"
68
+ style="stroke-width:0.98653504;stroke-dasharray:none;fill:#ffffff;fill-opacity:1" /></g><g
69
+ transform="translate(3.1428571,12.645286)"
70
+ id="g3"
71
+ style="stroke-width:0.98653504;stroke-dasharray:none;fill:#ffffff;fill-opacity:1"><path
72
+ fill="#009688"
73
+ stroke="none"
74
+ paint-order="stroke fill markers"
75
+ d="m 0.287,-0.683 -0.104,0.422 q 0.043,-0.017 0.111,-0.093 0.079,-0.088 0.146,-0.088 0.048,0 0.064,0.04 0.004,0.011 0.004,0.023 0,0.041 -0.034,0.057 -0.011,0.004 -0.021,0.004 -0.031,0 -0.037,-0.027 -0.001,-0.004 -0.001,-0.008 0,-0.028 0.025,-0.044 l 0.001,-0.001 v 0 Q 0.454,-0.406 0.472,-0.407 L 0.468,-0.411 Q 0.46,-0.417 0.447,-0.419 0.445,-0.42 0.438,-0.42 q -0.053,0 -0.129,0.081 -0.004,0.004 -0.008,0.009 l -0.006,0.006 q -0.052,0.054 -0.086,0.074 0.148,0.019 0.148,0.105 0,0.014 -0.004,0.031 -0.008,0.032 -0.008,0.056 0,0.047 0.032,0.047 0.046,0 0.074,-0.083 0.007,-0.017 0.013,-0.041 0.008,-0.017 0.014,-0.018 0.012,0 0.012,0.01 0,0.016 -0.019,0.065 -0.008,0.02 -0.017,0.036 -0.032,0.053 -0.079,0.053 -0.055,0 -0.08,-0.048 -0.012,-0.023 -0.012,-0.051 0,-0.011 0.004,-0.035 Q 0.29,-0.133 0.29,-0.144 0.29,-0.207 0.2,-0.225 0.187,-0.228 0.174,-0.229 0.124,-0.021 0.118,-0.01 0.108,0.009 0.084,0.011 0.06,0.011 0.056,-0.01 0.055,-0.014 0.055,-0.017 q 0,-0.008 0.004,-0.022 l 0.145,-0.576 0.003,-0.02 q 0,-0.011 -0.014,-0.014 v 0 q -0.012,-0.003 -0.036,-0.003 -0.022,0 -0.024,-0.012 0,-0.017 0.019,-0.02 l 0.122,-0.01 q 0.013,0 0.013,0.011 z"
76
+ id="path3"
77
+ style="stroke-width:0.98653504;stroke-dasharray:none;fill:#ffffff;fill-opacity:1" /></g></g></g></svg>
@@ -0,0 +1,8 @@
1
+ # Home
2
+
3
+ Welcome to the Calkit documentation!
4
+
5
+ Calkit is a lightweight framework for reproducible research projects.
6
+ A Calkit project is intended to include all digital materials
7
+ used throughout the research.
8
+ This includes code, datasets, figures, publications, notebooks, and more.
@@ -0,0 +1,52 @@
1
+ site_name: Calkit
2
+ repo_name: calkit/calkit
3
+ repo_url: https://github.com/calkit/calkit.git
4
+ theme:
5
+ name: material
6
+ logo: img/c-to-the-k-white.svg
7
+ features:
8
+ - content.code.copy
9
+ - navigation.footer
10
+ - navigation.indexes
11
+ - navigation.top
12
+ palette:
13
+ # Palette toggle for automatic mode
14
+ - media: "(prefers-color-scheme)"
15
+ primary: teal
16
+ accent: cyan
17
+ toggle:
18
+ icon: material/brightness-auto
19
+ name: Switch to light mode
20
+ # Palette toggle for light mode
21
+ - media: "(prefers-color-scheme: light)"
22
+ scheme: default
23
+ primary: teal
24
+ accent: cyan
25
+ toggle:
26
+ icon: material/brightness-7
27
+ name: Switch to dark mode
28
+ # Palette toggle for dark mode
29
+ - media: "(prefers-color-scheme: dark)"
30
+ primary: teal
31
+ accent: cyan
32
+ scheme: slate
33
+ toggle:
34
+ icon: material/brightness-4
35
+ name: Switch to system preference
36
+ nav:
37
+ - Home: index.md
38
+ - Environments: environments.md
39
+ - Tutorials:
40
+ - tutorials/adding-latex-pub-docker.md
41
+ - tutorials/notebook-pipeline.md
42
+ - tutorials/procedures.md
43
+ - tutorials/conda-envs.md
44
+ markdown_extensions:
45
+ - admonition
46
+ - pymdownx.highlight:
47
+ anchor_linenums: true
48
+ line_spans: __span
49
+ pygments_lang_class: true
50
+ - pymdownx.inlinehilite
51
+ - pymdownx.snippets
52
+ - pymdownx.superfences
@@ -40,9 +40,17 @@ data = [
40
40
  "pandas",
41
41
  "polars",
42
42
  ]
43
+ dev = [
44
+ "pytest",
45
+ ]
46
+ docs = [
47
+ "mkdocs",
48
+ "mkdocs-material",
49
+ ]
43
50
 
44
51
  [project.urls]
45
- Homepage = "https://github.com/calkit/calkit"
52
+ Homepage = "https://calkit.org"
53
+ Repository = "https://github.com/calkit/calkit"
46
54
  Issues = "https://github.com/calkit/calkit/issues"
47
55
 
48
56
  [project.scripts]
File without changes
File without changes