tttapa / Control-Surface

Arduino library for creating MIDI controllers and other MIDI devices.
GNU General Public License v3.0
1.27k stars 140 forks source link

Arduino Lint Error #1095

Open gwilherm opened 1 week ago

gwilherm commented 1 week ago

Hello, This is not really a feature request but it is also not a bug report, I would love to see Control-Surface available in the official arduino library registry. This allows to include the library directly with the arduino IDE, and in projects using sketch project file that make projects more distributable

For this, there are some rules and the library must pass the linter with no error. https://github.com/arduino/library-registry/blob/main/FAQ.md#submission-requirements

Arduino has created a command line tool to check libraries for compliance with all the Library Manager requirements: https://github.com/arduino/arduino-lint

The tool detects one error on the library (see the logs below)

I admit that the error is questionable (https://github.com/arduino/arduino-cli/issues/990, https://github.com/arduino/arduino-lint/issues/588) for the test directory. The solution proposed is to move the test directory into a folder named extras. I understand this is kinda intrusive to change the repository architecture like this, but this would be really nice to find your library in the registry.

WARNING: library.properties name Control Surface contains spaces. Although supported, best practices is to not use      
         spaces.                                                                                                        
         See: https://arduino.github.io/arduino-cli/latest/library-specification/#libraryproperties-file-format         
         (Rule LP015)                                                                                                   
ERROR: Sketch(es) found outside examples and extras folders:                                               
         Control-Surface/examples.old/medium-old/Audio/OLED-Demo-Audio                                     
         Control-Surface/examples.old/medium-old/Audio/VUMeterLEDs-USB-DAC                                 
         Control-Surface/examples.old/medium-old/Audio/VUMeterOLED-USB-DAC                                 
         Control-Surface/examples.old/medium-old/Display/OLED-Demo                                         
         Control-Surface/examples.old/medium-old/Display/VU-Bridge                                         
         Control-Surface/examples.old/medium-old/Display/VU-Bridge-Dual-Display                            
         Control-Surface/examples.old/medium-old/ESP32/VU-Bridge-ESP32                                     
         Control-Surface/examples.old/medium-old/ExtendedInputOutput/Ex.1.Shift-Register-LED-Effects       
         Control-Surface/examples.old/medium-old/ExtendedInputOutput/Multiplexer-AnalogReadSerial          
         Control-Surface/examples.old/medium-old/ExtendedInputOutput/PushButtonsToggleLEDsShiftRegMultiplex
         Control-Surface/examples.old/medium-old/ExtendedInputOutput/SPIShiftRegisterBlink                 
         Control-Surface/examples.old/medium-old/ExtendedInputOutput/ShiftRegisterBlink                    
         Control-Surface/examples.old/medium-old/Getting-Started                                           
         Control-Surface/examples.old/medium-old/MIDIInput/LED                                             
         Control-Surface/examples.old/medium-old/MIDIInput/MCU_VULEDs-ShiftRegister                        
         Control-Surface/examples.old/medium-old/MIDIOutput/Control-Change/CCIncrementDecrementButtons     
         Control-Surface/examples.old/medium-old/MIDIOutput/Control-Change/CCPotentiometer                 
         Control-Surface/examples.old/medium-old/MIDIOutput/Control-Change/CCPotentiometer-Map             
         Control-Surface/examples.old/medium-old/MIDIOutput/Control-Change/CCRotaryEncoder                 
         Control-Surface/examples.old/medium-old/MIDIOutput/Enable-disable                                 
         Control-Surface/examples.old/medium-old/MIDIOutput/Notes/NoteButtonMatrixKeyboard                 
         Control-Surface/examples.old/medium-old/MIDIOutput/Notes/NoteChordButton                          
         Control-Surface/examples.old/medium-old/MIDIOutput/Notes/PushButtons                              
         Control-Surface/examples.old/medium-old/MIDIOutput/Notes/PushButtonsLEDs                          
         Control-Surface/examples.old/medium-old/MIDIOutput/Notes/PushButtonsLEDsNoMIDIFeedback            
         Control-Surface/examples.old/medium-old/MIDIOutput/Notes/PushButtonsLEDsShiftRegMultiplex         
         Control-Surface/examples.old/medium-old/MIDI_Interfaces/Bluetooth-BLE-MIDI-CCPotentiometer        
         Control-Surface/examples.old/medium-old/MIDI_Interfaces/Bluetooth-BLE-MIDI-NoteButton             
         Control-Surface/examples.old/medium-old/MIDI_Interfaces/Bluetooth-BLE-MIDI-NoteButton_Input       
         Control-Surface/examples.old/medium-old/Other/MIDI_Callback                                       
         Control-Surface/examples.old/medium-old/ProgramChange/ProgramChanger                              
         Control-Surface/examples.old/medium-old/Transpose/EncoderSelector-Transpose                       
         Control-Surface/examples.old/medium-old/Transpose/EncoderSelectorLEDs-Transpose                   
         Control-Surface/examples.old/medium-old/Transpose/EncoderSelectorLEDs-Transpose-Generate-Array    
         Control-Surface/examples.old/medium-old/Transpose/Transpose                                       
         Control-Surface/test/Construction/ErrorCheckAllMIDIOutputs                                        
         Control-Surface/test/tools/sketches/midi-echo                                                     
         Control-Surface/test/tools/sketches/midi-receive                                                  
         Control-Surface/test/tools/sketches/midi-send                                                     
       See: https://arduino.github.io/arduino-cli/latest/library-specification/#library-examples           
       (Rule LD003)                                                                                        

Linter results for project: 1 ERRORS, 1 WARNINGS

Regards, Gwilherm