jupyter-analysis-tools 1.2.2__py3-none-any.whl → 1.3.1__py3-none-any.whl
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.
- jupyter_analysis_tools/__init__.py +1 -1
- jupyter_analysis_tools/utils.py +25 -1
- {jupyter_analysis_tools-1.2.2.dist-info → jupyter_analysis_tools-1.3.1.dist-info}/METADATA +59 -6
- {jupyter_analysis_tools-1.2.2.dist-info → jupyter_analysis_tools-1.3.1.dist-info}/RECORD +8 -8
- jupyter_analysis_tools-1.3.1.dist-info/licenses/AUTHORS.rst +6 -0
- {jupyter_analysis_tools-1.2.2.dist-info → jupyter_analysis_tools-1.3.1.dist-info}/licenses/LICENSE +1 -1
- jupyter_analysis_tools-1.2.2.dist-info/licenses/AUTHORS.rst +0 -6
- {jupyter_analysis_tools-1.2.2.dist-info → jupyter_analysis_tools-1.3.1.dist-info}/WHEEL +0 -0
- {jupyter_analysis_tools-1.2.2.dist-info → jupyter_analysis_tools-1.3.1.dist-info}/top_level.txt +0 -0
jupyter_analysis_tools/utils.py
CHANGED
|
@@ -105,6 +105,30 @@ def addEnvScriptsToPATH():
|
|
|
105
105
|
os.environ["PATH"] = sep.join(environPATH)
|
|
106
106
|
|
|
107
107
|
|
|
108
|
+
def networkdriveMapping(cmdOutput: str = None):
|
|
109
|
+
"""Returns a dict of mapping drive letters to network paths (on Windows)."""
|
|
110
|
+
if isWindows():
|
|
111
|
+
if cmdOutput is None:
|
|
112
|
+
proc = subprocess.run(["net", "use"], capture_output=True, text=True, encoding="cp850")
|
|
113
|
+
cmdOutput = proc.stdout
|
|
114
|
+
rows = [line.split() for line in cmdOutput.splitlines() if "Windows Network" in line]
|
|
115
|
+
rows = dict(
|
|
116
|
+
[row[1:3] for row in rows if row[1].endswith(":") and row[2].startswith("\\\\")]
|
|
117
|
+
)
|
|
118
|
+
return rows
|
|
119
|
+
return {}
|
|
120
|
+
|
|
121
|
+
|
|
122
|
+
def makeNetworkdriveAbsolute(filepath, cmdOutput: str = None):
|
|
123
|
+
"""Replaces the drive letter of the given path by the respective network path, if possible."""
|
|
124
|
+
if isWindows() and not filepath.drive.startswith(r"\\"):
|
|
125
|
+
drivemap = networkdriveMapping(cmdOutput=cmdOutput)
|
|
126
|
+
prefix = drivemap.get(filepath.drive, None)
|
|
127
|
+
if prefix is not None:
|
|
128
|
+
filepath = Path(prefix).joinpath(*filepath.parts[1:])
|
|
129
|
+
return filepath
|
|
130
|
+
|
|
131
|
+
|
|
108
132
|
def checkWinFor7z():
|
|
109
133
|
"""Extend the PATH environment variable for access to the 7-zip executable."""
|
|
110
134
|
if not isWindows():
|
|
@@ -127,7 +151,7 @@ def extract7z(fn, workdir=None):
|
|
|
127
151
|
assert os.path.isfile(os.path.join(workdir, fn)), "Provided 7z archive '{}' not found!".format(
|
|
128
152
|
fn
|
|
129
153
|
)
|
|
130
|
-
print("Extracting
|
|
154
|
+
print(f"Extracting '{fn}':")
|
|
131
155
|
proc = subprocess.run(
|
|
132
156
|
["7z", "x", fn],
|
|
133
157
|
cwd=workdir,
|
|
@@ -1,15 +1,14 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: jupyter-analysis-tools
|
|
3
|
-
Version: 1.
|
|
3
|
+
Version: 1.3.1
|
|
4
4
|
Summary: Yet another Python library with helpers and utilities for data analysis and processing.
|
|
5
|
-
Author-email: Ingo Breßler <
|
|
6
|
-
License: MIT
|
|
5
|
+
Author-email: Ingo Breßler <ingo.bressler@bam.de>, "Brian R. Pauw" <brian.pauw@bam.de>
|
|
6
|
+
License-Expression: MIT
|
|
7
7
|
Project-URL: homepage, https://BAMresearch.github.io/jupyter-analysis-tools
|
|
8
8
|
Project-URL: documentation, https://BAMresearch.github.io/jupyter-analysis-tools
|
|
9
9
|
Project-URL: repository, https://github.com/BAMresearch/jupyter-analysis-tools
|
|
10
10
|
Project-URL: changelog, https://BAMresearch.github.io/jupyter-analysis-tools/changelog.html
|
|
11
11
|
Classifier: Development Status :: 4 - Beta
|
|
12
|
-
Classifier: License :: OSI Approved :: MIT License
|
|
13
12
|
Classifier: Operating System :: Unix
|
|
14
13
|
Classifier: Operating System :: POSIX
|
|
15
14
|
Classifier: Operating System :: MacOS
|
|
@@ -53,8 +52,8 @@ Yet another Python library with helpers and utilities for data analysis and proc
|
|
|
53
52
|
:target: https://pypi.org/project/jupyter-analysis-tools
|
|
54
53
|
:alt: PyPI Package latest release
|
|
55
54
|
|
|
56
|
-
.. |commits-since| image:: https://img.shields.io/github/commits-since/BAMresearch/jupyter-analysis-tools/v1.
|
|
57
|
-
:target: https://github.com/BAMresearch/jupyter-analysis-tools/compare/v1.
|
|
55
|
+
.. |commits-since| image:: https://img.shields.io/github/commits-since/BAMresearch/jupyter-analysis-tools/v1.3.1.svg
|
|
56
|
+
:target: https://github.com/BAMresearch/jupyter-analysis-tools/compare/v1.3.1...main
|
|
58
57
|
:alt: Commits since latest release
|
|
59
58
|
|
|
60
59
|
.. |license| image:: https://img.shields.io/pypi/l/jupyter-analysis-tools.svg
|
|
@@ -127,6 +126,60 @@ Note, to combine the coverage data from all the tox environments run:
|
|
|
127
126
|
|
|
128
127
|
# CHANGELOG
|
|
129
128
|
|
|
129
|
+
## v1.3.1 (2025-07-23)
|
|
130
|
+
|
|
131
|
+
### Bug fixes
|
|
132
|
+
|
|
133
|
+
* Project: update manifest and flake8 config, reapplied template ([`c98c648`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/c98c6489423a45d8a195fda32396ea9d9d18b9eb))
|
|
134
|
+
|
|
135
|
+
### Code style
|
|
136
|
+
|
|
137
|
+
* utils: satisfy flake8 ([`2e3dc36`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/2e3dc36ef21e60f4fe7b8caea567411cc69967c0))
|
|
138
|
+
|
|
139
|
+
### Continuous integration
|
|
140
|
+
|
|
141
|
+
* semantic-release: replace .cookiecutterrc by .copier-answers.yml ([`2030c88`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/2030c88dfb0ca69ac332380e33b3baed9cb6cf44))
|
|
142
|
+
|
|
143
|
+
* coverage: coverage-report fix ([`1bd26b7`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/1bd26b71abcb090ef32cb2fbdd05b978bce5144c))
|
|
144
|
+
|
|
145
|
+
* GitHub Workflows: remove templates, rendered by *copier update* ([`8a637a5`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/8a637a5b34df4a3ec6a4e8cae97a9d3e24ad2e5c))
|
|
146
|
+
|
|
147
|
+
* GitHub Workflow: publish depends on all other job to be successful ([`efc1f22`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/efc1f223aa2da882d43b27406a2f20113c2c8879))
|
|
148
|
+
|
|
149
|
+
* Template: latest GitHub Workflow templates applied ([`7d87906`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/7d87906c852cb2b57704c45db0b19c7a1ae513a2))
|
|
150
|
+
|
|
151
|
+
* coverage: fix path name matching rules ([`37bd2d9`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/37bd2d93a8fe10a3355feee6779f45bd9161a88b))
|
|
152
|
+
|
|
153
|
+
### Documentation
|
|
154
|
+
|
|
155
|
+
* Copyright years: update ([`cee35e6`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/cee35e6fe92ae27575bd7fb4a7a2638cd1c931b2))
|
|
156
|
+
|
|
157
|
+
* Contributions: Authors update ([`dd5a5c4`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/dd5a5c4d81732821057bcc200f462159cffa760b))
|
|
158
|
+
|
|
159
|
+
### Refactoring
|
|
160
|
+
|
|
161
|
+
* Project: GitHub Workflow templates fixed ([`b346b28`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/b346b282332f0f7f81b724509a4004e6a69d7791))
|
|
162
|
+
|
|
163
|
+
* Project: GitHub Workflow templates updated ([`235c4d9`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/235c4d9c53997fdf4c08913361fb57167939cd7c))
|
|
164
|
+
|
|
165
|
+
* Project: switching to copier for project template with update mechanism ([`0d3064b`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/0d3064b8cef45667b0964aab248b583424946207))
|
|
166
|
+
|
|
167
|
+
## v1.3.0 (2025-07-16)
|
|
168
|
+
|
|
169
|
+
### Bug fixes
|
|
170
|
+
|
|
171
|
+
* utils.extract7z: informative info message ([`80d2f71`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/80d2f7134992d59f0bfd7f5e7bc27772f77cd452))
|
|
172
|
+
|
|
173
|
+
### Continuous integration
|
|
174
|
+
|
|
175
|
+
* coverage: fix coverage artifact name for multiple matrix.os ([`f471599`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/f471599b8c86e29fd20b78f7cbd9291c3a6dd98a))
|
|
176
|
+
|
|
177
|
+
* testing: test on Windows as well ([`4a83c39`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/4a83c3924bcb820ef0728af40b86a0f6622dfef2))
|
|
178
|
+
|
|
179
|
+
### Features
|
|
180
|
+
|
|
181
|
+
* utils.makeNetworkdriveAbsolute: new routines for translating a windows drive letter mount to its network location ([`823a6bf`](https://github.com/BAMresearch/jupyter-analysis-tools/commit/823a6bfe126829381bc14d34578f342f4b9d3e8f))
|
|
182
|
+
|
|
130
183
|
## v1.2.2 (2025-07-15)
|
|
131
184
|
|
|
132
185
|
### Bug fixes
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
jupyter_analysis_tools/__init__.py,sha256=
|
|
1
|
+
jupyter_analysis_tools/__init__.py,sha256=d2fT11SRY4ZeCv-o95TNGlC1SErU2HHd0KeKlXaNcZQ,386
|
|
2
2
|
jupyter_analysis_tools/analysis.py,sha256=AiAvUO648f0PYXqLfal1kDH926neasE5c1RYFu9wtYg,1768
|
|
3
3
|
jupyter_analysis_tools/binning.py,sha256=d6eXRC3IOnnJIF25OfEASyWedT71EX2nF7jAgGJ9suQ,14536
|
|
4
4
|
jupyter_analysis_tools/datalocations.py,sha256=BakfiZOMcBwp-_DAn7l57lGWZmZGNnk0j73V75nLBUA,4322
|
|
@@ -6,11 +6,11 @@ jupyter_analysis_tools/distrib.py,sha256=uyh2jXDdXR6dfd36CAoE5_psoFF0bfA6l1wletP
|
|
|
6
6
|
jupyter_analysis_tools/git.py,sha256=mqSk5nnAFrmk1_2KFuKVrDWOkRbGbAQOq2N1DfxhNpg,2216
|
|
7
7
|
jupyter_analysis_tools/plotting.py,sha256=L2gwSjlBVK8OneAfSuna3vCJIg2rSEdvd9TfEbM2Als,1183
|
|
8
8
|
jupyter_analysis_tools/readdata.py,sha256=6Tncwo3NSYAnyLQzAhDtiUyp1Xpw3CahqQ_5NeGhJqI,6030
|
|
9
|
-
jupyter_analysis_tools/utils.py,sha256=
|
|
9
|
+
jupyter_analysis_tools/utils.py,sha256=EbRooLCGODH8tjQVE8-OuuPoI4weKLzmxdFY794En_k,6327
|
|
10
10
|
jupyter_analysis_tools/widgets.py,sha256=rA8qPvY9nS1OtykZwXtCTG29K-N_MYFVb5Aj8yK40_s,2996
|
|
11
|
-
jupyter_analysis_tools-1.
|
|
12
|
-
jupyter_analysis_tools-1.
|
|
13
|
-
jupyter_analysis_tools-1.
|
|
14
|
-
jupyter_analysis_tools-1.
|
|
15
|
-
jupyter_analysis_tools-1.
|
|
16
|
-
jupyter_analysis_tools-1.
|
|
11
|
+
jupyter_analysis_tools-1.3.1.dist-info/licenses/AUTHORS.rst,sha256=-twUESsY0XqFQ0MIC0ylKhglNwL8lyHmGXriM3RF-2s,93
|
|
12
|
+
jupyter_analysis_tools-1.3.1.dist-info/licenses/LICENSE,sha256=jRVl3hmCq0Qv1wifm-EelEKhFWecdoWdhcxSte4a1_c,1125
|
|
13
|
+
jupyter_analysis_tools-1.3.1.dist-info/METADATA,sha256=iEQjE_vlu3WStYGwgA9zRZRATlkowo6VLpS6zVXeTiA,41021
|
|
14
|
+
jupyter_analysis_tools-1.3.1.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
15
|
+
jupyter_analysis_tools-1.3.1.dist-info/top_level.txt,sha256=ei_0x-BF85FLoJ_h67ySwDFowtqus_gI4_0GR466PEU,23
|
|
16
|
+
jupyter_analysis_tools-1.3.1.dist-info/RECORD,,
|
{jupyter_analysis_tools-1.2.2.dist-info → jupyter_analysis_tools-1.3.1.dist-info}/licenses/LICENSE
RENAMED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
MIT License
|
|
2
2
|
|
|
3
|
-
Copyright (c) 2018-
|
|
3
|
+
Copyright (c) 2018-2025, Ingo Breßler and Brian R. Pauw
|
|
4
4
|
|
|
5
5
|
Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:
|
|
6
6
|
|
|
File without changes
|
{jupyter_analysis_tools-1.2.2.dist-info → jupyter_analysis_tools-1.3.1.dist-info}/top_level.txt
RENAMED
|
File without changes
|