Bugslist: Difference between revisions

From John's wiki
Jump to navigation Jump to search
(→‎Links: updating links...)
No edit summary
 
(118 intermediate revisions by the same user not shown)
Line 1: Line 1:
bugslist.php is [[User:Sixsigma|John]]'s TODO list management script. If you use this script you might be interested in [https://www.progclub.net/~jj5/timestamp/ ProgClub Timestamp] so you can copy/paste the comment label syntax. For other projects see [[projects]].
[[Bugslist]] has moved to ProgClub: https://www.progclub.org/wiki/bugslist
 
= Status =
 
[[#Version|Released]]! But there's stuff [[bugslist.php#TODO|TODO]].
 
== Version ==
 
bugslist.php v0.1.1252
 
Copyright © 2016 [https://www.jj5.net/ John Elliot V]
License GPLv3+: [https://gnu.org/licenses/gpl.html GNU GPL] version 3 or later.
This is [https://www.gnu.org/philosophy/free-sw.html free software]: you are free to change and redistribute it.
There is NO WARRANTY, to the extent permitted by law.
 
=== Version control info ===
 
Timestamp.......: 2016-12-14 03:34:57 +1100 (Wed, 14 Dec 2016)
UTC timestamp...: 2016-12-13 16:34:57Z
Date............: 2016-12-14
Time............: 03:34:57
Author..........: [https://www.jj5.net/ jj5]
File............: bugslist.php
Revision........: 1252
URL.............: [https://svn.jj5.net/svn/public/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php bugslist.php]
 
= Administration =
 
== Contributors ==
 
People who have contributed to this project. Newest on top.
 
* [[User:Sixsigma|John Elliot V]]
 
== Copyright ==
 
Copyright © 2016, [[bugslist.php#Contributors|Contributors]].
 
== License ==
 
Licensed under the [https://gnu.org/licenses/gpl.html GNU GPL] version 3 or later.
 
= Resources =
 
== Help ==
 
'''Usage:''' php path/to/bugslist.php [OPTION]...
This is a source code processing and reporting tool to help with software
development project management. It processes files in the specified
directory and matches special comment syntax to get notes and work items
which it then reports on. Output reports are in MediaWiki wiki text syntax
designed to be included in your project wiki.
 
=== Comment label syntax ===
 
The heart of bugslist.php is the comment label syntax you use in your
source code. It's basically:
  DATE USER DASH TYPE[PRIORITY][:!] TEXT
For example: 2016-12-14 jj5 - HACK[HIGH]: expedient, you say?
The date is in ISO format, the user must be a valid UNIX user, and the dash
is just to try and limit false positives. The TYPE indicates what sort of
item this is; it can be one of the types listed below. Your type can be
suffixed with an optional priority within square brackets. After the
optional priority your type must be suffixed with punctuation, either ':' or
'!'. The TEXT follows until the end of the line and on to subsequent lines too.
 
=== Item types ===
 
The following item types are supported in comment labels:
 
Type................: Description..............................: Priority..:
  Red-flags..........:
  WARNING...........: something to be careful of...............: HIGH
  TEMP..............: a note for code that should be removed...: HIGH
  Stuff to do........:
  BUG...............: something that needs to be fixed.........: HIGH
  TEST..............: something that needs to be tested........: HIGH
  TODO..............: something that needs to be done..........: MEDIUM
    FIXME............: a HIGH priority alias for TODO...........: HIGH
    NICE.............: a LOW priority alias for TODO............: LOW
  HACK..............: something that needs to be improved......: LOW
  CONSIDER..........: something to consider or think about.....: LOW
    THINK............: an alias for CONSIDER....................: LOW
  Stuff that's done..:
  FIXED.............: a BUG that has been fixed................: HIGH
  DONE..............: something that has been done.............: MEDIUM
  COMMIT............: a VCS commit log.........................: LOW
  Notes..............:
  REFERENCE.........: a reference, e.g. a URL..................: LOW
    REF..............: an alias for REFERENCE...................: LOW
    SEE..............: an alias for REFERENCE...................: LOW
  NOTE..............: notes, or items without a label..........: LOW
  DEBUG.............: an item for debugging purposes...........: DEBUG
 
=== Item priority ===
 
You can use a priority number, priority letter, or priority name to
indicate a priority:
  #: Abbr: Name:      Default:
  0: C, !: CRITICAL:  N/A
  1:    H:    HIGH:  WARNING, TEMP, BUG, TEST, FIXME, FIXED
  2:    M:  MEDIUM:  TODO, DONE
  3:    L:      LOW:  HACK, COMMIT, REFERENCE, NOTE, NICE, CONSIDER
  4:    D:    DEBUG:  DEBUG
 
=== Comment syntax ===
 
Comment syntax for various programming languges is supported:
  Plain text...: comment labels begin at the first character on the line
  C++, etc //..: comment labels begin after '// ' (the space is important)
  HTML/XML.....: comment labels are within: <nowiki><!-- --></nowiki>
  Perl #.......: comment labels begin after '# ' (the space is important)
  C/CSS........: comment labels are within: /* */
 
=== Filtering options ===
 
-u, --user=USER      include items for USER
-d, --date=DATE      include items for DATE
    --today          include items for today only (default if not debugging)
    --yesterday      include items for yesterday only
-t, --type=TYPE      include items by type, will affect report order.
                      Duplicates are ignored.
-y, --priority=PRIORITY  include items with particular PRIORITY.
    --all            report on all users, dates, types, and priorities.
 
=== File-system options ===
 
-p, --path=PATH      process files in PATH, current directory if omitted
-f, --file=LIST      process files in comma-separated LIST, relative to PATH
-i, --include=EXTENSIONS  comma-separated list of included file extensions
-e, --exclude=EXTENSIONS  comma-separated list of excluded file extensions
                      Note: excludes override includes. This is useful when
                        you want to exclude missing extensions ('') which
                        are included by default.
-s, --skip=DIRS      comma-separated list of directory paths to skip
-k, --keep=DIRS      comma-separated list of directory paths to keep
                      ** BE VERY CAREFUL **
                      e.g.:
                        'bin,obj' matches 'p/t/colbbin' and 'p/t/my-obj'
                        '/bin,/obj' matches 'path/to/bin' and 'path/to/obj'
                      a warning is emitted for DIRS with no leading '/'
                      Note: keeps override skips
 
=== Report options ===
 
-a, --aggregate=FIELD report aggregation. Duplicates are ignored.
                      A heading is printed for each aggregated field.
-c, --collate=FIELD  report sorting. Duplicates are ignored.
                      Default sorting uses binary comparision rather than
                      locale sensitive comparison which is probably what
                      you want. For --aggregate and --collate uppercase
                      FIELD sorts descending.
                      e.g. 'dUp' selects by date, user desc, and path
-h, --heading=FORMAT
                      heading format options. Duplicates are ignored.
-o, --output=FIELD|FORMAT|OPTIONS
                      report output options. Duplicates are ignored.
-l, --level          level of heading to start at (default 2)
+N, --natural        use locale sensitive sorting instead of binary sorting
+B, --binary          use binary sorting (This is the default. Redundant? :)
+Q, --quiet          disable warnings, stats, and progress on stderr
+S, --show-stats      enable statistics report on stderr
-S, --hide-stats      disable statistics report on stderr (default)
+P, --show-progress  enable progress report on stderr
-P, --hide-progress  disable progress report on stderr (default)
+O, --show-options    report on user options on stderr
-O, --hide-options    disable user options report (default)
+W, --show-warnings  report warnings on stderr (default)
-W, --hide-warnings  disable warnings
 
=== Other options ===
 
    --help            display this help text and exit
    --version        display version information and exit
+V, --vcs            parse version control (Subversion) logs
+D, --debug          some handy defaults, when debugging or not
+X, --exit            exit without reporting (useful with --show-stats)
 
=== Format specifications ===
 
  USER is comma-separated list of usernames.
  Use '*' for all users; '?' for current user.
 
  DATE is ISO formatted date prefix, e.g.:
  '2016' for all items in 2016,
  '2016-01' for items in Jan 2016,
  '2016-,01,02' for items in Jan/Feb 2016,
  '2016-01-,01,02' for items on 1st/2nd Jan 2106,
  '2016-01-02,2016-01-04' for 2nd/4th Jan 2016.
  Use '*' for all dates.
 
  TYPE is a string of abbreviations or comma-separated list of item types.
  Supported types are:
  Red-flags:
    WARNING....: something to be careful of
    TEMP.......: a note for code that should be removed
  Stuff to do:
    BUG........: something that needs to be fixed
    TEST.......: something that needs to be tested
    TODO.......: something that needs to be done
    HACK.......: something that needs to be improved
    CONSIDER...: something to consider
  Stuff that's done:
    FIXED......: a BUG that has been fixed
    DONE.......: something that has been done
    COMMIT.....: a VCS commit log
  Notes:
    REFERENCE..: a reference, e.g. a URL
    NOTE.......: notes, or items without a label
    DEBUG......: an item for debugging purposes
  e.g. 'TODO, NOTE'
  Supported abbreviations are:
    w: WARNING
    m: TEMP
    b: BUG
    e: TEST
    t: TODO
    h: HACK
    c: CONSIDER
    f: FIXED
    d: DONE
    v: COMMIT
    r: REFERENCE
    s: REFERENCE
    n: NOTE
    g: DEBUG
  e.g. 'bht' is 'BUG, HACK, TODO'
  Use '*' for all types.
 
  PRIORITY is a comma-separeted list of priorities or a range of priorities.
  A priority can be indicated by a priority number, a priority letter or
  abbreviation, or a priority name. Use '*' for all priorities. See the item
  proirity section above for supported values.
 
  FIELD is a string of abbreviations or comma-separated list of fields.
  Supported fields are:
    user: group/sort by user
    date: group/sort by date
    type: group/sort by item type
    priority: group/sort by item priority
    both: group/sort by path and file
    path: group/sort by path
    file: group/sort by file, do not prefix path.
          This may not be what you want, will merge
          files from different directories.
    line: group/sort by line number
    name: group/sort by name
    link: group/sort by link
    reference: group/sort by reference
    initials: group/sort by initials
    new-lines: group/sort by number of new lines
    old-lines: group/sort by number of old lines
    line-diff: group/sort by lines difference
    revision: group/sort by VCS revision number,
    text: group/sort by text
  Supported abbreviations are:
    u: user
    d: date
    t: type
    y: priority
    b: both
    p: path
    f: file
    l: line
    m: name
    k: link
    s: reference
    i: initials
    n: new lines
    o: old lines
    c: line diff
    r: VCS revision number
    x: text
 
  FORMAT is a string of abbreviations or comma-separated list of format
    options.
  Supported format options are:
    plain-user: don't format user
    plain-date: don't format date
    plain-type: don't format type
    plain-priority: don't format priority
    plain-both: don't format path/file
    plain-path: don't format path
    plain-file: don't format file
    plain-line: don't format line
    plain-name: don't format name
    plain-link: don't format link
    plain-reference: don't format reference
    plain-initials: don't format initials
    plain-new-lines: don't format new lines
    plain-old-lines: don't format old lines
    plain-line-diff: don't format line diff
    plain-revision: don't format VCS revision number
  Supported abbreviations are:
    U: plain-user
    D: plain-date
    T: plain-type
    Y: plain-priority
    B: plain-both
    P: plain-path
    F: plain-file
    L: plain-line
    M: plain-name
    K: plain-link
    S: plain-reference
    I: plain-initials
    N: plain-new-lines
    O: plain-old-lines
    C: plain-line-diff
    R: plain-revision
  e.g. 'UT' disables formatting for user and type values.
 
  OPTIONS is a string of abbreviations or comma-separated list of report
    options.
  Supported report options are:
    html: output to HTML instead of wiki text
    table: output to HTML/wiki table instead of list
  Supported abbreviations are:
    h: html
    a: table
  e.g. 'ha' selects HTML with tables
 
=== Feedback ===
 
Report bugs to: [mailto:jj5@progclub.org?subject=bugslist.php jj5@progclub.org]
 
== Source code ==
 
You can [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php read the source code].
 
You can [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d browse the repository].
 
You can [https://svn.jj5.net/svn/public/jjrepo/jj5-bin/tags/latest/bin/bugslist.d/bugslist.php checkout the latest stable script], or the [https://svn.jj5.net/svn/public/jjrepo/jj5-bin/tags/latest/bin/bugslist.d full stable system] (including tests and release scripts).
 
You can [https://svn.jj5.net/svn/public/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php checkout the latest development script], or the [https://svn.jj5.net/svn/public/jjrepo/jj5-bin/trunk/bin/bugslist.d full development system] (including tests and release scripts).
 
== Links ==
 
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1252#l13 bugslist.php]: [https://www.jj5.net/sixsigma/Bugslist.php bugslist.php home page]
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1252#l200 bugslist.php]: [https://php.net/manual/en/function.assert.php PHP assert()]
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1252#l225 bugslist.php]: [https://php.net/manual/en/function.set-exception-handler.php PHP set_exception_handler()]
 
= Specifications =
 
== Functional specification ==
 
See [[#Help|help]] for information about how the script is supposed to work.
 
== Technical specification ==
 
The script is a PHP CLI script.
 
= Notes =
 
== Notes for implementers ==
 
If you are interested in incorporating this software into your project, here's what you need to know:
 
Just copy-and-paste your way to victory! Feel free to [mailto:jj5@progclub.org?subject=bugslist.php ask questions].
 
== Notes for developers ==
 
If you're interested in contributing to this software, here's what you need to know:
 
Send your patch to [mailto:jj5@progclub.org?subject=bugslist.php jj5@progclub.org] along with a statement that you are willing to be listed in the [[bugslist.php#Contributors|contributors]] section of the documentation and willing to license your contribution under the [[bugslist.php#License|license]].
 
For security reasons write access to [https://svn.jj5.net/jjrepo/ jjrepo] is only available for [[User:Sixsigma|John]]. It's basically my private repository. If you'd like to hack on projects where you do have checkin permissions on the Subversion repository, along with infrastructure for running your code, then why not head over to [https://www.progclub.org/ ProgClub] and [https://www.progclub.org/wiki/Register register]?
 
== Notes from the code ==
 
Following are notes from the source code, generated by bugslist.php!
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/?pathrev=1247 /] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247 bugslist.php] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l156 bugslist.php]: Windows is unsupported... no effort has been made to be compatible with the Windows file system. If you would like to fix that I will accept your patch!
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l165 bugslist.php]: there's a bunch of error handling stuff we setup up-front
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l167 bugslist.php]: program errors are things which shouldn't happen, they are numbered from 10 to 19. User errors are things that happen when the user makes a mistake or certain runtime conditions occur, they are numbered from 20 to 99. External program errors are between 100 and 199.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l314 bugslist.php]: Following is the meta-data from SVN. Note that the svn keyward 'Header' is not used. To configure svn keywords: svn propset svn:keywords "Date Revision Author HeadURL Id" bugslist.php
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l333 bugslist.php]: we set constants and configure globals before loading the config file(s)...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l335 bugslist.php]: this is the global code:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l340 bugslist.php]: we load the config file(s) here...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l354 bugslist.php]: we have an application config file, include it. note that if it's the same as the local config file it will only be included once.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l364 bugslist.php]: we have a local config file... include it:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l375 bugslist.php]: Main application logic starts here...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l385 bugslist.php]: configure our global defines, this is done after loading the config file if one exists...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l489 bugslist.php]: flag whether running in DEBUG mode or not...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l491 bugslist.php]: can conditionally switch on debug output...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l494 bugslist.php]: configure terminal width:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l499 bugslist.php]: item types. Doesn't include aliases like 'SEE', 'FIXME', 'NICE', etc.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l506 bugslist.php]: FIXME is an alias for TODO
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l513 bugslist.php]: SEE/REF are aliases...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l515 bugslist.php]: NICE is an alias for TODO
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l550 bugslist.php]: FIXME is a HIGH priority TODO
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l559 bugslist.php]: NICE is LOW priority TODO
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l696 bugslist.php]: configure regular expressions:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l717 bugslist.php]: $file_extension_include and $file_extension_exclude are file extensions supported or not. For debugging purposes an included 'phar' and excluded 'properties' and 'xcf' are omitted so they should show up in 'unknown file types'...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l754 bugslist.php]: exception_handler(...) will exit (at time of writing!) but just to be safe:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l953 bugslist.php]: Last in wins!
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1171 bugslist.php]: parse_svn() will have potentially stale data if 'svn up' isn't called prior. But we don't want to call 'svn up' all the time (especially from unit tests) because it's slooooooowwwww. So better to just live with the stale revision info from parse_svn() when it's not really needed. Read the code for parse_svn() to see what might be out-of-date.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1556 bugslist.php]: overwrite $type_filter array
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2891 bugslist.php]: $counter tracks the number of pushd()'s so we can undo with popd()...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2895 bugslist.php]: $type can be 'none', 'svn', or 'git' presently
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2898 bugslist.php]: if we pushd( '..' ) on '/' the current directory doesn't change, and we're done.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2929 bugslist.php]: we don't call shell() because we don't want to exit on error (we ignore errors here)...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2935 bugslist.php]: bail if we don't have svn...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2960 bugslist.php]: this function assumes we're in the project directory
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2961 bugslist.php]: svn commits are LOW priority COMMIT items
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3032 bugslist.php]: being a bit anal here, probably only need to test either $path or $file for null...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3036 bugslist.php]: add previous item:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3061 bugslist.php]: $slash_index won't be zero.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3091 bugslist.php]: being a bit anal here, probably only need to test either $path or $file for null...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3095 bugslist.php]: add last item:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3175 bugslist.php]: this is ugly, but it's fast and safe (at time of writing!)
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3214 bugslist.php]: at this point it's OK to override the $file variable
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3253 bugslist.php]: clear the progress report
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3766 bugslist.php]: priority for FIXME can be different to TODO
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3778 bugslist.php]: priority for NICE can be different to TODO
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3818 bugslist.php]: $item_type is null to return false on invalid spec
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3834 bugslist.php]: if we can't find the priority from the spec warn then fallthrough to get by item type...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3858 bugslist.php]: we can't find a priority so assume CRITICAL
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4245 bugslist.php]: we could imagine support for other types and/or is_numeric()...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4488 bugslist.php]: START: reset lower headings
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4498 bugslist.php]: END: reset lower headings
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4614 bugslist.php]: wildcards are supported
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4682 bugslist.php]: if $fail is false then a boolean success value is returned. If $fail is true (the default) the process is terminated on error.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4741 bugslist.php]: returns false if no directory, true on success, or exits otherwise.
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin?pathrev=1247 bin] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247 open-doco.sh] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l21 open-doco.sh]: open up a file explorer to optionally review log files...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l27 open-doco.sh]: give Firefox time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l32 open-doco.sh]: give Firefox time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l37 open-doco.sh]: give Firefox time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l42 open-doco.sh]: give Firefox time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l47 open-doco.sh]: give Firefox time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l52 open-doco.sh]: give Kate time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l57 open-doco.sh]: give Kate time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l62 open-doco.sh]: give Kate time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l67 open-doco.sh]: give Kate time to open...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l72 open-doco.sh]: give Kate time to open...
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test?pathrev=1247 test] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/fast.sh?pathrev=1247 fast.sh] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/fast.sh?pathrev=1247#l7 fast.sh]: list slow tests to skip here:
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test?pathrev=1247 test] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/new.sh?pathrev=1247 new.sh] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/new.sh?pathrev=1247#l13 new.sh]: don't edit this file. Edit process.sh...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/new.sh?pathrev=1247#l19 new.sh]: don't edit this file. Edit process.sh...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/new.sh?pathrev=1247#l31 new.sh]: include your arguments on the following line. If you have multiple equivalent tests (same input/output) you can duplicate the following line with different arguments.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/new.sh?pathrev=1247#l36 new.sh]: the process.sh script is not executed (it is sourced).
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test?pathrev=1247 test] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/test.inc.sh?pathrev=1247 test.inc.sh] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/test.inc.sh?pathrev=1247#l2 test.inc.sh]: this file is sourced by a script runner. It defines a bunch of functions to run various kinds of tests.
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args?pathrev=1247 test/args] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247 run.sh] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l409 run.sh]: not a good idea to pass '/' or anything with lots of data in it...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l421 run.sh]: processing /tmp probably isn't a good idea...
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/pushd?pathrev=1247 test/pushd] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/pushd/run.php?pathrev=1247 run.php] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/pushd/run.php?pathrev=1247#l11 run.php]: popd should fail if uninitialised...
 
=== [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/vcs-type?pathrev=1247 test/vcs-type] : [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/vcs-type/run.sh?pathrev=1247 run.sh] ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/vcs-type/run.sh?pathrev=1247#l6 run.sh]: just succeed if we're not on John's machine (but print
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/vcs-type/run.sh?pathrev=1247#l34 run.sh]: tests for 'none'
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/vcs-type/run.sh?pathrev=1247#l42 run.sh]: tests for 'svn'
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/vcs-type/run.sh?pathrev=1247#l50 run.sh]: tests for 'git'
 
= Tasks =
 
== TEST ==
 
=== HIGH priority ===
 
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2933 bugslist.php]: need to see what happens when we're not running in an svn working copy...
 
== TODO ==
[[Category:TODO]]
 
=== MEDIUM priority ===
 
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l32 bugslist.php]: test duplicate command-line options
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l33 bugslist.php]: VCS support should probably include git in addition to svn.
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l40 bugslist.php]: make config override a command-line option. e.g.
** --config=user,jj5,initials=JE;user,jj5,wiki-user=Sixsigma
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l42 bugslist.php]: ignore extra punctuation after item type/priority
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l54 bugslist.php]: make $file_extension_include, etc. configurable in config file.
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l57 bugslist.php]: make priority filter and default priority a config file option.
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l724 bugslist.php]: check if 'ods' is plain text / XML format...
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l852 bugslist.php]: implement revision filter
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4263 bugslist.php]: HTML table reporting
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4270 bugslist.php]: HTML list reporting
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4277 bugslist.php]: wiki table reporting
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4439 bugslist.php]: check for newlines in value and remove them
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l916 run.sh]: plain-* output options
 
=== LOW priority ===
 
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l45 bugslist.php]: MediaWiki integration would be nice. I.e. automatically insert reports into the MediaWiki database. Might be smarter to go in through the front-end via HTTP (need HTTP auth and a valid cookie for that... doable.)
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l52 bugslist.php]: linting for invalid comment labels, e.g. HAKK, missing/invalid punctuation, etc.
 
== HACK ==
 
=== LOW priority ===
 
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3008 bugslist.php]: We just bail if previous revision is zero.
 
== CONSIDER ==
 
=== LOW priority ===
 
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l35 bugslist.php]: for svn items is the line number 'svn' or is it the first changed line in the associated file?
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l37 bugslist.php]: add MAINT type w/ --maint option to report on maintenance gotchas? (i.e. stuff you need to know about for doing a release etc.)
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l43 bugslist.php]: add support for ';' list delimiters in addition to ','..?
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l49 bugslist.php]: add support for multiple reports delimited with ';'..?
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l51 bugslist.php]: add support for FEATURE/IMPROVEMENT items..?
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l56 bugslist.php]: alias 'TASK' to 'TODO'..?
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l581 bugslist.php]: consider support for 'Z' => 'DEBUG'..?
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l723 bugslist.php]: consider if 'phar' should be included...
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l734 bugslist.php]: consider if 'properties' should be excluded...
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l735 bugslist.php]: consider if 'xcf' should be excluded...
* [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4347 bugslist.php]: make null headings a command-line/config option? At the moment null headings are skipped, not reported.
 
== DONE ==
[[Category:Done]]
 
=== 2016-12-14 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1076 bugslist.php]: read options into globals.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1083 bugslist.php]: we use '.debug' files for testing...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1091 bugslist.php]: we fixup some filter options which might not be arrays when they should be.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1096 bugslist.php]: fix up our directory filters...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1100 bugslist.php]: $options are now validated.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1103 bugslist.php]: if we have a path option chdir to it.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1125 bugslist.php]: file options are validated.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1144 bugslist.php]: initialise our main local variables.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1150 bugslist.php]: our VCS type is now auto-detected.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1161 bugslist.php]: do our svn stuff if we're in an svn working copy.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1188 bugslist.php]: if user has specified files with --file then process them.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1226 bugslist.php]: if user hasn't specified files with --file then process the root directory.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1242 bugslist.php]: exit if --exit was specified.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1267 bugslist.php]: sort our $data. Sorting is by --aggregate then --collate.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1327 bugslist.php]: default order is based on the 'order' integer which is the order we discovered our items. (It's a counter.)
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1336 bugslist.php]: report based on user options. Not that only report_wiki_list() is actually implemented at the moment.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1381 bugslist.php]: all user options are now initialised in get_default_options().
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2262 bugslist.php]: counters are now initialised in get_initial_count().
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2299 bugslist.php]: help has been rewritten to avoid duplication.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2639 bugslist.php]: print_options() has been updated to use new $options array and report on more options (e.g. vcs type, exit, etc.)
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2721 bugslist.php]: print_stats() now reports number of warnings.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3744 bugslist.php]: $type_regex is now an unconcatenated string because string concatenation for a constant didn't seem to work in PHP v5.3... it's annoying that it doesn't fit in 80 cols!
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3819 bugslist.php]: get_priority() now collects $warnings...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l463 bugslist.php]: configure_globals() is now comprehensive. All globals (that aren't entirely managed inside a function, such as $pushd_stack in pushd() and popd()) are now initialised here.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l466 bugslist.php]: $*_options and $*_abbreviations have now been standardised and initialised in configure_globals().
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4665 bugslist.php]: shell() now returns an error level between 100 and 199. It's the exec'd error level plus 100.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4685 bugslist.php]: we now have a $changed output variable on pushd() which indicates if the current directory was actually changed or not. This is useful if you find yourself calling pushd( '..' ) on /.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l63 bugslist.php]: report --heading options
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l64 bugslist.php]: the 'name' and 'line' options no longer include the revision number... need an option which does: that option is 'link'
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l66 bugslist.php]: change 'name' from 'n' to 'm'.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l736 bugslist.php]: *.log is now excluded.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l768 bugslist.php]: default options have been factored into get_default_options().
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l770 bugslist.php]: user options have been factored into $options array.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l776 bugslist.php]: command-line argument parsing has been factored into read_*_arg() methods.
 
=== 2016-12-13 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1436 bugslist.php]: current user '?' is not added to filter...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l345 bugslist.php]: initialise $config
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l67 bugslist.php]: refactored documentation to remove duplication.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l68 bugslist.php]: fixed issue where we processed svn working copies that weren't svn working copies...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l70 bugslist.php]: refactored options globals
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l71 bugslist.php]: changed --option to --output
 
=== 2016-12-12 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bin/open-doco.sh?pathrev=1247#l4 open-doco.sh]: we load the wiki edit URLs in Firefox and open the generated wiki text reports in Kate (Kate is a text editor...)
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1086 bugslist.php]: cancel duration reporting during debugging
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1876 bugslist.php]: there's an issue where if no-link options are specified and no cell options are specified we get a report with blank list items. The fix is to check if any cell items have been specified and if not automatically add 'text'.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l3978 bugslist.php]: path is '/' for base/project directory...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4049 bugslist.php]: removed revision from line/name links
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4599 bugslist.php]: type wildcards are resolved at parse time.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l629 bugslist.php]: reporting by text be might be useful..?
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l72 bugslist.php]: add svn items to COMMIT type rather than importing them as DONE.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l74 bugslist.php]: svn integration
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l75 bugslist.php]: removed 'path-file', it's 'both' now...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l76 bugslist.php]: terminology change: 'alias' to 'abbreviation', an alias is a type alias like FIXME and SEE.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l78 bugslist.php]: update args unit tests with new command-line args
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l79 bugslist.php]: DEBUG is 'g', not 'z'.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l80 bugslist.php]: changed --types to --type for consistency, same with --headings and --options.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l82 bugslist.php]: added --file doco
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l83 bugslist.php]: fixed issue where newline was emitted after empty report.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l85 bugslist.php]: issue where sub wiki items weren't indented
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l1027 run.sh]: invalid level tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l1037 run.sh]: valid level tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l172 run.sh]: invalid type tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l556 run.sh]: invalid aggregate tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l719 run.sh]: invalid heading tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l727 run.sh]: valid heading options tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l763 run.sh]: invalid heading option abbreviation tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l816 run.sh]: invalid output options tests
 
=== 2016-12-11 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l100 bugslist.php]: added support for 'line' and 'line-number'.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l101 bugslist.php]: basic unit testing framework has been implemented.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l102 bugslist.php]: user can exit without reporting with +X. In this case error level is zero.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l104 bugslist.php]: implement no-link heading options
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l105 bugslist.php]: implement no-link options
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l106 bugslist.php]: add 'both' option for path/file
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l107 bugslist.php]: don't output cells in report if they are missing
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l108 bugslist.php]: added support for initals option, links to user wiki
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l109 bugslist.php]: start heading level is configurable...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l110 bugslist.php]: added --level for initial heading level, defaults to 2.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l1170 bugslist.php]: load the svn globals
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4125 bugslist.php]: priority suffix is a config option now.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l86 bugslist.php]: have counter for total LOC processed.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l87 bugslist.php]: have "no link" options for headings and cells. The no-link option removes URLs from wiki/html output for the value specified.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l89 bugslist.php]: removed support for NICE priority level, it added complexity and was kinda unclear. Gone now.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l91 bugslist.php]: added support for wiki user links (with initials). Configure in config file with e.g.:
** $config[ 'user' ][ 'jj5' ][ 'initials' ] = 'JE';
** $config[ 'user' ][ 'jj5' ][ 'wiki-user' ] = 'John';
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l95 bugslist.php]: we have support for emitting wiki categories now. Configured in config file as e.g.:
** $config[ 'wiki' ][ 'category' ][ $type ][ $value ] = $category_name
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l98 bugslist.php]: integer values are sorted numerically now (not as strings...)
 
