BUGS: forward 6 issues to the Debian BTS
[qa/debsources.git] / BUGS
1 #    -*- mode: org -*-
2
3 **Note*: Debsources bugs are now at
4 https://bugs.debian.org/cgi-bin/pkgreport.cgi?pkg=qa.debian.org;tag=debsources
5 The entries remaining below are in wait of triaging/forwarding there.
6
7 * TODO check-in derivatives from the census               :infra:derivatives:
8
9 * TODO update-debsources --trigger should skip update stages          :infra:
10   At the very least it should skip: update statistics, update charts, update
11   suites mappings. Should it become a separate tool? Or should we expose on the
12   cmdline the support to select individual update stages? (see updater.py)
13
14 * TODO suite test data: differentiate sid and jessie                   :test:
15   Currently, the set of packages in sid and jessie are exactly the same. Add
16   one or more packages which is in sid but not in jessie.
17
18 * TODO debian cross reference (lxr.debian.net)                    :web:ctags:
19   A-la http://lxr.linux.no/ . Suggested by Pierre Habouzit. Main problem is of
20   scope, cross-ref is mostly reasonable within the same package; /possibly/
21   reasonable between dependent packages; largely unresonable among unrelated
22   packages. (Not to mention the risk of cross-referincing across different
23   languages; although we should have the info to avoid that...)
24
25 * TODO make web UI parts conditional on plugin enablement         :infra:web:
26
27 * TODO shutter effect                                       :web:hilight:css:
28   When we highlight a line, we have to use a display:inline tag (whose
29   rendering isn't cool, because an highlighted block doesn't have the
30   same width verywhere). With a display:blog tag, newlines are added
31   by the browser/highlight.js (?), because tags conflicts with
32   highlight.js tags (when a hl.js lexem is multiline).
33   Try to highlight lines 3-4 of this to see the bug:
34
35   def hello():
36      """aaa
37      aaa
38      """ zzz = 3
39
40   Edit: the browser close tags automatically, and since our tags
41   aren't correct (ie
42   <span class="string"><div class="highlight">foo</span></div>
43   ), closing display:block tags are inserted.
44
45  Debugging: maybe with inline-block and other css tricks
46
47 * TODO migrate to sources.debian.org                              :infra:dsa:
48   conversation started by Zack with DSA
49   Message-ID: <20131229152159.GA8400@upsilon.cc>
50
51 * TODO bulk ctags insertion traceback           :ctags:bulk:traceback:ATTACH:
52   :PROPERTIES:
53   :Attachments: 1.3.1-4.ctags
54   :ID:       b9a3371f-6e2d-4e60-82e4-9d7c7543ba86
55   :END:
56     Traceback (most recent call last):
57       File "bin/bulk-insert-ctags", line 94, in <module>
58         main(conf, ctagsfile=args.file)
59       File "bin/bulk-insert-ctags", line 73, in main
60         insert_ctags(conn, ctagsfile)
61       File "bin/bulk-insert-ctags", line 65, in insert_ctags
62         conn.execute(INSERT_CTAGS_Q, ctags)
63       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1449, in execute
64         params)
65       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1584, in _execute_clauseelement
66         compiled_sql, distilled_params
67       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1698, in _execute_context
68         context)
69       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1680, in _execute_context
70         context)
71       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 328, in do_executemany
72         cursor.executemany(statement, parameters)
73     sqlalchemy.exc.ProgrammingError: (ProgrammingError) can't adapt type 'RowProxy' '\n    INSERT INTO ctags (version_id, tag, path, line, kind, language)\n    VALUES (%(version_id)s, %(tag)s, %(path)s, %(line)s, %(kind)s, %(language)s)\n    ' ({'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'is_absolute', 'path': <psycopg2._psycopg.Binary object at 0x2800248>, 'line': 51}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'absolute_or_prefix', 'path': <psycopg2._psycopg.Binary object at 0x2800200>, 'line': 57}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'showhelp', 'path': <psycopg2._psycopg.Binary object at 0x2800290>, 'line': 65}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'yorn', 'path': <psycopg2._psycopg.Binary object at 0x2800320>, 'line': 202}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'nory', 'path': <psycopg2._psycopg.Binary object at 0x2800368>, 'line': 207}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'message', 'path': <psycopg2._psycopg.Binary object at 0x28003b0>, 'line': 213}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'info', 'path': <psycopg2._psycopg.Binary object at 0x28003f8>, 'line': 214}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'warning', 'path': <psycopg2._psycopg.Binary object at 0x2800440>, 'line': 215}  ... displaying 10 of 436 total bound parameter sets ...  {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'duplex', 'path': <psycopg2._psycopg.Binary object at 0x2a11e18>, 'line': 734}, {'kind': 'f', 'language': 'sh', 'version_id': (38474,), 'tag': u'viewps', 'path': <psycopg2._psycopg.Binary object at 0x2a11e60>, 'line': 757})
74
75   test recipe (bulk):
76   - find /srv/debsources/sources -mindepth 4 -maxdepth 4 -name '*.ctags > ctags.txt
77   - while read f ; do bin/bulk-insert-ctags -c etc/config.batch.ini $f ; done < ctags.txt
78
79   test recipe (single file):
80   - bin/bulk-insert-ctags -c etc/config.batch.ini 1.3.1-4.ctags
81     (see attachment)
82
83 * TODO refactor app/views.py                                     :web:python:
84   The GeneralView object should be inheritated to PaginationView, in
85   order for all routes which use pagination (ctags, checksums, etc) to
86   automatically have these features. In this case, the json view is
87   not paginated but the html view is.
88
89 * TODO ability to "edit" files                                          :web:
90   every file exposed should have a edit file (maybe only for some users) a-la
91   GitHub. The result of the edit actionn will be returned as debdiff against
92   the whole package, so that it could be submitted as an easy to import patch
93   to the Debian BTS. Bonus point (but more difficult): have real editing
94   sessions, in which more than one file could be edited.
95
96   Credit: Raphael Geissert after DebConf14 talk
97