boto3-assist 0.2.9__tar.gz → 0.2.10__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 (101) hide show
  1. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/PKG-INFO +1 -1
  2. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/pyproject.toml +1 -1
  3. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb.py +1 -1
  4. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_index.py +13 -1
  5. boto3_assist-0.2.10/src/boto3_assist/version.py +1 -0
  6. boto3_assist-0.2.9/src/boto3_assist/version.py +0 -1
  7. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.env.docker +0 -0
  8. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.env.docker.001 +0 -0
  9. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.env.docker.nosql.workbench +0 -0
  10. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.env.unittest +0 -0
  11. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.gitignore +0 -0
  12. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.vscode/launch.json +0 -0
  13. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.vscode/settings.json +0 -0
  14. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/.vscode/tasks.json +0 -0
  15. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/LICENSE-EXPLAINED.txt +0 -0
  16. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/LICENSE.txt +0 -0
  17. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/README.md +0 -0
  18. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/aws_regions_with_status.csv +0 -0
  19. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/aws_regions_with_status.json +0 -0
  20. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/devops/build.py +0 -0
  21. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/devops/readme.md +0 -0
  22. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/__init__.py +0 -0
  23. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/cloudwatch/log_report.py +0 -0
  24. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/models/order_item_model.py +0 -0
  25. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/models/order_model.py +0 -0
  26. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/models/product_model.py +0 -0
  27. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/models/user_model.py +0 -0
  28. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/models/user_post_model.py +0 -0
  29. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/order_example/main.py +0 -0
  30. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/order_example/products.json +0 -0
  31. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/order_item_service.py +0 -0
  32. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/order_service.py +0 -0
  33. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/product_service.py +0 -0
  34. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/table_service.py +0 -0
  35. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/user_post_service.py +0 -0
  36. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/user_service.py +0 -0
  37. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/user_service_client_example.py +0 -0
  38. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/services/user_service_resource_example.py +0 -0
  39. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/dynamodb/user_post_example/main.py +0 -0
  40. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/examples/ec2/regions_report.py +0 -0
  41. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/module-headers.txt +0 -0
  42. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/mypy.ini +0 -0
  43. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/requirements-dev.txt +0 -0
  44. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/requirements.txt +0 -0
  45. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/run-checks.sh +0 -0
  46. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/__init__.py +0 -0
  47. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/boto3session.py +0 -0
  48. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/cloudwatch/cloudwatch_connection.py +0 -0
  49. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/cloudwatch/cloudwatch_connection_tracker.py +0 -0
  50. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/cloudwatch/cloudwatch_log_connection.py +0 -0
  51. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/cloudwatch/cloudwatch_logs.py +0 -0
  52. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/cloudwatch/cloudwatch_query.py +0 -0
  53. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/connection.py +0 -0
  54. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/connection_tracker.py +0 -0
  55. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_connection.py +0 -0
  56. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_connection_tracker.py +0 -0
  57. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_helpers.py +0 -0
  58. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_importer.py +0 -0
  59. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_iservice.py +0 -0
  60. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_key.py +0 -0
  61. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_model_base.py +0 -0
  62. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_model_base_interfaces.py +0 -0
  63. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_reindexer.py +0 -0
  64. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_reserved_words.py +0 -0
  65. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/dynamodb_reserved_words.txt +0 -0
  66. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/readme.md +0 -0
  67. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/dynamodb/troubleshooting.md +0 -0
  68. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/ec2/ec2_connection.py +0 -0
  69. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/environment_services/__init__.py +0 -0
  70. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/environment_services/environment_loader.py +0 -0
  71. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/environment_services/environment_variables.py +0 -0
  72. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/errors/custom_exceptions.py +0 -0
  73. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/s3/s3.py +0 -0
  74. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/s3/s3_connection.py +0 -0
  75. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/utilities/datetime_utility.py +0 -0
  76. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/utilities/file_operations.py +0 -0
  77. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/utilities/http_utility.py +0 -0
  78. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/utilities/logging_utility.py +0 -0
  79. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/utilities/serialization_utility.py +0 -0
  80. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/src/boto3_assist/utilities/string_utility.py +0 -0
  81. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/__init__.py +0 -0
  82. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/__top/__init__.py +0 -0
  83. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/__init__.py +0 -0
  84. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/dynamodb_model_base_test.py +0 -0
  85. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/dynamodb_model_projections_test.py +0 -0
  86. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/dynamodb_model_serializtion_test.py +0 -0
  87. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/dynamodb_moto_sorting_test.py +0 -0
  88. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/dynamodb_reindex_test.py +0 -0
  89. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/models/cms/base.py +0 -0
  90. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/models/cms/content_block.py +0 -0
  91. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/models/cms/page.py +0 -0
  92. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/models/cms/template.py +0 -0
  93. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/models/simple_model.py +0 -0
  94. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/dynamodb/models/user_model.py +0 -0
  95. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/examples_test/__init__.py +0 -0
  96. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/examples_test/user_service_test.py +0 -0
  97. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/s3/__init__.py +0 -0
  98. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/s3/files/test.txt +0 -0
  99. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/s3/s3_file_upload_test.py +0 -0
  100. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/utilities/__init__.py +0 -0
  101. {boto3_assist-0.2.9 → boto3_assist-0.2.10}/tests/utilities/serialization_utility_test.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: boto3_assist
