Skip to content

BLD: install missing .pxd files, and update TODOs/FIXMEs in meson.build files#16749

Merged
tupui merged 10 commits into
scipy:mainfrom
rgommers:meson-cleanups
Aug 1, 2022
Merged

BLD: install missing .pxd files, and update TODOs/FIXMEs in meson.build files#16749
tupui merged 10 commits into
scipy:mainfrom
rgommers:meson-cleanups

Conversation

@rgommers

Copy link
Copy Markdown
Member

The missing .pxd files are a pretty serious bug. Somehow no one noticed this, due to a combination of no tests (see gh-16748 for that task) and the nightlies not having been generated for a while until recently. The relevant commit should be backported to 1.9.x.

There were also a number of open FIXME and TODO comments that were either actionable, already fixed, or no longer relevant. There are no FIXME's left, and the remaining TODO's mostly have to do with 64-bit BLAS/LAPACK support:

scipy/special/meson.build
1:# TODO: 64-bit BLAS and LAPACK
331:# TODO: this installs all generated files, while we want to install only:
334:#       doesn't accept generated targets. See TODO near the end of

scipy/meson.build
122:# TODO: 64-bit BLAS and LAPACK

scipy/linalg/meson.build
1:# TODO: 64-bit BLAS and LAPACK
28:  # TODO - we only want to install the .pxd files! See comments for
96:# TODO: cblas/clapack are built *only* for ATLAS. Why? Is it still needed?
322:# TODO: install (only) these pxd files. Neither py3.install_sources nor

scipy/interpolate/meson.build
90:# TODO: Add flags for 64 bit ints
120:# TODO: Add flags for 64 bit ints
137:# TODO: Add flags for 64 bit ints

scipy/_lib/meson.build
75:# TODO: the `prefix` here is recommended in

meson.build
14:    # TODO: the below -Wno flags are all needed to silence warnings in

rgommers added 10 commits July 31, 2022 16:25
This is no longer necessary, the PR linked in the removed comment
is included in our `highs` git submodule now.
This was fixed I believe (there are no skipped or xfailed tests either),
and the comment isn't very informative.
…broken

The code can be simplified once the upstream feature is added, but
that's not a FIXME.
No tests were failing, so something is fairly badly wrong in
the test suite.

Also add `optimize.cython_optimize` to the list of submodules that are
public API.
This was fixed when adding `--git-dir` to the git invocation,
that made the result independent from the current directory
when invoking the build.
This flag is added implicitly via 'fortran_std=legacy' in the
top-level `meson.build`. Warnings that show up are silenced
in multiple modules, so there's no need for a separate TODO here.
This isn't a very useful today, given that we don't use this
version string. The corresponding `setup.py` file also does the
same and doesn't have a TODO.
@rgommers rgommers added maintenance Items related to regular maintenance tasks backport-candidate This fix should be ported by a maintainer to previous SciPy versions. Meson Items related to the introduction of Meson as the new build system for SciPy labels Jul 31, 2022
@rgommers rgommers added this to the 1.10.0 milestone Jul 31, 2022

@tupui tupui left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks Ralf. LGTM

@tupui tupui merged commit 59d0797 into scipy:main Aug 1, 2022
@rgommers rgommers deleted the meson-cleanups branch August 1, 2022 07:42
@tylerjereddy tylerjereddy modified the milestones: 1.10.0, 1.9.1 Aug 25, 2022
tylerjereddy pushed a commit to tylerjereddy/scipy that referenced this pull request Aug 25, 2022
…uild files (scipy#16749)

* BLD: remove a warning suppression flag for HiGHS extension

This is no longer necessary, the PR linked in the removed comment
is included in our `highs` git submodule now.

* BLD: remove an outdated FIXME from the scipy/integrate/meson.build

This was fixed I believe (there are no skipped or xfailed tests either),
and the comment isn't very informative.

* BLD: remove another FIXME in `cython_optimize/meson.build`, it's not broken

The code can be simplified once the upstream feature is added, but
that's not a FIXME.

* BLD: remove comments about c++14/c++11 support

We can rely on C++14 unconditionally since 2021, see
http://scipy.github.io/devdocs/dev/toolchain.html#c-language-standards

* BLD: update info on including all license files as separate files

* BLD: install missing `scipy/*.pxd` files

No tests were failing, so something is fairly badly wrong in
the test suite.

Also add `optimize.cython_optimize` to the list of submodules that are
public API.

* BLD: remove FIXME about version string generation

This was fixed when adding `--git-dir` to the git invocation,
that made the result independent from the current directory
when invoking the build.

* BLD: remove TODO about `-fallow-argument-mismatch`

This flag is added implicitly via 'fortran_std=legacy' in the
top-level `meson.build`. Warnings that show up are silenced
in multiple modules, so there's no need for a separate TODO here.

* BLD: remove TODO for UNU.RAN version string

This isn't a very useful today, given that we don't use this
version string. The corresponding `setup.py` file also does the
same and doesn't have a TODO.

* BLD: update FIXME to a TODO in `linalg/meson.build`
@tylerjereddy tylerjereddy removed the backport-candidate This fix should be ported by a maintainer to previous SciPy versions. label Aug 26, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

maintenance Items related to regular maintenance tasks Meson Items related to the introduction of Meson as the new build system for SciPy

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants