Skip to content

Add check_library_structure function #23

@per1234

Description

@per1234
  • Valid library folder name.
    • According to the Arduino IDE: "Library names must contain only basic letters and numbers. (ASCII only and no spaces, and it cannot start with a number)"
      • This is referring to the folder name, not the "fancy name" from library.properties.
      • Starting with a number is not allowed with Arduino IDE 1.8.3 and older (OK with 1.8.4 and newer).
      • I've verified that no spaces are allowed.
    • There is also a limitation of 63 characters max.
      • Exceeding this limit blocks the "Add .ZIP Library" installation method.
      • If manually installed, there are also warnings displayed on IDE startup, Library/Boards Manager open/close.
  • Header file or library.properties in library root folder (the library path is passed to the function).
    • Recognized header file extensions: .h, .hh. .hpp
      • Only that specific extension case is recognized, even on Windows.
  • If no header files in root folder, then headers under src folder.
    • (verified) Incorrect case of src folder name causes 1.5 format libraries to not be recognized on filename case-sensitive OS like Linux.
  • If in 1.5 format, then no utility folder in root.
  • All sketch files under either examples or extras folder.
    • Recognized sketch extensions are .ino, .pde
      • Only that specific extension case is recognized on case-sensitive OS like Linux.
    • Just ignore the extras folder, as the specification states it should be.
  • Run check_sketch_structure on all sketch files.

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions