robotcode 0.28.1__tar.gz → 0.28.4__tar.gz
Sign up to get free protection for your applications and to get access to all the features.
- {robotcode-0.28.1 → robotcode-0.28.4}/CHANGELOG.md +13 -0
- {robotcode-0.28.1 → robotcode-0.28.4}/PKG-INFO +8 -5
- {robotcode-0.28.1 → robotcode-0.28.4}/README.md +4 -4
- robotcode-0.28.4/hatch.toml +123 -0
- {robotcode-0.28.1 → robotcode-0.28.4}/pyproject.toml +12 -105
- {robotcode-0.28.1 → robotcode-0.28.4}/robotcode/cli/__init__.py +26 -1
- robotcode-0.28.4/robotcode/cli/__version__.py +1 -0
- robotcode-0.28.1/robotcode/cli/__version__.py +0 -1
- {robotcode-0.28.1 → robotcode-0.28.4}/.gitignore +0 -0
- {robotcode-0.28.1 → robotcode-0.28.4}/LICENSE.txt +0 -0
- {robotcode-0.28.1 → robotcode-0.28.4}/robotcode/cli/__main__.py +0 -0
- {robotcode-0.28.1 → robotcode-0.28.4}/robotcode/cli/py.typed +0 -0
@@ -4,6 +4,19 @@ All notable changes to the "robotcode" extension will be documented in this file
|
|
4
4
|
|
5
5
|
<!--next-version-placeholder-->
|
6
6
|
|
7
|
+
## v0.28.4 (2023-03-19)
|
8
|
+
### Fix
|
9
|
+
* Update regression tests ([`59b782d`](https://github.com/d-biehl/robotcode/commit/59b782d434764a564521832f375ce062ed155842))
|
10
|
+
|
11
|
+
## v0.28.3 (2023-03-19)
|
12
|
+
### Fix
|
13
|
+
* Correct analysing keywords with embedded arguments for RF >= 6.1 ([`ef0b51f`](https://github.com/d-biehl/robotcode/commit/ef0b51f0bae83194a20a45d7cb07a4a6ac2b4f1c))
|
14
|
+
* Correct discovering for RobotFramework 6.1a1 ([`99aa82d`](https://github.com/d-biehl/robotcode/commit/99aa82de7d8b67d6acae1d2131351ff9354c4a4f))
|
15
|
+
|
16
|
+
## v0.28.2 (2023-03-10)
|
17
|
+
### Fix
|
18
|
+
* Correct version of robotcode runner ([`1ba8590`](https://github.com/d-biehl/robotcode/commit/1ba85902bfe8ab2c737658757e8fc76bf7cd19ca))
|
19
|
+
|
7
20
|
## v0.28.1 (2023-03-10)
|
8
21
|
### Fix
|
9
22
|
* Source actions are missing in the context menu for versions #129 ([`dd6202a`](https://github.com/d-biehl/robotcode/commit/dd6202af03e9ff09a0140d1d0d5da40db20410a8))
|
@@ -1,7 +1,8 @@
|
|
1
1
|
Metadata-Version: 2.1
|
2
2
|
Name: robotcode
|
3
|
-
Version: 0.28.
|
3
|
+
Version: 0.28.4
|
4
4
|
Summary: Language server, debugger and tools for Robot Framework
|
5
|
+
Project-URL: Homepage, https://robotcode.io
|
5
6
|
Project-URL: Donate, https://github.com/sponsors/d-biehl
|
6
7
|
Project-URL: Documentation, https://github.com/d-biehl/robotcode#readme
|
7
8
|
Project-URL: Changelog, https://github.com/d-biehl/robotcode/blob/main/CHANGELOG.md
|
@@ -33,6 +34,8 @@ Classifier: Topic :: Utilities
|
|
33
34
|
Classifier: Typing :: Typed
|
34
35
|
Requires-Python: >=3.8
|
35
36
|
Requires-Dist: robotcode-plugin
|
37
|
+
Provides-Extra: analyze
|
38
|
+
Requires-Dist: robotcode-analyze; extra == 'analyze'
|
36
39
|
Provides-Extra: debugger
|
37
40
|
Requires-Dist: robotcode-debugger; extra == 'debugger'
|
38
41
|
Provides-Extra: language-server
|
@@ -110,7 +113,7 @@ Autocompletion for:
|
|
110
113
|
- Keywords with parameters
|
111
114
|
- Namespaces
|
112
115
|
|
113
|
-
![Autocomplete Libraries and Keywords](./
|
116
|
+
![Autocomplete Libraries and Keywords](./docs/images/autocomplete1.gif)
|
114
117
|
|
115
118
|
Autocompletion supports all supported variables types
|
116
119
|
- local variables
|
@@ -120,7 +123,7 @@ Autocompletion supports all supported variables types
|
|
120
123
|
- command line variables
|
121
124
|
- builtin variables
|
122
125
|
|
123
|
-
![Autocomplete Variables](./
|
126
|
+
![Autocomplete Variables](./docs/images/autocomplete2.gif)
|
124
127
|
|
125
128
|
### Code Navigation
|
126
129
|
|
@@ -163,7 +166,7 @@ RobotCode can format your code with the internal RobotFramework robot.tidy tool
|
|
163
166
|
|
164
167
|
RobotCode supports running and debugging of RobotFramework testcases and tasks out of the box, directly from the definition of the test or suite.
|
165
168
|
|
166
|
-
![Running Tests](./
|
169
|
+
![Running Tests](./docs/images/running_tests.gif)
|
167
170
|
|
168
171
|
In the debug console you can see all log messages of the current run and navigate to the keyword the message was written by.
|
169
172
|
|
@@ -217,7 +220,7 @@ See the difference:
|
|
217
220
|
|
218
221
|
| Before | After |
|
219
222
|
| ---------------------------------------------------------------- | ---------------------------------------------------------- |
|
220
|
-
| ![Without customization](./
|
223
|
+
| ![Without customization](./docs/images/without_customization.gif) | ![With customization](./docs/images/with_customization.gif) |
|
221
224
|
|
222
225
|
|
223
226
|
As a template you can put the following code to your user settings of VSCode.
|
@@ -58,7 +58,7 @@ Autocompletion for:
|
|
58
58
|
- Keywords with parameters
|
59
59
|
- Namespaces
|
60
60
|
|
61
|
-
![Autocomplete Libraries and Keywords](./
|
61
|
+
![Autocomplete Libraries and Keywords](./docs/images/autocomplete1.gif)
|
62
62
|
|
63
63
|
Autocompletion supports all supported variables types
|
64
64
|
- local variables
|
@@ -68,7 +68,7 @@ Autocompletion supports all supported variables types
|
|
68
68
|
- command line variables
|
69
69
|
- builtin variables
|
70
70
|
|
71
|
-
![Autocomplete Variables](./
|
71
|
+
![Autocomplete Variables](./docs/images/autocomplete2.gif)
|
72
72
|
|
73
73
|
### Code Navigation
|
74
74
|
|
@@ -111,7 +111,7 @@ RobotCode can format your code with the internal RobotFramework robot.tidy tool
|
|
111
111
|
|
112
112
|
RobotCode supports running and debugging of RobotFramework testcases and tasks out of the box, directly from the definition of the test or suite.
|
113
113
|
|
114
|
-
![Running Tests](./
|
114
|
+
![Running Tests](./docs/images/running_tests.gif)
|
115
115
|
|
116
116
|
In the debug console you can see all log messages of the current run and navigate to the keyword the message was written by.
|
117
117
|
|
@@ -165,7 +165,7 @@ See the difference:
|
|
165
165
|
|
166
166
|
| Before | After |
|
167
167
|
| ---------------------------------------------------------------- | ---------------------------------------------------------- |
|
168
|
-
| ![Without customization](./
|
168
|
+
| ![Without customization](./docs/images/without_customization.gif) | ![With customization](./docs/images/with_customization.gif) |
|
169
169
|
|
170
170
|
|
171
171
|
As a template you can put the following code to your user settings of VSCode.
|
@@ -0,0 +1,123 @@
|
|
1
|
+
[version]
|
2
|
+
path = "robotcode/cli/__version__.py"
|
3
|
+
|
4
|
+
[build.targets.sdist]
|
5
|
+
only-include = ["robotcode", "CHANGELOG.md"]
|
6
|
+
|
7
|
+
[build.targets.wheel]
|
8
|
+
only-include = ["robotcode"]
|
9
|
+
|
10
|
+
[envs.default]
|
11
|
+
dependencies = [
|
12
|
+
"pytest",
|
13
|
+
"pytest-html",
|
14
|
+
"pytest_asyncio",
|
15
|
+
"pytest-regtest>=1.5.0",
|
16
|
+
"pytest-cov",
|
17
|
+
"mypy",
|
18
|
+
"ruff",
|
19
|
+
"black",
|
20
|
+
"debugpy",
|
21
|
+
"GitPython",
|
22
|
+
"semantic-version",
|
23
|
+
"robotremoteserver",
|
24
|
+
]
|
25
|
+
features = ["yaml", "rest", "lint", "tidy"]
|
26
|
+
pre-install-commands = ["python ./scripts/install_packages.py"]
|
27
|
+
|
28
|
+
|
29
|
+
[envs.default.scripts]
|
30
|
+
cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=robotcode --cov=tests {args}"
|
31
|
+
no-cov = "cov --no-cov {args}"
|
32
|
+
test = "pytest {args}"
|
33
|
+
test-reset = "test --regtest-reset"
|
34
|
+
install-bundled-editable = "python ./scripts/install_bundled_editable.py"
|
35
|
+
|
36
|
+
[envs.devel]
|
37
|
+
python = "38"
|
38
|
+
features = ["yaml", "rest", "lint", "tidy"]
|
39
|
+
|
40
|
+
[[envs.devel.matrix]]
|
41
|
+
python = ["38", "39", "310", "311"]
|
42
|
+
rf = ["rf41", "rf50", "rf60", "rf61a1"]
|
43
|
+
|
44
|
+
[envs.devel.overrides]
|
45
|
+
matrix.rf.dependencies = [
|
46
|
+
{ value = "robotframework>=4.1.0, <5.0", if = [
|
47
|
+
"rf41",
|
48
|
+
] },
|
49
|
+
{ value = "robotframework>=5.0.0, <6.0", if = [
|
50
|
+
"rf50",
|
51
|
+
] },
|
52
|
+
{ value = "robotframework>6.0.0, <6.1", if = [
|
53
|
+
"rf60",
|
54
|
+
] },
|
55
|
+
{ value = "robotframework==6.1a1", if = [
|
56
|
+
"rf61a1",
|
57
|
+
] },
|
58
|
+
]
|
59
|
+
|
60
|
+
[[envs.test.matrix]]
|
61
|
+
rf = ["rf41", "rf50", "rf60", "rf61a1"]
|
62
|
+
|
63
|
+
[envs.test.overrides]
|
64
|
+
matrix.rf.dependencies = [
|
65
|
+
{ value = "robotframework>=4.1.0, <5.0", if = [
|
66
|
+
"rf41",
|
67
|
+
] },
|
68
|
+
{ value = "robotframework>=5.0.0, <6.0", if = [
|
69
|
+
"rf50",
|
70
|
+
] },
|
71
|
+
{ value = "robotframework>6.0.0, <6.1", if = [
|
72
|
+
"rf60",
|
73
|
+
] },
|
74
|
+
{ value = "robotframework==6.1a1", if = [
|
75
|
+
"rf61a1",
|
76
|
+
] },
|
77
|
+
]
|
78
|
+
|
79
|
+
[envs.lint]
|
80
|
+
skip-install = true
|
81
|
+
extra-dependencies = ["tomli>=2.0.0"]
|
82
|
+
features = ["yaml", "rest", "lint", "tidy"]
|
83
|
+
|
84
|
+
[envs.lint.scripts]
|
85
|
+
typing = ["mypy --install-types --non-interactive {args:.}"]
|
86
|
+
style = ["ruff .", "black --check --diff ."]
|
87
|
+
fmt = ["ruff --fix .", "black .", "style"]
|
88
|
+
all = ["style", "typing"]
|
89
|
+
|
90
|
+
[envs.pages]
|
91
|
+
detached = true
|
92
|
+
dependencies = [
|
93
|
+
"mkdocs>=1.4.2",
|
94
|
+
"mkdocs-material",
|
95
|
+
# Plugins
|
96
|
+
"mkdocs-minify-plugin",
|
97
|
+
"mkdocs-git-revision-date-localized-plugin",
|
98
|
+
"mkdocstrings-python",
|
99
|
+
"mkdocs-redirects",
|
100
|
+
"mkdocs-glightbox",
|
101
|
+
|
102
|
+
# Extensions
|
103
|
+
"mkdocs-click~=0.8.0",
|
104
|
+
"pymdown-extensions~=9.6.0",
|
105
|
+
# Necessary for syntax highlighting in code blocks
|
106
|
+
"pygments",
|
107
|
+
]
|
108
|
+
|
109
|
+
[envs.pages.scripts]
|
110
|
+
build = ["mkdocs build"]
|
111
|
+
|
112
|
+
[envs.build]
|
113
|
+
detached = true
|
114
|
+
python = "38"
|
115
|
+
dependencies = ["GitPython", "semantic-version"]
|
116
|
+
|
117
|
+
[envs.build.scripts]
|
118
|
+
update-git-versions = ["python scripts/update_git_versions.py"]
|
119
|
+
update-doc-links = ["python scripts/update_doc_links.py"]
|
120
|
+
package = ["python scripts/package.py"]
|
121
|
+
publish = ["python scripts/publish.py"]
|
122
|
+
extract-release-notes = ["python scripts/extract_release_notes.py"]
|
123
|
+
is-prerelease = ["python scripts/is_prerelease.py"]
|
@@ -7,7 +7,7 @@ build-backend = "hatchling.build"
|
|
7
7
|
name = "robotcode"
|
8
8
|
description = "Language server, debugger and tools for Robot Framework"
|
9
9
|
authors = [{ name = "Daniel Biehl", email = "dbiehl@live.de" }]
|
10
|
-
readme = "README.md"
|
10
|
+
readme = {"file" = "README.md", "content-type" = "text/markdown"}
|
11
11
|
license = { text = "Apache-2.0" }
|
12
12
|
keywords = [
|
13
13
|
"Test",
|
@@ -54,6 +54,7 @@ dynamic = ["version"]
|
|
54
54
|
|
55
55
|
|
56
56
|
[project.urls]
|
57
|
+
Homepage = "https://robotcode.io"
|
57
58
|
Donate = "https://github.com/sponsors/d-biehl"
|
58
59
|
Documentation = "https://github.com/d-biehl/robotcode#readme"
|
59
60
|
Changelog = "https://github.com/d-biehl/robotcode/blob/main/CHANGELOG.md"
|
@@ -68,113 +69,13 @@ robotcode = "robotcode.cli:robotcode"
|
|
68
69
|
debugger = ["robotcode-debugger"]
|
69
70
|
language-server = ["robotcode-language-server"]
|
70
71
|
runner = ["robotcode-runner"]
|
72
|
+
analyze = ["robotcode-analyze"]
|
71
73
|
yaml = ["PyYAML>=5.4", "types-PyYAML>=5.4"]
|
72
74
|
lint = ["robotframework-robocop>=2.0.0"]
|
73
75
|
tidy = ["robotframework-tidy>=2.0.0"]
|
74
76
|
rest = ["docutils"]
|
75
77
|
|
76
78
|
|
77
|
-
[tool.hatch.version]
|
78
|
-
path = "robotcode/cli/__version__.py"
|
79
|
-
|
80
|
-
|
81
|
-
[tool.hatch.build.targets.sdist]
|
82
|
-
only-include = ["robotcode", "CHANGELOG.md"]
|
83
|
-
|
84
|
-
[tool.hatch.build.targets.wheel]
|
85
|
-
only-include = ["robotcode"]
|
86
|
-
|
87
|
-
|
88
|
-
[tool.hatch.envs.default]
|
89
|
-
dependencies = [
|
90
|
-
"pytest",
|
91
|
-
"pytest-html",
|
92
|
-
"pytest_asyncio",
|
93
|
-
"pytest-regtest>=1.5.0",
|
94
|
-
"pytest-cov",
|
95
|
-
"mypy",
|
96
|
-
"ruff",
|
97
|
-
"black",
|
98
|
-
"debugpy",
|
99
|
-
"GitPython",
|
100
|
-
"semantic-version",
|
101
|
-
"robotremoteserver",
|
102
|
-
]
|
103
|
-
features = ["yaml", "rest", "lint", "tidy"]
|
104
|
-
pre-install-commands = ["python ./scripts/install_packages.py"]
|
105
|
-
|
106
|
-
|
107
|
-
[tool.hatch.envs.default.scripts]
|
108
|
-
cov = "pytest --cov-report=term-missing --cov-config=pyproject.toml --cov=robotcode --cov=tests {args}"
|
109
|
-
no-cov = "cov --no-cov {args}"
|
110
|
-
test = "pytest {args}"
|
111
|
-
install-bundled-editable = "python ./scripts/install_bundled_editable.py"
|
112
|
-
|
113
|
-
|
114
|
-
[tool.hatch.envs.devel]
|
115
|
-
python = "38"
|
116
|
-
features = ["yaml", "rest", "lint", "tidy"]
|
117
|
-
|
118
|
-
[[tool.hatch.envs.devel.matrix]]
|
119
|
-
python = ["38", "39", "310", "311"]
|
120
|
-
rf = ["rf41", "rf50", "rf60"]
|
121
|
-
|
122
|
-
|
123
|
-
[tool.hatch.envs.devel.overrides]
|
124
|
-
matrix.rf.dependencies = [
|
125
|
-
{ value = "robotframework>=4.1.0, <5.0", if = [
|
126
|
-
"rf41",
|
127
|
-
] },
|
128
|
-
{ value = "robotframework>=5.0.0, <6.0", if = [
|
129
|
-
"rf50",
|
130
|
-
] },
|
131
|
-
{ value = "robotframework>6.0.0, <6.1", if = [
|
132
|
-
"rf60",
|
133
|
-
] },
|
134
|
-
]
|
135
|
-
|
136
|
-
[[tool.hatch.envs.test.matrix]]
|
137
|
-
rf = ["rf41", "rf50", "rf60"]
|
138
|
-
|
139
|
-
|
140
|
-
[tool.hatch.envs.test.overrides]
|
141
|
-
matrix.rf.dependencies = [
|
142
|
-
{ value = "robotframework>=4.1.0, <5.0", if = [
|
143
|
-
"rf41",
|
144
|
-
] },
|
145
|
-
{ value = "robotframework>=5.0.0, <6.0", if = [
|
146
|
-
"rf50",
|
147
|
-
] },
|
148
|
-
{ value = "robotframework>6.0.0, <6.1", if = [
|
149
|
-
"rf60",
|
150
|
-
] },
|
151
|
-
]
|
152
|
-
|
153
|
-
[tool.hatch.envs.lint]
|
154
|
-
skip-install = true
|
155
|
-
extra-dependencies = ["tomli>=2.0.0"]
|
156
|
-
features = ["yaml", "rest", "lint", "tidy"]
|
157
|
-
|
158
|
-
[tool.hatch.envs.lint.scripts]
|
159
|
-
typing = ["mypy --install-types --non-interactive {args:.}"]
|
160
|
-
style = ["ruff .", "black --check --diff ."]
|
161
|
-
fmt = ["ruff --fix .", "black .", "style"]
|
162
|
-
all = ["style", "typing"]
|
163
|
-
|
164
|
-
|
165
|
-
[tool.hatch.envs.build]
|
166
|
-
detached = true
|
167
|
-
python = "38"
|
168
|
-
dependencies = ["GitPython", "semantic-version"]
|
169
|
-
|
170
|
-
[tool.hatch.envs.build.scripts]
|
171
|
-
update-git-versions = ["python scripts/update_git_versions.py"]
|
172
|
-
update-doc-links = ["python scripts/update_doc_links.py"]
|
173
|
-
package = ["python scripts/package.py"]
|
174
|
-
publish = ["python scripts/publish.py"]
|
175
|
-
extract-release-notes = ["python scripts/extract_release_notes.py"]
|
176
|
-
is-prerelease = ["python scripts/is_prerelease.py"]
|
177
|
-
|
178
79
|
[tool.semantic_release]
|
179
80
|
version_variable = [
|
180
81
|
"robotcode/cli/__version__.py:__version__",
|
@@ -184,8 +85,9 @@ version_variable = [
|
|
184
85
|
"packages/language_server/robotcode/language_server/__version__.py:__version__",
|
185
86
|
"packages/modifiers/robotcode/modifiers/__version__.py:__version__",
|
186
87
|
"packages/plugin/robotcode/plugin/__version__.py:__version__",
|
187
|
-
"packages/
|
188
|
-
|
88
|
+
"packages/runner/robotcode/runner/__version__.py:__version__",
|
89
|
+
"packages/analyze/robotcode/analyze/__version__.py:__version__",
|
90
|
+
"packages/robot/robotcode/robot/__version__.py:__version__",
|
189
91
|
]
|
190
92
|
version_pattern = ['package.json:"version": "{version}"']
|
191
93
|
branch = "main"
|
@@ -204,6 +106,7 @@ extend-exclude = '''
|
|
204
106
|
)
|
205
107
|
'''
|
206
108
|
|
109
|
+
|
207
110
|
[tool.pytest.ini_options]
|
208
111
|
minversion = "6.0"
|
209
112
|
addopts = "-ra -vv -rf"
|
@@ -279,7 +182,7 @@ select = [
|
|
279
182
|
|
280
183
|
|
281
184
|
[tool.ruff.per-file-ignores]
|
282
|
-
"__init__.py" = ["F401"]
|
185
|
+
#"__init__.py" = ["F401"]
|
283
186
|
|
284
187
|
|
285
188
|
[tool.mypy]
|
@@ -313,7 +216,9 @@ mypy_path = [
|
|
313
216
|
"packages/language_server",
|
314
217
|
"packages/modifiers",
|
315
218
|
"packages/plugin",
|
219
|
+
"packages/robot",
|
316
220
|
"packages/runner",
|
221
|
+
"packages/analyze",
|
317
222
|
]
|
318
223
|
explicit_package_bases = true
|
319
224
|
|
@@ -351,3 +256,5 @@ ignore_missing_imports = true
|
|
351
256
|
|
352
257
|
[tool.pyright]
|
353
258
|
exclude = ["**/.hatch", "**/node_modules", "**/__pycache__", "bundled/libs"]
|
259
|
+
typeCheckingMode= "off"
|
260
|
+
pythonVersion = "3.8"
|
@@ -1,4 +1,5 @@
|
|
1
1
|
from pathlib import Path
|
2
|
+
from typing import Optional
|
2
3
|
|
3
4
|
import click
|
4
5
|
|
@@ -17,7 +18,7 @@ from .__version__ import __version__
|
|
17
18
|
)
|
18
19
|
@click.option("-d", "--dry", is_flag=True, help="Dry run, do not execute any commands.")
|
19
20
|
@click.pass_context
|
20
|
-
def robotcode(ctx: click.Context) -> None:
|
21
|
+
def robotcode(ctx: click.Context, config_file: Optional[Path], dry: Optional[bool] = None) -> None:
|
21
22
|
"""\b
|
22
23
|
_____ _ _ _____ _
|
23
24
|
| __ \\ | | | | / ____| | |
|
@@ -27,8 +28,32 @@ def robotcode(ctx: click.Context) -> None:
|
|
27
28
|
|_| \\_\\___/|_.__/ \\___/ \\__|\\_____\\___/ \\__,_|\\___|
|
28
29
|
|
29
30
|
"""
|
31
|
+
ctx.ensure_object(dict)
|
32
|
+
ctx.obj["config_file"] = config_file
|
33
|
+
ctx.obj["dry"] = dry
|
30
34
|
|
31
35
|
|
32
36
|
for p in PluginManager().cli_commands:
|
33
37
|
for c in p:
|
34
38
|
robotcode.add_command(c)
|
39
|
+
|
40
|
+
|
41
|
+
@robotcode.command()
|
42
|
+
@click.pass_context
|
43
|
+
def debug(ctx: click.Context) -> None:
|
44
|
+
"""Debug the robotframework run."""
|
45
|
+
click.echo("TODO")
|
46
|
+
|
47
|
+
|
48
|
+
@robotcode.command()
|
49
|
+
@click.pass_context
|
50
|
+
def clean(ctx: click.Context) -> None:
|
51
|
+
"""Clean the robotframework project."""
|
52
|
+
click.echo("TODO")
|
53
|
+
|
54
|
+
|
55
|
+
@robotcode.command()
|
56
|
+
@click.pass_context
|
57
|
+
def new(ctx: click.Context) -> None:
|
58
|
+
"""Create a new robotframework project."""
|
59
|
+
click.echo("TODO")
|
@@ -0,0 +1 @@
|
|
1
|
+
__version__ = "0.28.4"
|
@@ -1 +0,0 @@
|
|
1
|
-
__version__ = "0.28.1"
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|