We're happy to announce the release of numpy-financial 1.1.0!
Enhancements
- ENH: Use Newton's method to calculate IRR (#47).
- ENH: Allow npv calculation to be broadcastable (#54).
- Avoid redundant computations in IRR calculation (#60).
- ENH: NPV: Support calculation for vectors of rates and cashflows (#96).
- REL: Update minimum required versions (#102).
- ENH: npv: Rework npv function to mimic broadcasting (#108).
- Updated irr function [issue 98] (#99).
- ENH: nper: broadcast rework with Cython (#118).
- ENH: nper: Perform C division where appropriate (#120).
- ENH: mirr: Mimic broadcasting (#125).
- TYP: Inline typing annotations (#136).
Documentation
- DOC: First draft to help getting the code (#71).
- Updating mirr docstring [issue 76] (#86).
- DOC: Add developer documentation for benchmarking (#103).
- DOC: build dev documentation (#107).
- DOC: Add documentation for editing another persons PR (#111).
- DOC: docs: Document how to build the documentation (#106).
- Doc/building with spin (#115).
- MAINT: Config benchmarks to work with asv again (#124).
- ENH: mirr: Mimic broadcasting (#125).
Maintenance
- MAINT: Tidy up environment.yml (#127).
- CI: Fix CI errors (#135).
- MAINT: use a PEP 639
project.licenseSPDX expression (#134).
Other
- BUG: fix some issues with
nper(#21). - BUG: make
ipmtreturnnanforper < 1(#22). - MAINT: clean up the implementation of
fv(#24). - BUG: prevent underflow/overflow when finding roots in IRR (#25).
- MAINT: small cleanups to
ipmt(#26). - TST: clean up
ppmttests (#27). - Move tests into own classes (#41).
- DOC: Correctly link to NumPy's Code (#42).
- ENH: IRR: Select lowest positive rate (#43).
- TEST: Add regression test for gh-44 (#45).
- TEST: Drop python 3.5 tests (#51).
- ENH: Return close results in rate calculation (#49).
- TST/MAINT: Update CI scirpts (#59).
- Small addition to IRR function (#62).
- MAINT: Migrate to poetry (#63).
- DOC: Add GitHub issue templates (#67).
- TST: Make linting own step in CI pipeline (#68).
- MAINT: Test against Python 3.12 (#69).
- parametrize tests (#75).
- MAINT: Make
guessparameter keyword only (#77). - Initial change to pydata_sphinx_theme (#65).
- CI/STY: Move to Ruff (#79).
- MAINT: Run ruff on test file (#80).
- BENCH: Initial asv setup (#81).
- CI/BENCH: Add style checks for benchmarks (#82).
- Set up development docs as rst files (#88).
- Add automated documentation testing when building (#94).
- Removed all instances of assert_almost_equal (#97).
- REV: Remove numba (#101).
- DOC: Docs fixup (#109).
- BLD: Attempt to build using spin (#114).
- DOC: Move documentation to correct folder (#113).
- MAINT: Tidy up imports (#117).
- Altered IRR function to accept 2D-array (#122).
- DOC: Fixed a typo -
principletoprincipal(#129). - Add spin lint (#142).
- Test on newer Python versions (#143).
- Add trusted publishing workflows (#144).
- Derive version from numpy_financial/init.py (#145).
- Release docs (#146).
- Move release notes to CHANGELOG.md (#147).
- Move release notes to CHANGELOG.md (#148).
- Fix docs workflow (#149).
- Fix the documentation publishing workflow (#150).
- docs: do not fail if the dev directory exists (#151).
- Document how to publish the release documentation (#152).
Contributors
17 authors added to this release (alphabetically):
- @AlexMGTNO
- @Eugenia-Mazur
- @jlopezpena
- Daniel McCloy (@drammock)
- Jamie Cook (@jamiecook)
- Jasper Lee (@yatshunlee)
- Joren Hammudoglu (@jorenham)
- Josh Wilson (@person142)
- Kai Striega (@Kai-Striega)
- Maharshi Basu (@MashyBasker)
- Mandeep Singh (@mandeep-singh-sndk)
- Melissa Weber Mendonça (@melissawm)
- Mika (@tal66)
- SeanZ (@seanzian2093)
- Sebastian Berg (@seberg)
- Stefan van der Walt (@stefanv)
- Warren Weckesser (@WarrenWeckesser)
17 reviewers added to this release (alphabetically):
- @101AlexMartin
- @AlexMGTNO
- @Eugenia-Mazur
- Daniel McCloy (@drammock)
- Inessa Pawson (@InessaPawson)
- Jamie Cook (@jamiecook)
- Jasper Lee (@yatshunlee)
- Joren Hammudoglu (@jorenham)
- Josh Wilson (@person142)
- Kai Striega (@Kai-Striega)
- Maharshi Basu (@MashyBasker)
- Melissa Weber Mendonça (@melissawm)
- Mika (@tal66)
- Ralf Gommers (@rgommers)
- SeanZ (@seanzian2093)
- Stefan van der Walt (@stefanv)
- Warren Weckesser (@WarrenWeckesser)