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

Generated file names can conflict on a case-insensitive file system #870

Open
krame505 opened this issue Jan 2, 2025 · 0 comments
Open
Assignees
Labels
bug rename Issues for things being renamed. These are annoying because they make other people's branches break.

Comments

@krame505
Copy link
Member

krame505 commented Jan 2, 2025

On a system such as MacOS with case-insensitive file names, we can end up with multiple generated files in the same folder with names that conflict - e.g. productions foobar and fooBar would create files Pfoobar.java and PfooBar.java, which are the same path on MacOS.

The proper fix for this is probably just to change how we encode generated file names to escape uppercase chars, e.g. the above would become Pfoobar.java and Pfoo_Bar.java instead. For nonterminals, we can probably assume that they start with an uppercase letter (I think the syntax enforces this?) and avoid always escaping the first character. This will be a somewhat annoying change to make, as many references to generated classes in the runtime will need to be updated. However this may be possible to automate using some clever regexes.

A workaround for now is to create a seperate partition with a case-sensitive filesystem for Silver development.

@krame505 krame505 added the bug label Jan 2, 2025
@github-project-automation github-project-automation bot moved this to To do - uncategorized in Hackathon Jan 2, 2025
@krame505 krame505 added the rename Issues for things being renamed. These are annoying because they make other people's branches break. label Jan 2, 2025
@krame505 krame505 moved this from To do - uncategorized to To do - larger projects in Hackathon Jan 3, 2025
@krame505 krame505 moved this from To do - larger projects to To do - uncategorized in Hackathon Jan 3, 2025
@krame505 krame505 moved this from To do to In progress in Hackathon Jan 9, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug rename Issues for things being renamed. These are annoying because they make other people's branches break.
Projects
Status: In progress
Development

No branches or pull requests

2 participants