Summary: | net-analyzer/linkchecker: depends on dev-python/pysqlite but not on python*[sqlite] | ||
---|---|---|---|
Product: | Gentoo Linux | Reporter: | Michał Górny <mgorny> |
Component: | Current packages | Assignee: | Justin Lecher (RETIRED) <jlec> |
Status: | RESOLVED FIXED | ||
Severity: | QA | CC: | python |
Priority: | Normal | ||
Version: | unspecified | ||
Hardware: | All | ||
OS: | Linux | ||
Whiteboard: | |||
Package list: | Runtime testing required: | --- | |
Bug Depends on: | |||
Bug Blocks: | 452122 |
Description
Michał Górny
2013-01-14 22:06:00 UTC
README says it is need but I can't see it is being used. What do you say? linkcheck/configuration/__init__.py: ("sqlite3", u"Sqlite"), linkcheck/bookmarks/firefox.py: import sqlite3 linkcheck/bookmarks/firefox.py: has_sqlite = True linkcheck/bookmarks/firefox.py: has_sqlite = False linkcheck/bookmarks/firefox.py:extension = re.compile(r'/(?i)places.sqlite$') linkcheck/bookmarks/firefox.py: """Return the first found places.sqlite file of the profile directories linkcheck/bookmarks/firefox.py: fname = os.path.join(dirname, "places.sqlite") linkcheck/bookmarks/firefox.py: Returns None if sqlite3 module is not installed. linkcheck/bookmarks/firefox.py: if not has_sqlite: linkcheck/bookmarks/firefox.py: conn = sqlite3.connect(filename, timeout=0.5) linkcheck/checker/fileurl.py: if firefox.has_sqlite and firefox.extension.search(self.url): linkcheck/checker/fileurl.py: elif firefox.has_sqlite and firefox.extension.search(self.url): linkcheck/checker/const.py:# firefox bookmark file needs sqlite3 for parsing linkcheck/checker/const.py: import sqlite3 linkcheck/checker/const.py: ExcCacheList.append(sqlite3.Error) MANIFEST.in:recursive-include tests *.py *.result *.html *.ico *.txt *.zip *.asc *.css *.xhtml *.sqlite *.adr *.swf setup.py: # add PyQt4.QtSql so that sqlite needed by QHelpCollection works setup.py: # Copy needed sqlite plugin files to distribution directory. setup.py: add_qt_plugin_file(files, plugin_dir, "sqldrivers", "%sqsqlite%s" % args) "%sqsqlite%s" % args) tests/checker/test_bookmarks.py: self.file_test("places.sqlite") Well, looking at the code, my guess would be that they removed pysqlite2 dep when they added Python 3 support. doc/python3.txt:TODO Python Sqlite from https://code.google.com/p/pysqlite/ (the package can't do py3) For the old python eclass, I think it will be something like: PYTHON_USE_WITH=sqlite PYTHON_USE_WITH_OPT=bookmarks but I might be wrong. + 15 Jan 2013; Justin Lecher <jlec@gentoo.org> linkchecker-7.9.ebuild, + -linkchecker-8.0.ebuild, -linkchecker-8.1.ebuild, linkchecker-8.2.ebuild, + linkchecker-8.3.ebuild: + Drop old; drop pysqlite dep, #452152 + How do I do it correctly for the new eclasses? (In reply to comment #3) > How do I do it correctly for the new eclasses? I've already replied you on IRC but I'll restate here for archives :P. The easy way: IUSE=bookmarks -> IUSE=sqlite, PYTHON_REQ_USE=sqlite? The hard way: I'll introduce a helper function to generate PYTHON_DEPS with another value of PYTHON_REQ_USE. + 16 Jan 2013; Justin Lecher <jlec@gentoo.org> linkchecker-8.3.ebuild, + metadata.xml: + Follow Michał Górny's suggestions regarding USE change, #452152 + |