namecheap-python 1.0.5__tar.gz → 1.0.6__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 (36) hide show
  1. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/PKG-INFO +1 -1
  2. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/pyproject.toml +1 -1
  3. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/models.py +6 -3
  4. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/.env.example +0 -0
  5. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/.github/cliff.toml +0 -0
  6. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/.github/workflows/release.yml +0 -0
  7. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/.gitignore +0 -0
  8. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/.pre-commit-config.yaml +0 -0
  9. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/CLI.md +0 -0
  10. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/LICENSE +0 -0
  11. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/MANIFEST.in +0 -0
  12. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/README.md +0 -0
  13. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/docs/dev/README.md +0 -0
  14. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/examples/README.md +0 -0
  15. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/examples/quickstart.py +0 -0
  16. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/pending.md +0 -0
  17. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/__init__.py +0 -0
  18. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/_api/__init__.py +0 -0
  19. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/_api/base.py +0 -0
  20. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/_api/dns.py +0 -0
  21. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/_api/domains.py +0 -0
  22. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/client.py +0 -0
  23. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/errors.py +0 -0
  24. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap/logging.py +0 -0
  25. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_cli/README.md +0 -0
  26. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_cli/__init__.py +0 -0
  27. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_cli/__main__.py +0 -0
  28. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_cli/completion.py +0 -0
  29. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_dns_tui/README.md +0 -0
  30. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_dns_tui/__init__.py +0 -0
  31. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_dns_tui/__main__.py +0 -0
  32. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_dns_tui/assets/screenshot1.png +0 -0
  33. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_dns_tui/assets/screenshot2.png +0 -0
  34. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_dns_tui/assets/screenshot3.png +0 -0
  35. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/src/namecheap_dns_tui/assets/screenshot4.png +0 -0
  36. {namecheap_python-1.0.5 → namecheap_python-1.0.6}/uv.lock +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: namecheap-python
3
- Version: 1.0.5
3
+ Version: 1.0.6
4
4
  Summary: A friendly Python SDK for Namecheap API
5
5
  Project-URL: Homepage, https://github.com/adriangalilea/namecheap-python
6
6
  Project-URL: Repository, https://github.com/adriangalilea/namecheap-python
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "namecheap-python"
3
- version = "1.0.5"
3
+ version = "1.0.6"
4
4
  description = "A friendly Python SDK for Namecheap API"
5
5
  authors = [{name = "Adrian Galilea Delgado", email = "adriangalilea@gmail.com"}]
6
6
  readme = "README.md"
@@ -239,12 +239,15 @@ class Domain(XMLModel):
239
239
  @field_validator("created", "expires", mode="before")
240
240
  @classmethod
241
241
  def parse_datetime(cls, v: Any) -> datetime:
242
- """Parse datetime strings."""
242
+ """Parse datetime from Namecheap API or Pydantic serialization."""
243
243
  if isinstance(v, datetime):
244
244
  return v
245
245
  if isinstance(v, str):
246
- # Namecheap uses MM/DD/YYYY format
247
- return datetime.strptime(v, "%m/%d/%Y")
246
+ # Namecheap API format (MM/DD/YYYY)
247
+ if "/" in v:
248
+ return datetime.strptime(v, "%m/%d/%Y")
249
+ # Pydantic serialization format (ISO 8601)
250
+ return datetime.fromisoformat(v)
248
251
  raise ValueError(f"Cannot parse datetime from {v}")
249
252
 
250
253