rclone-api 1.1.97__tar.gz → 1.1.99__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 (86) hide show
  1. {rclone_api-1.1.97 → rclone_api-1.1.99}/PKG-INFO +1 -1
  2. {rclone_api-1.1.97 → rclone_api-1.1.99}/pyproject.toml +1 -1
  3. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/cmd/copy_large_s3.py +2 -2
  4. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/s3/chunk_file.py +2 -4
  5. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/s3/upload_file_multipart.py +3 -1
  6. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api.egg-info/PKG-INFO +1 -1
  7. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_s3.py +3 -4
  8. {rclone_api-1.1.97 → rclone_api-1.1.99}/.aiderignore +0 -0
  9. {rclone_api-1.1.97 → rclone_api-1.1.99}/.github/workflows/lint.yml +0 -0
  10. {rclone_api-1.1.97 → rclone_api-1.1.99}/.github/workflows/push_macos.yml +0 -0
  11. {rclone_api-1.1.97 → rclone_api-1.1.99}/.github/workflows/push_ubuntu.yml +0 -0
  12. {rclone_api-1.1.97 → rclone_api-1.1.99}/.github/workflows/push_win.yml +0 -0
  13. {rclone_api-1.1.97 → rclone_api-1.1.99}/.gitignore +0 -0
  14. {rclone_api-1.1.97 → rclone_api-1.1.99}/.pylintrc +0 -0
  15. {rclone_api-1.1.97 → rclone_api-1.1.99}/.vscode/launch.json +0 -0
  16. {rclone_api-1.1.97 → rclone_api-1.1.99}/.vscode/settings.json +0 -0
  17. {rclone_api-1.1.97 → rclone_api-1.1.99}/.vscode/tasks.json +0 -0
  18. {rclone_api-1.1.97 → rclone_api-1.1.99}/LICENSE +0 -0
  19. {rclone_api-1.1.97 → rclone_api-1.1.99}/MANIFEST.in +0 -0
  20. {rclone_api-1.1.97 → rclone_api-1.1.99}/README.md +0 -0
  21. {rclone_api-1.1.97 → rclone_api-1.1.99}/clean +0 -0
  22. {rclone_api-1.1.97 → rclone_api-1.1.99}/install +0 -0
  23. {rclone_api-1.1.97 → rclone_api-1.1.99}/lint +0 -0
  24. {rclone_api-1.1.97 → rclone_api-1.1.99}/requirements.testing.txt +0 -0
  25. {rclone_api-1.1.97 → rclone_api-1.1.99}/setup.cfg +0 -0
  26. {rclone_api-1.1.97 → rclone_api-1.1.99}/setup.py +0 -0
  27. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/__init__.py +0 -0
  28. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/assets/example.txt +0 -0
  29. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/cli.py +0 -0
  30. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/cmd/list_files.py +0 -0
  31. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/completed_process.py +0 -0
  32. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/config.py +0 -0
  33. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/convert.py +0 -0
  34. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/deprecated.py +0 -0
  35. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/diff.py +0 -0
  36. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/dir.py +0 -0
  37. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/dir_listing.py +0 -0
  38. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/exec.py +0 -0
  39. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/experimental/flags.py +0 -0
  40. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/experimental/flags_base.py +0 -0
  41. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/file.py +0 -0
  42. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/filelist.py +0 -0
  43. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/group_files.py +0 -0
  44. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/mount.py +0 -0
  45. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/process.py +0 -0
  46. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/profile/mount_copy_bytes.py +0 -0
  47. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/rclone.py +0 -0
  48. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/remote.py +0 -0
  49. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/rpath.py +0 -0
  50. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/s3/api.py +0 -0
  51. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/s3/basic_ops.py +0 -0
  52. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/s3/chunk_types.py +0 -0
  53. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/s3/create.py +0 -0
  54. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/s3/types.py +0 -0
  55. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/scan_missing_folders.py +0 -0
  56. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/types.py +0 -0
  57. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/util.py +0 -0
  58. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api/walk.py +0 -0
  59. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api.egg-info/SOURCES.txt +0 -0
  60. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api.egg-info/dependency_links.txt +0 -0
  61. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api.egg-info/entry_points.txt +0 -0
  62. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api.egg-info/requires.txt +0 -0
  63. {rclone_api-1.1.97 → rclone_api-1.1.99}/src/rclone_api.egg-info/top_level.txt +0 -0
  64. {rclone_api-1.1.97 → rclone_api-1.1.99}/test +0 -0
  65. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/archive/test_paramiko.py.disabled +0 -0
  66. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_cmd_list_files.py +0 -0
  67. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_copy.py +0 -0
  68. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_copy_bytes.py +0 -0
  69. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_copy_file_resumable_s3.py +0 -0
  70. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_copy_files.py +0 -0
  71. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_diff.py +0 -0
  72. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_group_files.py +0 -0
  73. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_is_synced.py +0 -0
  74. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_ls.py +0 -0
  75. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_mount.py +0 -0
  76. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_mount_s3.py +0 -0
  77. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_obscure.py +0 -0
  78. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_rclone_config.py +0 -0
  79. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_remote_control.py +0 -0
  80. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_remotes.py +0 -0
  81. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_scan_missing_folders.py +0 -0
  82. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_size_files.py +0 -0
  83. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_size_suffix.py +0 -0
  84. {rclone_api-1.1.97 → rclone_api-1.1.99}/tests/test_walk.py +0 -0
  85. {rclone_api-1.1.97 → rclone_api-1.1.99}/tox.ini +0 -0
  86. {rclone_api-1.1.97 → rclone_api-1.1.99}/upload_package.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: rclone_api
3
- Version: 1.1.97
3
+ Version: 1.1.99
4
4
  Summary: rclone api in python
5
5
  Home-page: https://github.com/zackees/rclone-api
6
6
  License: BSD 3-Clause License
@@ -23,7 +23,7 @@ dependencies = [
23
23
  ]
24
24
 
25
25
  # Change this with the version number bump.
26
- version = "1.1.97"
26
+ version = "1.1.99"
27
27
 
28
28
  [tool.setuptools]
29
29
  package-dir = {"" = "src"}
@@ -45,13 +45,13 @@ def _parse_args() -> Args:
45
45
  "--read-threads",
46
46
  help="Number of concurrent read threads per chunk, only one chunk will be read at a time",
47
47
  type=int,
48
- default=1,
48
+ default=16,
49
49
  )
50
50
  parser.add_argument(
51
51
  "--write-threads",
52
52
  help="Max number of chunks to upload in parallel to the destination, each chunk is uploaded in a separate thread",
53
53
  type=int,
54
- default=4,
54
+ default=16,
55
55
  )
56
56
  parser.add_argument("--retries", help="Number of retries", type=int, default=3)
57
57
  parser.add_argument(
@@ -36,9 +36,6 @@ def file_chunker(
36
36
  ) -> None:
37
37
  count = 0
38
38
 
39
- if False:
40
- print(chunk_fetcher)
41
-
42
39
  def should_stop() -> bool:
43
40
  nonlocal count
44
41
 
@@ -128,7 +125,8 @@ def file_chunker(
128
125
  done_part_numbers.add(part_number)
129
126
  output.put(file_chunk)
130
127
 
131
- fut = chunk_fetcher(curr_parth_num, chunk_size)
128
+ offset = (curr_parth_num - 1) * chunk_size
129
+ fut = chunk_fetcher(offset, chunk_size)
132
130
  fut.add_done_callback(on_complete)
133
131
  # wait until the output queue can accept the next chunk
134
132
  while output.full():
@@ -171,7 +171,9 @@ def upload_file_multipart(
171
171
  )
172
172
  return upload_state
173
173
 
174
- filechunks: Queue[FileChunk | None] = Queue(upload_threads)
174
+ work_que_max = upload_threads // 2 + 2
175
+
176
+ filechunks: Queue[FileChunk | None] = Queue(work_que_max)
175
177
  new_state = make_new_state()
176
178
  loaded_state = get_upload_state()
177
179
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: rclone_api
3
- Version: 1.1.97
3
+ Version: 1.1.99
4
4
  Summary: rclone api in python
5
5
  Home-page: https://github.com/zackees/rclone-api
6
6
  License: BSD 3-Clause License
@@ -18,7 +18,7 @@ class RcloneS3Tester(unittest.TestCase):
18
18
  """Test rclone functionality."""
19
19
 
20
20
  # @unittest.skipIf(not _ENABLED, "Test not enabled")
21
- @unittest.skipIf(True, "Test not enabled")
21
+ # @unittest.skipIf(True, "Test not enabled")
22
22
  def test_upload_chunks(self) -> None:
23
23
  """Test basic Webdav serve functionality."""
24
24
 
@@ -67,14 +67,13 @@ class RcloneS3Tester(unittest.TestCase):
67
67
  state_json = Path(tempdir) / "state.json"
68
68
 
69
69
  def simple_fetcher(
70
- chunk_id: int, chunk_size: int
70
+ offset: int, chunk_size: int
71
71
  ) -> Future[bytes | Exception]:
72
72
  with ThreadPoolExecutor() as executor:
73
73
 
74
74
  def task() -> bytes | Exception:
75
75
  with open(str(tmpfile), "rb") as f:
76
- idx = (chunk_id - 1) * chunk_size
77
- f.seek(idx * chunk_size)
76
+ f.seek(offset)
78
77
  return f.read(chunk_size)
79
78
 
80
79
  fut = executor.submit(task)
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