marqetive-lib 0.2.3__tar.gz → 0.2.4__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 (38) hide show
  1. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/PKG-INFO +1 -1
  2. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/pyproject.toml +1 -1
  3. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/twitter/media.py +22 -0
  4. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/README.md +0 -0
  5. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/__init__.py +0 -0
  6. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/core/__init__.py +0 -0
  7. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/core/base.py +0 -0
  8. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/core/client.py +0 -0
  9. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/core/exceptions.py +0 -0
  10. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/core/models.py +0 -0
  11. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/factory.py +0 -0
  12. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/__init__.py +0 -0
  13. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/instagram/__init__.py +0 -0
  14. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/instagram/client.py +0 -0
  15. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/instagram/exceptions.py +0 -0
  16. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/instagram/media.py +0 -0
  17. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/instagram/models.py +0 -0
  18. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/linkedin/__init__.py +0 -0
  19. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/linkedin/client.py +0 -0
  20. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/linkedin/exceptions.py +0 -0
  21. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/linkedin/media.py +0 -0
  22. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/linkedin/models.py +0 -0
  23. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/tiktok/__init__.py +0 -0
  24. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/tiktok/client.py +0 -0
  25. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/tiktok/exceptions.py +0 -0
  26. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/tiktok/media.py +0 -0
  27. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/tiktok/models.py +0 -0
  28. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/twitter/__init__.py +0 -0
  29. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/twitter/client.py +0 -0
  30. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/twitter/exceptions.py +0 -0
  31. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/platforms/twitter/models.py +0 -0
  32. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/py.typed +0 -0
  33. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/utils/__init__.py +0 -0
  34. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/utils/file_handlers.py +0 -0
  35. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/utils/helpers.py +0 -0
  36. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/utils/media.py +0 -0
  37. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/utils/oauth.py +0 -0
  38. {marqetive_lib-0.2.3 → marqetive_lib-0.2.4}/src/marqetive/utils/retry.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: marqetive-lib
3
- Version: 0.2.3
3
+ Version: 0.2.4
4
4
  Summary: Modern Python utilities for web APIs
5
5
  Keywords: api,utilities,web,http,marqetive
6
6
  Requires-Python: >=3.12
@@ -4,7 +4,7 @@ build-backend = "poetry.core.masonry.api"
4
4
 
5
5
  [project]
6
6
  name = "marqetive-lib"
7
- version = "0.2.3"
7
+ version = "0.2.4"
8
8
  description = "Modern Python utilities for web APIs"
9
9
  readme = "README.md"
10
10
  requires-python = ">=3.12"
@@ -25,6 +25,7 @@ from marqetive.core.exceptions import (
25
25
  MediaUploadError,
26
26
  )
27
27
  from marqetive.core.models import ProgressEvent, ProgressStatus
28
+ from marqetive.platforms.twitter.exceptions import TwitterUnauthorizedError
28
29
  from marqetive.utils.file_handlers import download_file
29
30
  from marqetive.utils.media import (
30
31
  detect_mime_type,
@@ -399,6 +400,17 @@ class TwitterMediaManager:
399
400
 
400
401
  try:
401
402
  return await _do_upload()
403
+ except httpx.HTTPStatusError as e:
404
+ if e.response.status_code == 401:
405
+ raise TwitterUnauthorizedError(
406
+ "Unauthorized: Invalid or expired access token",
407
+ error_code=89,
408
+ ) from e
409
+ raise MediaUploadError(
410
+ f"Simple upload failed: {e}",
411
+ platform="twitter",
412
+ media_type=detect_mime_type(file_path),
413
+ ) from e
402
414
  except httpx.HTTPError as e:
403
415
  raise MediaUploadError(
404
416
  f"Simple upload failed: {e}",
@@ -701,6 +713,16 @@ class TwitterMediaManager:
701
713
  response.raise_for_status()
702
714
  logger.info(f"Added alt text to media: {media_id}")
703
715
 
716
+ except httpx.HTTPStatusError as e:
717
+ if e.response.status_code == 401:
718
+ raise TwitterUnauthorizedError(
719
+ "Unauthorized: Invalid or expired access token",
720
+ error_code=89,
721
+ ) from e
722
+ raise MediaUploadError(
723
+ f"Failed to add alt text: {e}",
724
+ platform="twitter",
725
+ ) from e
704
726
  except httpx.HTTPError as e:
705
727
  raise MediaUploadError(
706
728
  f"Failed to add alt text: {e}",
File without changes