From cdbb85c692579819607989bc08d4eb7dbfacd70e Mon Sep 17 00:00:00 2001 From: takunomi-build-bot Date: Thu, 17 Apr 2025 16:36:19 +0200 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=96=20Repository=20layout=20updated=20?= =?UTF-8?q?to=20latest=20version?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit This commit was automatically generated by [a script](https://gitfub.space/Jmaa/repo-manager) --- .gitea/workflows/lua-library.yml | 29 ++++++++++++-- .gitignore | 21 +++++++++- .luacheckrc | 4 ++ LICENSE | 21 ++++++++++ README.md | 68 +++++++++++++++++--------------- init.lua | 7 +++- 6 files changed, 111 insertions(+), 39 deletions(-) create mode 100644 LICENSE diff --git a/.gitea/workflows/lua-library.yml b/.gitea/workflows/lua-library.yml index ae19cc0..363ae97 100644 --- a/.gitea/workflows/lua-library.yml +++ b/.gitea/workflows/lua-library.yml @@ -1,8 +1,29 @@ +# WARNING! +# THIS IS AN AUTOGENERATED FILE! +# MANUAL CHANGES CAN AND WILL BE OVERWRITTEN! + name: LÖVE/Lua Library -on: [push] + +on: + push: + paths-ignore: ['README.md', '.gitignore', 'LICENSE', 'CONVENTIONS.md'] jobs: - Test: - uses: jmaa/workflows/.gitea/workflows/lua-testing.yaml@v6.21 + Lua-Testing: + runs-on: ubuntu-latest + steps: + - name: Install Lua + run: | + apt-get update + apt-get install -y luajit + - name: Check out repository code + uses: actions/checkout@v3 + - name: Run testing library + run: luajit test/init.lua Static-Analysis: - uses: jmaa/workflows/.gitea/workflows/lua-static-analysis.yaml@v6.21 + runs-on: ubuntu-latest + steps: + - name: Check out repository code + uses: actions/checkout@v3 + - name: Luacheck linter + uses: https://github.com/lunarmodules/luacheck@v1.1.1 diff --git a/.gitignore b/.gitignore index 2f0cada..451354e 100755 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,19 @@ -# Ignore editor files -.*.swp +# WARNING! +# THIS IS AN AUTOGENERATED FILE! +# MANUAL CHANGES CAN AND WILL BE OVERWRITTEN! + +# Löve: Exclude build items +/bin/ +/lib/ +.love-cache/ + +# Compiled Lua sources +luac.out + +# Misc (Image, MacOS, Backups) files +*.psd +*~ +.DS_Store + +# Tools +*.tiled-session diff --git a/.luacheckrc b/.luacheckrc index 277f930..6149112 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -1,3 +1,7 @@ +-- WARNING! +-- THIS IS AN AUTOGENERATED FILE! +-- MANUAL CHANGES CAN AND WILL BE OVERWRITTEN! + std = "love+max" cache = true include_files = {"**.lua", "*.luacheckrc"} diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..378984c --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2017-2025 Jon Michael Aanes + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index f6e9661..ab998d0 100644 --- a/README.md +++ b/README.md @@ -1,46 +1,50 @@ + + + + # Assert Gooder -_Lua_ library implementing an alternative version of Lua's `assert` function, -giving much better error messages, when asserts fails. It does this by analysing -the body of the assert, and figuring out what the failing assert call is -attempting to test against. +Supercharged assert replacement. -## Example +Lua Library that replaces the default [assert](https://www.lua.org/manual/5.4/manual.html#pdf-assert) function with one that can + emit improved error messages. The improved assert function parses the + assert condition, inspects the state of the program and emits an improved + error message. -```lua -function f (a) - assert(type(a) == 'string') -end +- Author: Jon Michael Aanes (jonjmaa@gmail.com) -f(42) -``` +## Dependencies -Without `assert-gooder`, the above code would fail with the error message -`assertion failed!`. With `assert-gooder`, it will fail with this error message: -`assertion failed! bad argument #1 'a' to 'f' (string expected, but got number: 42)`, +This project requires [PUC Lua 5.1](https://www.tecgraf.puc-rio.br/lua/mirror/versions.html#5.1) or [LuaJIT](https://luajit.org/luajit.html). Newer versions of PUC Lua are not supported. -## Motivation +This project does not have any library requirements 😎 -Assertions are useful to ensure internal consistency, when you're writing code -in a hurry, but in Lua (and most other languages), these assert constructs never -produce useful error messages, but rather unhelpful `assert failed!` errors and -a stack trace. +## Contributing -By making it a runtime library, instead of a "compile-time" rewrite, we gain -flexibility. It's much easier to import a library, than restructuring then -compile pipeline. It also means that we have access to runtime values, allowing -even more helpful messages. - -## Setup - -Download, and use `assert = require "assert-gooder"` to overwrite Lua's default -assert with `assert-gooder`. +Feel free to submit pull requests. Please follow the [Code Conventions](CONVENTIONS.md) when doing so. ## License ``` -"THE BEER-WARE LICENSE" (Revision 42): - wrote this library. As long as you retain this notice you -can do whatever you want with this stuff. If we meet some day, and you think -this stuff is worth it, you can buy me a beer in return. +MIT License + +Copyright (c) 2017-2025 Jon Michael Aanes + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. ``` diff --git a/init.lua b/init.lua index 3ba52f8..523457a 100644 --- a/init.lua +++ b/init.lua @@ -1 +1,6 @@ -return assert(require((... and select('1', ...):match('.+')..'.' or '')..'assert-gooder'), '[assert-gooder]: Could not load vital library: assert-gooder') +-- WARNING! +-- THIS IS AN AUTOGENERATED FILE! +-- MANUAL CHANGES CAN AND WILL BE OVERWRITTEN! + +-- This file automatically redirects to "assert-gooder.lua" +return require (((...) ~= 'init' and (...) .. '.' or '') .. 'assert-gooder')