atomicshop 2.9.33__py3-none-any.whl → 2.10.0__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.
Potentially problematic release.
This version of atomicshop might be problematic. Click here for more details.
- atomicshop/__init__.py +1 -1
- atomicshop/wrappers/elasticsearchw/config_basic.py +7 -2
- atomicshop/wrappers/elasticsearchw/infrastructure.py +23 -0
- atomicshop/wrappers/elasticsearchw/install_elastic.py +6 -0
- atomicshop/wrappers/githubw.py +109 -15
- atomicshop/wrappers/nodejsw/install_nodejs.py +92 -10
- {atomicshop-2.9.33.dist-info → atomicshop-2.10.0.dist-info}/METADATA +1 -1
- {atomicshop-2.9.33.dist-info → atomicshop-2.10.0.dist-info}/RECORD +11 -11
- {atomicshop-2.9.33.dist-info → atomicshop-2.10.0.dist-info}/LICENSE.txt +0 -0
- {atomicshop-2.9.33.dist-info → atomicshop-2.10.0.dist-info}/WHEEL +0 -0
- {atomicshop-2.9.33.dist-info → atomicshop-2.10.0.dist-info}/top_level.txt +0 -0
atomicshop/__init__.py
CHANGED
|
@@ -6,10 +6,15 @@ DEFAULT_KIBANA_PORT: str = '5601'
|
|
|
6
6
|
DEFAULT_KIBANA_HOST: str = 'localhost'
|
|
7
7
|
DEFAULT_KIBANA_URL: str = f"http://{DEFAULT_KIBANA_HOST}:{DEFAULT_KIBANA_PORT}"
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
9
|
+
ELASTIC_SEARCH_CONFIG_DIRECTORY: str = "/etc/elasticsearch"
|
|
10
|
+
|
|
11
|
+
ELASTIC_CONFIG_FILE: str = f"{ELASTIC_SEARCH_CONFIG_DIRECTORY}/elasticsearch.yml"
|
|
11
12
|
XPACK_SECURITY_SETTING_NAME: str = "xpack.security.enabled"
|
|
12
13
|
|
|
14
|
+
ELASTIC_JVM_OPTIONS_DIRECTORY: str = f"{ELASTIC_SEARCH_CONFIG_DIRECTORY}/jvm.options.d"
|
|
15
|
+
ELASTIC_JVM_OPTIONS_CUSTOM_FILE: str = f"{ELASTIC_JVM_OPTIONS_DIRECTORY}/custom.options"
|
|
16
|
+
ELASTIC_JVM_OPTIONS_4GB_MEMORY_USAGE: list[str] = ['-Xms4g', '-Xmx4g']
|
|
17
|
+
|
|
13
18
|
UBUNTU_DEPENDENCY_PACKAGES: list[str] = ['apt-transport-https', 'openjdk-11-jdk', 'wget']
|
|
14
19
|
UBUNTU_ELASTIC_PACKAGE_NAME: str = 'elasticsearch'
|
|
15
20
|
UBUNTU_ELASTIC_SERVICE_NAME: str = 'elasticsearch'
|
|
@@ -170,6 +170,29 @@ def modify_xpack_security_setting(
|
|
|
170
170
|
print_api(f"The setting is already set to [{setting}].")
|
|
171
171
|
|
|
172
172
|
|
|
173
|
+
def create_jvm_options_custom_file(file_path: str = None, options: list = None):
|
|
174
|
+
"""
|
|
175
|
+
The function creates a custom JVM options file for Elasticsearch.
|
|
176
|
+
The default file path is 'config_basic.ELASTIC_JVM_OPTIONS_CUSTOM_FILE'.
|
|
177
|
+
The default options are 'config_basic.ELASTIC_JVM_OPTIONS_4GB_MEMORY_USAGE'.
|
|
178
|
+
The 4GB memory usage options are needed for the Elasticsearch to work properly and not to crash.
|
|
179
|
+
:param file_path: str, the path to the custom JVM options file.
|
|
180
|
+
:param options: list, the list of JVM options.
|
|
181
|
+
:return:
|
|
182
|
+
"""
|
|
183
|
+
|
|
184
|
+
if not file_path:
|
|
185
|
+
file_path = config_basic.ELASTIC_JVM_OPTIONS_CUSTOM_FILE
|
|
186
|
+
|
|
187
|
+
if not options:
|
|
188
|
+
options = config_basic.ELASTIC_JVM_OPTIONS_4GB_MEMORY_USAGE
|
|
189
|
+
|
|
190
|
+
# Write the options to the file.
|
|
191
|
+
with open(file_path, 'w') as file:
|
|
192
|
+
for option in options:
|
|
193
|
+
file.write(f"{option}\n")
|
|
194
|
+
|
|
195
|
+
|
|
173
196
|
def is_server_available(
|
|
174
197
|
max_attempts: int = 5,
|
|
175
198
|
wait_between_attempts_seconds: float = 10,
|
|
@@ -215,6 +215,12 @@ def install_elastic_kibana_ubuntu(install_elastic: bool = True, install_kibana:
|
|
|
215
215
|
|
|
216
216
|
infrastructure.start_elastic_and_check_service_availability()
|
|
217
217
|
|
|
218
|
+
print_api("Creating custom JVM options file with 4GB memory usage.")
|
|
219
|
+
infrastructure.create_jvm_options_custom_file(
|
|
220
|
+
file_path=config_basic.ELASTIC_JVM_OPTIONS_CUSTOM_FILE,
|
|
221
|
+
options=config_basic.ELASTIC_JVM_OPTIONS_4GB_MEMORY_USAGE
|
|
222
|
+
)
|
|
223
|
+
|
|
218
224
|
if install_kibana:
|
|
219
225
|
# Install Kibana.
|
|
220
226
|
ubuntu_terminal.install_packages([config_basic.UBUNTU_KIBANA_PACKAGE_NAME])
|
atomicshop/wrappers/githubw.py
CHANGED
|
@@ -1,18 +1,79 @@
|
|
|
1
1
|
import requests
|
|
2
2
|
import fnmatch
|
|
3
3
|
|
|
4
|
-
from ..
|
|
4
|
+
from .. import web, urls
|
|
5
5
|
from ..print_api import print_api
|
|
6
|
-
from ..urls import url_parser
|
|
7
6
|
|
|
8
7
|
|
|
9
8
|
class GitHubWrapper:
|
|
10
9
|
# You also can use '.tar.gz' as extension.
|
|
11
10
|
def __init__(
|
|
12
|
-
self,
|
|
13
|
-
|
|
11
|
+
self,
|
|
12
|
+
user_name: str = None,
|
|
13
|
+
repo_name: str = None,
|
|
14
|
+
repo_url: str = None,
|
|
15
|
+
branch: str = 'master',
|
|
16
|
+
branch_file_extension: str = '.zip'
|
|
17
|
+
):
|
|
18
|
+
"""
|
|
19
|
+
This class is a wrapper for GitHub repositories. It can download the branch file from the repository and extract
|
|
20
|
+
it to the target directory and more.
|
|
21
|
+
|
|
22
|
+
:param user_name: str, the user-name of the repository.
|
|
23
|
+
https://github.com/{user_name}/{repo_name}
|
|
24
|
+
:param repo_name: str, the repository name.
|
|
25
|
+
:param repo_url: str, the repository url.
|
|
26
|
+
You can provide the full url to the repository directly and then extract the user_name and repo_name from it
|
|
27
|
+
with the 'build_links_from_repo_url' function.
|
|
28
|
+
:param branch: str, the branch name. The default is 'master'.
|
|
29
|
+
:param branch_file_extension: str, the branch file extension. The default is '.zip'.
|
|
30
|
+
|
|
31
|
+
================================================================================================================
|
|
32
|
+
Usage to download the 'master' branch file:
|
|
33
|
+
git_wrapper = GitHubWrapper(user_name='user_name', repo_name='repo_name')
|
|
34
|
+
git_wrapper.download_and_extract_branch(target_directory='target_directory')
|
|
35
|
+
|
|
36
|
+
Usage to download the 'main' branch file:
|
|
37
|
+
git_wrapper = GitHubWrapper(user_name='user_name', repo_name='repo_name', branch='main')
|
|
38
|
+
git_wrapper.download_and_extract_branch(target_directory='target_directory')
|
|
39
|
+
|
|
40
|
+
You can provide the user_name and repo_name after the initialization of the class:
|
|
41
|
+
git_wrapper = GitHubWrapper()
|
|
42
|
+
git_wrapper.user_name = 'user_name'
|
|
43
|
+
git_wrapper.repo_name = 'repo_name'
|
|
44
|
+
git_wrapper.build_links_from_user_and_repo()
|
|
45
|
+
git_wrapper.download_and_extract_branch(target_directory='target_directory')
|
|
46
|
+
================================================================================================================
|
|
47
|
+
Usage to download the 'master' branch file from the repository url:
|
|
48
|
+
git_wrapper = GitHubWrapper(repo_url='http://github.com/user_name/repo_name')
|
|
49
|
+
git_wrapper.download_and_extract_branch(target_directory='target_directory')
|
|
50
|
+
|
|
51
|
+
Usage to download the 'main' branch file from the repository url:
|
|
52
|
+
git_wrapper = GitHubWrapper(repo_url='http://github.com/user_name/repo_name', branch='main')
|
|
53
|
+
git_wrapper.download_and_extract_branch(target_directory='target_directory')
|
|
54
|
+
|
|
55
|
+
You can provide the repo_url after the initialization of the class:
|
|
56
|
+
git_wrapper = GitHubWrapper()
|
|
57
|
+
git_wrapper.repo_url = 'http://github.com/user_name/repo_name'
|
|
58
|
+
git_wrapper.build_links_from_repo_url()
|
|
59
|
+
git_wrapper.download_and_extract_branch(target_directory='target_directory')
|
|
60
|
+
================================================================================================================
|
|
61
|
+
Usage to download the latest release where the file name is 'test_file.zip':
|
|
62
|
+
git_wrapper = GitHubWrapper(user_name='user_name', repo_name='repo_name')
|
|
63
|
+
git_wrapper.download_and_extract_latest_release(
|
|
64
|
+
target_directory='target_directory', string_pattern='test_*.zip')
|
|
65
|
+
================================================================================================================
|
|
66
|
+
Usage to get the latest release json:
|
|
67
|
+
git_wrapper = GitHubWrapper(user_name='user_name', repo_name='repo_name')
|
|
68
|
+
git_wrapper.get_the_latest_release_json()
|
|
69
|
+
================================================================================================================
|
|
70
|
+
Usage to get the latest release version:
|
|
71
|
+
git_wrapper = GitHubWrapper(user_name='user_name', repo_name='repo_name')
|
|
72
|
+
git_wrapper.get_the_latest_release_version_number()
|
|
73
|
+
"""
|
|
74
|
+
|
|
14
75
|
self.user_name: str = user_name
|
|
15
|
-
self.repo_name = repo_name
|
|
76
|
+
self.repo_name: str = repo_name
|
|
16
77
|
self.repo_url: str = repo_url
|
|
17
78
|
self.branch: str = branch
|
|
18
79
|
self.branch_file_extension: str = branch_file_extension
|
|
@@ -27,6 +88,12 @@ class GitHubWrapper:
|
|
|
27
88
|
self.branch_downloaded_folder_name: str = str()
|
|
28
89
|
self.latest_release_json_url: str = str()
|
|
29
90
|
|
|
91
|
+
if self.user_name and self.repo_name and not self.repo_url:
|
|
92
|
+
self.build_links_from_user_and_repo()
|
|
93
|
+
|
|
94
|
+
if self.repo_url and not self.user_name and not self.repo_name:
|
|
95
|
+
self.build_links_from_repo_url()
|
|
96
|
+
|
|
30
97
|
def build_links_from_user_and_repo(self, **kwargs):
|
|
31
98
|
if not self.user_name or not self.repo_name:
|
|
32
99
|
message = "'user_name' or 'repo_name' is empty."
|
|
@@ -43,7 +110,7 @@ class GitHubWrapper:
|
|
|
43
110
|
message = "'repo_url' is empty."
|
|
44
111
|
print_api(message, color="red", error_type=True, **kwargs)
|
|
45
112
|
|
|
46
|
-
repo_url_parsed = url_parser(self.repo_url)
|
|
113
|
+
repo_url_parsed = urls.url_parser(self.repo_url)
|
|
47
114
|
self.check_github_domain(repo_url_parsed['netloc'])
|
|
48
115
|
self.user_name = repo_url_parsed['directories'][0]
|
|
49
116
|
self.repo_name = repo_url_parsed['directories'][1]
|
|
@@ -73,20 +140,32 @@ class GitHubWrapper:
|
|
|
73
140
|
"""
|
|
74
141
|
|
|
75
142
|
# Download the repo to current working directory, extract and remove the archive.
|
|
76
|
-
download_and_extract_file(
|
|
143
|
+
web.download_and_extract_file(
|
|
77
144
|
file_url=self.branch_download_link,
|
|
78
145
|
target_directory=target_directory,
|
|
79
146
|
archive_remove_first_directory=archive_remove_first_directory,
|
|
80
147
|
**kwargs)
|
|
81
148
|
|
|
82
149
|
def download_and_extract_latest_release(
|
|
83
|
-
self,
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
150
|
+
self,
|
|
151
|
+
target_directory: str,
|
|
152
|
+
string_pattern: str,
|
|
153
|
+
archive_remove_first_directory: bool = False,
|
|
154
|
+
**kwargs):
|
|
155
|
+
"""
|
|
156
|
+
This function will download the latest release from the GitHub repository, extract the file and remove the file,
|
|
157
|
+
leaving only the extracted folder.
|
|
158
|
+
:param target_directory: str, the target directory to download and extract the file.
|
|
159
|
+
:param string_pattern: str, the string pattern to search in the latest release. Wildcards can be used.
|
|
160
|
+
:param archive_remove_first_directory: bool, sets if archive extract function will extract the archive
|
|
161
|
+
without first directory in the archive. Check reference in the
|
|
162
|
+
'archiver.zip.extract_archive_with_zipfile' function.
|
|
163
|
+
:param kwargs: dict, the print arguments for the 'print_api' function.
|
|
164
|
+
:return:
|
|
165
|
+
"""
|
|
166
|
+
|
|
167
|
+
# Get the 'assets' key of the latest release json.
|
|
168
|
+
github_latest_releases_list = self.get_the_latest_release_json()['assets']
|
|
90
169
|
|
|
91
170
|
# Get only download urls of the latest releases.
|
|
92
171
|
download_urls: list = list()
|
|
@@ -103,8 +182,23 @@ class GitHubWrapper:
|
|
|
103
182
|
f'{found_urls}'
|
|
104
183
|
print_api(message, color="red", error_type=True, **kwargs)
|
|
105
184
|
|
|
106
|
-
download_and_extract_file(
|
|
185
|
+
web.download_and_extract_file(
|
|
107
186
|
file_url=found_urls[0],
|
|
108
187
|
target_directory=target_directory,
|
|
109
188
|
archive_remove_first_directory=archive_remove_first_directory,
|
|
110
189
|
**kwargs)
|
|
190
|
+
|
|
191
|
+
def get_the_latest_release_json(self):
|
|
192
|
+
"""
|
|
193
|
+
This function will get the latest releases json.
|
|
194
|
+
:return:
|
|
195
|
+
"""
|
|
196
|
+
response = requests.get(self.latest_release_json_url)
|
|
197
|
+
return response.json()
|
|
198
|
+
|
|
199
|
+
def get_the_latest_release_version_number(self):
|
|
200
|
+
"""
|
|
201
|
+
This function will get the latest release version number.
|
|
202
|
+
:return:
|
|
203
|
+
"""
|
|
204
|
+
return self.get_the_latest_release_json()['tag_name']
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
import subprocess
|
|
2
|
-
import
|
|
2
|
+
import requests
|
|
3
3
|
|
|
4
|
-
from ... import
|
|
4
|
+
from ...basics import booleans
|
|
5
|
+
from .. import githubw, ubuntu_terminal
|
|
5
6
|
from ...print_api import print_api
|
|
6
7
|
|
|
7
8
|
|
|
@@ -28,22 +29,103 @@ def is_nodejs_installed():
|
|
|
28
29
|
return False
|
|
29
30
|
|
|
30
31
|
|
|
31
|
-
def
|
|
32
|
+
def get_nodejs_latest_version_number(
|
|
33
|
+
by_github_api: bool = True,
|
|
34
|
+
_by_nodejs_website: bool = False,
|
|
35
|
+
get_major: bool = False
|
|
36
|
+
) -> str:
|
|
37
|
+
"""
|
|
38
|
+
The function will get the latest version number of Node.js.
|
|
39
|
+
:param by_github_api: bool, if True, the function will get the version number using the GitHub API.
|
|
40
|
+
Limitations: rate limits apply.
|
|
41
|
+
:param _by_nodejs_website: bool, if True, the function will get the version number using the Node.js website.
|
|
42
|
+
Limitations: the website structure can change and the json file is relatively large.
|
|
43
|
+
This is only for reference, it is not tested.
|
|
44
|
+
:param get_major: bool, if True, the function will return only the major version number string.
|
|
45
|
+
:return: str.
|
|
46
|
+
"""
|
|
47
|
+
|
|
48
|
+
if by_github_api and _by_nodejs_website:
|
|
49
|
+
raise ValueError("Only one of the arguments can be True.")
|
|
50
|
+
elif not by_github_api and not _by_nodejs_website:
|
|
51
|
+
raise ValueError("At least one of the arguments must be True.")
|
|
52
|
+
|
|
53
|
+
latest_version = ''
|
|
54
|
+
if by_github_api:
|
|
55
|
+
github_wrapper = githubw.GitHubWrapper('nodejs', 'node')
|
|
56
|
+
latest_version = github_wrapper.get_the_latest_release_version_number()
|
|
57
|
+
elif _by_nodejs_website:
|
|
58
|
+
url = "https://nodejs.org/dist/index.json"
|
|
59
|
+
response = requests.get(url)
|
|
60
|
+
versions = response.json()
|
|
61
|
+
latest_version = versions[0]['version'] # Assuming the first one is the latest.
|
|
62
|
+
|
|
63
|
+
if get_major:
|
|
64
|
+
latest_version = latest_version.replace('v', '')
|
|
65
|
+
latest_version = latest_version.split('.')[0]
|
|
66
|
+
|
|
67
|
+
return latest_version
|
|
68
|
+
|
|
69
|
+
|
|
70
|
+
def install_nodejs_ubuntu(
|
|
71
|
+
install_latest_version: bool = False,
|
|
72
|
+
install_lts: bool = True,
|
|
73
|
+
install_by_version_number: str = None,
|
|
74
|
+
force_install: bool = False
|
|
75
|
+
):
|
|
32
76
|
"""
|
|
33
77
|
The function will install Node.js on Ubuntu.
|
|
78
|
+
|
|
79
|
+
:param install_latest_version: bool, if True, the function will install the latest version of Node.js.
|
|
80
|
+
:param install_lts: bool, if True, the function will install the LTS version of Node.js.
|
|
81
|
+
:param install_by_version_number: str, the version number of Node.js to install.
|
|
82
|
+
:param force_install: bool, if True, the function will install Node.js even if it is already installed.
|
|
83
|
+
|
|
34
84
|
:return:
|
|
35
85
|
"""
|
|
36
86
|
|
|
87
|
+
booleans.check_3_booleans_when_only_1_can_be_true(
|
|
88
|
+
(install_latest_version, 'install_latest_version'),
|
|
89
|
+
(install_lts, 'install_lts'),
|
|
90
|
+
(install_by_version_number, 'install_by_version_number')
|
|
91
|
+
)
|
|
92
|
+
|
|
37
93
|
# Check if Node.js is already installed.
|
|
38
94
|
if is_nodejs_installed():
|
|
39
|
-
|
|
95
|
+
if not force_install:
|
|
96
|
+
return
|
|
40
97
|
|
|
41
|
-
|
|
42
|
-
process.run_command(['curl', '-sL', 'https://deb.nodesource.com/setup_14.x', '-o', '/tmp/nodesource_setup.sh'])
|
|
43
|
-
process.run_command(['bash', '/tmp/nodesource_setup.sh'])
|
|
98
|
+
print_api("Adding NodeSource repository...")
|
|
44
99
|
|
|
45
|
-
#
|
|
46
|
-
|
|
100
|
+
# Fetch and execute the NodeSource repository setup script.
|
|
101
|
+
if install_latest_version:
|
|
102
|
+
install_by_version_number: str = get_nodejs_latest_version_number(get_major=True)
|
|
103
|
+
|
|
104
|
+
command: str = ''
|
|
105
|
+
if install_latest_version or install_by_version_number:
|
|
106
|
+
command = f"curl -fsSL https://deb.nodesource.com/setup_{install_by_version_number}.x | sudo -E bash -"
|
|
107
|
+
elif install_lts:
|
|
108
|
+
command = "curl -fsSL https://deb.nodesource.com/setup_current.x | sudo -E bash -"
|
|
109
|
+
|
|
110
|
+
_ = subprocess.check_output(command, shell=True, stderr=subprocess.STDOUT)
|
|
111
|
+
|
|
112
|
+
ubuntu_terminal.update_system_packages()
|
|
113
|
+
ubuntu_terminal.install_packages(['nodejs'])
|
|
114
|
+
|
|
115
|
+
# Check if Node.js is installed.
|
|
116
|
+
is_nodejs_installed()
|
|
117
|
+
|
|
118
|
+
|
|
119
|
+
def install_npm_package_ubuntu(package_name: str):
|
|
120
|
+
"""
|
|
121
|
+
The function will install a npm package on Ubuntu.
|
|
122
|
+
:param package_name: str, the name of the package to install.
|
|
123
|
+
:return:
|
|
124
|
+
"""
|
|
47
125
|
|
|
48
126
|
# Check if Node.js is installed.
|
|
49
|
-
is_nodejs_installed()
|
|
127
|
+
if not is_nodejs_installed():
|
|
128
|
+
return
|
|
129
|
+
|
|
130
|
+
command = f"npm install -g {package_name}"
|
|
131
|
+
_ = subprocess.check_output(command, shell=True, stderr=subprocess.STDOUT)
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
atomicshop/__init__.py,sha256=
|
|
1
|
+
atomicshop/__init__.py,sha256=Vb-OirUUuTpKZXUvWHYjzscN4SeetO7oxaKph1XstLw,123
|
|
2
2
|
atomicshop/_basics_temp.py,sha256=6cu2dd6r2dLrd1BRNcVDKTHlsHs_26Gpw8QS6v32lQ0,3699
|
|
3
3
|
atomicshop/_create_pdf_demo.py,sha256=Yi-PGZuMg0RKvQmLqVeLIZYadqEZwUm-4A9JxBl_vYA,3713
|
|
4
4
|
atomicshop/_patch_import.py,sha256=ENp55sKVJ0e6-4lBvZnpz9PQCt3Otbur7F6aXDlyje4,6334
|
|
@@ -143,7 +143,7 @@ atomicshop/wrappers/astw.py,sha256=VkYfkfyc_PJLIOxByT6L7B8uUmKY6-I8XGZl4t_z828,4
|
|
|
143
143
|
atomicshop/wrappers/configparserw.py,sha256=JwDTPjZoSrv44YKwIRcjyUnpN-FjgXVfMqMK_tJuSgU,22800
|
|
144
144
|
atomicshop/wrappers/cryptographyw.py,sha256=H5NaHHDkr97QYhUrHFO9vY218u8k3N3Zgh6bQRnicUE,13140
|
|
145
145
|
atomicshop/wrappers/ffmpegw.py,sha256=wcq0ZnAe0yajBOuTKZCCaKI7CDBjkq7FAgdW5IsKcVE,6031
|
|
146
|
-
atomicshop/wrappers/githubw.py,sha256=
|
|
146
|
+
atomicshop/wrappers/githubw.py,sha256=mQGtj6up1HIvjOD2t0bmOWjLooJLYvuIa7d7H-tknrw,9998
|
|
147
147
|
atomicshop/wrappers/numpyw.py,sha256=sBV4gSKyr23kXTalqAb1oqttzE_2XxBooCui66jbAqc,1025
|
|
148
148
|
atomicshop/wrappers/process_wrapper_pbtk.py,sha256=ycPmBRnv627RWks6N8OhxJQe8Gu3h3Vwj-4HswPOw0k,599
|
|
149
149
|
atomicshop/wrappers/pyopensslw.py,sha256=OBWxA6EJ2vU_Qlf4M8m6ilcG3hyYB4yB0EsXUf7NhEU,6804
|
|
@@ -156,10 +156,10 @@ atomicshop/wrappers/dockerw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMp
|
|
|
156
156
|
atomicshop/wrappers/dockerw/dockerw.py,sha256=w8zSJr5C7cbvbuG09ORCpAe0BOcibqqL_Z2EKEBHYK4,6266
|
|
157
157
|
atomicshop/wrappers/dockerw/install_docker.py,sha256=eF0raR1EO9Xk1MVH7CvtkFI2Fgu9zL12MIYV_1vPTQk,4799
|
|
158
158
|
atomicshop/wrappers/elasticsearchw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
159
|
-
atomicshop/wrappers/elasticsearchw/config_basic.py,sha256=
|
|
159
|
+
atomicshop/wrappers/elasticsearchw/config_basic.py,sha256=q9Ybr8TTeNPy6FxtiYCln8WNuwOQjdPazTRoGl7Lk8w,1066
|
|
160
160
|
atomicshop/wrappers/elasticsearchw/elasticsearchw.py,sha256=7TqFdEFznO8NlligJhEKk1vm641ALpCYdaRl1uoXdzM,9768
|
|
161
|
-
atomicshop/wrappers/elasticsearchw/infrastructure.py,sha256=
|
|
162
|
-
atomicshop/wrappers/elasticsearchw/install_elastic.py,sha256=
|
|
161
|
+
atomicshop/wrappers/elasticsearchw/infrastructure.py,sha256=Sy15gLVe_LAk9WpAoFxu5YApecFlYeJzzJ8lk5NYQEw,9217
|
|
162
|
+
atomicshop/wrappers/elasticsearchw/install_elastic.py,sha256=5CNgIoPIDnTCk5kU7Zcyb48TP4JScvUzeZmhcWt63sI,8754
|
|
163
163
|
atomicshop/wrappers/elasticsearchw/queries/__init__.py,sha256=KBjT-bAt75CJsx1Apko9mpuFU4pfZV8DcGWQvpX65RU,78
|
|
164
164
|
atomicshop/wrappers/elasticsearchw/queries/aggregation.py,sha256=N9a5yMMnb10sMa_x1qJBFQpgyJ49UWo8_vxuqmUtZ1A,1742
|
|
165
165
|
atomicshop/wrappers/elasticsearchw/queries/info.py,sha256=P_VhhBo8MvRI4Shi-bh4RsYtlYNRKRBzScXPC64Up_Q,2900
|
|
@@ -199,7 +199,7 @@ atomicshop/wrappers/loggingw/loggers.py,sha256=DHOOTAtqkwn1xgvLHSkOiBm6yFGNuQy1k
|
|
|
199
199
|
atomicshop/wrappers/loggingw/loggingw.py,sha256=v9WAseZXB50LluT9rIUcRvvevg2nLVKPgz3dbGejfV0,12151
|
|
200
200
|
atomicshop/wrappers/loggingw/reading.py,sha256=xs7L6Jo-vedrhCVP7m-cJo0VhWmoSoK86avR4Tm0kG4,3675
|
|
201
201
|
atomicshop/wrappers/nodejsw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
202
|
-
atomicshop/wrappers/nodejsw/install_nodejs.py,sha256=
|
|
202
|
+
atomicshop/wrappers/nodejsw/install_nodejs.py,sha256=tHJQHpnK-QVrdbbUN3gz_6gklX5c6w1ERRgZ8efn4Bo,4794
|
|
203
203
|
atomicshop/wrappers/playwrightw/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
204
204
|
atomicshop/wrappers/playwrightw/_tryouts.py,sha256=l1BLkFsiIMNlgv7nfZd1XGEvXQkIQkIcg48__9OaC00,4920
|
|
205
205
|
atomicshop/wrappers/playwrightw/base.py,sha256=WeRpx8otdXuKSr-BjY-uCJTze21kbPpfitoOjKQz5-g,9818
|
|
@@ -232,8 +232,8 @@ atomicshop/wrappers/socketw/socket_server_tester.py,sha256=AhpurHJmP2kgzHaUbq5ey
|
|
|
232
232
|
atomicshop/wrappers/socketw/socket_wrapper.py,sha256=aXBwlEIJhFT0-c4i8iNlFx2It9VpCEpsv--5Oqcpxao,11624
|
|
233
233
|
atomicshop/wrappers/socketw/ssl_base.py,sha256=k4V3gwkbq10MvOH4btU4onLX2GNOsSfUAdcHmL1rpVE,2274
|
|
234
234
|
atomicshop/wrappers/socketw/statistics_csv.py,sha256=t3dtDEfN47CfYVi0CW6Kc2QHTEeZVyYhc57IYYh5nmA,826
|
|
235
|
-
atomicshop-2.
|
|
236
|
-
atomicshop-2.
|
|
237
|
-
atomicshop-2.
|
|
238
|
-
atomicshop-2.
|
|
239
|
-
atomicshop-2.
|
|
235
|
+
atomicshop-2.10.0.dist-info/LICENSE.txt,sha256=lLU7EYycfYcK2NR_1gfnhnRC8b8ccOTElACYplgZN88,1094
|
|
236
|
+
atomicshop-2.10.0.dist-info/METADATA,sha256=FI-w5jz9h06C_vDlRS0qjGL9g7eA8xhcjhugwE74Da4,10423
|
|
237
|
+
atomicshop-2.10.0.dist-info/WHEEL,sha256=GJ7t_kWBFywbagK5eo9IoUwLW6oyOeTKmQ-9iHFVNxQ,92
|
|
238
|
+
atomicshop-2.10.0.dist-info/top_level.txt,sha256=EgKJB-7xcrAPeqTRF2laD_Np2gNGYkJkd4OyXqpJphA,11
|
|
239
|
+
atomicshop-2.10.0.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|