8000 Bugfix 2.4.12 by aprsa · Pull Request #797 · phoebe-project/phoebe2 · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Bugfix 2.4.12 #797

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 8 commits into from
Nov 30, 2023
Merged

Bugfix 2.4.12 #797

merged 8 commits into from
Nov 30, 2023

Conversation

aprsa
Copy link
Contributor
@aprsa aprsa commented Nov 22, 2023

Build system update:

  • upgrade the build system to pyproject.toml with setuptools as backend and pip as frontend.
  • drop the dependency on the obsolete distutils module.
  • replace nosetests with pytest.
  • small build-related bugfixes throughout the code.

aprsa and others added 7 commits October 4, 2023 08:13
Old versions of numpy could compare different length arrays element-wise (i.e., np.all(x==y) for x.shape != y.shape). That is no longer the case for numpy 1.24 onwards. Note that the fix uses len(x) instead of x.shape comparison to be more general, i.e. it works also if x and y are other types of iterables, not just ndarrays.
* Simplified CI run
This workflow simplifies the testing matrix by using python 3.7 through 3.11 on [ubuntu,macos]-latest and pip installing all the latest versions of all dependencies. While less comprehensive than before, it arguably still catches all practical issues.

* Fix test_rm numerical instability
This test compared RVs to legacy for two identical stars, including exactly at conjunctions. That means that stars exactly overlapped, which is numerically unstable. The secondary star is now slightly smaller and slightly less massive. That causes RV of the secondary during secondary eclipse to be nan (because we can't see the star), so that timestamp is nan'd for the legacy as well, for comparison purposes. This now fixes the test and makes it numerically stable.
Fortran setup changed, see https://github.com/fortran-lang/setup-fortran. Attempting to apply the update.
In addition to the separate PR that removes distutils from setup.py, there were a number of distutils' LooseVersion() and StrictVersion() uses throughout the code. These have been replaced by packaging.version.parse.
Replaced `NotImplementedError` with `NotImplemented`

Signed-off-by: fazledyn-or <ataf@openrefactory.com>
* Replacing the build system.
The original distutils-based system has been replaced with setuptools and pyproject
A043
.toml. C/C++ compiler version and flags are currently not checked; we should either re-implement the checks in setup.py or wait for PEP 725 (https://discuss.python.org/t/pep-725-specifying-external-dependencies-in-pyproject-toml/31888?page=1) to see the light of day.

* Updates to the CI to build with the new system.

* Cleaning up the build tree.
This includes CI updates (adding optional modules) and renaming nosetests to tests.

* Final touch: upgrading CI checkout versions.

* Tidying up pyproject.toml.
@aprsa aprsa requested a review from kecnry November 22, 2023 19:19
@kecnry kecnry merged commit 8833cbf into master Nov 30, 2023
@kecnry kecnry deleted the bugfix-2.4.12 branch November 30, 2023 20:20
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants
0