kerykeion 4.26.2__py3-none-any.whl → 5.0.0a2__py3-none-any.whl

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.

Potentially problematic release.


This version of kerykeion might be problematic. Click here for more details.

Files changed (49) hide show
  1. kerykeion/__init__.py +9 -7
  2. kerykeion/aspects/aspects_utils.py +14 -8
  3. kerykeion/aspects/natal_aspects.py +26 -17
  4. kerykeion/aspects/synastry_aspects.py +32 -15
  5. kerykeion/aspects/transits_time_range.py +2 -2
  6. kerykeion/astrological_subject_factory.py +1132 -0
  7. kerykeion/charts/charts_utils.py +676 -146
  8. kerykeion/charts/draw_planets.py +9 -8
  9. kerykeion/charts/draw_planets_v2.py +639 -0
  10. kerykeion/charts/kerykeion_chart_svg.py +1334 -601
  11. kerykeion/charts/templates/chart.xml +184 -78
  12. kerykeion/charts/templates/wheel_only.xml +13 -12
  13. kerykeion/charts/themes/classic.css +91 -76
  14. kerykeion/charts/themes/dark-high-contrast.css +129 -107
  15. kerykeion/charts/themes/dark.css +130 -107
  16. kerykeion/charts/themes/light.css +130 -103
  17. kerykeion/charts/themes/strawberry.css +143 -0
  18. kerykeion/composite_subject_factory.py +26 -43
  19. kerykeion/ephemeris_data.py +6 -10
  20. kerykeion/house_comparison/__init__.py +3 -0
  21. kerykeion/house_comparison/house_comparison_factory.py +70 -0
  22. kerykeion/house_comparison/house_comparison_models.py +38 -0
  23. kerykeion/house_comparison/house_comparison_utils.py +98 -0
  24. kerykeion/kr_types/chart_types.py +13 -5
  25. kerykeion/kr_types/kr_literals.py +34 -6
  26. kerykeion/kr_types/kr_models.py +122 -160
  27. kerykeion/kr_types/settings_models.py +107 -143
  28. kerykeion/planetary_return_factory.py +299 -0
  29. kerykeion/{relationship_score/relationship_score_factory.py → relationship_score_factory.py} +10 -13
  30. kerykeion/report.py +4 -4
  31. kerykeion/settings/config_constants.py +35 -6
  32. kerykeion/settings/kerykeion_settings.py +1 -0
  33. kerykeion/settings/kr.config.json +1301 -1255
  34. kerykeion/settings/legacy/__init__.py +0 -0
  35. kerykeion/settings/legacy/legacy_celestial_points_settings.py +299 -0
  36. kerykeion/settings/legacy/legacy_chart_aspects_settings.py +71 -0
  37. kerykeion/settings/legacy/legacy_color_settings.py +42 -0
  38. kerykeion/transits_time_range.py +13 -9
  39. kerykeion/utilities.py +228 -31
  40. {kerykeion-4.26.2.dist-info → kerykeion-5.0.0a2.dist-info}/METADATA +119 -107
  41. kerykeion-5.0.0a2.dist-info/RECORD +54 -0
  42. {kerykeion-4.26.2.dist-info → kerykeion-5.0.0a2.dist-info}/WHEEL +1 -1
  43. kerykeion/astrological_subject.py +0 -841
  44. kerykeion/relationship_score/__init__.py +0 -2
  45. kerykeion/relationship_score/relationship_score.py +0 -175
  46. kerykeion-4.26.2.dist-info/LICENSE +0 -661
  47. kerykeion-4.26.2.dist-info/RECORD +0 -46
  48. /LICENSE → /kerykeion-5.0.0a2.dist-info/LICENSE +0 -0
  49. {kerykeion-4.26.2.dist-info → kerykeion-5.0.0a2.dist-info}/entry_points.txt +0 -0
kerykeion/report.py CHANGED
@@ -1,4 +1,4 @@
1
- from kerykeion import AstrologicalSubject
1
+ from kerykeion import AstrologicalSubjectFactory
2
2
  from simple_ascii_tables import AsciiTable
3
3
  from kerykeion.utilities import get_houses_list, get_available_astrological_points_list
4
4
  from typing import Union
@@ -14,7 +14,7 @@ class Report:
14
14
  planets_table: str
15
15
  houses_table: str
16
16
 
17
- def __init__(self, instance: Union[AstrologicalSubject, AstrologicalSubjectModel]):
17
+ def __init__(self, instance: AstrologicalSubjectModel):
18
18
  self.instance = instance
19
19
 
20
20
  self.get_report_title()
@@ -46,7 +46,7 @@ class Report:
46
46
  Creates the planets table.
47
47
  """
48
48
 
49
- planets_data = [["Planet", "Sign", "Pos.", "Ret.", "House"]] + [
49
+ planets_data = [["AstrologicalPoint", "Sign", "Pos.", "Ret.", "House"]] + [
50
50
  [
51
51
  planet.name,
52
52
  planet.sign,
@@ -89,6 +89,6 @@ if __name__ == "__main__":
89
89
  from kerykeion.utilities import setup_logging
90
90
  setup_logging(level="debug")
91
91
 
92
- john = AstrologicalSubject("John", 1975, 10, 10, 21, 15, "Roma", "IT")
92
+ john = AstrologicalSubjectFactory.from_birth_data("John", 1975, 10, 10, 21, 15, "Roma", "IT")
93
93
  report = Report(john)
94
94
  report.print_report()
@@ -1,8 +1,9 @@
1
- from kerykeion.kr_types.kr_literals import Planet, AxialCusps, AspectName
1
+ from kerykeion.kr_types.kr_literals import AstrologicalPoint
2
2
  from kerykeion.kr_types.kr_models import ActiveAspect
3
- from typing import List, Union
3
+ from typing import List
4
4
 
5
- DEFAULT_ACTIVE_POINTS: List[Union[Planet, AxialCusps]] = [
5
+
6
+ DEFAULT_ACTIVE_POINTS: List[AstrologicalPoint] = [
6
7
  "Sun",
7
8
  "Moon",
8
9
  "Mercury",
@@ -15,17 +16,40 @@ DEFAULT_ACTIVE_POINTS: List[Union[Planet, AxialCusps]] = [
15
16
  "Pluto",
16
17
  "Mean_Node",
17
18
  # "True_Node",
19
+ "Mean_South_Node",
20
+ # "True_South_Node",
18
21
  "Chiron",
22
+ "Mean_Lilith",
23
+ # "True_Lilith",
24
+ # "Earth",
25
+ # "Pholus",
26
+ # "Ceres",
27
+ # "Pallas",
28
+ # "Juno",
29
+ # "Vesta",
30
+ # "Eris",
31
+ # "Sedna",
32
+ # "Haumea",
33
+ # "Makemake",
34
+ # "Ixion",
35
+ # "Orcus",
36
+ # "Quaoar",
37
+ # "Regulus",
38
+ # "Spica",
19
39
  "Ascendant",
20
40
  "Medium_Coeli",
21
41
  # "Descendant",
22
42
  # "Imum_Coeli",
23
- "Mean_Lilith",
24
- "Mean_South_Node",
25
- # "True_South_Node"
43
+ # "Vertex",
44
+ # "Anti_Vertex",
45
+ # "Pars_Fortunae",
46
+ # "Pars_Spiritus",
47
+ # "Pars_Amoris",
48
+ # "Pars_Fidei"
26
49
  ]
27
50
  """
28
51
  Default list of active points in the charts or aspects calculations.
52
+ The full list of points is available in the `kr_types.kr_literals.AstrologicalPoint` literal.
29
53
  """
30
54
 
31
55
  DEFAULT_ACTIVE_ASPECTS: List[ActiveAspect] = [
@@ -45,3 +69,8 @@ DEFAULT_ACTIVE_ASPECTS: List[ActiveAspect] = [
45
69
  Default list of active aspects in the aspects calculations.
46
70
  The full list of aspects is available in the `kr_types.kr_literals.AspectName` literal.
47
71
  """
72
+
73
+ DEFAULT_AXIS_ORBIT: int = 1
74
+ """
75
+ Default orbit for the axes aspects.
76
+ """
@@ -53,6 +53,7 @@ def get_settings(new_settings_file: Union[Path, None, KerykeionSettingsModel, di
53
53
  return KerykeionSettingsModel(**settings_dict)
54
54
 
55
55
 
56
+ @functools.lru_cache
56
57
  def merge_settings(settings: KerykeionSettingsModel, new_settings: Dict) -> KerykeionSettingsModel:
57
58
  """
58
59
  This function is used to merge the settings file with the default settings,