diff --git a/README.md b/README.md index e6349168f3..6bcf310a66 100644 --- a/README.md +++ b/README.md @@ -186,9 +186,9 @@ is built by the same workflow on every push to main. ## Requirements -**linearmodels 7.1 is the last release that supports Python 3.10 and NumPy 1.x -(NumPy < 2).** Later releases will raise the minimum supported versions of -Python, NumPy and the other dependencies. +**linearmodels 7.x supports Python 3.10 and NumPy 1.x (NumPy < 2).** +linearmodels 8.0 will raise the minimum supported versions of Python, NumPy and +the other dependencies. ### Running diff --git a/doc/source/changes/7.0.rst b/doc/source/changes/7.0.rst index 355b7c108e..ede5d248f3 100644 --- a/doc/source/changes/7.0.rst +++ b/doc/source/changes/7.0.rst @@ -1,3 +1,65 @@ +Version 7.2 +----------- + +.. TODO(REL): Add the release date. + +Version 7.2 adds wheels for Windows on ARM64 (CPython 3.13 to 3.15). PyPI accepts the +files of a release only for 14 days after its first upload, so these wheels could not +be added to 7.1. 7.2 also contains the fixes below. + +.. TODO(R2): Add #863 if it is merged for 7.2. + +.. rubric:: Changes that alter results + +- A missing value of a categorical or string column is a missing value of each of its + dummy variables in ``IVData`` and ``PanelData``, so that the observation is dropped + with a ``MissingValueWarning``. 7.1 converted it to a row of zeros, which kept the + observation, in the first category when ``drop_first`` is True (:issue:`858`, + :issue:`867`). +- The model F statistic of the IV estimators leaves out an intercept that dummy + variables imply, such as dummies that sum to one in a model without a constant. 7.1 + also tested the implied intercept, with one more degree of freedom (:issue:`780`, + :issue:`859`, :issue:`866`). + +.. rubric:: Backward-incompatible changes + +- ``predict`` of the panel models raises a ``ValueError`` for an out-of-sample + prediction (``exog`` or ``data`` is given) with ``effects=True`` or + ``idiosyncratic=True``, which are only available in sample, or with ``fitted=False`` + and no other output. 7.1 ignored these options and returned the fitted values + (:issue:`768`, :issue:`849`). + +.. rubric:: Bug fixes + +- The IV estimators do not store weighted copies of the data when all of the weights + are 1, which is the case without weights or with constant weights. This reduces the + memory that a model uses by about a third (:issue:`607`, :issue:`862`, + :issue:`865`). + +.. rubric:: Documentation and maintenance + +- The tests that failed on FreeBSD no longer depend on rounding or on ``pytest -v``, + and the README explains how to run the tests without the other pytest plugins of an + environment (:issue:`853`, :issue:`854`). +- The CI builds and tests a wheel on Windows on ARM64 (:issue:`868`). + +.. rubric:: Compatibility + +- Wheels are built for Windows on ARM64 for CPython 3.13 to 3.15, the versions for which + NumPy and statsmodels have Windows ARM64 wheels. The other wheels are built as in 7.1. +- Python 3.10 and NumPy 1.x are still supported, although the 7.1 notes said that 7.1 + would be the last release to support them. + +.. rubric:: Deprecations and future changes + +- linearmodels 8.0 will raise the minimum versions of Python and NumPy, and of the other + dependencies. + +.. rubric:: Contributors + +- Thanks to inchang-ing (:issue:`849`), jackiectl2 (:issue:`858`), CodingSelim + (:issue:`859`) and DresdenGman (:issue:`862`). + Version 7.1 -----------