diff --git a/CHANGELOG.md b/CHANGELOG.md
index 01bfc1d7..741b2103 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,33 @@
# Changelog
+## v0.26.0 (2022-03-23)
+
+### New Features
+
+* Add "unused hint" flag — @javierguerragiraldez
+ Function arguments that start with a single underscore get an "unused hint".
+ Leaving them unused doesn't result in a warning.
+ Using them, on the other hand, is a new warning (№ 214).
+* Add hook to enable Luacheck for use in pre-commit — @mblayman
+* Warn on error-prone and unnecessary negations — @arichard4
+ Two new warnings (№ 581 and 582) flag error-prone operator orders.
+* Add Dockerfile implementation — @MartinBroers
+ A 6.34MB containerized image with everything needed to run the linter.
+ Build your own or pull prebuilt images from GHRC.
+* Setup repository for use *as* a GitHub Action — @alerque
+ Lint your repositories using GitHub Action workflows with just a single `uses:` step.
+
+### Fixes
+
+* Don't mark variables as accessed if only references are circular — @arichard4
+* Make test suite Lua 5.4 compatible — @alerque
+* Correct small issues in documentation — various
+
+### Miscellaneous
+
+* Overhaul CI workflows for testing, linting, building, and releasing — @alerque
+* Update URLs and documentation reflecting new repository home — @lunarmodules
+
## 0.25.0 (2020-08-25)
### New features
diff --git a/README.md b/README.md
index cb0e2826..7a8283ba 100644
--- a/README.md
+++ b/README.md
@@ -40,7 +40,7 @@ For parallel checking Luacheck additionally requires [LuaLanes](https://github.c
### Windows binary download
For Windows there is single-file 64-bit binary distribution, bundling Lua 5.4.4, Luacheck, LuaFileSystem, and LuaLanes using [LuaStatic](https://github.com/ers35/luastatic):
-[download](https://github.com/lunarmodules/luacheck/releases/download/0.25.0/luacheck.exe).
+[download](https://github.com/lunarmodules/luacheck/releases/download/0.26.0/luacheck.exe).
## Basic usage
@@ -109,7 +109,7 @@ Documentation can be built using [Sphinx](http://sphinx-doc.org/): `sphinx-build
## Development
-Luacheck is currently in development. The latest released version is 0.25.0. The interface of the `luacheck` module may change between minor releases. The command line interface is fairly stable.
+Luacheck is currently in development. The latest released version is 0.26.0. The interface of the `luacheck` module may change between minor releases. The command line interface is fairly stable.
Use the Luacheck issue tracker on GitHub to submit bugs, suggestions and questions. Any pull requests are welcome, too.
diff --git a/action.yml b/action.yml
index a94c9ae7..16dc4601 100644
--- a/action.yml
+++ b/action.yml
@@ -7,7 +7,7 @@ inputs:
default: "."
runs:
using: docker
- image: docker://ghcr.io/lunarmodules/luacheck:v0.25.0
+ image: docker://ghcr.io/lunarmodules/luacheck:v0.26.0
entrypoint: sh
args:
- -c
diff --git a/docsrc/conf.py b/docsrc/conf.py
index b67ae7bc..0106a4f6 100644
--- a/docsrc/conf.py
+++ b/docsrc/conf.py
@@ -48,9 +48,9 @@
# built documents.
#
# The short X.Y version.
-version = '0.25.0'
+version = '0.26.0'
# The full version, including alpha/beta/rc tags.
-release = '0.25.0'
+release = '0.26.0'
# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
diff --git a/docsrc/index.rst b/docsrc/index.rst
index f2bb80c8..fe3d558f 100644
--- a/docsrc/index.rst
+++ b/docsrc/index.rst
@@ -11,4 +11,4 @@ Contents:
inline
module
-This is documentation for 0.25.0 version of `Luacheck `_, a linter for `Lua `_.
+This is documentation for 0.26.0 version of `Luacheck `_, a linter for `Lua `_.
diff --git a/luacheck-dev-1.rockspec b/luacheck-dev-1.rockspec
index d01a17df..1749c610 100644
--- a/luacheck-dev-1.rockspec
+++ b/luacheck-dev-1.rockspec
@@ -67,8 +67,8 @@ build = {
["luacheck.unicode_printability_boundaries"] = "src/luacheck/unicode_printability_boundaries.lua",
["luacheck.utils"] = "src/luacheck/utils.lua",
["luacheck.vendor.sha1"] = "src/luacheck/vendor/sha1/init.lua",
- ["luacheck.vendor.sha1.bit_ops"] = "src/luacheck/vendor/sha1/bit_ops.lua",
["luacheck.vendor.sha1.bit32_ops"] = "src/luacheck/vendor/sha1/bit32_ops.lua",
+ ["luacheck.vendor.sha1.bit_ops"] = "src/luacheck/vendor/sha1/bit_ops.lua",
["luacheck.vendor.sha1.common"] = "src/luacheck/vendor/sha1/common.lua",
["luacheck.vendor.sha1.lua53_ops"] = "src/luacheck/vendor/sha1/lua53_ops.lua",
["luacheck.vendor.sha1.pure_lua_ops"] = "src/luacheck/vendor/sha1/pure_lua_ops.lua",
diff --git a/rockspecs/luacheck-0.26.0-1.rockspec b/rockspecs/luacheck-0.26.0-1.rockspec
new file mode 100644
index 00000000..be14b5f6
--- /dev/null
+++ b/rockspecs/luacheck-0.26.0-1.rockspec
@@ -0,0 +1,83 @@
+package = "luacheck"
+version = "0.26.0-1"
+source = {
+ url = "git+https://github.com/lunarmodules/luacheck.git",
+ tag = "v0.26.0"
+}
+description = {
+ summary = "A static analyzer and a linter for Lua",
+ detailed = [[
+Luacheck is a command-line tool for linting and static analysis of Lua code.
+It is able to spot usage of undefined global variables, unused local variables and
+a few other typical problems within Lua programs.
+]],
+ homepage = "https://github.com/lunarmodules/luacheck",
+ license = "MIT"
+}
+dependencies = {
+ "lua >= 5.1",
+ "argparse >= 0.6.0",
+ "luafilesystem >= 1.6.3"
+}
+build = {
+ type = "builtin",
+ modules = {
+ luacheck = "src/luacheck/init.lua",
+ ["luacheck.builtin_standards"] = "src/luacheck/builtin_standards/init.lua",
+ ["luacheck.builtin_standards.love"] = "src/luacheck/builtin_standards/love.lua",
+ ["luacheck.builtin_standards.ngx"] = "src/luacheck/builtin_standards/ngx.lua",
+ ["luacheck.cache"] = "src/luacheck/cache.lua",
+ ["luacheck.check"] = "src/luacheck/check.lua",
+ ["luacheck.check_state"] = "src/luacheck/check_state.lua",
+ ["luacheck.config"] = "src/luacheck/config.lua",
+ ["luacheck.core_utils"] = "src/luacheck/core_utils.lua",
+ ["luacheck.decoder"] = "src/luacheck/decoder.lua",
+ ["luacheck.expand_rockspec"] = "src/luacheck/expand_rockspec.lua",
+ ["luacheck.filter"] = "src/luacheck/filter.lua",
+ ["luacheck.format"] = "src/luacheck/format.lua",
+ ["luacheck.fs"] = "src/luacheck/fs.lua",
+ ["luacheck.globbing"] = "src/luacheck/globbing.lua",
+ ["luacheck.lexer"] = "src/luacheck/lexer.lua",
+ ["luacheck.main"] = "src/luacheck/main.lua",
+ ["luacheck.multithreading"] = "src/luacheck/multithreading.lua",
+ ["luacheck.options"] = "src/luacheck/options.lua",
+ ["luacheck.parser"] = "src/luacheck/parser.lua",
+ ["luacheck.profiler"] = "src/luacheck/profiler.lua",
+ ["luacheck.runner"] = "src/luacheck/runner.lua",
+ ["luacheck.serializer"] = "src/luacheck/serializer.lua",
+ ["luacheck.stages"] = "src/luacheck/stages/init.lua",
+ ["luacheck.stages.detect_bad_whitespace"] = "src/luacheck/stages/detect_bad_whitespace.lua",
+ ["luacheck.stages.detect_cyclomatic_complexity"] = "src/luacheck/stages/detect_cyclomatic_complexity.lua",
+ ["luacheck.stages.detect_empty_blocks"] = "src/luacheck/stages/detect_empty_blocks.lua",
+ ["luacheck.stages.detect_empty_statements"] = "src/luacheck/stages/detect_empty_statements.lua",
+ ["luacheck.stages.detect_globals"] = "src/luacheck/stages/detect_globals.lua",
+ ["luacheck.stages.detect_reversed_fornum_loops"] = "src/luacheck/stages/detect_reversed_fornum_loops.lua",
+ ["luacheck.stages.detect_unbalanced_assignments"] = "src/luacheck/stages/detect_unbalanced_assignments.lua",
+ ["luacheck.stages.detect_uninit_accesses"] = "src/luacheck/stages/detect_uninit_accesses.lua",
+ ["luacheck.stages.detect_unreachable_code"] = "src/luacheck/stages/detect_unreachable_code.lua",
+ ["luacheck.stages.detect_unused_fields"] = "src/luacheck/stages/detect_unused_fields.lua",
+ ["luacheck.stages.detect_unused_locals"] = "src/luacheck/stages/detect_unused_locals.lua",
+ ["luacheck.stages.linearize"] = "src/luacheck/stages/linearize.lua",
+ ["luacheck.stages.name_functions"] = "src/luacheck/stages/name_functions.lua",
+ ["luacheck.stages.parse"] = "src/luacheck/stages/parse.lua",
+ ["luacheck.stages.parse_inline_options"] = "src/luacheck/stages/parse_inline_options.lua",
+ ["luacheck.stages.resolve_locals"] = "src/luacheck/stages/resolve_locals.lua",
+ ["luacheck.stages.unwrap_parens"] = "src/luacheck/stages/unwrap_parens.lua",
+ ["luacheck.standards"] = "src/luacheck/standards.lua",
+ ["luacheck.unicode"] = "src/luacheck/unicode.lua",
+ ["luacheck.unicode_printability_boundaries"] = "src/luacheck/unicode_printability_boundaries.lua",
+ ["luacheck.utils"] = "src/luacheck/utils.lua",
+ ["luacheck.vendor.sha1"] = "src/luacheck/vendor/sha1/init.lua",
+ ["luacheck.vendor.sha1.bit32_ops"] = "src/luacheck/vendor/sha1/bit32_ops.lua",
+ ["luacheck.vendor.sha1.bit_ops"] = "src/luacheck/vendor/sha1/bit_ops.lua",
+ ["luacheck.vendor.sha1.common"] = "src/luacheck/vendor/sha1/common.lua",
+ ["luacheck.vendor.sha1.lua53_ops"] = "src/luacheck/vendor/sha1/lua53_ops.lua",
+ ["luacheck.vendor.sha1.pure_lua_ops"] = "src/luacheck/vendor/sha1/pure_lua_ops.lua",
+ ["luacheck.version"] = "src/luacheck/version.lua"
+ },
+ install = {
+ bin = {
+ luacheck = "bin/luacheck.lua"
+ }
+ }
+}
diff --git a/src/luacheck/init.lua b/src/luacheck/init.lua
index 45bc57a6..b872b5a9 100644
--- a/src/luacheck/init.lua
+++ b/src/luacheck/init.lua
@@ -5,7 +5,7 @@ local format = require "luacheck.format"
local utils = require "luacheck.utils"
local luacheck = {
- _VERSION = "0.25.0"
+ _VERSION = "0.26.0"
}
local function raw_validate_options(fname, opts, stds, context)