ingestify 0.1.0__tar.gz → 0.1.1__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 (84) hide show
  1. {ingestify-0.1.0 → ingestify-0.1.1}/PKG-INFO +1 -1
  2. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/__init__.py +1 -1
  3. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/fetch/http.py +29 -1
  4. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify.egg-info/PKG-INFO +1 -1
  5. {ingestify-0.1.0 → ingestify-0.1.1}/README.md +0 -0
  6. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/application/__init__.py +0 -0
  7. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/application/dataset_store.py +0 -0
  8. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/application/ingestion_engine.py +0 -0
  9. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/application/loader.py +0 -0
  10. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/application/secrets_manager.py +0 -0
  11. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/cmdline.py +0 -0
  12. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/__init__.py +0 -0
  13. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/__init__.py +0 -0
  14. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/data_spec_version_collection.py +0 -0
  15. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/__init__.py +0 -0
  16. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/collection.py +0 -0
  17. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/collection_metadata.py +0 -0
  18. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/dataset.py +0 -0
  19. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/dataset_repository.py +0 -0
  20. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/events.py +0 -0
  21. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/file.py +0 -0
  22. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/file_collection.py +0 -0
  23. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/file_repository.py +0 -0
  24. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/identifier.py +0 -0
  25. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/revision.py +0 -0
  26. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/dataset/selector.py +0 -0
  27. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/event/__init__.py +0 -0
  28. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/event/_old_event.py +0 -0
  29. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/event/dispatcher.py +0 -0
  30. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/event/domain_event.py +0 -0
  31. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/event/event_bus.py +0 -0
  32. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/event/publisher.py +0 -0
  33. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/event/subscriber.py +0 -0
  34. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/extract_job.py +0 -0
  35. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/fetch_policy.py +0 -0
  36. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/resources/__init__.py +0 -0
  37. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/resources/dataset_resource.py +0 -0
  38. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/sink.py +0 -0
  39. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/source.py +0 -0
  40. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/task/__init__.py +0 -0
  41. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/task/set.py +0 -0
  42. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/models/task/task.py +0 -0
  43. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/services/__init__.py +0 -0
  44. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/services/transformers/__init__.py +0 -0
  45. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/domain/services/transformers/kloppy_to_pandas.py +0 -0
  46. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/exceptions.py +0 -0
  47. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/__init__.py +0 -0
  48. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/fetch/__init__.py +0 -0
  49. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/serialization/__init__.py +0 -0
  50. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/sink/__init__.py +0 -0
  51. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/sink/postgresql.py +0 -0
  52. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/source/__init__.py +0 -0
  53. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/source/statsbomb_github.py +0 -0
  54. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/source/wyscout.py +0 -0
  55. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/__init__.py +0 -0
  56. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/dataset/__init__.py +0 -0
  57. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/dataset/local_dataset_repository.py +0 -0
  58. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/dataset/sqlalchemy/__init__.py +0 -0
  59. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/dataset/sqlalchemy/mapping.py +0 -0
  60. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/dataset/sqlalchemy/repository.py +0 -0
  61. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/file/__init__.py +0 -0
  62. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/file/local_file_repository.py +0 -0
  63. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/infra/store/file/s3_file_repository.py +0 -0
  64. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/main.py +0 -0
  65. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/server.py +0 -0
  66. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/source_base.py +0 -0
  67. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/statsbomb_github/README.md +0 -0
  68. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/statsbomb_github/config.yaml.jinja2 +0 -0
  69. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/statsbomb_github/database/README.md +0 -0
  70. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/statsbomb_github/query.py +0 -0
  71. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/wyscout/.env +0 -0
  72. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/wyscout/.gitignore +0 -0
  73. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/wyscout/README.md +0 -0
  74. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/wyscout/config.yaml.jinja2 +0 -0
  75. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/wyscout/database/README.md +0 -0
  76. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/static/templates/wyscout/query.py +0 -0
  77. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify/utils.py +0 -0
  78. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify.egg-info/SOURCES.txt +0 -0
  79. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify.egg-info/dependency_links.txt +0 -0
  80. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify.egg-info/entry_points.txt +0 -0
  81. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify.egg-info/requires.txt +0 -0
  82. {ingestify-0.1.0 → ingestify-0.1.1}/ingestify.egg-info/top_level.txt +0 -0
  83. {ingestify-0.1.0 → ingestify-0.1.1}/setup.cfg +0 -0
  84. {ingestify-0.1.0 → ingestify-0.1.1}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ingestify
3
- Version: 0.1.0
3
+ Version: 0.1.1
4
4
  Summary: Standardizing soccer tracking- and event data
5
5
  Author: Koen Vossen
6
6
  Author-email: info@koenvossen.nl
@@ -8,4 +8,4 @@ if not __INGESTIFY_SETUP__:
8
8
  from .infra import retrieve_http
9
9
  from .source_base import Source, DatasetResource
10
10
 
11
- __version__ = "0.1.0"
11
+ __version__ = "0.1.1"
@@ -6,10 +6,38 @@ from io import BytesIO
6
6
  from typing import Optional, Callable, Tuple
7
7
 
8
8
  import requests
9
+ from requests.adapters import HTTPAdapter
10
+ from urllib3 import Retry
9
11
 
10
12
  from ingestify.domain.models import DraftFile, File
11
13
  from ingestify.utils import utcnow
12
14
 
15
+ _session = None
16
+
17
+
18
+ def get_session():
19
+ """Initialize the session when it's needed. This will make sure it's initialized
20
+ within the correct context, and we don't get issues when the session is created
21
+ in process #1 and used in process #2
22
+ """
23
+ global _session
24
+
25
+ if not _session:
26
+ retry_strategy = Retry(
27
+ total=4, # Maximum number of retries
28
+ backoff_factor=2, # Exponential backoff factor (e.g., 2 means 1, 2, 4, 8 seconds, ...)
29
+ status_forcelist=[429, 500, 502, 503, 504], # HTTP status codes to retry on
30
+ )
31
+
32
+ adapter = HTTPAdapter(max_retries=retry_strategy)
33
+
34
+ # Create a new session object
35
+ _session = requests.Session()
36
+ _session.mount("http://", adapter)
37
+ _session.mount("https://", adapter)
38
+
39
+ return _session
40
+
13
41
 
14
42
  def retrieve_http(
15
43
  url,
@@ -41,7 +69,7 @@ def retrieve_http(
41
69
  else:
42
70
  raise Exception(f"Don't know how to use {key}")
43
71
 
44
- response = requests.get(url, headers=headers, **http_kwargs)
72
+ response = get_session().get(url, headers=headers, **http_kwargs)
45
73
  response.raise_for_status()
46
74
  if response.status_code == 304:
47
75
  # Not modified
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.1
2
2
  Name: ingestify
3
- Version: 0.1.0
3
+ Version: 0.1.1
4
4
  Summary: Standardizing soccer tracking- and event data
5
5
  Author: Koen Vossen
6
6
  Author-email: info@koenvossen.nl
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes