BUGS: forward 2 items 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 debian cross reference (lxr.debian.net)                    :web:ctags:
15   A-la http://lxr.linux.no/ . Suggested by Pierre Habouzit. Main problem is of
16   scope, cross-ref is mostly reasonable within the same package; /possibly/
17   reasonable between dependent packages; largely unresonable among unrelated
18   packages. (Not to mention the risk of cross-referincing across different
19   languages; although we should have the info to avoid that...)
20
21 * TODO shutter effect                                       :web:hilight:css:
22   When we highlight a line, we have to use a display:inline tag (whose
23   rendering isn't cool, because an highlighted block doesn't have the
24   same width verywhere). With a display:blog tag, newlines are added
25   by the browser/highlight.js (?), because tags conflicts with
26   highlight.js tags (when a hl.js lexem is multiline).
27   Try to highlight lines 3-4 of this to see the bug:
28
29   def hello():
30      """aaa
31      aaa
32      """ zzz = 3
33
34   Edit: the browser close tags automatically, and since our tags
35   aren't correct (ie
36   <span class="string"><div class="highlight">foo</span></div>
37   ), closing display:block tags are inserted.
38
39  Debugging: maybe with inline-block and other css tricks
40
41 * TODO migrate to sources.debian.org                              :infra:dsa:
42   conversation started by Zack with DSA
43   Message-ID: <20131229152159.GA8400@upsilon.cc>
44
45 * TODO bulk ctags insertion traceback           :ctags:bulk:traceback:ATTACH:
46   :PROPERTIES:
47   :Attachments: 1.3.1-4.ctags
48   :ID:       b9a3371f-6e2d-4e60-82e4-9d7c7543ba86
49   :END:
50     Traceback (most recent call last):
51       File "bin/bulk-insert-ctags", line 94, in <module>
52         main(conf, ctagsfile=args.file)
53       File "bin/bulk-insert-ctags", line 73, in main
54         insert_ctags(conn, ctagsfile)
55       File "bin/bulk-insert-ctags", line 65, in insert_ctags
56         conn.execute(INSERT_CTAGS_Q, ctags)
57       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1449, in execute
58         params)
59       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1584, in _execute_clauseelement
60         compiled_sql, distilled_params
61       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1698, in _execute_context
62         context)
63       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/base.py", line 1680, in _execute_context
64         context)
65       File "/usr/lib/python2.7/dist-packages/sqlalchemy/engine/default.py", line 328, in do_executemany
66         cursor.executemany(statement, parameters)
67     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})
68
69   test recipe (bulk):
70   - find /srv/debsources/sources -mindepth 4 -maxdepth 4 -name '*.ctags > ctags.txt
71   - while read f ; do bin/bulk-insert-ctags -c etc/config.batch.ini $f ; done < ctags.txt
72
73   test recipe (single file):
74   - bin/bulk-insert-ctags -c etc/config.batch.ini 1.3.1-4.ctags
75     (see attachment)
76
77 * TODO refactor app/views.py                                     :web:python:
78   The GeneralView object should be inheritated to PaginationView, in
79   order for all routes which use pagination (ctags, checksums, etc) to
80   automatically have these features. In this case, the json view is
81   not paginated but the html view is.
82
83 * TODO ability to "edit" files                                          :web:
84   every file exposed should have a edit file (maybe only for some users) a-la
85   GitHub. The result of the edit actionn will be returned as debdiff against
86   the whole package, so that it could be submitted as an easy to import patch
87   to the Debian BTS. Bonus point (but more difficult): have real editing
88   sessions, in which more than one file could be edited.
89
90   Credit: Raphael Geissert after DebConf14 talk
91