newproxy() without an argument reports a missing parameter

オープン 初心者向け
#1,249 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る

メンテナーはふだん 1 日以内に返信

まだ誰も着手していません。

評価

難易度
2/5
見積もり時間
1〜3時間
初心者へのやさしさ
76/100
issue の種類
バグ
明瞭さ
明確に書かれている
活発さ
活発
技術スタック
lua, rust
領域
devtools

調査の方向性

LuaJIT ランタイム設定で、newproxy.lua、.emmyrc.json、および emmylua_check --config .emmyrc.json newproxy.lua を使って報告を再現してください。アナライザーが newproxy([proxy]) をどのように記述し、パラメーター不足の診断をどのように処理するかを調べ、そのうえで、必須引数のチェックを維持したまま newproxy() が警告なしで完了することを確認してください。

索引モデルが issue の本文から書いたものです。

説明

Imagine a file newproxy.lua with the following Lua chunk:

local p = newproxy()
print(p)

and the following config .emmyrc.json for the emmylua_check: { "runtime": { "version": "LuaJIT" } }.

Run the command: emmylua_check --config .emmyrc.json newproxy.lua
The command reports:

---  [1 warning]
warning: expected 1 parameters but found 0. missing parameter: proxy [missing-parameter]
  -->: :1:20

  1 │ local p = newproxy()
  2 │ print(p)



Summary
  1 warning

Check completed with warnings
Check finished

It is expected no diagnostics.

It seems in LuaJIT newproxy([proxy]) the argument is optional; newproxy() creates a userdata without a metatable.

Version: emmylua_check 0.24.0

LuaJIT behaviour:

$ luajit proxy.lua 
userdata: 0x7b77a67c90a8
$ luajit -v
LuaJIT 2.1.1703358377 -- Copyright (C) 2005-2023 Mike Pall. https://luajit.org/
主要言語
Rust
スター
530
フォーク
111
平均マージ
2日 6時間
マージ済み PR(30日)
32

環境構築

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

EmmyLuaLs/emmylua-analyzer-rust のほかの issue

EmmyLuaLs/emmylua-analyzer-rust の issue をすべて見る

似ている issue

Rust の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。