Skip to content

Conversation

@CytoShahar
Copy link

Description

Add Positron Desktop IDE module based on VS Code Desktop module

Type of Change

  • New module
  • New template
  • Bug fix
  • Feature/enhancement
  • Documentation
  • Other

Module Information

Path: registry/cytoshahar/modules/positron
New version: v1.0.0
Breaking change: [ ] Yes [X] No

Testing & Validation

  • Tests pass (bun test)
  • Code formatted (bun fmt)
  • Changes tested locally

Related Issues

None

Copilot finished reviewing on behalf of matifali November 12, 2025 08:36
Copy link
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds a new Positron Desktop IDE module based on the VS Code Desktop module. Positron is a next-generation data science IDE built on VS Code. The module provides a one-click button to launch Positron Desktop from Coder workspaces.

Key Changes

  • New Terraform module for Positron Desktop integration with Coder
  • Test suite covering various configuration scenarios
  • Documentation with usage examples

Reviewed Changes

Copilot reviewed 4 out of 6 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
registry/cytoshahar/modules/positron/main.tf Terraform configuration defining the Positron Desktop app resource with URL construction logic
registry/cytoshahar/modules/positron/main.test.ts Test suite covering default behavior, folder configuration, and open_recent flag combinations
registry/cytoshahar/modules/positron/README.md Module documentation with usage examples and configuration details
registry/cytoshahar/README.md Registry author profile metadata
registry/cytoshahar/.images/avatar.jpeg Author avatar image
.icons/positron.svg Positron application icon

@DevelopmentCats
Copy link
Contributor

@CytoShahar

Make sure you run bun fmt and run the tests on this module so the CI will pass.

@DevelopmentCats
Copy link
Contributor

@CytoShahar

This is the output of the tests being run:

registry/cytoshahar/modules/positron/main.test.ts:
  ╷
  │ Error: Terraform encountered problems during initialisation, including problems
  │ with the configuration, described below.
  │ 
  │ The Terraform configuration must be valid before initialization so that
  │ Terraform can determine which modules and providers need to be installed.
  │ 
  │ 
  ╵
  ╷
  │ Error: Invalid multi-line string
  │ 
  │   on main.tf line 51, in resource "coder_app" "positron":
  │   51:   icon         = "local.icon_url
  │   52:   slug         = "positron"
  │ 
  │ Quoted strings may not be split over multiple lines. To produce a
  │ multi-line string, either use the \n escape to represent a newline
  │ character or use the "heredoc" multi-line template syntax.
  ╵
  ╷
  │ Error: Unterminated template string
  │ 
  │   on main.tf line 51, in resource "coder_app" "positron":
  │   51:   icon         = "local.icon_url
  │   52:   slug         = "positron"
  │ 
  │ No closing marker was found for the string.
  ╵
  ╷
  │ Error: Invalid multi-line string
  │ 
  │   on main.tf line 52, in resource "coder_app" "positron":
  │   52:   slug         = "positron"
  │   53:   display_name = "Positron Desktop"
  │ 
  │ Quoted strings may not be split over multiple lines. To produce a
  │ multi-line string, either use the \n escape to represent a newline
  │ character or use the "heredoc" multi-line template syntax.
  ╵
  ╷
  │ Error: Invalid multi-line string
  │ 
  │   on main.tf line 53, in resource "coder_app" "positron":
  │   53:   display_name = "Positron Desktop"
  │   54:   order        = var.order
  │ 
  │ Quoted strings may not be split over multiple lines. To produce a
  │ multi-line string, either use the \n escape to represent a newline
  │ character or use the "heredoc" multi-line template syntax.
  ╵
  ╷
  │ Error: Invalid multi-line string
  │ 
  │   on main.tf line 54, in resource "coder_app" "positron":
  │   54:   order        = var.order
  │   55:   group        = var.group
  │ 
  │ Quoted strings may not be split over multiple lines. To produce a
  │ multi-line string, either use the \n escape to represent a newline
  │ character or use the "heredoc" multi-line template syntax.
  ╵
  ╷
  │ Error: Invalid multi-line string
  │ 
  │   on main.tf line 55, in resource "coder_app" "positron":
  │   55:   group        = var.group
  │   56:   url = join("", [
  │ 
  │ Quoted strings may not be split over multiple lines. To produce a
  │ multi-line string, either use the \n escape to represent a newline
  │ character or use the "heredoc" multi-line template syntax.
  ╵
  ╷
  │ Error: Invalid multi-line string
  │ 
  │   on main.tf line 57, in resource "coder_app" "positron":
  │   57:   url = join("", [
  │   58:     "positron://coder.coder-remote/open",
  │ 
  │ Quoted strings may not be split over multiple lines. To produce a
  │ multi-line string, either use the \n escape to represent a newline
  │ character or use the "heredoc" multi-line template syntax.
  ╵
  
  # Unhandled error between tests
  -------------------------------
  
  Error: 
        at <anonymous> (/home/runner/work/registry/registry/test/test.ts:283:15)
        at async <anonymous> (/home/runner/work/registry/registry/registry/cytoshahar/modules/positron/main.test.ts:9:9)
  278 |     cwd: dir,
  279 |   });
  280 |   const text = await readableStreamToText(proc.stdout);
  281 |   const exitCode = await proc.exited;
  282 |   if (exitCode !== 0) {
  283 |     throw new Error(text);
                      ^
  error: Initializing the backend...
  
        at <anonymous> (/home/runner/work/registry/registry/test/test.ts:283:15)
        at async <anonymous> (/home/runner/work/registry/registry/registry/cytoshahar/modules/positron/main.test.ts:9:9)
  -------------------------------
  
  

 0 pass
 0 fail
 1 error
Ran 0 tests across 1 file. [138.00ms]
error: script "tstest" exited with code 1
Error: Process completed with exit code 1.

@DevelopmentCats
Copy link
Contributor

This works fine as expected. Ill go ahead and add it to site/static/icons

@CytoShahar
Copy link
Author

Hey @phorcys420 @DevelopmentCats ,
Is there anything else missing from this PR?

@DevelopmentCats
Copy link
Contributor

Hey @phorcys420 @DevelopmentCats , Is there anything else missing from this PR?

Sorry I was still waiting on the icon to be merged for coder/coder but I just merged it and we are good

@DevelopmentCats
Copy link
Contributor

I removed the extra image that I had mentioned before so now Ill need an approval from someone else but we are good to go here

@matifali matifali enabled auto-merge (squash) November 20, 2025 10:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants