zpdatafetch 2.4.1__tar.gz → 2.4.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 (86) hide show
  1. {zpdatafetch-2.4.1/src/zpdatafetch.egg-info → zpdatafetch-2.4.2}/PKG-INFO +5 -1
  2. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/README.md +4 -0
  3. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/pyproject.toml +1 -1
  4. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2/src/zpdatafetch.egg-info}/PKG-INFO +5 -1
  5. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrrider.py +56 -0
  6. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/LICENSE +0 -0
  7. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/setup.cfg +0 -0
  8. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/__init__.py +0 -0
  9. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/cli.py +0 -0
  10. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/config.py +0 -0
  11. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/error_helpers.py +0 -0
  12. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/exceptions.py +0 -0
  13. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/http_client.py +0 -0
  14. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/json_helpers.py +0 -0
  15. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/logging.py +0 -0
  16. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/shared/validation.py +0 -0
  17. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/__init__.py +0 -0
  18. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/activity.py +0 -0
  19. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/auth.py +0 -0
  20. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/cli.py +0 -0
  21. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/config.py +0 -0
  22. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/followers.py +0 -0
  23. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/logging_config.py +0 -0
  24. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/profile.py +0 -0
  25. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/rideons.py +0 -0
  26. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/ridersinworld.py +0 -0
  27. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zdatafetch/worlds.py +0 -0
  28. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/__init__.py +0 -0
  29. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/async_zp.py +0 -0
  30. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/cli.py +0 -0
  31. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/config.py +0 -0
  32. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/logging_config.py +0 -0
  33. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zp.py +0 -0
  34. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zp_obj.py +0 -0
  35. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zp_utils.py +0 -0
  36. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpcyclist.py +0 -0
  37. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpcyclistfetch.py +0 -0
  38. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpleague.py +0 -0
  39. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpleaguefetch.py +0 -0
  40. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpprime.py +0 -0
  41. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpprimesfetch.py +0 -0
  42. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpracefinish.py +0 -0
  43. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpracelog.py +0 -0
  44. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpraceresult.py +0 -0
  45. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpracesignup.py +0 -0
  46. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpracesprint.py +0 -0
  47. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpresultfetch.py +0 -0
  48. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpsignupfetch.py +0 -0
  49. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpsprintsfetch.py +0 -0
  50. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpteam.py +0 -0
  51. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch/zpteamfetch.py +0 -0
  52. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch.egg-info/SOURCES.txt +0 -0
  53. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch.egg-info/dependency_links.txt +0 -0
  54. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch.egg-info/entry_points.txt +0 -0
  55. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch.egg-info/requires.txt +0 -0
  56. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zpdatafetch.egg-info/top_level.txt +0 -0
  57. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/__init__.py +0 -0
  58. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/async_zr.py +0 -0
  59. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/cli.py +0 -0
  60. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/config.py +0 -0
  61. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/logging_config.py +0 -0
  62. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/rate_limiter.py +0 -0
  63. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zr.py +0 -0
  64. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zr_utils.py +0 -0
  65. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrcategories.py +0 -0
  66. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrcategoriesfetch.py +0 -0
  67. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrraceresult.py +0 -0
  68. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrresultfetch.py +0 -0
  69. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrriderfetch.py +0 -0
  70. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrteamfetch.py +0 -0
  71. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zrdatafetch/zrteamroster.py +0 -0
  72. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/__init__.py +0 -0
  73. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/async_zs.py +0 -0
  74. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/cli.py +0 -0
  75. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/logging_config.py +0 -0
  76. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/models/__init__.py +0 -0
  77. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/models/component.py +0 -0
  78. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/models/incident.py +0 -0
  79. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/models/maintenance.py +0 -0
  80. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/models/page.py +0 -0
  81. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/models/status.py +0 -0
  82. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/models/summary.py +0 -0
  83. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/zs.py +0 -0
  84. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/zsincidentfetch.py +0 -0
  85. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/zsmaintenancefetch.py +0 -0
  86. {zpdatafetch-2.4.1 → zpdatafetch-2.4.2}/src/zsdatafetch/zssummaryfetch.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zpdatafetch
3
- Version: 2.4.1
3
+ Version: 2.4.2
4
4
  Summary: A package for fetching data from Zwiftpower and Zwiftracing.app
5
5
  Author-email: Doug Morris <doug@mhost.com>
6
6
  License-Expression: MIT
@@ -679,6 +679,10 @@ This provides a clear, separate execution path.
679
679
  - `drs_rank`: Category for DRS
680
680
  - `gender`: Rider gender (M/F)
681
681
  - `zrcs`: Zwiftracing compound score (power metric)
682
+ - `velo_skill_*`: vELO2 skill deltas (endurance, pursuit, sprint, punch,
683
+ climb, time_trial)
684
+ - `velo_category_number`: vELO2 category number
685
+ - `velo_category_name`: vELO2 category name
682
686
 
683
687
  **ZRResult**: Race result data
684
688
 
@@ -650,6 +650,10 @@ This provides a clear, separate execution path.
650
650
  - `drs_rank`: Category for DRS
651
651
  - `gender`: Rider gender (M/F)
652
652
  - `zrcs`: Zwiftracing compound score (power metric)
653
+ - `velo_skill_*`: vELO2 skill deltas (endurance, pursuit, sprint, punch,
654
+ climb, time_trial)
655
+ - `velo_category_number`: vELO2 category number
656
+ - `velo_category_name`: vELO2 category name
653
657
 
654
658
  **ZRResult**: Race result data
655
659
 
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "zpdatafetch"
3
- version = "2.4.1"
3
+ version = "2.4.2"
4
4
  description = "A package for fetching data from Zwiftpower and Zwiftracing.app"
5
5
  readme = "README.md"
6
6
  requires-python = ">=3.10"
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: zpdatafetch
3
- Version: 2.4.1
3
+ Version: 2.4.2
4
4
  Summary: A package for fetching data from Zwiftpower and Zwiftracing.app
5
5
  Author-email: Doug Morris <doug@mhost.com>
6
6
  License-Expression: MIT
@@ -679,6 +679,10 @@ This provides a clear, separate execution path.
679
679
  - `drs_rank`: Category for DRS
680
680
  - `gender`: Rider gender (M/F)
681
681
  - `zrcs`: Zwiftracing compound score (power metric)
682
+ - `velo_skill_*`: vELO2 skill deltas (endurance, pursuit, sprint, punch,
683
+ climb, time_trial)
684
+ - `velo_category_number`: vELO2 category number
685
+ - `velo_category_name`: vELO2 category name
682
686
 
683
687
  **ZRResult**: Race result data
684
688
 
@@ -69,6 +69,14 @@ class ZRRider:
69
69
  velo_punch: vELO2 punch factor
70
70
  velo_climb: vELO2 climb factor
71
71
  velo_time_trial_factor: vELO2 time trial factor
72
+ velo_skill_endurance: vELO2 skill endurance delta
73
+ velo_skill_pursuit: vELO2 skill pursuit delta
74
+ velo_skill_sprint: vELO2 skill sprint delta
75
+ velo_skill_punch: vELO2 skill punch delta
76
+ velo_skill_climb: vELO2 skill climb delta
77
+ velo_skill_time_trial: vELO2 skill time trial delta
78
+ velo_category_number: vELO2 category number
79
+ velo_category_name: vELO2 category name
72
80
  _excluded: Recognized but not explicitly handled fields
73
81
  _extra: Unknown/new fields from API changes
74
82
  """
@@ -126,6 +134,18 @@ class ZRRider:
126
134
  velo_climb: float = 0.0
127
135
  velo_time_trial_factor: float = 0.0
128
136
 
137
+ # Velo skill (vELO2 skill deltas)
138
+ velo_skill_endurance: float = 0.0
139
+ velo_skill_pursuit: float = 0.0
140
+ velo_skill_sprint: float = 0.0
141
+ velo_skill_punch: float = 0.0
142
+ velo_skill_climb: float = 0.0
143
+ velo_skill_time_trial: float = 0.0
144
+
145
+ # Velo category (vELO2 category)
146
+ velo_category_number: int = 0
147
+ velo_category_name: str = ''
148
+
129
149
  # Field classification
130
150
  _excluded: dict[str, Any] = field(default_factory=dict, repr=False)
131
151
  _extra: dict[str, Any] = field(default_factory=dict, repr=False)
@@ -300,6 +320,34 @@ class ZRRider:
300
320
  extract_nested_value(data, 'velo', 'factors', 'timeTrial'),
301
321
  )
302
322
 
323
+ # Velo skill (vELO2 skill deltas)
324
+ velo_skill_endurance = safe_float(
325
+ extract_nested_value(data, 'velo', 'skill', 'endurance'),
326
+ )
327
+ velo_skill_pursuit = safe_float(
328
+ extract_nested_value(data, 'velo', 'skill', 'pursuit'),
329
+ )
330
+ velo_skill_sprint = safe_float(
331
+ extract_nested_value(data, 'velo', 'skill', 'sprint'),
332
+ )
333
+ velo_skill_punch = safe_float(
334
+ extract_nested_value(data, 'velo', 'skill', 'punch'),
335
+ )
336
+ velo_skill_climb = safe_float(
337
+ extract_nested_value(data, 'velo', 'skill', 'climb'),
338
+ )
339
+ velo_skill_time_trial = safe_float(
340
+ extract_nested_value(data, 'velo', 'skill', 'timeTrial'),
341
+ )
342
+
343
+ # Velo category (vELO2 category)
344
+ velo_category_number = safe_int(
345
+ extract_nested_value(data, 'velo', 'category', 'number'),
346
+ )
347
+ velo_category_name = safe_str(
348
+ extract_nested_value(data, 'velo', 'category', 'name'),
349
+ )
350
+
303
351
  # Classify remaining fields
304
352
  excluded = {}
305
353
  extra = {}
@@ -352,6 +400,14 @@ class ZRRider:
352
400
  velo_punch=velo_punch,
353
401
  velo_climb=velo_climb,
354
402
  velo_time_trial_factor=velo_time_trial_factor,
403
+ velo_skill_endurance=velo_skill_endurance,
404
+ velo_skill_pursuit=velo_skill_pursuit,
405
+ velo_skill_sprint=velo_skill_sprint,
406
+ velo_skill_punch=velo_skill_punch,
407
+ velo_skill_climb=velo_skill_climb,
408
+ velo_skill_time_trial=velo_skill_time_trial,
409
+ velo_category_number=velo_category_number,
410
+ velo_category_name=velo_category_name,
355
411
  _excluded=excluded,
356
412
  _extra=extra,
357
413
  )
File without changes
File without changes