Skip to content

🐛Malformed Depot Breaks All CLI Functionality #342

@meisZWFLZ

Description

@meisZWFLZ

Expected Behavior:

If I attempt to add a malformed depot, it shouldn't break other commands.

Actual Behavior:

The malformed template gets added to conductor.pros. This means that when you attempt to run any command, pros-cli will first attempt to parse conductor.pros, but since the template was malformed, so is conductor.pros, and thus jsonpickle throws an error.

error

Steps to reproduce:

With npm installed:
powershell:

mkdir depot;
'[{"py/object":"pros.conductor.templates.base_template.BaseTemplate","metadata":{},"name":""}]' | Out-File -FilePath ./depot/depot.json ascii;
Start-Process npx -ArgumentList "-y http-server depot -p 8080";
sleep 6;
pros c add-depot malformed http://127.0.0.1:8080/depot.json;
pros c query-templates --force-refresh some-text;
pros --version

not windows:

mkdir depot 
echo '[{"py/object":"pros.conductor.templates.base_template.BaseTemplate","metadata":{},"name":""}]' >./depot/depot.json 
npx -y http-server depot -p 8080 & 
sleep 6
pros c add-depot malformed http://127.0.0.1:8080/depot.json
pros c query-templates --force-refresh some-text
pros --version

This also happens attempting to apply any template.

If you want to fix your cli after running the above commands, remove the malformed depot from conductor.pros.

System information:

Operating System: Windows 11
pros-cli: 3.5.1

Metadata

Metadata

Assignees

Labels

bugSomething isn't workinggood first issueA good issue to start with when looking to make contributionsp: normalNormal priority

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions