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

Require cross-platform compatibility of sketch names in specification #2069

Closed
3 tasks done
per1234 opened this issue Feb 10, 2023 · 0 comments · Fixed by #2216
Closed
3 tasks done

Require cross-platform compatibility of sketch names in specification #2069

per1234 opened this issue Feb 10, 2023 · 0 comments · Fixed by #2216
Assignees
Labels
topic: documentation Related to documentation for the project type: enhancement Proposed improvement

Comments

@per1234
Copy link
Contributor

per1234 commented Feb 10, 2023

Describe the request

Tighten the sketch folder and file name requirements in the Arduino Sketch Specification to ensure compliant names are compatible with all operating systems.

🙂 Shared Arduino sketches will be usable by anyone, regardless of which supported operating system they use.

Describe the current behavior

The Arduino Sketch Specification includes requirements for the names of the sketch folder and code files:

https://arduino.github.io/arduino-cli/dev/sketch-specification/#sketch-folders-and-files

🙁 Names that are compliant with the current specification are incompatible with the Windows operating system:

Ending With .

https://learn.microsoft.com/en-us/windows/win32/fileio/naming-a-file#:~:text=Do%20not%20end%20a%20file%20or%20directory%20name%20with%20a%20space%20or%20a%20period

Do not end a file or directory name with a space or a period. Although the underlying file system may support such names, the Windows shell and user interface does not.

Reserved Names

https://learn.microsoft.com/en-ca/windows/win32/fileio/naming-a-file?redirectedfrom=MSDN#win32-file-namespaces:~:text=Do%20not%20use%20the%20following%20reserved%20names

Do not use the following reserved names for the name of a file:

CON, PRN, AUX, NUL, COM0, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT0, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, and LPT9. Also avoid these names followed immediately by an extension

Arduino CLI version

N/A

Operating system

N/A

Operating system version

N/A

Additional context

I did not find any instances of specification-compliant names that would be incompatible with Linux or macOS.


Example of problem caused by specification-compliant sketch name:

arduino/arduino-ide#1833 (review)

Additional requests

Issue checklist

  • I searched for previous requests in the issue tracker
  • I verified the feature was still missing when using the latest nightly build
  • My request contains all necessary details
@per1234 per1234 added type: enhancement Proposed improvement topic: documentation Related to documentation for the project labels Feb 10, 2023
@per1234 per1234 self-assigned this Feb 10, 2023
@cmaglie cmaglie added this to the Arduino CLI 1.0 milestone Jun 9, 2023
@MatteoPologruto MatteoPologruto linked a pull request Jun 14, 2023 that will close this issue
6 tasks
@per1234 per1234 removed their assignment Jun 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
topic: documentation Related to documentation for the project type: enhancement Proposed improvement
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants