Extensions don't work on Mac with Case sensitive system disk
-
Turns out that many scripts refer to other file (either with 'open' or 'require' using camelCase capitalization patterns. However scripts are usually distributed using all lower case.
On a case insensitive file system, parametricGrid.rb ParametricGrid.rb PARAMETRICGRID.RB are all the same.
On a case sensitive file system these are 3 different files.
The bug doesn't bite many people, because not many of us reinstall from bare metal. However, if you are a web developer it will help you catch some things before they bite, and for file intensive applications, it gives a marginal performance boost. (Noticeable for web servers)
Suggested fixes
- Internally within sketchup, fix the case in the calling scripts and the installer so that the package provided works.
- Make the existence of this bug more widely known.
- Add a ruby script to the distribution that checks all the file calls in the plugins folders, and corrects them as needed.
- Log errors like this to reduce the time to track this down.
I've also posted this on the Google forums and have made a bug report.
-
@sgbotsford said:
Suggested fixes
- Internally within sketchup, fix the case in the calling scripts and the installer so that the package provided works.
- Make the existence of this bug more widely known.
- Add a ruby script to the distribution that checks all the file calls in the plugins folders, and corrects them as needed.
- Log errors like this to reduce the time to track this down.
- don't make your startup disk case-sensitive.
-
A fix that requires a full reinstall of my operating system is a bit draconian. But, yeah, I suppose I asked for that.
I come from a unix background and generally prefer case sensitive file systems. Historically they are slightly faster (You didn't have to strip off the lower case bit for each character.) but with today's cpu's that's probably not measureable. Certainly as a web writer, I have to be aware of case all the time since the bulk of web servers run Apache on Linux.
Advertisement