1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
|
relint version history
======================
Version 2.1
- Robustness fixes
- Summary now counts unsuppressed problems
Version 2.0
- Compatibility break: `relint-buffer` now returns a list of `relint-diag`
objects. Use the `relint-diag-` accessors for reading their slots.
Each object now has BEGIN..END ranges instead of just the starting point,
which allows a user interface to highlight the corresponding part
of the code buffer in a suitable way.
There are now the severity levels `error`, `warning` and `info`.
- When running interactively (`relint-directory`, `relint-file` or
`relint-current-buffer`), the new `relint-buffer-highlight` face is
used for relevant parts of a string in the `*relint*` buffer.
This face can be customised or themed by the user.
- In batch mode (`relint-batch`), the new variable `relint-batch-highlight`
is used to determine how relevant parts of a string are marked in
the output. The default is to use reverse video for terminal display.
This variable can be customised by the user.
- Some performance improvements
- Requires xr 2.0 and Emacs 27.1 or later
Version 1.24
- Fix a `next-error' bug
- Some performance improvements
Version 1.23
- New defcustom `relint-xr-checks' that enables optional xr checks.
- Add regexp detection in uses of the treesit API.
- Better backquote expansion inside rx forms.
Version 1.22
- String char escape check now detects \8, \9, and \x without hex digit
Version 1.21
- Check for duplicates in rx or-forms
- Robustness improvements
Version 1.20
- More compact distribution
Version 1.19
- Progress indicator in `relint-directory'
- Some performance improvements
- Fix some false positives in the regexp provenance detector
- Scan assignments to `font-lock-defaults' correctly
- Recognise regexp arguments to functions in the s.el package
Version 1.18
- New check for ineffective backslashes in all strings (not just regexps)
- Warnings emitted in order of their position in file or buffer
- Performance improvements
Version 1.17
- Fixed message display on Emacs 26
Version 1.16
- Suppression comments now use regexp matching of messages
- New filename-specific checks in calls to `directory-files' etc
- Check some keyword arguments (:regexp and :regex)
- Improved rx checks
- `relint-directory' now displays number of files found
Version 1.15
- Improved position accuracy in various lists of regexps
- Check for mistake in rx `any' forms
- `relint-buffer' now also returns severity (warning, error)
- Relint can now also check the *scratch* buffer
Version 1.14
- Added `relint-buffer'
- Report error position inside string literals when possible
- Scan arguments to `search-forward-regexp' and `search-backward-regexp'
- Use text quoting for messages
Version 1.13
- Look in function/macro doc strings to find regexp arguments and
return values
- Detect binding and mutation of some known regexp variables
- Detect regexps as arguments to `syntax-propertize-rules'
- More font-lock-keywords variables are scanned for regexps
- `relint-batch' no longer outputs a summary if there were no errors
Version 1.12
- Improved detection of regexps in defcustom declarations
- Better suppression of false positives
- Nonzero exit status upon error in `relint-batch'
Version 1.11
- Improved evaluator, now handling limited local variable mutation
- Bug fixes
- Test suite
Version 1.10
- Check arguments to `skip-syntax-forward' and `skip-syntax-backward'
- Add error suppression mechanism
Version 1.9
- Limited tracking of local variables in regexp finding
- Recognise new variable `literal' and `regexp' rx clauses
- Detect more regexps in defcustom declarations
- Requires xr 1.13
Version 1.8
- Updated diagnostics list
- Requires xr 1.12
Version 1.7
- Expanded regexp-generating heuristics
- Some `defalias' are now followed
- All diagnostics are now documented (see README.org)
Version 1.6
- Add `relint-current-buffer'
- Show relative file names in *relint*
- Extended regexp-generating heuristics, warning about suspiciously-named
variables used as skip-sets
- "-patterns" and "-pattern-list" are no longer interesting variable
suffixes
Version 1.5
- Substantially improved evaluator, able to evaluate some functions and
macros defined in the same file, even when passed as parameters
- Detect regexps spliced into [...]
- Check bad skip-set provenance
- The *relint* buffer now uses a new relint-mode for better usability,
with "g" bound to `relint-again'
Version 1.4
- First version after name change to `relint'
|