rclone-api 1.1.93__tar.gz → 1.1.95__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.
- {rclone_api-1.1.93 → rclone_api-1.1.95}/PKG-INFO +1 -1
- {rclone_api-1.1.93 → rclone_api-1.1.95}/pyproject.toml +1 -1
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/profile/mount_copy_bytes.py +12 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/rclone.py +3 -2
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api.egg-info/PKG-INFO +1 -1
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.aiderignore +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.github/workflows/lint.yml +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.github/workflows/push_macos.yml +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.github/workflows/push_ubuntu.yml +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.github/workflows/push_win.yml +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.gitignore +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.pylintrc +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.vscode/launch.json +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.vscode/settings.json +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/.vscode/tasks.json +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/LICENSE +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/MANIFEST.in +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/README.md +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/clean +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/install +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/lint +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/requirements.testing.txt +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/setup.cfg +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/setup.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/__init__.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/assets/example.txt +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/cli.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/cmd/copy_large_s3.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/cmd/list_files.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/completed_process.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/config.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/convert.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/deprecated.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/diff.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/dir.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/dir_listing.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/exec.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/experimental/flags.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/experimental/flags_base.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/file.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/filelist.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/group_files.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/mount.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/process.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/remote.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/rpath.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/s3/api.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/s3/basic_ops.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/s3/chunk_file.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/s3/chunk_types.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/s3/create.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/s3/types.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/s3/upload_file_multipart.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/scan_missing_folders.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/types.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/util.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api/walk.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api.egg-info/SOURCES.txt +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api.egg-info/dependency_links.txt +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api.egg-info/entry_points.txt +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api.egg-info/requires.txt +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/src/rclone_api.egg-info/top_level.txt +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/test +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/archive/test_paramiko.py.disabled +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_cmd_list_files.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_copy.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_copy_bytes.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_copy_file_resumable_s3.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_copy_files.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_diff.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_group_files.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_is_synced.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_ls.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_mount.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_mount_s3.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_obscure.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_rclone_config.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_remote_control.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_remotes.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_s3.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_scan_missing_folders.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_size_files.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_size_suffix.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tests/test_walk.py +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/tox.ini +0 -0
- {rclone_api-1.1.93 → rclone_api-1.1.95}/upload_package.sh +0 -0
|
@@ -130,6 +130,18 @@ def _run_profile(
|
|
|
130
130
|
)
|
|
131
131
|
bytes_count = 0
|
|
132
132
|
|
|
133
|
+
futures: list[Future[bytes | Exception]] = []
|
|
134
|
+
for i in range(num):
|
|
135
|
+
offset = SizeSuffix(i * chunk_size.as_int()) + offset
|
|
136
|
+
future = filechunker.fetch(offset.as_int(), size.as_int())
|
|
137
|
+
futures.append(future)
|
|
138
|
+
|
|
139
|
+
for future in futures:
|
|
140
|
+
bytes_or_err = future.result()
|
|
141
|
+
if isinstance(bytes_or_err, Exception):
|
|
142
|
+
assert False, f"Error: {bytes_or_err}"
|
|
143
|
+
futures.clear()
|
|
144
|
+
|
|
133
145
|
|
|
134
146
|
start = time.time()
|
|
135
147
|
net_io_start = psutil.net_io_counters()
|
|
@@ -921,8 +921,7 @@ class Rclone:
|
|
|
921
921
|
for i in range(threads):
|
|
922
922
|
tmp_mnts = Path("tmp_mnts") / random_str(12)
|
|
923
923
|
verbose = mount_log is not None
|
|
924
|
-
|
|
925
|
-
prepare_mount(tmp_mnts, verbose=verbose)
|
|
924
|
+
|
|
926
925
|
src_parent_path = Path(src).parent.as_posix()
|
|
927
926
|
cache_dir = Path("cache") / random_str(12)
|
|
928
927
|
|
|
@@ -931,6 +930,8 @@ class Rclone:
|
|
|
931
930
|
tmp_mnts=tmp_mnts,
|
|
932
931
|
cache_dir=cache_dir,
|
|
933
932
|
):
|
|
933
|
+
clean_mount(tmp_mnts, verbose=verbose)
|
|
934
|
+
prepare_mount(tmp_mnts, verbose=verbose)
|
|
934
935
|
return self.mount(
|
|
935
936
|
src=src_parent_path,
|
|
936
937
|
outdir=tmp_mnts,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|