-
-
Notifications
You must be signed in to change notification settings - Fork 480
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
Replace OptionalExtension(...., package='bliss') by condition=BlissLibrary().is_present() #25828
Comments
comment:1
Jeroen, according to |
comment:2
I don't know. There is no obvious "best" solution. |
comment:4
I think #2 (two steps) would probably be the cleaner solution. Creating and then deleting a stub during installation would be pretty hacky. I tried implementing that but having basically no experience with distutils I'm confused. Do you think #1 is feasible? |
comment:5
Replying to @timokau:
Please read the very last line of |
comment:6
Oh right, thanks. So |
comment:7
I'd suggest to use #28791 (Implement Feature without using sage.misc.cachefunc, sage.structure.unique_representation) - I have an implementation that does the caching by hand and implements a |
comment:8
When implementing this ticket, one should watch out to preserve what was intended in #21288. |
comment:9
I don't currently have time to work on this, so if anyone wants to take over that would be great. |
This comment has been minimized.
This comment has been minimized.
Dependencies: #28791 |
comment:11
A move away to the current use of This would be a major step in avoid sage's packaging system at build time. Testing time remains an issue as it calls |
Changed branch from u/gh-timokau/optional-extension-features to u/mkoeppe/optional-extension-features |
comment:13
Replying to @kiwifb:
Great point. We could add options to New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:16
As a prototype it looks promising but the option is quite complicated. Even when adding proper documentation of the available features. We may want to have some kind of dictionary matching simple option names to features. But that has to come later when we add more stuff. |
This comment has been minimized.
This comment has been minimized.
comment:18
I would need help from a |
comment:19
In the ticket description I have added an example Supporting
|
comment:20
Replying to @kiwifb:
Yes, I agree, of course we can make it more user-friendly later. |
comment:35
Sorry, looks like I lost a number of commits in the rebase. |
Branch pushed to git repo; I updated commit sha1. This was a forced push. Last 10 new commits:
|
comment:37
is it ready now? |
comment:39
something does not work with the build (docs get built, but then sage won't start)
I guess
points somewhere... |
comment:40
Thanks for testing! I'll investigate |
comment:41
Replying to @dimpase:
Yes, I also end up with a broken build. I'll look into it more.
No, that is just the output of the feature test. I will try to make it look less scary.
|
Branch pushed to git repo; I updated commit sha1. New commits:
|
Changed author from Matthias Koeppe, Timo Kaufmann to none |
comment:46
|
Changed reviewer from Dima Pasechnik to none |
Reviewer: Dima Pasechnik |
The last remaining (after #25825) piece of code that uses
is_package_installed
isOptionalExtension
. Since it only provides thepackage
kwarg for convenience, I thought it would make sense to just move tocondition
and add feature checks to use inmodule_list.py
.Moreover,
OptionalExtension(..., package=....)
does not take system packages checked for byspkg-configure.m4
(#27330) into account.setup.py build_cython
is extended by an option--require-features
for the benefit of distribution builders who want to ensure a predictable build. For example:On the branch is one module for which a feature test is already available (bliss).
See also:
OptionalExtension
problemsSAGE_PKGS
tosrc/setup.py
. ReplaceOptionalExtension(...., package=....)
bycondition=Feature.is_present()
CC: @jdemeyer @antonio-rojas @kiwifb @dimpase @embray @isuruf
Component: build
Branch/Commit: u/mkoeppe/optional-extension-features @
b5e205f
Reviewer: Dima Pasechnik
Issue created by migration from https://trac.sagemath.org/ticket/25828
The text was updated successfully, but these errors were encountered: