diff --git a/CHANGELOG.md b/CHANGELOG.md index 15c6438a..599ddc96 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,20 @@ All notable changes to this project will be documented in this file. +## v1.0.0 (2022-08-24) + +### Documentation + +- [**breaking**] Follow semver guidelines, next release will be v1.x.y + +### Features + +- Overhaul docker container to run on Lua 5.4 +- Store cached luacheck values per-version in case of changes +- Set_default_std for ldoc +- Add builtin std option for Ldoc globals +- Add builtin std option for the Playdate SDK + ## v0.26.1 (2022-04-23) ### Bug Fixes diff --git a/README.md b/README.md index 16ae41d4..57374079 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.26.1/luacheck.exe). +[download](https://github.com/lunarmodules/luacheck/releases/download/v1.0.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.26.1. 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 v1.0.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 e2c213c5..0587825b 100644 --- a/action.yml +++ b/action.yml @@ -7,7 +7,7 @@ inputs: default: "." runs: using: docker - image: docker://ghcr.io/lunarmodules/luacheck:v0.26.1 + image: docker://ghcr.io/lunarmodules/luacheck:v1.0.0 entrypoint: sh args: - -c diff --git a/docsrc/conf.py b/docsrc/conf.py index 1c894e1d..f1aef94c 100644 --- a/docsrc/conf.py +++ b/docsrc/conf.py @@ -48,9 +48,9 @@ # built documents. # # The short X.Y version. -version = '0.26.1' +version = '1.0.0' # The full version, including alpha/beta/rc tags. -release = '0.26.1' +release = '1.0.0' # The language for content autogenerated by Sphinx. Refer to documentation # for a list of supported languages. diff --git a/luacheck-dev-1.rockspec b/luacheck-dev-1.rockspec index e653c2fd..5bf43437 100644 --- a/luacheck-dev-1.rockspec +++ b/luacheck-dev-1.rockspec @@ -9,7 +9,7 @@ package = package_name version = package_version .. "-" .. rockspec_revision source = { - url = "git+https://github.com/" .. github_account_name .. "/" .. github_repo_name .. ".git" + url = "git+https://github.com/" .. github_account_name .. "/" .. github_repo_name .. ".git" } if package_version == "dev" then source.branch = "master" else source.tag = "v" .. package_version end @@ -32,11 +32,11 @@ dependencies = { } test_dependencies = { - "busted", + "busted", } test = { - type = "busted", + type = "busted", } build = { diff --git a/rockspecs/luacheck-1.0.0-1.rockspec b/rockspecs/luacheck-1.0.0-1.rockspec new file mode 100644 index 00000000..4fbfb2c5 --- /dev/null +++ b/rockspecs/luacheck-1.0.0-1.rockspec @@ -0,0 +1,94 @@ +local package_name = "luacheck" +local package_version = "1.0.0" +local rockspec_revision = "1" +local github_account_name = "lunarmodules" +local github_repo_name = package_name + +package = package_name +version = package_version .. "-" .. rockspec_revision + +source = { + url = "git+https://github.com/" .. github_account_name .. "/" .. github_repo_name .. ".git" +} + +if package_version == "dev" then source.branch = "master" else source.tag = "v" .. package_version end + +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.playdate"] = "src/luacheck/builtin_standards/playdate.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 427255c4..41359b98 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.26.1" + _VERSION = "1.0.0" } local function raw_validate_options(fname, opts, stds, context)