Skip to Main Content
Customer Feedback

We love feedback from you on our products and the problems in your daily work that you would like us to solve. Please describe the challenge you're encountering and your desired outcome. Be as detailed as possible.

For technical issues or bugs please head to Support or our Developer Community. You can assign up to 20 votes in total. Thank you for your feedback.

Status explanation: 'Future Consideration' = Continuing to collect further feedback, not planned at this time. 'Investigating' = Prioritized for deeper customer and feasibility investigations ahead of planning development.

Status Planned
Categories Technical
Created by Guest
Created on Jun 1, 2023

Change build to error on case sensitivity issues instead of warning.

We recently ran into an issue when deploying to the Sandbox environment where the build errored out due to files having slightly different casing in the import path statement then the actual file system. We have been occasionally running into this problem every so often for as long as I can remember. This almost always happens when camel casing is used, but the first letter was left lowercase on the file. The builds just throw a warning in a Windows or Mac environment instead of erroring out, which sometimes causes us to miss this before the deploy to Sandbox.

It does not appear Webpack has a simple option to treat warnings as errors and stop the build. Would it be possible to add a plug in to the build that forces these to error out?

Here is a link to the plugin we had in mind.

  • Optimizely
    Sara Winter
    Reply
    |
    Jun 2, 2023

    Thank you for submitting this request! We have added this item to our roadmap. Although we cannot guarantee a release date, we expect this to be available within the next 12 months.

  • Guest
    Reply
    |
    Jun 1, 2023

    +1!

    We think this happens because our build environment is running on a Windows server, vs. the Opti build which runs inside of a linux environment in Docker. Linux enforces case sensitivity on file system paths, windows doesn't. So we see this only as a warning in our build (which is easy to miss) and then when it comes time to deploy to sandbox, it errors.

    This is the error we see on the spire build on Opti's build servers:

    #13 135.6 ERROR in ./modules/blueprints/keller/src/Overrides/Widgets/Addresses/AddressBook.tsx 40:0-81 #13 135.6 Module not found: Error: Can't resolve '@keller/overrides/Components/AddressInfoDisplay' in '/app/modules/blueprints/keller/src/Overrides/Widgets/Addresses' #13 135.6 resolve '@keller/overrides/Components/AddressInfoDisplay' in '/app/modules/blueprints/keller/src/Overrides/Widgets/Addresses' #13 135.6 Parsed request is a module #13 135.6 using description file: /app/modules/blueprints/keller/package.json (relative path: ./src/Overrides/Widgets/Addresses) #13 135.6 resolve as module #13 135.6 /app/modules/blueprints/keller/src/Overrides/Widgets/Addresses/node_modules doesn't exist or is not a directory #13 135.6 /app/modules/blueprints/keller/src/Overrides/Widgets/node_modules doesn't exist or is not a directory #13 135.6 /app/modules/blueprints/keller/src/Overrides/node_modules doesn't exist or is not a directory #13 135.6 /app/modules/blueprints/keller/src/node_modules doesn't exist or is not a directory #13 135.6 looking for modules in /app/modules/blueprints/keller/node_modules #13 135.6 /app/modules/blueprints/keller/node_modules/@keller/overrides doesn't exist #13 135.6 /app/modules/blueprints/node_modules doesn't exist or is not a directory #13 135.6 /app/modules/node_modules doesn't exist or is not a directory #13 135.6 looking for modules in /app/node_modules #13 135.6 /app/node_modules/@keller/overrides doesn't exist #13 135.6 /node_modules doesn't exist or is not a directory #13 135.6 @ ./modules/client-framework/src/Components/importChunk.tsx 35:15-36:105 #13 135.6 @ ./modules/client-framework/src/Components/AsyncComponent.tsx 3:0-74 13:23-34 #13 135.6 @ ./modules/client-framework/src/Components/ContentItemStore.ts #13 135.6 @ ./modules/client-framework/src/LoadComponents.ts 1:0-114 5:27-48 9:25-44 #13 135.6 @ ./modules/server-framework/Entry.ts 3:0-49

    And this is the warning we get on ours:

    WARNING in ./modules/blueprints/keller/src/Overrides/Components/AddressInfoDisplay.tsx 09:05:31 There are multiple modules with names that only differ in casing. 09:05:31 This can lead to unexpected behavior when compiling on a filesystem with other case-semantic.