wbreport 1.55.9__tar.gz → 1.55.10rc0__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.

Potentially problematic release.


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

Files changed (70) hide show
  1. {wbreport-1.55.9 → wbreport-1.55.10rc0}/PKG-INFO +1 -1
  2. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/defaults/factsheets/base.py +3 -3
  3. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/defaults/factsheets/multitheme.py +3 -3
  4. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/models.py +2 -2
  5. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/charts/pie.py +1 -1
  6. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/templates/basic_factsheet.py +1 -1
  7. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/templates/fund_factsheet.py +1 -1
  8. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/templates/long_industry_exposure_factsheet.py +1 -1
  9. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/templates/multistrat_factsheet.py +1 -1
  10. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/tests/test_models.py +1 -0
  11. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/tests/test_tasks.py +1 -0
  12. {wbreport-1.55.9 → wbreport-1.55.10rc0}/.gitignore +0 -0
  13. {wbreport-1.55.9 → wbreport-1.55.10rc0}/LICENSE +0 -0
  14. {wbreport-1.55.9 → wbreport-1.55.10rc0}/pyproject.toml +0 -0
  15. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/__init__.py +0 -0
  16. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/admin.py +0 -0
  17. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/apps.py +0 -0
  18. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/defaults/__init__.py +0 -0
  19. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/defaults/factsheets/__init__.py +0 -0
  20. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/defaults/factsheets/menu.py +0 -0
  21. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/defaults/factsheets/mixins.py +0 -0
  22. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/dynamic_preferences_registry.py +0 -0
  23. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/factories/__init__.py +0 -0
  24. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/factories/data_classes.py +0 -0
  25. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/factories/reports.py +0 -0
  26. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/filters.py +0 -0
  27. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/fixtures/wbreport.yaml +0 -0
  28. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0001_initial_squashed_squashed_0007_report_key.py +0 -0
  29. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0008_alter_report_file_content_type.py +0 -0
  30. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0009_alter_report_color_palette.py +0 -0
  31. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0010_auto_20240103_0947.py +0 -0
  32. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0011_auto_20240207_1629.py +0 -0
  33. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0012_reportversion_lock.py +0 -0
  34. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0013_alter_reportversion_context.py +0 -0
  35. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/0014_alter_reportcategory_options_and_more.py +0 -0
  36. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/migrations/__init__.py +0 -0
  37. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/mixins.py +0 -0
  38. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/__init__.py +0 -0
  39. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/charts/__init__.py +0 -0
  40. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/charts/legend.py +0 -0
  41. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/charts/timeseries.py +0 -0
  42. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/flowables/risk.py +0 -0
  43. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/flowables/textboxes.py +0 -0
  44. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/flowables/themes.py +0 -0
  45. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/__init__.py +0 -0
  46. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/run.py +0 -0
  47. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/templates/__init__.py +0 -0
  48. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/sandbox/templates/testfile.pdf +0 -0
  49. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/tables/__init__.py +0 -0
  50. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/tables/aggregated_tables.py +0 -0
  51. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/pdf/tables/data_tables.py +0 -0
  52. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/serializers.py +0 -0
  53. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/tasks.py +0 -0
  54. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/templates/__init__.py +0 -0
  55. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/templatetags/__init__.py +0 -0
  56. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/templatetags/portfolio_tags.py +0 -0
  57. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/tests/__init__.py +0 -0
  58. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/tests/conftest.py +0 -0
  59. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/tests/test_viewsets.py +0 -0
  60. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/tests/tests.py +0 -0
  61. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/urls.py +0 -0
  62. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/urls_public.py +0 -0
  63. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/__init__.py +0 -0
  64. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/configs/__init__.py +0 -0
  65. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/configs/buttons.py +0 -0
  66. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/configs/displays.py +0 -0
  67. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/configs/endpoints.py +0 -0
  68. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/configs/menus.py +0 -0
  69. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/configs/titles.py +0 -0
  70. {wbreport-1.55.9 → wbreport-1.55.10rc0}/wbreport/viewsets/viewsets.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: wbreport
3
- Version: 1.55.9
3
+ Version: 1.55.10rc0
4
4
  Author-email: Christopher Wittlinger <c.wittlinger@stainly.com>
5
5
  License-File: LICENSE
6
6
  Requires-Dist: wbcore
@@ -446,7 +446,7 @@ class ReportClass(FactsheetReportMixin, ReportMixin):
446
446
  # Price Timeseries Chart
447
447
  elements.append(
448
448
  get_timeseries_chart(
449
- data=[list(zip(prices.index, prices.net_value))],
449
+ data=[list(zip(prices.index, prices.net_value, strict=False))],
450
450
  width=CONTENT_WIDTH_PAGE1_LEFT - CONTENT_OFFSET,
451
451
  height=4.34 * cm,
452
452
  color=c_product,
@@ -467,7 +467,7 @@ class ReportClass(FactsheetReportMixin, ReportMixin):
467
467
  "<strong>Top 3 Contributors</strong>",
468
468
  "<strong>Bottom 3 Contributors</strong>",
469
469
  ],
470
- data=list(zip(top_3_holdings, top_3_contributors, bottom_3_contributors)),
470
+ data=list(zip(top_3_holdings, top_3_contributors, bottom_3_contributors, strict=False)),
471
471
  width=CONTENT_WIDTH_PAGE1_LEFT,
472
472
  header_row_height=0.85 * cm,
473
473
  data_row_height=0.39 * cm,
@@ -636,7 +636,7 @@ class ReportClass(FactsheetReportMixin, ReportMixin):
636
636
 
637
637
  data = list()
638
638
  categories = list()
639
- for index, row in enumerate(df.itertuples()):
639
+ for row in df.itertuples():
640
640
  data.append(row.weighting * 100)
641
641
  categories.append(f"{row.aggregated_title} ({row.weighting * 100:.1f}%)")
642
642
 
@@ -450,7 +450,7 @@ class ReportClass(FactsheetReportMixin, ReportMixin):
450
450
  # Price Timeseries Chart
451
451
  elements.append(
452
452
  get_timeseries_chart(
453
- data=[list(zip(prices.index, prices.net_value))],
453
+ data=[list(zip(prices.index, prices.net_value, strict=False))],
454
454
  width=CONTENT_WIDTH_PAGE1_LEFT - CONTENT_OFFSET,
455
455
  height=4.34 * cm,
456
456
  color=c_product,
@@ -471,7 +471,7 @@ class ReportClass(FactsheetReportMixin, ReportMixin):
471
471
  "<strong>Top 3 Contributors</strong>",
472
472
  "<strong>Bottom 3 Contributors</strong>",
473
473
  ],
474
- data=list(zip(top_3_holdings, top_3_contributors, bottom_3_contributors)),
474
+ data=list(zip(top_3_holdings, top_3_contributors, bottom_3_contributors, strict=False)),
475
475
  width=CONTENT_WIDTH_PAGE1_LEFT,
476
476
  header_row_height=0.85 * cm,
477
477
  data_row_height=0.39 * cm,
@@ -639,7 +639,7 @@ class ReportClass(FactsheetReportMixin, ReportMixin):
639
639
 
640
640
  data = list()
641
641
  categories = list()
642
- for index, row in enumerate(df.itertuples()):
642
+ for row in df.itertuples:
643
643
  data.append(row.weighting * 100)
644
644
  categories.append(f"{row.aggregated_title} ({row.weighting * 100:.1f}%)")
645
645
 
@@ -112,9 +112,9 @@ class ReportClass(WBModel):
112
112
  """
113
113
  if (len(args) == 3 and (class_path := args[2])) or (class_path := kwargs.get("class_path", None)):
114
114
  try:
115
- if ReportClassModule := getattr(importlib.import_module(class_path), "ReportClass", None):
115
+ if class_module := getattr(importlib.import_module(class_path), "ReportClass", None):
116
116
  for method in self.REPORT_CLASS_DEFAULT_METHODS:
117
- setattr(self, method, getattr(ReportClassModule, method))
117
+ setattr(self, method, getattr(class_module, method))
118
118
  except ModuleNotFoundError:
119
119
  for method in self.REPORT_CLASS_DEFAULT_METHODS:
120
120
  setattr(self, method, lambda *a, **k: None)
@@ -9,7 +9,7 @@ def get_data_and_labels_from_df(df, color_palette, percent=True):
9
9
  data = list()
10
10
  colornamepairs = list()
11
11
 
12
- for index, row in enumerate(df.itertuples()):
12
+ for row in df.itertuples():
13
13
  data.append(float(row.weighting))
14
14
 
15
15
  label = f"{row[2]*100:.1f}%" if percent else f"{row[2]:.1f}"
@@ -557,7 +557,7 @@ def generate_report(context):
557
557
 
558
558
  data = list()
559
559
  categories = list()
560
- for index, row in enumerate(df.itertuples()):
560
+ for row in df.itertuples():
561
561
  data.append(row.weighting * 100)
562
562
  categories.append(f"{row.aggregated_title} ({row.weighting*100:.1f}%)")
563
563
 
@@ -567,7 +567,7 @@ def generate_report(context):
567
567
 
568
568
  data = list()
569
569
  categories = list()
570
- for index, row in enumerate(df.itertuples()):
570
+ for row in df.itertuples():
571
571
  data.append(row.weighting * 100)
572
572
  categories.append(f"{row.aggregated_title} ({row.weighting*100:.1f}%)")
573
573
 
@@ -559,7 +559,7 @@ def generate_report(context):
559
559
 
560
560
  data = list()
561
561
  categories = list()
562
- for index, row in enumerate(df.itertuples()):
562
+ for row in df.itertuples():
563
563
  data.append(row.weighting * 100)
564
564
  categories.append(f"{row.aggregated_title} ({row.weighting*100:.1f}%)")
565
565
 
@@ -553,7 +553,7 @@ def generate_report(context):
553
553
 
554
554
  data = list()
555
555
  categories = list()
556
- for index, row in enumerate(df.itertuples()):
556
+ for row in df.itertuples():
557
557
  data.append(row.weighting * 100)
558
558
  categories.append(f"{row.aggregated_title} ({row.weighting*100:.1f}%)")
559
559
 
@@ -4,6 +4,7 @@ import pytest
4
4
  from django.test import override_settings
5
5
  from faker import Faker
6
6
  from wbmailing.models import MassMail
7
+
7
8
  from wbreport.models import ReportVersion
8
9
 
9
10
  fake = Faker()
@@ -2,6 +2,7 @@ import pytest
2
2
  from django.core import mail
3
3
  from django.test import override_settings
4
4
  from wbcore.contrib.authentication.factories import SuperUserFactory
5
+
5
6
  from wbreport.tasks import generate_and_send_current_report_file
6
7
 
7
8
 
File without changes
File without changes
File without changes