We are developing on Windows but want to be able to run code on Linux as well. As we all know, Linux is case sensitive, so we have a problem if there are class/procedure file references (RUN, NEW etc.) with incorrect casing. I am looking for a way to trap those errors already in development. Any ideas? I don't have any experience with SonarQube yet; could it be used for handling this?
I think it would be easier to have every file name in lowercase, but I would not like to change our current class/procedure/namespace naming convention (camel case).
It would be great to have a "require-correct-case" option for the compiler...
You don't need a Linux VM anymore, with Windows 10 April release anyway. Just:
fsutil.exe file SetCaseSensitiveInfo C:\folder\path enable
And then Windows/NTFS behaves just like any Linux file system. And yes, you get those compile error in PDSOE, not at runtime on Linux.
I think a "require-correct-case" option for the compiler is a great suggestion.
I hope someone from Progress is watching this thread and pays attention. I have been bitten by scenarios where you want to use Camel Case, because it just makes more sense, and a programmer comes along and screws up the casing and Linux deployment blows up.
Well, assuming you are not one of those stubborn people who think Windows 7 is better than Windows 10:
www.windowscentral.com/how-enable-ntfs-treat-folders-case-sensitive-windows-10
or just Google for "ntfs case sensitive"
This option should also work for RUN VALUE(db.field) and analyse all data in database for correct case ;)
You don't need a Linux VM anymore, with Windows 10 April release anyway. Just:
fsutil.exe file SetCaseSensitiveInfo C:\folder\path enable
And then Windows/NTFS behaves just like any Linux file system. And yes, you get those compile error in PDSOE, not at runtime on Linux.
But, although this helps for the correct casing (classes, .p's, .i's etc) , you still could have issues with forward slashes.
The .net thing is easy to avoid if you want, by specifying -noclr
Thanks for all the answers and comments, they were very helpful and we will evaluate the different approaches. Setting case sensitivity in Win10 seems an interesting and easy solution, I had not thought of that.