=== 2016-12-10 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l112 bugslist.php]: numerical sorting for priority and line number.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l113 bugslist.php]: support to show/hide warnings
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l114 bugslist.php]: use define( 'TEST', true ) to avoid running main() when loading script.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l116 bugslist.php]: --file overrides --skip etc.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l117 bugslist.php]: added 'y' for priority
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l118 bugslist.php]: added priority filters
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l119 bugslist.php]: improved newline outputs between optional sections
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l120 bugslist.php]: added 'text' to report (for sorting, removes duplicates)
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l122 bugslist.php]: FIXME is HIGH priority TODO
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l123 bugslist.php]: added support for --today and --yesterday
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l124 bugslist.php]: run.sh and debug.sh unit tests call process.sh with an argument for what mode to run in (so command-line can be specified once-only and not duplicated between scripts).
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l127 bugslist.php]: created project page and initial documentation.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l128 bugslist.php]: require punctuation after item type.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l129 bugslist.php]: support 'x-y' for PRIORITY spec? E.g. '0-3', 'H-L', etc.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l131 bugslist.php]: ignore: START, END items...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l132 bugslist.php]: have stdout() and stderr() functions and they track if output sent in global variables.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l378 bugslist.php]: don't run main in unit tests...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4228 bugslist.php]: missing fields are now an error:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l485 bugslist.php]: track if output sent:
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l369 run.sh]: invalid priority tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l385 run.sh]: valid priority tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l430 run.sh]: invalid file tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l440 run.sh]: valid file tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l454 run.sh]: invalid path/file tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l460 run.sh]: valid path/file tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/pushd/run.php?pathrev=1247#l14 run.php]: testing relative pushd's...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/pushd/run.php?pathrev=1247#l3 run.php]: define TEST to flag as unit test... (doesn't run main());
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/pushd/run.php?pathrev=1247#l30 run.php]: testing absolute pushd's...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/test.inc.sh?pathrev=1247#l6 test.inc.sh]: added '$$' (process ID) to temp files.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/vcs-type/run.php?pathrev=1247#l3 run.php]: define TEST to flag as unit test... (doesn't run main());
 