3
- Version: 0.2.9
3
+ Version: 0.2.10
4
4
  Summary: Additional boto3 wrappers to make your life a little easier
5
5
  Author-email: Eric Wilson <boto3-assist@geekcafe.com>
6
6
  License-File: LICENSE-EXPLAINED.txt
@@ -7,7 +7,7 @@ packages = ["src/boto3_assist"]
7
7
 
8
8
  [project]
9
9
  name = "boto3_assist"
10
- version = "0.2.9"
10
+ version = "0.2.10"
11
11
 
12
12
  authors = [
13
13
  { name="Eric Wilson", email="boto3-assist@geekcafe.com" }
@@ -94,7 +94,7 @@ class DynamoDB(DynamoDBConnection):
94
94
  except Exception as e: # pylint: disable=w0718
95
95
  logger.exception(e)
96
96
  raise RuntimeError(
97
- "An error occured during model converation. The entry was not saved."
97
+ "An error occured during model converation. The entry was not saved. "
98
98
  ) from e
99
99
 
100
100
  if isinstance(item, dict):
@@ -28,6 +28,14 @@ class DynamoDBIndexes:
28
28
  def add_primary(self, index: DynamoDBIndex):
29
29
  """Add an index"""
30
30
  index.name = DynamoDBIndexes.PRIMARY_INDEX
31
+
32
+ if index.name in self.__indexes:
33
+ raise ValueError(
34
+ f"The index {index.name} is already defined in your model somewhere. "
35
+ "This error is generated to protect you from unforseen issues. "
36
+ "If you models are inheriting from other models, you may have the primary defined twice."
37
+ )
38
+
31
39
  self.__indexes[DynamoDBIndexes.PRIMARY_INDEX] = index
32
40
 
33
41
  def add_secondary(self, index: DynamoDBIndex):
@@ -37,7 +45,11 @@ class DynamoDBIndexes:
37
45
 
38
46
  # if the index already exists, raise an exception
39
47
  if index.name in self.__indexes:
40
- raise ValueError(f"Index {index.name} already exists")
48
+ raise ValueError(
49
+ f"The index {index.name} is already defined in your model somewhere. "
50
+ "This error is generated to protect you from unforseen issues. "
51
+ "If you models are inheriting from other models, you may have the primary defined twice."
52
+ )
41
53
  if index.name == DynamoDBIndexes.PRIMARY_INDEX:
42
54
  raise ValueError(f"Index {index.name} is reserved for the primary index")
43
55
  if index.partition_key is None:
@@ -0,0 +1 @@
1
+ __version__ = '0.2.10'
@@ -1 +0,0 @@
1
- __version__ = '0.2.9'
File without changes
File without changes
File without changes
File without changes
File without changes