Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

🐛 Create Project fails for V5 with "Unterminated string in JSON at position 8182" #222

Open
arrowsmith001 opened this issue May 17, 2024 · 5 comments
Assignees
Labels
bug Something isn't working Likely-CLI For when an issue in vsc is likely caused by an underlying cli issue p:normal Normal Priority

Comments

@arrowsmith001
Copy link

Bug Description

User cannot create a new PROS V5 project through the PROS VS Code extension. This seems to happen on Mac OS, but not Windows.

Platform

MacBook Pro running Sonoma 14.2.1

Steps to reproduce

  1. Install the PROS extension for VS Code
  2. Install PROS CLI and Toolchain through the extension
  3. Through the extension menu: PROS -> Conductor -> Create Project
  4. Select a valid destination folder
  5. Enter a valid project name
  6. Select v5
  7. "Fetching kernel versions..." will pop up
  8. Then, "Command completed successfully!" followed by the error, as shown
Screenshot 2024-05-17 at 22 08 08

At this point the PROS extension commands seem unresponsive.

@Jackman3323 Jackman3323 self-assigned this May 18, 2024
@Jackman3323
Copy link
Contributor

@arrowsmith001 what version of pros kernel were you attempting to use? Or did you never get to choose?

@Lunar-Eclipse255
Copy link

Lunar-Eclipse255 commented May 18, 2024

@Jackman3323 I am having the same exact issue, and error, when creating a project it doesn't ask for a kernel version like it has in previous versions, but I am on kernel version 4.0.5. This is the full error message I get in PROS output in terminal: Uc&42BWAaQ{"type": "log/message", "level": "INFO", "message": "INFO -
pros.cli.common:callback - Debugging messages enabled - pros-cli
version:3.5.1", "simpleMessage": "Debugging messages enabled"}
Uc&42BWAaQ{"text": "Not sending analytics for this command.\n\n",
"type": "notify/echo", "notify_value": 0}
Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG

  • pros:callback - CLI Version: 3.5.1 - pros-cli version:3.5.1",
    "simpleMessage": "CLI Version: 3.5.1"}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • pros.cli.common:callback - None@None (v5, BaseTemplate) - pros-cli
    version:3.5.1", "simpleMessage": "None@None (v5, BaseTemplate)"}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • pros.config.config:init - Opening
    /Users/gagrehansavona/Library/Application Support/PROS/conductor.pros
    (Conductor) - pros-cli version:3.5.1", "simpleMessage": "Opening
    /Users/gagrehansavona/Library/Application Support/PROS/conductor.pros
    (Conductor)"}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • pros.config.config:init - Opening
    /Users/gagrehansavona/Library/Application Support/PROS/cli.pros
    (CliConfig) - pros-cli version:3.5.1", "simpleMessage": "Opening
    /Users/gagrehansavona/Library/Application Support/PROS/cli.pros
    (CliConfig)"}
    Uc&42BWAaQ{"type": "log/message", "level": "INFO", "message": "INFO -
    pros.conductor.depots.depot:get_remote_templates - Last check of
    LemLib was 2024-05-17 21:29:01.300209 (0:02:14.642745 vs 0:01:00). -
    pros-cli version:3.5.1", "simpleMessage": "Last check of LemLib was
    2024-05-17 21:29:01.300209 (0:02:14.642745 vs 0:01:00)."}
    Uc&42BWAaQ{"text": "Updating LemLib... ", "type": "notify/echo",
    "notify_value": 1}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • urllib3.connectionpool:_new_conn - Starting new HTTPS connection
    (1): raw.githubusercontent.com:443 - pros-cli version:3.5.1",
    "simpleMessage": "Starting new HTTPS connection (1):
    raw.githubusercontent.com:443"}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • urllib3.connectionpool:_make_request -
    https://raw.githubusercontent.com:443 "GET
    /LemLib/LemLib/depot/stable.json HTTP/1.1" 200 393 - pros-cli
    version:3.5.1", "simpleMessage":
    "https://raw.githubusercontent.com:443 "GET
    /LemLib/LemLib/depot/stable.json HTTP/1.1" 200 393"}
    Uc&42BWAaQ{"text": "Done\n", "type": "notify/echo", "notify_value": 1}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • pros.config.config:init - Opening
    /Users/gagrehansavona/Library/Application Support/PROS/cli.pros
    (CliConfig) - pros-cli version:3.5.1", "simpleMessage": "Opening
    /Users/gagrehansavona/Library/Application Support/PROS/cli.pros
    (CliConfig)"}
    Uc&42BWAaQ{"type": "log/message", "level": "INFO", "message": "INFO -
    pros.conductor.depots.depot:get_remote_templates - Last check of
    pros-mainline was 2024-05-17 21:29:01.683101 (0:02:14.581676 vs
    0:01:00). - pros-cli version:3.5.1", "simpleMessage": "Last check of
    pros-mainline was 2024-05-17 21:29:01.683101 (0:02:14.581676 vs
    0:01:00)."}
    Uc&42BWAaQ{"text": "Updating pros-mainline... ", "type":
    "notify/echo", "notify_value": 2}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • urllib3.connectionpool:_new_conn - Starting new HTTPS connection
    (1): pros.cs.purdue.edu:443 - pros-cli version:3.5.1",
    "simpleMessage": "Starting new HTTPS connection (1):
    pros.cs.purdue.edu:443"}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • urllib3.connectionpool:_make_request -
    https://pros.cs.purdue.edu:443 "GET
    /v5/_static/releases/pros-mainline.json HTTP/1.1" 200 20297 -
    pros-cli version:3.5.1", "simpleMessage":
    "https://pros.cs.purdue.edu:443 "GET
    /v5/_static/releases/pros-mainline.json HTTP/1.1" 200 20297"}
    Uc&42BWAaQ{"text": "Done\n", "type": "notify/echo", "notify_value": 2}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • pros.conductor.conductor:resolve_templates - Saving Conductor config
    after checking for remote updates - pros-cli version:3.5.1",
    "simpleMessage": "Saving Conductor config after checking for remote
    updates"}
    Uc&42BWAaQ{"type": "log/message", "level": "DEBUG", "message": "DEBUG
  • pros.config.config:save - Saved
    /Users/gagrehansavona/Library/Application Support/PROS/conductor.pros
  • pros-cli version:3.5.1", "simpleMessage": "Saved
    /Users/gagrehansavona/Library/Application
    Support/PROS/conductor.pros"}
    Uc&42BWAaQ{"type": "finalize", "method": "template-query", "data":
    [{"name": "sylib", "version": "1.0.0", "location": "local", "target":
    "v5", "local": true}, {"name": "okapilib", "version": "4.8.0",
    "location": "pros-mainline", "target": "v5", "local": true}, {"name":
    "okapilib", "version": "4.7.0", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "okapilib", "version": "4.6.0",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "okapilib", "version": "4.5.0", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "okapilib", "version": "4.4.1",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "okapilib", "version": "4.4.0", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "okapilib", "version": "4.3.0",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "okapilib", "version": "4.2.0", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "okapilib", "version": "4.1.0",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "okapilib", "version": "4.0.5", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "okapilib", "version": "4.0.4",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "okapilib", "version": "4.0.3", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "okapilib", "version": "4.0.2",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "okapilib", "version": "4.0.1", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "okapilib", "version": "4.0.0",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.8.3", "location": "pros-mainline", "target":
    "v5", "local": true}, {"name": "kernel", "version": "3.8.2",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.8.0", "location": "pros-mainline", "target":
    "v5", "local": true}, {"name": "kernel", "version": "3.7.3",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.7.2", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "kernel", "version": "3.7.1",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.7.0", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "kernel", "version": "3.6.2",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.6.0", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "kernel", "version": "3.5.4",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.5.3", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "kernel", "version": "3.5.2",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.5.1", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "kernel", "version": "3.5.0",
    "location": "pros-mainline", "target": "v5", "local": false}, {"name":
    "kernel", "version": "3.4.0", "location": "pros-mainline", "target":
    "v5", "local": false}, {"name": "gif-pros", "version": "3.0.0",
    "location": "local", "target": "v5", "local": true}, {"name":
    "gif-pros", "version": "2.1.1", "location": "local", "target": "v5",
    "local": true}, {"name": "VOSS", "version": "0.1.1", "location":
    "local", "target": "v5", "local": true}, {"name": "LemLib", "version":
    "0.5.0", "location": "LemLib", "target": "v5", "local": true},
    {"name": "LemLib", "version": "0.4.9", "location": "LemLib", "target":
    "v5", "local": false}, {"name": "LemLib", "version": "0.4.8",
    "location": "LemLib", "target": "v5", "local": false}, {"name":
    "LemLib", "version": "0.4.7", "location": "LemLib", "target": "v5",
    "local": false}, {"name": "LemLib", "version": "0.4.6", "location":
    "LemLib", "target": "v5", "local": false}, {"name": "LemLib",
    "version": "0.4.5", "location": "LemLib", "target": "v5", "local":
    false}, {"name": "LemLib", "version": "0.4.4", "location": "LemLib",
    "target": "v5", "local": false}, {"name": "LemLib", "version":
    "0.4.3", "location": "LemLib", "target": "v5", "local": false},
    {"name": "LemLib", "version": "0.4.2", "location": "LemLib", "target":
    "v5", "local": false}, {"name": "LemLib", "version": "0.4.1",
    "location": "LemLib", "target": "v5", "local": false}, {"name":
    "LemLib", "version": "0.4.0", "location": "LemLib", "target": "v5",
    "local": false}, {"name": "LemLib", "version": "0.3.3", "location":
    "LemLib", "target": "v5", "local": false}, {"name": "LemLib",
    "version": "0.3.2", "location": "LemLib", "target": "v5", "local":
    false}, {"name": "LemLib", "version": "0.3.1", "location": "LemLib",
    "target": "v5", "local": false}, {"name": "LemLib", "version":
    "0.3.0", "location": "LemLib", "target": "v5", "local": false},
    {"name": "ARMS", "version": "3.2.0", "location": "local", "target":
    "v5", "local": true}], "human": "{'name': 'sylib', 'version': '1.0.0',
    'location': 'local', 'target': 'v5', 'local': True}\n{'name':
    'okapilib', 'version': '4.8.0', 'location': 'pros-mainline', 'target':
    'v5', 'local': True}\n{'name': 'okapilib', 'version': '4.7.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'okapilib', 'version': '4.6.0', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'okapilib', 'version': '4.5.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'okapilib', 'version': '4.4.1', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'okapilib', 'version': '4.4.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'okapilib', 'version': '4.3.0', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'okapilib', 'version': '4.2.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'okapilib', 'version': '4.1.0', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'okapilib', 'version': '4.0.5',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'okapilib', 'version': '4.0.4', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'okapilib', 'version': '4.0.3',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'okapilib', 'version': '4.0.2', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'okapilib', 'version': '4.0.1',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'okapilib', 'version': '4.0.0', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.8.3',
    'location': 'pros-mainline', 'target': 'v5', 'local': True}\n{'name':
    'kernel', 'version': '3.8.2', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.8.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': True}\n{'name':
    'kernel', 'version': '3.7.3', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.7.2',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'kernel', 'version': '3.7.1', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.7.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'kernel', 'version': '3.6.2', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.6.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'kernel', 'version': '3.5.4', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.5.3',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'kernel', 'version': '3.5.2', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.5.1',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'kernel', 'version': '3.5.0', 'location': 'pros-mainline', 'target':
    'v5', 'local': False}\n{'name': 'kernel', 'version': '3.4.0',
    'location': 'pros-mainline', 'target': 'v5', 'local': False}\n{'name':
    'gif-pros', 'version': '3.0.0',
    'location': 'local', 'target': 'v5', 'local': True}\n{'name':
    'gif-pros', 'version': '2.1.1', 'location': 'local', 'target': 'v5',
    'local': True}\n{'name': 'VOSS', 'version': '0.1.1', 'location':
    'local', 'target': 'v5', 'local': True}\n{'name': 'LemLib', 'version':
    '0.5.0', 'location': 'LemLib', 'target': 'v5', 'local':
    True}\n{'name': 'LemLib', 'version': '0.4.9', 'location': 'LemLib',
    'target': 'v5', 'local': False}\n{'name': 'LemLib', 'version':
    '0.4.8', 'location': 'LemLib', 'target': 'v5', 'local':
    False}\n{'name': 'LemLib', 'version': '0.4.7', 'location': 'LemLib',
    'target': 'v5', 'local': False}\n{'name': 'LemLib', 'version':
    '0.4.6', 'location': 'LemLib', 'target': 'v5', 'local':
    False}\n{'name': 'LemLib', 'version': '0.4.5', 'location': 'LemLib',
    'target': 'v5', 'local': False}\n{'name': 'LemLib', 'version':
    '0.4.4', 'location': 'LemLib', 'target': 'v5', 'local':
    False}\n{'name': 'LemLib', 'version': '0.4.3', 'location': 'LemLib',
    'target': 'v5', 'local': False}\n{'name': 'LemLib', 'version':
    '0.4.2', 'location': 'LemLib', 'target': 'v5', 'local':
    False}\n{'name': 'LemLib', 'version': '0.4.1', 'location': 'LemLib',
    'target': 'v5', 'local': False}\n{'name': 'LemLib', 'version':
    '0.4.0', 'location': 'LemLib', 'target': 'v5', 'local':
    False}\n{'name': 'LemLib', 'version': '0.3.3', 'location': 'LemLib',
    'target': 'v5', 'local': False}\n{'name': 'LemLib', 'version':
    '0.3.2', 'location': 'LemLib', 'target': 'v5', 'local':
    False}\n{'name': 'LemLib', 'version': '0.3.1', 'location': 'LemLib',
    'target': 'v5', 'local': False}\n{'name': 'LemLib', 'version':
    '0.3.0', 'location': 'LemLib', 'target': 'v5', 'local':
    False}\n{'name': 'ARMS', 'version': '3.2.0', 'location': 'local',
    'target': 'v5', 'local': True}"}

@arrowsmith001
Copy link
Author

@arrowsmith001 what version of pros kernel were you attempting to use? Or did you never get to choose?

Same as @Lunar-Eclipse255, I didn't get as far as choosing the PROS kernel version. It seems to fail while fetching them.

@arrowsmith001 arrowsmith001 changed the title 🐛Create Project fails for V5 with "Unterminated string in JSON at position 8182" 🐛 Create Project fails for V5 with "Unterminated string in JSON at position 8182" May 19, 2024
@Jackman3323
Copy link
Contributor

@arrowsmith001, @Lunar-Eclipse255: Just an update for y'all while we look into how the pros conductor file is breaking in this way, running pros c reset should get you up and running again. It will reset your locally cached templates/depots to the default so things like lemlib will need to be re-fetched. The reset command will be added as a button in the next update (see #224). Please let us know here if this doesn't fix project creation.

@arrowsmith001
Copy link
Author

arrowsmith001 commented May 21, 2024

@Jackman3323 The reset command does indeed fix the issue.

From this, I found that the act of adding a depot via the CLI is what causes this bug. After adding a depot with pros c add-depot etc, the error comes back, until I perform the reset again. In my case it was LemLib latest stable: https://raw.githubusercontent.com/LemLib/LemLib/depot/stable.json.

With this in mind I tried to recreate it on Windows and can confirm its only happening on my MacBook.

I'm not sure at this point if this is an issue with LemLib, the CLI depot functionality or the extension.

@BennyBot BennyBot added bug Something isn't working p:normal Normal Priority Likely-CLI For when an issue in vsc is likely caused by an underlying cli issue labels Aug 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working Likely-CLI For when an issue in vsc is likely caused by an underlying cli issue p:normal Normal Priority
Projects
None yet
Development

No branches or pull requests

4 participants