=== 2016-12-09 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l134 bugslist.php]: don't output spurious leading/trailing new lines
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l135 bugslist.php]: add support for formatting options and include optional line numbers.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l351 bugslist.php]: check for application config file in script dir...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l371 bugslist.php]: $config_path is of no further use... clear it.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l112 run.sh]: invalid command-line switch tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l122 run.sh]: invalid username tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l130 run.sh]: valid username tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l148 run.sh]: invalid datespec tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l158 run.sh]: valid datespec tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l180 run.sh]: valid type tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l283 run.sh]: invalid type abbreviation tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l297 run.sh]: valid type abbreviation tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l403 run.sh]: invalid path tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l409 run.sh]: valid path tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l468 run.sh]: invalid include tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l484 run.sh]: valid include tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l5 run.sh]: required argument missing for command-line switch tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l500 run.sh]: invalid exclude tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l516 run.sh]: valid exclude tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l532 run.sh]: valid skip tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l544 run.sh]: valid keep tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l564 run.sh]: valid aggregate tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l57 run.sh]: optional argument missing for command-line switch tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l612 run.sh]: invalid aggregate abbreviation tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l622 run.sh]: valid aggregate abbreviation tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l771 run.sh]: valid heading option abbreviation tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l824 run.sh]: valid output options tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l919 run.sh]: invalid output option abbreviation tests
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/test/args/run.sh?pathrev=1247#l927 run.sh]: valid output option abbreviation tests
 
=== 2016-12-07 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l137 bugslist.php]: set default priority by type:
** TODO: MEDIUM
** HACK: LOW
** etc.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4905 bugslist.php]: don't blank if no stderr output
 
=== 2016-12-06 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l141 bugslist.php]: support PRIORITY for TODO etc. By default:
** 0: CRITICAL
** 1: HIGH
** 2: MEDIUM
** 3: LOW
** 4: DEBUG
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l147 bugslist.php]: option to print line numbers
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l148 bugslist.php]: improved reporting to group by date, user, etc.
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l149 bugslist.php]: implemented descending sorting
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l150 bugslist.php]: implemented natural case sorting
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l151 bugslist.php]: there's a problem with multiline comments below, see the PRIORITY TODO item. The issue is the preceding item about line numbers...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2643 bugslist.php]: include reporting options, and other new options
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l348 bugslist.php]: try for config file in program directory...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l361 bugslist.php]: check for local config file in cwd...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4568 bugslist.php]: added support for wildcard users...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l4584 bugslist.php]: added support for wildcard dates...
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l732 bugslist.php]: added '' to included extensions and made excluded extensions override included extensions.
 
=== 2016-12-05 ===
 
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l2023 bugslist.php]: don't allow empty path spec
* [[User:Sixsigma|JE]]: [https://svn.jj5.net/jjrepo/jj5-bin/trunk/bin/bugslist.d/bugslist.php?pathrev=1247#l725 bugslist.php]: changed support for files with no extension, changed from excluded by default to included by default (for shell scripts, README, etc).

Latest revision as of 17:15, 2 March 2020