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

fixed: xs-dev doctor shows the current environment of Moddable SDK #205

Merged
merged 7 commits into from
Jan 3, 2025

Conversation

kitazaki
Copy link
Contributor

@kitazaki kitazaki commented Jan 3, 2025

"xs-dev doctor" or "xs-dev info" displays the current environment setup information.
After setup of Moddable SDK, it works on Mac environment but doesn't work on Linux and Windows.

  • example on Mac
    % xs-dev doctor
    xs-dev environment info:
    CLI Version 0.36.2
    OS Darwin
    Arch arm64
    Shell /bin/zsh
    NodeJS Version v20.14.0 (/Users/kitazaki/.nodebrew/current/bin/node)
    Python Version 3.13.0 (/Users/kitazaki/.espressif/python_env/idf5.3_py3.13_env/bin/python)
    Moddable SDK Version 5.3.3 (/Users/kitazaki/.local/share/moddable)
    Supported target devices mac

  • example on Linux
    $ xs-dev doctor
    xs-dev environment info:
    CLI Version 0.36.2
    OS Linux
    Arch x64
    Shell /bin/bash
    NodeJS Version v22.12.0 (/home/ubuntu/.nodebrew/current/bin/node)
    Python Version 3.10.12 (/usr/bin/python)
    Moddable SDK Version Not found (/home/ubuntu/.local/share/moddable)
    Supported target devices None

This change fixes the issue.
platformDir is build/bin directory of Moddable SDK and defined in xs-dev/build/src/toolbox/setup/moddable.ts
platformDir reads DEVICE_ALIAS[OS] which is defined in xs-dev/src/toolbox/prompt/devices.ts
Exact directories are mac, lin and win, but definitions are mac, linux and windows.

Moddable SDK 5.3.3 is released without pre-built binaries.
"xs-dev setup" requires the prompt, but it doesn't work in spinner working. 
HipsterBrown#200

Reproduced on mac and linux.
This change fixes the prompt.
"xs-dev doctor" or "xs-dev info" displays the current environment setup information.
After setup of Moddable SDK, it works on Mac environment but doesn't work on Linux and Windows.

example on Mac
% xs-dev doctor
xs-dev environment info:
  CLI Version                0.36.2                                                                      
  OS                         Darwin                                                                      
  Arch                       arm64                                                                       
  Shell                      /bin/zsh                                                                    
  NodeJS Version             v20.14.0 (/Users/kitazaki/.nodebrew/current/bin/node)                       
  Python Version             3.13.0 (/Users/kitazaki/.espressif/python_env/idf5.3_py3.13_env/bin/python) 
  Moddable SDK Version       5.3.3 (/Users/kitazaki/.local/share/moddable)                               
  Supported target devices   mac

example on Linux
$ xs-dev doctor
xs-dev environment info:
  CLI Version                0.36.2                                             
  OS                         Linux                                              
  Arch                       x64                                                
  Shell                      /bin/bash                                          
  NodeJS Version             v22.12.0 (/home/ubuntu/.nodebrew/current/bin/node) 
  Python Version             3.10.12 (/usr/bin/python)                          
  Moddable SDK Version       Not found (/home/ubuntu/.local/share/moddable)     
  Supported target devices   None                                               

This change fixes the issue.
platformDir is build/bin directory of Moddable SDK and defined in xs-dev/build/src/toolbox/setup/moddable.ts
platformDir reads DEVICE_ALIAS[OS] which is defined in xs-dev/src/toolbox/prompt/devices.ts
Exact directories are mac, lin and win, but definitions are mac, linux and windows.
"xs-dev doctor" or "xs-dev info" displays the current environment setup information.
After setup of Moddable SDK, it works on Mac environment but doesn't work on Linux and Windows.

example on Mac
% xs-dev doctor
xs-dev environment info:
  CLI Version                0.36.2                                                                      
  OS                         Darwin                                                                      
  Arch                       arm64                                                                       
  Shell                      /bin/zsh                                                                    
  NodeJS Version             v20.14.0 (/Users/kitazaki/.nodebrew/current/bin/node)                       
  Python Version             3.13.0 (/Users/kitazaki/.espressif/python_env/idf5.3_py3.13_env/bin/python) 
  Moddable SDK Version       5.3.3 (/Users/kitazaki/.local/share/moddable)                               
  Supported target devices   mac

example on Linux
$ xs-dev doctor
xs-dev environment info:
  CLI Version                0.36.2                                             
  OS                         Linux                                              
  Arch                       x64                                                
  Shell                      /bin/bash                                          
  NodeJS Version             v22.12.0 (/home/ubuntu/.nodebrew/current/bin/node) 
  Python Version             3.10.12 (/usr/bin/python)                          
  Moddable SDK Version       Not found (/home/ubuntu/.local/share/moddable)     
  Supported target devices   None                                               

This change fixes the issue.
platformDir is build/bin directory of Moddable SDK and defined in xs-dev/build/src/toolbox/setup/moddable.ts
platformDir reads DEVICE_ALIAS[OS] which is defined in xs-dev/src/toolbox/prompt/devices.ts
Exact directories are mac, lin and win, but definitions are mac, linux and windows.
"xs-dev doctor" or "xs-dev info" displays the current environment setup information.
After setup of Moddable SDK, it works on Mac environment but doesn't work on Linux and Windows.

example on Mac
% xs-dev doctor
xs-dev environment info:
  CLI Version                0.36.2                                                                      
  OS                         Darwin                                                                      
  Arch                       arm64                                                                       
  Shell                      /bin/zsh                                                                    
  NodeJS Version             v20.14.0 (/Users/kitazaki/.nodebrew/current/bin/node)                       
  Python Version             3.13.0 (/Users/kitazaki/.espressif/python_env/idf5.3_py3.13_env/bin/python) 
  Moddable SDK Version       5.3.3 (/Users/kitazaki/.local/share/moddable)                               
  Supported target devices   mac

example on Linux
$ xs-dev doctor
xs-dev environment info:
  CLI Version                0.36.2                                             
  OS                         Linux                                              
  Arch                       x64                                                
  Shell                      /bin/bash                                          
  NodeJS Version             v22.12.0 (/home/ubuntu/.nodebrew/current/bin/node) 
  Python Version             3.10.12 (/usr/bin/python)                          
  Moddable SDK Version       Not found (/home/ubuntu/.local/share/moddable)     
  Supported target devices   None                                               

This change fixes the issue.
platformDir is build/bin directory of Moddable SDK and defined in xs-dev/build/src/toolbox/setup/moddable.ts
platformDir reads DEVICE_ALIAS[OS] which is defined in xs-dev/src/toolbox/prompt/devices.ts
Exact directories are mac, lin and win, but definitions are mac, linux and windows.
@@ -13,7 +13,7 @@ const finishedPromise = promisify(finished)

export function moddableExists(): boolean {
const OS = platformType().toLowerCase() as Device
const platformDir = DEVICE_ALIAS[OS]
const platformDir = DEVICE_ALIAS[OS].substr(0,3)
Copy link
Owner

Choose a reason for hiding this comment

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

Nice quick fix. 👍

@HipsterBrown HipsterBrown added the patch Increment the patch version when merged label Jan 3, 2025
@HipsterBrown HipsterBrown merged commit dd56f7b into HipsterBrown:main Jan 3, 2025
2 checks passed
Copy link
Contributor

github-actions bot commented Jan 3, 2025

🚀 PR was released in v0.36.3 🚀

@github-actions github-actions bot added the released This issue/pull request has been released. label Jan 3, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
patch Increment the patch version when merged released This issue/pull request has been released.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants