vala-language-server icon indicating copy to clipboard operation
vala-language-server copied to clipboard

Error while compiling vls from source. Invalid regular expression.

Open RocketRide9 opened this issue 3 years ago • 1 comments

Describe the bug Error while trying to compile vls from source

Software OS and version: Ubuntu 22.10 Vala version (valac --version): Vala 0.56.2

Steps to reproduce the behavior:

  1. Clone vls repo
  2. apt install meson valac libjsonrpc-glib-1.0-dev libvala-0.56-dev libgee-0.8-dev scdoc build-essential
  3. meson -Dprefix=/usr build
  4. ninja -C build
  5. See error
ninja -C build output
~/git/vala-language-server$ ninja -C build
ninja: Entering directory `build'
[2/43] Compiling Vala source ../src/analysis/codeanalyzer.vala ../src/analysis/codelensanalyz...eporter.vala ../src/request.vala ../src/server.vala config.vala ../src/util.vala version.vala
FAILED: src/vala-language-server.p/analysis/codeanalyzer.c src/vala-language-server.p/analysis/codelensanalyzer.c src/vala-language-server.p/analysis/codestyleanalyzer.c src/vala-language-server.p/analysis/inlayhintnodes.c src/vala-language-server.p/analysis/symbolenumerator.c src/vala-language-server.p/codeaction/baseconverteraction.c src/vala-language-server.p/codeaction/implementmissingprereqsaction.c src/vala-language-server.p/codehelp/callhierarchy.c src/vala-language-server.p/codehelp/codeaction.c src/vala-language-server.p/codehelp/codehelp.c src/vala-language-server.p/codehelp/codelensengine.c src/vala-language-server.p/codehelp/completionengine.c src/vala-language-server.p/codehelp/find_scope.c src/vala-language-server.p/codehelp/formatter.c src/vala-language-server.p/codehelp/nodesearch.c src/vala-language-server.p/codehelp/signaturehelpengine.c src/vala-language-server.p/codehelp/symbolextractor.c src/vala-language-server.p/codehelp/symbolreferences.c src/vala-language-server.p/codehelp/symbolvisitor.c src/vala-language-server.p/codehelp/typehierarchy.c src/vala-language-server.p/documentation/cnamemapper.c src/vala-language-server.p/documentation/doccomment.c src/vala-language-server.p/documentation/girdocumentation.c src/vala-language-server.p/projects/buildtarget.c src/vala-language-server.p/projects/buildtask.c src/vala-language-server.p/projects/ccproject.c src/vala-language-server.p/projects/compilation.c src/vala-language-server.p/projects/defaultproject.c src/vala-language-server.p/projects/filecache.c src/vala-language-server.p/projects/mesonproject.c src/vala-language-server.p/projects/project.c src/vala-language-server.p/projects/textdocument.c src/vala-language-server.p/projects/types.c src/vala-language-server.p/protocol.c src/vala-language-server.p/reporter.c src/vala-language-server.p/request.c src/vala-language-server.p/server.c src/vala-language-server.p/config.c src/vala-language-server.p/util.c src/vala-language-server.p/version.c 
valac -C --debug --debug --define=WITH_JSONRPC_GLIB_3_30 --target-glib=auto --enable-gobject-tracing --fatal-warnings --pkg gio-unix-2.0 --pkg posix --pkg libvala-0.56 --pkg jsonrpc-glib-1.0 --pkg json-glib-1.0 --pkg gee-0.8 --pkg gio-2.0 --pkg gobject-2.0 --pkg glib-2.0 --color=always --directory src/vala-language-server.p --basedir ../src ../src/analysis/codeanalyzer.vala ../src/analysis/codelensanalyzer.vala ../src/analysis/codestyleanalyzer.vala ../src/analysis/inlayhintnodes.vala ../src/analysis/symbolenumerator.vala ../src/codeaction/baseconverteraction.vala ../src/codeaction/implementmissingprereqsaction.vala ../src/codehelp/callhierarchy.vala ../src/codehelp/codeaction.vala ../src/codehelp/codehelp.vala ../src/codehelp/codelensengine.vala ../src/codehelp/completionengine.vala ../src/codehelp/find_scope.vala ../src/codehelp/formatter.vala ../src/codehelp/nodesearch.vala ../src/codehelp/signaturehelpengine.vala ../src/codehelp/symbolextractor.vala ../src/codehelp/symbolreferences.vala ../src/codehelp/symbolvisitor.vala ../src/codehelp/typehierarchy.vala ../src/documentation/cnamemapper.vala ../src/documentation/doccomment.vala ../src/documentation/girdocumentation.vala ../src/projects/buildtarget.vala ../src/projects/buildtask.vala ../src/projects/ccproject.vala ../src/projects/compilation.vala ../src/projects/defaultproject.vala ../src/projects/filecache.vala ../src/projects/mesonproject.vala ../src/projects/project.vala ../src/projects/textdocument.vala ../src/projects/types.vala ../src/protocol.vala ../src/reporter.vala ../src/request.vala ../src/server.vala config.vala ../src/util.vala version.vala
../src/documentation/girdocumentation.vala:359.29-359.57: error: Invalid regular expression `//!\[(.*?)\]\(([~:\/\\\w-.]+)\)'.
359 |             comment_data = /!\[(.*?)\]\(([~:\/\\\w-.]+)\)/
    |                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
../src/documentation/girdocumentation.vala:389.25-389.47: error: Invalid regular expression `//\[(.*?)\]\[([\w-\s]+)\]'.
389 |         comment_data = /\[(.*?)\]\[([\w-\s]+)\]/
    |                         ^~~~~~~~~~~~~~~~~~~~~~~ 
../src/documentation/doccomment.vala:132.17-132.59: error: Invalid regular expression `//(\[\[|{{)([~:\/\\\w-.]+)(\|(.*?))?(\]\]|}})'.
132 |         body = /(\[\[|{{)([~:\/\\\w-.]+)(\|(.*?))?(\]\]|}})/
    |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 
Compilation failed: 3 error(s), 0 warning(s)

RocketRide9 avatar Aug 30 '22 18:08 RocketRide9

Maybe related: https://gitlab.gnome.org/GNOME/glib/-/merge_requests/2529

JCWasmx86 avatar Aug 31 '22 18:08 JCWasmx86

I had issues building since Glib 2.74. Had issues with segfaults with that GLib version due to regex incompatibilities and deprecations.

ErikReider avatar Sep 22 '22 20:09 ErikReider

The error message is very strange - notice how it's got two slashes at the start and none at the end.

error: Invalid regular expression `//(\[\[|{{)([~:\/\\\w-.]+)(\|(.*?))?(\]\]|}})'.
                                   ^^                                           ^

It still seems to parse what I think is a matching regex that's not done as a RegEx literal, though:

new GLib.Regex("""!\[(.*?)\]\(([~:\/\\\w-.]+)\)""")

IBBoard avatar Sep 23 '22 19:09 IBBoard

Just made a quick PR in case anyone wants to hack in a custom patch to (hopefully) get it working until the real source is found.

Unfortunately, Vala throws away any useful information when it captures the exception and prints that message.

IBBoard avatar Sep 23 '22 20:09 IBBoard

This is due to not escaping the - character in the regex used for parsing links in comments.

Prince781 avatar Sep 24 '22 22:09 Prince781

Hello @Prince781, can you please make a new release? This issue breaks the building on Arch Linux (valac 0.56.3).

SilverRainZ avatar Dec 27 '22 10:12 SilverRainZ

@SilverRainZ please try version 0.48.7 in the AUR

benwaffle avatar Feb 24 '23 06:02 benwaffle