Commit Graph

7 Commits

Author SHA1 Message Date
Robert Alonso
948c3e0507 fix: don't include source with issue URL comment
If TODO comment is a suffix to a line of
(executable) source, don't repeat the source
content when inserting the issue URL. But be sure
to still keep the same alignment.

Closes #229
2024-11-12 14:28:40 +00:00
Robert Alonso
46218738c9 fix: get correct line numbering of old and new lines
track context of old and new lines separately to
get proper line numbers relative to old and
new version of a file

Closes GitHub #236
2024-11-12 12:18:43 +00:00
Robert Alonso
57928cd01e fix: resolve numerous issue stemming from case-(in)sensitivity matching of TODOs
Some parts of the code were using case-insensitive
matches when searching for an identifier (i.e.
TODO and todo would both be acceptable) whereas
other parts of the code would search for a strict
case-sensitive match (only TODO, not todo). This
inconsistency led to many issues, among them
- #216
- #224
- #225

Further, the identifier match wasn't being done
using word breaks, meaning an identifier of "FIX"
would match (case-insensitively) with "suffix" or
"prefix" if those words happened to appear in a
comment. (See #234).

Issue #230 was also preventing issue labels from
being applied properly if the identifier case
did not match exactly the canonical version. i.e.
"todo" would generate an issue, but the associated
labels wouldn't be applied because the exact
identifier used wasn't "TODO".

This commit resolves all of these issues.
2024-11-12 00:18:47 +00:00
Robert Alonso
e42bca636e refactor: add optional argument to TodoParser to set configuration
Currently, this is just used to set identifiers
without needing to modify the environment, but this
could (should?) be extended to other options
2024-11-11 17:52:38 +00:00
Alastair Mooney
d6553dba69
Update TodoParser.py 2024-10-25 19:42:25 +01:00
Robert Alonso
9b24f44c63 refactor: clean up imports 2024-10-25 18:12:00 +00:00
Robert Alonso
662435d7fc refactor: split into modules
Split main.py into modules to (mostly) isolate the
GitHub-specific code from the general TODO
detection and program logic.
This is both for readability/maintainability and
to prepare for potentially supporting other
version control systems (e.g. GitLab, BitBucket).
2024-10-25 00:07:47 +00:00