materials-commons-cli 2.2.1__tar.gz → 2.2.2__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 (71) hide show
  1. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/PKG-INFO +1 -1
  2. materials_commons_cli-2.2.2/materials_commons/cli/__init__.py +1 -0
  3. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/uploader/file_uploader.py +9 -1
  4. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/parser.py +8 -4
  5. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons_cli.egg-info/PKG-INFO +1 -1
  6. materials_commons_cli-2.2.1/materials_commons/cli/__init__.py +0 -1
  7. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/LICENSE +0 -0
  8. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/README.md +0 -0
  9. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/LICENSE.txt +0 -0
  10. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/cloned_project.py +0 -0
  11. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/__init__.py +0 -0
  12. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/command_handlers.py +0 -0
  13. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/downloader/__init__.py +0 -0
  14. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/downloader/file_download_manager.py +0 -0
  15. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/downloader/file_downloader.py +0 -0
  16. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/local_rest_server.py +0 -0
  17. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/projects.py +0 -0
  18. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/uploader/__init__.py +0 -0
  19. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/uploader/api.py +0 -0
  20. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/uploader/file_transfer_manager.py +0 -0
  21. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/desktop/websocket_server.py +0 -0
  22. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/exceptions.py +0 -0
  23. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/file_functions.py +0 -0
  24. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/functions.py +0 -0
  25. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/globus.py +0 -0
  26. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/list_objects.py +0 -0
  27. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/print_formatter.py +0 -0
  28. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/sqltable.py +0 -0
  29. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/__init__.py +0 -0
  30. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/clone.py +0 -0
  31. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/config.py +0 -0
  32. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/dataset.py +0 -0
  33. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/down.py +0 -0
  34. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/expt.py +0 -0
  35. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/fetch.py +0 -0
  36. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/globus.py +0 -0
  37. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/init.py +0 -0
  38. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/ls.py +0 -0
  39. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/mkdir.py +0 -0
  40. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/mv.py +0 -0
  41. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/proj.py +0 -0
  42. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/remote.py +0 -0
  43. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/rm.py +0 -0
  44. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/server.py +0 -0
  45. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/up.py +0 -0
  46. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/subcommands/versions.py +0 -0
  47. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/tmp_functions.py +0 -0
  48. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/tree_functions.py +0 -0
  49. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/treedb.py +0 -0
  50. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons/cli/user_config.py +0 -0
  51. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons_cli.egg-info/SOURCES.txt +0 -0
  52. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons_cli.egg-info/dependency_links.txt +0 -0
  53. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons_cli.egg-info/entry_points.txt +0 -0
  54. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons_cli.egg-info/not-zip-safe +0 -0
  55. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons_cli.egg-info/requires.txt +0 -0
  56. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/materials_commons_cli.egg-info/top_level.txt +0 -0
  57. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/setup.cfg +0 -0
  58. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/setup.py +0 -0
  59. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_api.py +0 -0
  60. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_functions.py +0 -0
  61. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_mc_dataset.py +0 -0
  62. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_mc_down.py +0 -0
  63. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_mc_mkdir.py +0 -0
  64. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_mc_mv.py +0 -0
  65. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_mc_proj.py +0 -0
  66. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_mc_rm.py +0 -0
  67. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_mc_up.py +0 -0
  68. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_treecompare_no_cache.py +0 -0
  69. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_treecompare_with_cache.py +0 -0
  70. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_treedb.py +0 -0
  71. {materials_commons_cli-2.2.1 → materials_commons_cli-2.2.2}/test/test_user_config.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: materials_commons_cli
3
- Version: 2.2.1
3
+ Version: 2.2.2
4
4
  Summary: Materials Commons CLI
5
5
  Home-page: https://materials-commons.github.io/materials-commons-cli/html/index.html
6
6
  Author: Materials Commons development team
@@ -0,0 +1 @@
1
+ __version__ = '2.2.2'
@@ -43,6 +43,7 @@ class FileUploader:
43
43
  self.in_flight_chunks = 0
44
44
  self.last_acked_chunk = -1
45
45
  self._state_lock = asyncio.Lock()
46
+ self._already_uploaded = False
46
47
 
47
48
  # Response handling
48
49
  self.response_queue: asyncio.Queue = asyncio.Queue()
@@ -59,6 +60,9 @@ class FileUploader:
59
60
 
60
61
  # Step 2: Wait for acceptance
61
62
  if not await self._wait_for_acceptance():
63
+ if self._already_uploaded:
64
+ logger.info(f"File {self.file_path.name} already uploaded")
65
+ return True
62
66
  return False
63
67
 
64
68
  # # Step 3: Send file chunks
@@ -161,7 +165,11 @@ class FileUploader:
161
165
 
162
166
  elif msg["command"] == "TRANSFER_REJECT":
163
167
  reason = msg["payload"].get("reason", "unknown")
164
- logger.error(f"Transfer rejected: {reason}")
168
+ if reason == "file already uploaded":
169
+ # TODO: This is a hack to prevent uploading the same file twice. We need a better solution.
170
+ self._already_uploaded = True
171
+ else:
172
+ logger.error(f"Transfer rejected: {reason}")
165
173
  return False
166
174
 
167
175
  logger.error(f"Unexpected response: {msg['command']}")
@@ -6,7 +6,7 @@ from datetime import datetime, timedelta
6
6
  from io import StringIO
7
7
 
8
8
  import materials_commons.api as mcapi
9
- import pkg_resources
9
+ from importlib.metadata import PackageNotFoundError, version as pkg_version
10
10
  import requests
11
11
 
12
12
  import materials_commons.cli.functions as clifuncs
@@ -74,8 +74,12 @@ def make_parser():
74
74
  description='Materials Commons command line interface',
75
75
  usage=usage_help.getvalue())
76
76
  parser.add_argument('command', help='Subcommand to run')
77
- parser.add_argument('--version', '-v', action='version',
78
- version=pkg_resources.get_distribution('materials-commons-cli').version)
77
+ package_name = 'materials-commons-cli'
78
+ try:
79
+ installed_version = pkg_version(package_name)
80
+ except PackageNotFoundError:
81
+ installed_version = "unknown"
82
+ parser.add_argument('--version', '-v', action='version', version=installed_version)
79
83
 
80
84
  return parser
81
85
 
@@ -113,7 +117,7 @@ def check_package_version():
113
117
 
114
118
  package_name = 'materials-commons-cli'
115
119
  try:
116
- current_version = pkg_resources.get_distribution(package_name).version
120
+ current_version = pkg_version(package_name)
117
121
  response = requests.get(f"https://pypi.org/pypi/{package_name}/json")
118
122
  latest_version = response.json()["info"]["version"]
119
123
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: materials-commons-cli
3
- Version: 2.2.1
3
+ Version: 2.2.2
4
4
  Summary: Materials Commons CLI
5
5
  Home-page: https://materials-commons.github.io/materials-commons-cli/html/index.html
6
6
  Author: Materials Commons development team
@@ -1 +0,0 @@
1
- __version__ = '2.2.1'