rclone-api 1.0.94__tar.gz → 1.0.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.
Files changed (79) hide show
  1. {rclone_api-1.0.94 → rclone_api-1.0.95}/PKG-INFO +1 -1
  2. {rclone_api-1.0.94 → rclone_api-1.0.95}/pyproject.toml +1 -1
  3. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/s3/api.py +4 -2
  4. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/s3/create.py +17 -8
  5. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api.egg-info/PKG-INFO +1 -1
  6. {rclone_api-1.0.94 → rclone_api-1.0.95}/.aiderignore +0 -0
  7. {rclone_api-1.0.94 → rclone_api-1.0.95}/.github/workflows/lint.yml +0 -0
  8. {rclone_api-1.0.94 → rclone_api-1.0.95}/.github/workflows/push_macos.yml +0 -0
  9. {rclone_api-1.0.94 → rclone_api-1.0.95}/.github/workflows/push_ubuntu.yml +0 -0
  10. {rclone_api-1.0.94 → rclone_api-1.0.95}/.github/workflows/push_win.yml +0 -0
  11. {rclone_api-1.0.94 → rclone_api-1.0.95}/.gitignore +0 -0
  12. {rclone_api-1.0.94 → rclone_api-1.0.95}/.pylintrc +0 -0
  13. {rclone_api-1.0.94 → rclone_api-1.0.95}/.vscode/launch.json +0 -0
  14. {rclone_api-1.0.94 → rclone_api-1.0.95}/.vscode/settings.json +0 -0
  15. {rclone_api-1.0.94 → rclone_api-1.0.95}/.vscode/tasks.json +0 -0
  16. {rclone_api-1.0.94 → rclone_api-1.0.95}/LICENSE +0 -0
  17. {rclone_api-1.0.94 → rclone_api-1.0.95}/MANIFEST.in +0 -0
  18. {rclone_api-1.0.94 → rclone_api-1.0.95}/README.md +0 -0
  19. {rclone_api-1.0.94 → rclone_api-1.0.95}/clean +0 -0
  20. {rclone_api-1.0.94 → rclone_api-1.0.95}/install +0 -0
  21. {rclone_api-1.0.94 → rclone_api-1.0.95}/lint +0 -0
  22. {rclone_api-1.0.94 → rclone_api-1.0.95}/requirements.testing.txt +0 -0
  23. {rclone_api-1.0.94 → rclone_api-1.0.95}/setup.cfg +0 -0
  24. {rclone_api-1.0.94 → rclone_api-1.0.95}/setup.py +0 -0
  25. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/__init__.py +0 -0
  26. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/assets/example.txt +0 -0
  27. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/cli.py +0 -0
  28. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/cmd/copy_large_s3.py +0 -0
  29. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/cmd/list_files.py +0 -0
  30. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/completed_process.py +0 -0
  31. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/config.py +0 -0
  32. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/convert.py +0 -0
  33. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/deprecated.py +0 -0
  34. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/diff.py +0 -0
  35. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/dir.py +0 -0
  36. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/dir_listing.py +0 -0
  37. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/exec.py +0 -0
  38. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/file.py +0 -0
  39. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/filelist.py +0 -0
  40. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/group_files.py +0 -0
  41. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/process.py +0 -0
  42. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/rclone.py +0 -0
  43. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/remote.py +0 -0
  44. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/rpath.py +0 -0
  45. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/s3/basic_ops.py +0 -0
  46. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/s3/chunk_uploader.py +0 -0
  47. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/s3/types.py +0 -0
  48. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/scan_missing_folders.py +0 -0
  49. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/types.py +0 -0
  50. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/util.py +0 -0
  51. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api/walk.py +0 -0
  52. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api.egg-info/SOURCES.txt +0 -0
  53. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api.egg-info/dependency_links.txt +0 -0
  54. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api.egg-info/entry_points.txt +0 -0
  55. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api.egg-info/requires.txt +0 -0
  56. {rclone_api-1.0.94 → rclone_api-1.0.95}/src/rclone_api.egg-info/top_level.txt +0 -0
  57. {rclone_api-1.0.94 → rclone_api-1.0.95}/test +0 -0
  58. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/archive/test_paramiko.py.disabled +0 -0
  59. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_cmd_list_files.py +0 -0
  60. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_copy.py +0 -0
  61. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_copy_files.py +0 -0
  62. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_diff.py +0 -0
  63. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_group_files.py +0 -0
  64. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_is_synced.py +0 -0
  65. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_ls.py +0 -0
  66. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_mount.py +0 -0
  67. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_mount_s3.py +0 -0
  68. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_mount_webdav.py +0 -0
  69. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_mounted_ranged_download.py +0 -0
  70. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_obscure.py +0 -0
  71. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_rclone_config.py +0 -0
  72. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_remote_control.py +0 -0
  73. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_remotes.py +0 -0
  74. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_s3.py +0 -0
  75. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_scan_missing_folders.py +0 -0
  76. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_size_files.py +0 -0
  77. {rclone_api-1.0.94 → rclone_api-1.0.95}/tests/test_walk.py +0 -0
  78. {rclone_api-1.0.94 → rclone_api-1.0.95}/tox.ini +0 -0
  79. {rclone_api-1.0.94 → rclone_api-1.0.95}/upload_package.sh +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: rclone_api
3
- Version: 1.0.94
3
+ Version: 1.0.95
4
4
  Summary: rclone api in python
5
5
  Home-page: https://github.com/zackees/rclone-api
6
6
  License: BSD 3-Clause License
@@ -21,7 +21,7 @@ dependencies = [
21
21
  ]
22
22
 
23
23
  # Change this with the version number bump.
24
- version = "1.0.94"
24
+ version = "1.0.95"
25
25
 
26
26
  [tool.setuptools]
27
27
  package-dir = {"" = "src"}
@@ -17,9 +17,10 @@ _MIN_THRESHOLD_FOR_CHUNKING = 5 * 1024 * 1024
17
17
 
18
18
 
19
19
  class S3Client:
20
- def __init__(self, credentials: S3Credentials):
20
+ def __init__(self, credentials: S3Credentials, verbose: bool = False) -> None:
21
+ self.verbose = verbose
21
22
  self.credentials: S3Credentials = credentials
22
- self.client: BaseClient = create_s3_client(credentials)
23
+ self.client: BaseClient = create_s3_client(credentials, verbose=verbose)
23
24
 
24
25
  def list_bucket_contents(self, bucket_name: str) -> None:
25
26
  list_bucket_contents(self.client, bucket_name)
@@ -83,6 +84,7 @@ class S3Client:
83
84
  provider = self.credentials.provider.value
84
85
  region_name = self.credentials.region_name
85
86
  info_json = {
87
+ "bucket": bucket_name,
86
88
  "key": key,
87
89
  "access_key_id": access_key_id[:4] + "...",
88
90
  "secret": secret[:4] + "...",
@@ -6,18 +6,19 @@ from botocore.config import Config
6
6
 
7
7
  from rclone_api.s3.types import S3Credentials, S3Provider
8
8
 
9
+ _DEFAULT_BACKBLAZE_ENDPOINT = "https://s3.us-west-002.backblazeb2.com"
10
+
9
11
 
10
12
  # Create a Boto3 session and S3 client, this is back blaze specific.
11
13
  # Add a function if you want to use a different S3 provider.
12
14
  # If AWS support is added in a fork then please merge it back here.
13
- def _create_backblaze_s3_client(creds: S3Credentials) -> BaseClient:
15
+ def _create_backblaze_s3_client(creds: S3Credentials, verbose: bool) -> BaseClient:
14
16
  """Create and return an S3 client."""
15
17
  region_name = creds.region_name
16
18
  access_key = creds.access_key_id
17
19
  secret_key = creds.secret_access_key
18
20
  endpoint_url = creds.endpoint_url
19
- region_name = region_name or "https://s3.us-west-002.backblazeb2.com"
20
-
21
+ endpoint_url = endpoint_url or _DEFAULT_BACKBLAZE_ENDPOINT
21
22
  session = boto3.session.Session() # type: ignore
22
23
  return session.client(
23
24
  service_name="s3",
@@ -26,6 +27,7 @@ def _create_backblaze_s3_client(creds: S3Credentials) -> BaseClient:
26
27
  endpoint_url=endpoint_url,
27
28
  config=Config(
28
29
  signature_version="s3v4",
30
+ region_name=region_name,
29
31
  # Note that BackBlase has a boko3 bug where it doesn't support the new
30
32
  # checksum header, the following line was an attempt of fix it on the newest
31
33
  # version of boto3, but it didn't work.
@@ -34,13 +36,16 @@ def _create_backblaze_s3_client(creds: S3Credentials) -> BaseClient:
34
36
  )
35
37
 
36
38
 
37
- def _create_unknown_s3_client(creds: S3Credentials) -> BaseClient:
39
+ def _create_unknown_s3_client(creds: S3Credentials, verbose: bool) -> BaseClient:
38
40
  """Create and return an S3 client."""
39
41
  access_key = creds.access_key_id
40
42
  secret_key = creds.secret_access_key
41
43
  endpoint_url = creds.endpoint_url
42
44
  if (endpoint_url is not None) and not (endpoint_url.startswith("http")):
43
- warnings.warn(f"Endpoint URL is schema niaive: {endpoint_url}, assuming HTTPS")
45
+ if verbose:
46
+ warnings.warn(
47
+ f"Endpoint URL is schema naive: {endpoint_url}, assuming HTTPS"
48
+ )
44
49
  endpoint_url = f"https://{endpoint_url}"
45
50
 
46
51
  session = boto3.session.Session() # type: ignore
@@ -60,10 +65,14 @@ def _create_unknown_s3_client(creds: S3Credentials) -> BaseClient:
60
65
  )
61
66
 
62
67
 
63
- def create_s3_client(credentials: S3Credentials) -> BaseClient:
68
+ def create_s3_client(credentials: S3Credentials, verbose=False) -> BaseClient:
64
69
  """Create and return an S3 client."""
65
70
  provider = credentials.provider
66
71
  if provider == S3Provider.BACKBLAZE:
67
- return _create_backblaze_s3_client(credentials)
72
+ if verbose:
73
+ print("Creating BackBlaze S3 client")
74
+ return _create_backblaze_s3_client(creds=credentials, verbose=verbose)
68
75
  else:
69
- return _create_unknown_s3_client(credentials)
76
+ if verbose:
77
+ print("Creating generic/unknown S3 client")
78
+ return _create_unknown_s3_client(creds=credentials, verbose=verbose)
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.2
2
2
  Name: rclone_api
3
- Version: 1.0.94
3
+ Version: 1.0.95
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