Relay LS and Relay Compiler error out
- Dominant language
- Rust
- Stars
- 19k
- Forks
- 1.9k
- PR merge metrics
- No merged PRs in 30d
Description
Firstly, I think I have greatly under estimated the amount of effort Relay team must have put in to unsure infra reliability @ FB. This is because I actually used to work at Facebook and working with Relay was an absolute delight.
### **PS: Could not find the OG #Thanksbot icon so using a Thanccbot instead!** 🙂

Now Im in the real world and trying to set this up from scratch. I am super bullish on Relay but I am hitting some snags!
# What
Trying to get Relay Compiler and Relay's VSCode plugin to work.
## Relay: Restart (via Command Palette)
Produces this output:
```
$ /home/coder/lwcode/fastglass/ui/node_modules/relay-compiler/linux-x64/relay --watch --output=verbose
pyenv shell 3.9.13
[INFO] querying files to compile...
[ERROR] Watchman error: The watchman server reported an error: "failed to parse query: must use ["suffix", "suffixstring"]", while executing command: QueryRequest(
"query",
"/home/coder/lwcode/fastglass/ui",
QueryRequestCommon {
glob: None,
glob_noescape: false,
glob_includedotfiles: false,
path: Some(
[
RecursivePath(
"",
),
],
),
suffix: None,
since: None,
relative_root: None,
expression: Some(
All(
[
FileType(
Regular,
),
Any(
[
All(
[
All(
[
Suffix(
[
"js",
"jsx",
"ts",
"tsx",
],
),
DirName(
DirNameTerm {
path: "src",
depth: None,
},
),
],
),
Not(
Any(
[
Match(
MatchTerm {
glob: "**/node_modules/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
Match(
MatchTerm {
glob: "**/__mocks__/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
Match(
MatchTerm {
glob: "**/__generated__/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
],
),
),
],
),
Name(
NameTerm {
paths: [
"dummy.graphql",
],
wholename: true,
},
),
],
),
],
),
),
fields: [
"name",
"exists",
],
empty_on_fresh_instance: false,
omit_changed_files: false,
fail_if_no_saved_state: false,
case_sensitive: false,
sync_timeout: Default,
settle_period: None,
settle_timeout: None,
dedup_results: false,
lock_timeout: None,
request_id: None,
always_include_directories: false,
},
)
[ERROR] Compilation failed.
[ERROR] Unable to run relay compiler. Error details:
Watchman { source: WatchmanServerError { message: "failed to parse query: must use [\"suffix\", \"suffixstring\"]", command: "QueryRequest(\n \"query\",\n \"/home/coder/lwcode/fastglass/ui\",\n QueryRequestCommon {\n glob: None,\n glob_noescape: false,\n glob_includedotfiles: false,\n path: Some(\n [\n RecursivePath(\n \"\",\n ),\n ],\n ),\n suffix: None,\n since: None,\n relative_root: None,\n expression: Some(\n All(\n [\n FileType(\n Regular,\n ),\n Any(\n [\n All(\n [\n All(\n [\n Suffix(\n [\n \"js\",\n \"jsx\",\n \"ts\",\n \"tsx\",\n ],\n ),\n DirName(\n DirNameTerm {\n path: \"src\",\n depth: None,\n },\n ),\n ],\n ),\n Not(\n Any(\n [\n Match(\n MatchTerm {\n glob: \"**/node_modules/**\",\n wholename: true,\n include_dot_files: false,\n no_escape: false,\n },\n ),\n Match(\n MatchTerm {\n glob: \"**/__mocks__/**\",\n wholename: true,\n include_dot_files: false,\n no_escape: false,\n },\n ),\n Match(\n MatchTerm {\n glob: \"**/__generated__/**\",\n wholename: true,\n include_dot_files: false,\n no_escape: false,\n },\n ),\n ],\n ),\n ),\n ],\n ),\n Name(\n NameTerm {\n paths: [\n \"dummy.graphql\",\n ],\n wholename: true,\n },\n ),\n ],\n ),\n ],\n ),\n ),\n fields: [\n \"name\",\n \"exists\",\n ],\n empty_on_fresh_instance: false,\n omit_changed_files: false,\n fail_if_no_saved_state: false,\n case_sensitive: false,\n sync_timeout: Default,\n settle_period: None,\n settle_timeout: None,\n dedup_results: false,\n lock_timeout: None,\n request_id: None,\n always_include_directories: false,\n },\n)" } }
coder@ameys-workspace:~/lwcode/fastglass/ui$ pyenv shell 3.9.13
pyenv: shell integration not enabled. Run `pyenv init' for instructions.
```
## Running Relay Compiler (via Command Line)
```
coder@ameys-workspace:~/lwcode/fastglass/ui$ npm run relay
> ui@0.1.0 relay
> relay-compiler
[INFO] querying files to compile...
[ERROR] Watchman error: The watchman server reported an error: "failed to parse query: must use ["suffix", "suffixstring"]", while executing command: QueryRequest(
"query",
"/home/coder/lwcode/fastglass/ui",
QueryRequestCommon {
glob: None,
glob_noescape: false,
glob_includedotfiles: false,
path: Some(
[
RecursivePath(
"",
),
],
),
suffix: None,
since: None,
relative_root: None,
expression: Some(
All(
[
FileType(
Regular,
),
Any(
[
All(
[
All(
[
Suffix(
[
"js",
"jsx",
"ts",
"tsx",
],
),
DirName(
DirNameTerm {
path: "src",
depth: None,
},
),
],
),
Not(
Any(
[
Match(
MatchTerm {
glob: "**/node_modules/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
Match(
MatchTerm {
glob: "**/__mocks__/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
Match(
MatchTerm {
glob: "**/__generated__/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
],
),
),
],
),
Name(
NameTerm {
paths: [
"dummy.graphql",
],
wholename: true,
},
),
],
),
],
),
),
fields: [
"name",
"exists",
],
empty_on_fresh_instance: false,
omit_changed_files: false,
fail_if_no_saved_state: false,
case_sensitive: false,
sync_timeout: Default,
settle_period: None,
settle_timeout: None,
dedup_results: false,
lock_timeout: None,
request_id: None,
always_include_directories: false,
},
)
[ERROR] Compilation failed.
[ERROR] Unable to run relay compiler. Error details:
Watchman error: The watchman server reported an error: "failed to parse query: must use ["suffix", "suffixstring"]", while executing command: QueryRequest(
"query",
"/home/coder/lwcode/fastglass/ui",
QueryRequestCommon {
glob: None,
glob_noescape: false,
glob_includedotfiles: false,
path: Some(
[
RecursivePath(
"",
),
],
),
suffix: None,
since: None,
relative_root: None,
expression: Some(
All(
[
FileType(
Regular,
),
Any(
[
All(
[
All(
[
Suffix(
[
"js",
"jsx",
"ts",
"tsx",
],
),
DirName(
DirNameTerm {
path: "src",
depth: None,
},
),
],
),
Not(
Any(
[
Match(
MatchTerm {
glob: "**/node_modules/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
Match(
MatchTerm {
glob: "**/__mocks__/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
Match(
MatchTerm {
glob: "**/__generated__/**",
wholename: true,
include_dot_files: false,
no_escape: false,
},
),
],
),
),
],
),
Name(
NameTerm {
paths: [
"dummy.graphql",
],
wholename: true,
},
),
],
),
],
),
),
fields: [
"name",
"exists",
],
empty_on_fresh_instance: false,
omit_changed_files: false,
fail_if_no_saved_state: false,
case_sensitive: false,
sync_timeout: Default,
settle_period: None,
settle_timeout: None,
dedup_results: false,
lock_timeout: None,
request_id: None,
always_include_directories: false,
},
)
```
**Autocompletes and other editor integration features have not worked either.**
# System Details
### Watchman Version
Installed via `apt-get`.
```
$ watchman --version
4.9.0
```
### Ubuntu Version
```
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 22.04.2 LTS
Release: 22.04
Codename: jammy
```
### `package.json`
```
"relay-runtime": "15.0.0",
...
..
"babel-plugin-relay": "15.0.0",
"relay-compiler": "^15.0.0",
```
Contributor guide
Assessment
This issue has not been assessed yet.