-
-
Notifications
You must be signed in to change notification settings - Fork 580
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
spkg-configure.m4 for sqlite #29002
Comments
comment:1
I don't think we need such a new version, but 3.29.0 (from 2019-07-10) is the oldest one in Gentoo that I can test against. Should we accept versions back to 3.27 or 3.16 (or further) for Debian? New commits:
|
Branch: u/mjo/ticket/29002 |
Commit: |
comment:2
I'm testing this with sqlite 3.20 on Fedora 26 now. (My Debian system has 3.27). |
comment:3
could you make the minimal version 3.20? Otherwise, all good. (I modified the version being 3.20 and tested with such sqlite) On Fedora the packages are named |
Reviewer: Dima Pasechnik |
Branch pushed to git repo; I updated commit sha1 and set ticket back to needs_review. New commits:
|
comment:6
Done, but the commit hook set this back to needs_review. |
comment:8
missing author full name please |
comment:9
Sorry, I'm new at this. |
Author: Michael Orlitzky |
comment:10
This does not accept the system sqlite3 on macOS because we are installing readline -- but that is irrelevant because the system sqlite3 is linked against libedit, not readline. |
comment:11
|
comment:12
Is the executable |
comment:13
how does pkg-config even know about MacOS's sqlite3? |
comment:14
Replying to @mkoeppe:
Apart from providing the shortcut Should the spkg-configure check for the availability of the binary? |
comment:71
Replying to @mkoeppe:
Python doesn't do a version check, and doesn't document any version bounds, so presumably all of them. Put another way: if we find a version that makes it past our version-less check but that breaks python... then that's a python bug. |
comment:72
But it is not the goal of sage-the-distribution to provoke python bugs. We vendor a version of sqlite so that the vendored python can build. |
comment:73
Replying to @mkoeppe:
You make it sound so negative =) If there's a version of sqlite that doesn't work with python, and if someone tries to build sage with it (both unlikely), then we report the bug upstream. At that point -- depending on the upstream fix -- we either do nothing or amend this spkg-configure with a lower bound. Otherwise, we're just making things complicated for no ostensible reason. Since nobody is going to test every 3.x version of sqlite, we're still ultimately guessing at the lower version bound. My guess just happens to be 3.0.0. If it's wrong, we can change it, but 3.0.0 is more likely to be correct than any other untested bound, and simplifies this check as a bonus. |
comment:74
I think one reason for these checks is to make supporting sage(lib) a bearable job. We don't want to bog down in corner cases on museum-grade OSes, just cause they might carry a museum-grade version of sqlite3. So I am for keeping a version check. One other thing - for better of worse, spkg-configure.m4 in other packages undefine local m4 variables they happen to define, whereas here it does not happen. |
comment:75
Replying to @dimpase:
That's a bit ironic considering that four people have wasted hours replacing
with
to support one version of sqlite on one proprietary OS whose maintainers went out of their way to delete an important file from the package. sagelib doesn't even use sqlite, it's a dependency of a dependency |
comment:76
Replying to @orlitzky:
Excuse me, m4 and autotools are my hobby. |
comment:77
Replying to @dimpase:
Good idea, will do. |
Branch pushed to git repo; I updated commit sha1. New commits:
|
comment:79
Ready for review. |
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
This comment has been minimized.
comment:82
lgtm |
comment:83
Thank you! |
comment:84
Replying to @mkoeppe:
HAHA :) I'm also +1 for keeping the version check; personally I would lower the minimum version 3.0.0 until/unless a stronger minimum is actually determined. But 3.8.7 is still old-enough that it should be satisfied on most system so I'm okay with it. |
comment:85
Replying to @embray:
3.0.0 was released in 2004. https://www.sqlite.org/chronology.html |
Changed branch from u/mkoeppe/ticket/29002 to |
comment:87
It turns out there are some tests that fail if the sqlite3 executable is not installed:
So, technically it is a regression of In the meantime, I'm leaning towards we need to check for it... |
Changed commit from |
comment:88
Replying to @embray:
[ Snip... ]
Indeed. I just got bitten by this (trying to ebuild 9.1.beta2 from scratch rather than upgrading).
I tend to disagree : an unsuspecting user might have a hard time to understand why "our" version replaces the one he/she installed in his/her system if he/she runs out utility that installs system shortcuts for Sage-installed programs ...
Indeed. But since BTW, our move to reduce the size of Sage-the-distribution should reopen the question of what are our minimal dependencies. I would have no problem to depend on Should that be disciussed on sage-devel ? In the meantime, should we open a new ticket ? |
comment:89
Replying to @EmmanuelCharpentier:
In the long run there should be no sqlite or libsqlite bundled into Sage.
I won't worry too much about R, as it's already more or less sorted.
yes, please, for deprecating/removing |
comment:90
@embray Thanks for spotting this and for opening the follow-up ticket:
|
comment:91
I have opened:
|
SQLite is another package that many people will have installed (firefox uses it, for example) and that has few dependencies in Sage (only readline).
libsqlite3 is used by Python during its build. Some Python packages need sufficiently new versions. We set the lower bound slightly lower than the current version available on XCode.
We detect it using
AC_RUN_IFELSE
because on macOS without homebrew, there is no pkgconfig file.CC: @embray @dimpase @isuruf
Component: build: configure
Author: Michael Orlitzky, Matthias Koeppe
Branch:
b261b31
Reviewer: Dima Pasechnik, Matthias Koeppe
Issue created by migration from https://trac.sagemath.org/ticket/29002
The text was updated successfully, but these errors were encountered: