Skip to content

Please review the exit code of the lib list -b command #955

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

Closed
kittaakos opened this issue Sep 17, 2020 · 2 comments · Fixed by #978
Closed

Please review the exit code of the lib list -b command #955

kittaakos opened this issue Sep 17, 2020 · 2 comments · Fixed by #978

Comments

@kittaakos
Copy link
Contributor

Bug Report

This is a minor thing, maybe not even an issue but the expected behavior. When I run lib list -b command without any libraries and any cores installed, I always get a 0 exit code. However, when I have at least one user library installed, but still no cores, I always get a non-zero, 1 exit code. This feels inconsistent.

Current behavior

% rm -rf ~/Library/Arduino15 && rm -rf ~/Documents/Arduino/libraries
% ./arduino-cli version
arduino-cli Version: 0.13.0 Commit: 693a045
% ./arduino-cli core update-index
Downloading missing tool builtin:[email protected]...
builtin:[email protected] downloaded                                                                                                                          
Installing builtin:[email protected]...
builtin:[email protected] installed
Downloading missing tool builtin:[email protected]...
builtin:[email protected] downloaded                                                                                                                       
Installing builtin:[email protected]...
builtin:[email protected] installed
Updating index: library_index.json downloaded                                                                                                                   
Updating index: package_index.json downloaded                                                                                                                   
Updating index: package_index.json.sig downloaded                                                                                                               
Updating index: package_index.json downloaded                                                                                                                   
Updating index: package_index.json.sig downloaded                                                                                                               
% ./arduino-cli core list        
% ./arduino-cli lib list -b arduino:samd:mkr1000                    
No libraries installed.
% echo $?                                                           
0
% ./arduino-cli lib install "AllThingsTalk LoRaWAN SDK"             
AllThingsTalk LoRaWAN SDK depends on AllThingsTalk LoRaWAN [email protected]
Downloading AllThingsTalk LoRaWAN [email protected]...
AllThingsTalk LoRaWAN [email protected] downloaded                                                                                                                      
Installing AllThingsTalk LoRaWAN [email protected]...
Installed AllThingsTalk LoRaWAN [email protected]
% ./arduino-cli lib list -b arduino:samd:mkr1000       
Error listing Libraries: loading board data: platform arduino:samd is not installed
% echo $?                                              
1
% 

Expected behavior

I would expect to have 1 exit code with a similar error message (platform x:y is not installed) when no user libraries and no cores are installed.

Environment

  • CLI version (output of arduino-cli version): arduino-cli Version: 0.13.0 Commit: 693a045
  • OS and platform: macOS Catalina (10.15.6 (19G2021))

Additional context

If this is the expected behavior, please close the issue with a remark. Thank you!

@ubidefeo
Copy link

ubidefeo commented Sep 17, 2020

I believe the issue lies in the sequence by which errors are handled.
An empty list of libraries returns before entering the filter phase.
Maybe in this case we should first address the filter and handle its presence

@ubidefeo
Copy link

found one more bug on the lib list -b FQBN:
libraries which are not compatible with the core are listed.
to replicate:

  • install Arduboy
  • arduino-cli lib list -b arduino:samd:mkrwifi1010

the library arduiboyTones is only compatible with AVR, but is still listed

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 a pull request may close this issue.

2 participants