owlplanner 2025.4.7__tar.gz → 2025.4.26__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 (118) hide show
  1. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/INSTALL.md +24 -15
  2. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/PKG-INFO +1 -1
  3. owlplanner-2025.4.26/Papers/BF01580653.pdf +0 -0
  4. owlplanner-2025.4.26/Papers/Snyder-LinearProgrammingSpecial-1984.pdf +0 -0
  5. owlplanner-2025.4.26/Papers/WileyModelBuildinginMathematicalProgramming5th2013.sharethefiles.com.pdf +0 -0
  6. owlplanner-2025.4.26/docs/newowl.tex +1356 -0
  7. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/owl.pdf +0 -0
  8. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/notebooks/john+sally.ipynb +96 -96
  9. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/pyproject.toml +1 -1
  10. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/plan.py +11 -19
  11. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/tax2025.py +3 -2
  12. owlplanner-2025.4.26/src/owlplanner/version.py +1 -0
  13. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/About_Owl.py +8 -7
  14. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Documentation.py +57 -10
  15. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Optimization_Parameters.py +2 -2
  16. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/owlbridge.py +16 -8
  17. owlplanner-2025.4.26/ui/requirements.txt +10 -0
  18. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/sskeys.py +3 -3
  19. owlplanner-2025.4.7/src/owlplanner/version.py +0 -1
  20. owlplanner-2025.4.7/ui/requirements.txt +0 -11
  21. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/.devcontainer/devcontainer.json +0 -0
  22. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/.flake8 +0 -0
  23. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/.gitattributes +0 -0
  24. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/.github/workflows/github-actions-runtests.yml +0 -0
  25. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/.gitignore +0 -0
  26. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/LICENSE +0 -0
  27. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/Papers/FE00006821-Class-VI-Injection-Permit--Salient-Features-and-Regulatory-Challenges_Final.pdf +0 -0
  28. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/Papers/Kou-OptionPricingDouble-2004.pdf +0 -0
  29. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/Papers/Multi-Period Mean Expected-Shortfall Strategies Cut Your Losses and Ride Your Gains .pdf +0 -0
  30. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/Papers/Optimal Asset Allocation for Retirement Saving Deterministic Vs. Time Consistent Adaptive Strategies.pdf +0 -0
  31. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/Papers/Rule-based_strategies_for_dynamic_life_cycle_inves.pdf +0 -0
  32. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/Papers/bv_cvxbook.pdf +0 -0
  33. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/Papers/s10436-006-0062-y.pdf +0 -0
  34. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/README.md +0 -0
  35. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/USER_GUIDE.md +0 -0
  36. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docker/Dockerfile +0 -0
  37. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docker/README.md +0 -0
  38. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docker/docker-compose.yml +0 -0
  39. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docker/fastentrypoint.sh +0 -0
  40. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/AD-taxDef.png +0 -0
  41. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/AD-taxFree.png +0 -0
  42. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/AD-taxable.png +0 -0
  43. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/Hist_Bequest.png +0 -0
  44. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/Hist_Spending.png +0 -0
  45. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/MC-tutorial2a.png +0 -0
  46. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/MC-tutorial2b.png +0 -0
  47. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/OwlUI.png +0 -0
  48. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/allocations.png +0 -0
  49. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/owl.png +0 -0
  50. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/profile.png +0 -0
  51. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/ratesCorrelations.png +0 -0
  52. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/ratesPlot.png +0 -0
  53. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/savingsPlot.png +0 -0
  54. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/sourcesPlot.png +0 -0
  55. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/spendingPlot.png +0 -0
  56. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/taxIncomePlot.png +0 -0
  57. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/images/taxesPlot.png +0 -0
  58. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/docs/owl.tex +0 -0
  59. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/case_jack+jill.toml +0 -0
  60. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/case_joe.toml +0 -0
  61. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/case_john+sally.toml +0 -0
  62. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/case_jon+jane.toml +0 -0
  63. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/case_kim+sam-bequest.toml +0 -0
  64. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/case_kim+sam-spending.toml +0 -0
  65. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/jack+jill.xlsx +0 -0
  66. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/joe.xlsx +0 -0
  67. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/john+sally.xlsx +0 -0
  68. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/jon+jane.xlsx +0 -0
  69. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/examples/template.xlsx +0 -0
  70. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/notebooks/kim+sam.ipynb +0 -0
  71. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/notebooks/template.ipynb +0 -0
  72. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/notebooks/tutorial_1.ipynb +0 -0
  73. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/notebooks/tutorial_2.ipynb +0 -0
  74. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/notebooks/tutorial_3.ipynb +0 -0
  75. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/owlplanner.cmd +0 -0
  76. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/owlplanner.sh +0 -0
  77. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/reponse.txt +0 -0
  78. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/requirements.txt +0 -0
  79. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/__init__.py +0 -0
  80. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/abcapi.py +0 -0
  81. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/config.py +0 -0
  82. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/data/__init__.py +0 -0
  83. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/data/rates.csv +0 -0
  84. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/logging.py +0 -0
  85. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/progress.py +0 -0
  86. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/rates.py +0 -0
  87. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/timelists.py +0 -0
  88. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/src/owlplanner/utils.py +0 -0
  89. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/tests/test_logger.py +0 -0
  90. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/tests/test_regressions.py +0 -0
  91. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/tests/test_repro.py +0 -0
  92. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/tests/test_toml_cases.py +0 -0
  93. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/tests/test_units.py +0 -0
  94. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ttt.py +0 -0
  95. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ttt2.py +0 -0
  96. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ttt3.py +0 -0
  97. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Asset_Allocation.py +0 -0
  98. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Create_Case.py +0 -0
  99. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Current_Assets.py +0 -0
  100. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Fixed_Income.py +0 -0
  101. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Graphs.py +0 -0
  102. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Historical_Range.py +0 -0
  103. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Logs.py +0 -0
  104. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Monte_Carlo.py +0 -0
  105. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Output_Files.py +0 -0
  106. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Quick_Start.py +0 -0
  107. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/README.md +0 -0
  108. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Rates_Selection.py +0 -0
  109. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Settings.py +0 -0
  110. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Wages_And_Contributions.py +0 -0
  111. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/Worksheets.py +0 -0
  112. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/main+fonts.py +0 -0
  113. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/main.py +0 -0
  114. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/plots.py +0 -0
  115. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/progress.py +0 -0
  116. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/sskeys.py.color +0 -0
  117. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/style.css +0 -0
  118. {owlplanner-2025.4.7 → owlplanner-2025.4.26}/ui/tomlexamples.py +0 -0
@@ -15,24 +15,23 @@ to install and run a Docker image as described in these [instructions](docker/RE
15
15
 
16
16
  ### Requirements
17
17
  You will need Python and `pip` installed on your computer for completing the installation.
18
+ These instructions are command-line instructions run from a terminal window.
18
19
 
19
- ### Installation steps for developers
20
- These instructions are command-line instructions.
20
+ ### Installation steps for Python package only
21
21
  You will need the latest version of Owl from GitHub.
22
22
  ```shell
23
23
  git clone https://github.com/mdlacasse/Owl.git
24
24
 
25
25
  ```
26
- Go (`cd`) to the directory where you installed Owl.
26
+ Then go (`cd`) to the directory where you installed Owl.
27
+ You can install the Owl package directly from the [Python Package Index](http://pypi.org).
27
28
  From the top directory of the source code run:
29
+ The following command will install the current version of owlplanner and all its dependencies:
28
30
  ```shell
29
- python -m build
30
- pip install -e .
31
+ pip install -r ui/requirements.txt
31
32
  ```
32
- The -e instructs `pip` to install in *editable* mode and use the live version
33
- in the current directory tree.
34
33
 
35
- ### Running the streamlit frontend
34
+ ### Running the streamlit frontend locally
36
35
  Running the Owl user interface locally from Windows:
37
36
  ```shell
38
37
  ./owlplanner.cmd
@@ -41,6 +40,23 @@ Running the Owl user interface locally from Linux or MacOS:
41
40
  ```shell
42
41
  ./owlplanner.sh
43
42
  ```
43
+ This will open a tab on your default browser.
44
+
45
+ ### Installation steps for developers
46
+ These instructions are command-line instructions.
47
+ You will need the latest version of Owl from GitHub.
48
+ ```shell
49
+ git clone https://github.com/mdlacasse/Owl.git
50
+
51
+ ```
52
+ Go (`cd`) to the directory where you installed Owl.
53
+ From the top directory of the source code run:
54
+ ```shell
55
+ python -m build
56
+ pip install -e .
57
+ ```
58
+ The -e instructs `pip` to install in *editable* mode and use the live version
59
+ in the current directory tree.
44
60
 
45
61
  ### Publishing a version (for reference only)
46
62
  Run checks before all commits:
@@ -56,10 +72,3 @@ twine upload --repository [repo] dist/*
56
72
  ```
57
73
  where [repo] is *testpypi* or *pypi* depending on the type of release.
58
74
 
59
- ### Installation steps for Python package only
60
- You can install the Owl package directly from the [Python Package Index](http://pypi.org).
61
- The following command will install the current version of owlplanner and all its dependencies:
62
- ```shell
63
- pip install -r ui/requirements.txt
64
- ```
65
-
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: owlplanner
3
- Version: 2025.4.7
3
+ Version: 2025.4.26
4
4
  Summary: Owl: Retirement planner with great wisdom
5
5
  Project-URL: HomePage, https://github.com/mdlacasse/owl
6
6
  Project-URL: Repository, https://github.com/mdlacasse/owl