LuaLS / LuaLS/lua-language-server

Mingw64 on MSYS2

Open
#3,240 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Lua
Stars
4.4k
Forks
442
PR merge metrics
No merged PRs in 30d

Description

How are you using the lua-language-server?

Other

Which OS are you using?

Windows

What is the issue affecting?

Other

Expected Behaviour

$ make.sh
should detect mingw64

Actual Behaviour

.it detects platform windows

Reproduction steps
  1. Go to '...'
  2. Click '...'
  3. See error '...'
Additional Notes

No response

Log File

/c/software/lua-server/lua-language-server/3rd/luamake /c/software/lua-server/lua-language-server
ninja: no work to do.
/c/software/lua-server/lua-language-server
Plataforma detectada: windows
[0/2] Run test: 3rd/bee.lua/test/test.lua.OS: mingw64 10.0.19045
Arch: x86_64
Compiler: GCC 14.2.0
CRT: libstdc++ 20240801
DEBUG: false
............F...........F......FF...F......F...............................
.............................F..
Failed tests:

  1. filesystem.test_absolute_relative
    3rd/bee.lua/test/test_filesystem.lua:121: expected: true, actual: false
    stack traceback:
    3rd/bee.lua/test/test_filesystem.lua:121: in local 'assertIsAbsolute'
    3rd/bee.lua/test/test_filesystem.lua:128: in upvalue 'filesystem.test_absolute_relative'

  2. filesystem.test_exists
    3rd/bee.lua/test/test_filesystem.lua:321: expected: false, actual: true
    stack traceback:
    3rd/bee.lua/test/test_filesystem.lua:321: in local 'is_exists'
    3rd/bee.lua/test/test_filesystem.lua:331: in upvalue 'filesystem.test_exists'

  3. filesystem.test_rename
    rename: "temp1", "temp2": (generic:13)Permission denied
    stack traceback:
    3rd/bee.lua/test/test_filesystem.lua:474: in local 'rename_ok'
    3rd/bee.lua/test/test_filesystem.lua:504: in upvalue 'filesystem.test_rename'

  4. filesystem.test_current_path
    3rd/bee.lua/test/test_filesystem.lua:516: expected: userdata:/tmp/test_bee, actual: <userdata:C:/m
    sys64/tmp/test_bee>
    stack traceback:
    3rd/bee.lua/test/test_filesystem.lua:516: in upvalue 'filesystem.test_current_path'

  5. filesystem.test_copy_dir
    copy: "temp", "temp1": (generic:17)File exists
    stack traceback:
    3rd/bee.lua/test/test_filesystem.lua:697: in upvalue 'filesystem.test_copy_dir'

  6. filesystem.test_symlink
    create_symlink: "temp.txt", "temp.link": (generic:40)Function not implemented
    stack traceback:
    3rd/bee.lua/test/test_filesystem.lua:831: in local 'test_create'
    3rd/bee.lua/test/test_filesystem.lua:858: in upvalue 'filesystem.test_symlink'

  7. filewatch.test_symlink
    create_symlink: "C:/msys64/tmp/test_bee/temp/test1", "C:/msys64/tmp/test_bee/temp/test1": (generic:4
    0)Function not implemented
    stack traceback:
    3rd/bee.lua/test/test_filewatch.lua:89: in upvalue 'filewatch.test_symlink'

Ran 107 tests in 1.373 seconds, 100 successes, 7 failures

FAILED: build/_/bee-test
build/bin/lua-language-server.exe 3rd/bee.lua/test/test.lua
ninja: build stopped: subcommand failed.

In file code_format.lua just modified --victor line to avoid using utf-8 flag

local lm = require 'luamake'

lm.c = lm.compiler == 'msvc' and 'c89' or 'c11'
lm.cxx = 'c++17'

lm:source_set 'code_format' {
    rootdir = '../3rd/EmmyLuaCodeStyle',
    includes = {
        "Util/include",
        "CodeFormatCore/include",
        "LuaParser/include",
        "../bee.lua/3rd/lua",
        "3rd/wildcards/include"
    },
    sources = {
        -- codeFormatLib
        "CodeFormatLib/src/*.cpp",
        -- LuaParser
        "LuaParser/src/**/*.cpp",
        -- Util
        "Util/src/StringUtil.cpp",
        "Util/src/Utf8.cpp",
        "Util/src/SymSpell/*.cpp",
        "Util/src/InfoTree/*.cpp",
        --CodeService
        "CodeFormatCore/src/**/*.cpp",
    },
    windows = {
        --flags = "/utf-8", --victor
    },
    macos = {
        flags = "-Wall -Werror",
    },
    linux = {
        flags = "-Wall -Werror"
    }
}

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with make.sh and its platform-detection path for the MSYS2 Mingw64 environment. Reproduce the build and inspect the failures listed in 3rd/bee.lua/test/test_filesystem.lua and test_filewatch.lua, especially the path, rename, copy, and symlink cases. Done means Mingw64 is detected correctly and the affected test behavior is resolved or clearly accounted for.

Written by the indexing model from the issue text.

Assessment

Tech stack
lua, shell
Domain
build-system, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.