Skip to content

Use Typescript version of GLQL

What does this MR do and why?

Add Typescript version of GLQL

Add a TS version of GLQL behind glql_typescript feature flag to replace the Rust version eventually.

Sourcemaps of the original TypeScript code are included if you open Developer Tools and try to add breakpoints in GDK.

Here's a demo of debugging GLQL internals in devtools:

CleanShot 2025-08-22 at 16.09.33.mp4

References

#562607

Screenshots or screen recordings

No visible change, but a screenshot is included in the validation section.

How to set up and validate locally

Enable feature flag :glql_typescript and enter below GLQL queries:

```glql
display: table
fields: title, status, state, ASSIGNEES, labels("A*") as "A* labels", labels as "Remaining labels", epic, weight, milestone, iteration, dueDate, healthStatus, created, updated
title: All issues assigned to me
query: type = Issue and assignee = currentUser() and epic = &1
```

```glql
display: table
fields: title, state, assignees, labels("A*") as "A* labels", labels as "Remaining labels", epic, weight, milestone, iteration, dueDate, healthStatus, created, updated
title: All epics assigned to me
query: group = "gitlab-org" and type = Epic and assignee = currentUser()
```

```glql
display: table
fields: title, state, assignees, reviewer, labels("A*") as "A* labels", labels as "Remaining labels", milestone, created, updated
title: All MRs assigned to me
query: type = MergeRequest and assignee = currentUser()
```

Should produce an output like below:

CleanShot 2025-08-22 at 15.49.46@2x.png

MR acceptance checklist

Evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Edited by Himanshu Kapoor

Merge request reports

Loading