rclone-api 1.1.68__tar.gz → 1.1.70__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.68 → rclone_api-1.1.70}/PKG-INFO +1 -1
  2. {rclone_api-1.1.68 → rclone_api-1.1.70}/pyproject.toml +1 -1
  3. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/mount.py +15 -6
  4. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api.egg-info/PKG-INFO +1 -1
  5. {rclone_api-1.1.68 → rclone_api-1.1.70}/.aiderignore +0 -0
  6. {rclone_api-1.1.68 → rclone_api-1.1.70}/.github/workflows/lint.yml +0 -0
  7. {rclone_api-1.1.68 → rclone_api-1.1.70}/.github/workflows/push_macos.yml +0 -0
  8. {rclone_api-1.1.68 → rclone_api-1.1.70}/.github/workflows/push_ubuntu.yml +0 -0
  9. {rclone_api-1.1.68 → rclone_api-1.1.70}/.github/workflows/push_win.yml +0 -0
  10. {rclone_api-1.1.68 → rclone_api-1.1.70}/.gitignore +0 -0
  11. {rclone_api-1.1.68 → rclone_api-1.1.70}/.pylintrc +0 -0
  12. {rclone_api-1.1.68 → rclone_api-1.1.70}/.vscode/launch.json +0 -0
  13. {rclone_api-1.1.68 → rclone_api-1.1.70}/.vscode/settings.json +0 -0
  14. {rclone_api-1.1.68 → rclone_api-1.1.70}/.vscode/tasks.json +0 -0
  15. {rclone_api-1.1.68 → rclone_api-1.1.70}/LICENSE +0 -0
  16. {rclone_api-1.1.68 → rclone_api-1.1.70}/MANIFEST.in +0 -0
  17. {rclone_api-1.1.68 → rclone_api-1.1.70}/README.md +0 -0
  18. {rclone_api-1.1.68 → rclone_api-1.1.70}/clean +0 -0
  19. {rclone_api-1.1.68 → rclone_api-1.1.70}/install +0 -0
  20. {rclone_api-1.1.68 → rclone_api-1.1.70}/lint +0 -0
  21. {rclone_api-1.1.68 → rclone_api-1.1.70}/requirements.testing.txt +0 -0
  22. {rclone_api-1.1.68 → rclone_api-1.1.70}/setup.cfg +0 -0
  23. {rclone_api-1.1.68 → rclone_api-1.1.70}/setup.py +0 -0
  24. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/__init__.py +0 -0
  25. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/assets/example.txt +0 -0
  26. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/cli.py +0 -0
  27. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/cmd/copy_large_s3.py +0 -0
  28. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/cmd/list_files.py +0 -0
  29. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/completed_process.py +0 -0
  30. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/config.py +0 -0
  31. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/convert.py +0 -0
  32. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/deprecated.py +0 -0
  33. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/diff.py +0 -0
  34. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/dir.py +0 -0
  35. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/dir_listing.py +0 -0
  36. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/exec.py +0 -0
  37. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/experimental/flags.py +0 -0
  38. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/experimental/flags_base.py +0 -0
  39. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/file.py +0 -0
  40. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/filelist.py +0 -0
  41. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/group_files.py +0 -0
  42. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/process.py +0 -0
  43. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/profile/mount_copy_bytes.py +0 -0
  44. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/rclone.py +0 -0
  45. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/remote.py +0 -0
  46. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/rpath.py +0 -0
  47. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/s3/api.py +0 -0
  48. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/s3/basic_ops.py +0 -0
  49. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/s3/chunk_file.py +0 -0
  50. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/s3/chunk_types.py +0 -0
  51. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/s3/create.py +0 -0
  52. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/s3/types.py +0 -0
  53. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/s3/upload_file_multipart.py +0 -0
  54. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/scan_missing_folders.py +0 -0
  55. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/types.py +0 -0
  56. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/util.py +0 -0
  57. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api/walk.py +0 -0
  58. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api.egg-info/SOURCES.txt +0 -0
  59. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api.egg-info/dependency_links.txt +0 -0
  60. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api.egg-info/entry_points.txt +0 -0
  61. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api.egg-info/requires.txt +0 -0
  62. {rclone_api-1.1.68 → rclone_api-1.1.70}/src/rclone_api.egg-info/top_level.txt +0 -0
  63. {rclone_api-1.1.68 → rclone_api-1.1.70}/test +0 -0
  64. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/archive/test_paramiko.py.disabled +0 -0
  65. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_cmd_list_files.py +0 -0
  66. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_copy.py +0 -0
  67. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_copy_bytes.py +0 -0
  68. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_copy_file_resumable_s3.py +0 -0
  69. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_copy_files.py +0 -0
  70. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_diff.py +0 -0
  71. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_group_files.py +0 -0
  72. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_is_synced.py +0 -0
  73. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_ls.py +0 -0
  74. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_mount.py +0 -0
  75. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_mount_s3.py +0 -0
  76. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_obscure.py +0 -0
  77. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_rclone_config.py +0 -0
  78. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_remote_control.py +0 -0
  79. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_remotes.py +0 -0
  80. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_s3.py +0 -0
  81. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_scan_missing_folders.py +0 -0
  82. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_size_files.py +0 -0
  83. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_size_suffix.py +0 -0
  84. {rclone_api-1.1.68 → rclone_api-1.1.70}/tests/test_walk.py +0 -0
  85. {rclone_api-1.1.68 → rclone_api-1.1.70}/tox.ini +0 -0
  86. {rclone_api-1.1.68 → rclone_api-1.1.70}/upload_package.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: rclone_api
3
- Version: 1.1.68
3
+ Version: 1.1.70
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.68"
26
+ version = "1.1.70"
27
27
 
28
28
  [tool.setuptools]
29
29
  package-dir = {"" = "src"}
@@ -310,11 +310,16 @@ class MultiMountFileChunker:
310
310
  executor.submit(lambda: mount.close())
311
311
 
312
312
  def fetch(self, offset: int, size: int) -> bytes | Exception:
313
+ print(f"Fetching chunk {offset} - {offset + size} from {self.filename}")
313
314
  try:
314
- assert offset % self.chunk_size.as_int() == 0
315
- assert size <= self.chunk_size.as_int()
316
- assert size > 0
317
- assert offset >= 0
315
+ try:
316
+ assert offset % self.chunk_size.as_int() == 0
317
+ assert size <= self.chunk_size.as_int()
318
+ assert size > 0
319
+ assert offset >= 0
320
+ except AssertionError as e:
321
+ warnings.warn(f"Invalid chunk request: {e}")
322
+ return ValueError(e)
318
323
 
319
324
  chunks: list[tuple[int, int]] = []
320
325
  start = offset
@@ -332,15 +337,19 @@ class MultiMountFileChunker:
332
337
  self.mounts_processing.append(mount)
333
338
 
334
339
  path = mount.mount_path / self.filename
340
+ print(f"Fetching chunk {start} - {start + chunk_size} from {path}")
335
341
 
336
- def task() -> bytes | Exception:
342
+ def task(start=start, size=size, path=path) -> bytes | Exception:
337
343
  try:
338
- print(f"Fetching chunk {start} - {start + chunk_size} from {path}")
344
+ print(
345
+ f"Fetching chunk {start} - {start + chunk_size} from {path}"
346
+ )
339
347
  with path.open("rb") as f:
340
348
  f.seek(offset)
341
349
  return f.read(size)
342
350
  except KeyboardInterrupt as e:
343
351
  import _thread
352
+
344
353
  warnings.warn(f"Error fetching file chunk: {e}")
345
354
 
346
355
  _thread.interrupt_main()
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: rclone_api
3
- Version: 1.1.68
3
+ Version: 1.1.70
4
4
  Summary: rclone api in python
5
5
  Home-page: https://github.com/zackees/rclone-api
6
6
  License: BSD 3-Clause License
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