summaryrefslogtreecommitdiffstats
path: root/private/TODO
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--private/TODO99
1 files changed, 99 insertions, 0 deletions
diff --git a/private/TODO b/private/TODO
new file mode 100644
index 0000000..cb67a78
--- /dev/null
+++ b/private/TODO
@@ -0,0 +1,99 @@
+This is a collection of work to do in Lintian that isn't a bug fix or a
+simple requested new check. Use the BTS for those since they're more
+public and so that other people know things have already been requested.
+This is intended for more internal use to track code restructurings,
+infrastructure work, needed cleanups, or larger tasks.
+
+Tasks here are sorted roughly by the directory structure of Lintian where
+that makes sense so that we don't just have one long list. Patches for
+any of this is welcome, but please discuss on the mailing list first
+before you do lots of work since the maintainers may have specific ways
+they want it to be done.
+
+If someone is actively working on something, note their name in square
+brackets at the beginning. If someone is noted, coordinate with them
+before working on this.
+
+checks:
+
+- Move all static keyword lists into files in data.
+
+- Separate doc-base checks out of checks/menus (or, probably easier,
+ rename checks/menus to checks/doc-base and separate out the few bits
+ that are actually about menus).
+
+- Go through all tags and make sure that any that should have Policy
+ references have them, and more generally that appropriate references are
+ present. (Need some way to track this sort of regular tag maintenance.)
+
+- Check current tag severities against the results from lintian.d.o and
+ adjust.
+
+doc:
+
+- Either update doc/CREDITS based on the changelog file or archive it
+ somewhere and say that it's not going to be updated.
+
+- Update the Lintian manual:
+ + document visibility
+ + document other output formats
+ + document the reporting framework
+ + developer documentation of the test suite, submitting patches, etc.
+
+frontend:
+
+- Nearly everything in frontend/lintian that isn't command-line parsing is
+ really begging to be a module. Move code out of here and into modules
+ as part of rewriting the non-namespace modules in lib, such as Lab.pm
+ which should acquire more the laboratory handling from frontend/lintian,
+ and Checker.pm, which should acquire most of the smarts of the main
+ frontend/lintian checking loop.
+
+lib:
+
+- Finish documentation of Lintian::Output*.
+
+- Add collect function to return the sort of symlink information that's
+ currently gathered by checks/menus; we'll find other uses for it.
+
+- Provide a utility function to check a command as currently done in
+ checks/menu-format, after which we could split desktop checking and menu
+ checking into two separate check scripts.
+
+private:
+
+- Provide a general framework for updating metadata about the archive and
+ modify all of the private/refresh-* scripts to use it. Also set up
+ something in debian/rules that will run all of them and update data
+ accordingly which can be done routinely before every release.
+
+reporting:
+
+- Replace the template framework with template-toolkit.
+
+t:
+
+- Write new-style test cases for everything tested by the legacy test suite
+ and retire the "legacy" tests.
+
+- Go through t/tests/legacy-libbaz/debian/debian/rules and make sure
+ all TODO's are lintian-detected.
+
+- udebs are generally undertested right now and could use some general
+ tests, particularly for things that we don't care about with udebs but
+ do care about with regular packages.
+
+General:
+
+- Write a real parser for shell scripts that can at least tokenize them
+ half-way decently, do some basic analysis of whether code is conditional
+ or not, and provide reasonable answers to questions like "is this
+ command called in the script" without heinous regex matches. Replace
+ all the ugly, ad hoc script parsing code elsewhere in Lintian with that
+ parser. This is #629247.
+
+External:
+
+- Set up system for automatically filing bugs based on specific lintian
+ tags (the most reliable ones), with usertags to ensure the bugs aren't
+ repeatedly filed.