App exits silently when unsupported `productName` is used for a platform while it works for another platform.
- Dominant language
- C++
- Stars
- 123k
- Forks
- 17.5k
- Avg merge
- 14h 22m
- Merged PRs (30d)
- 873
Description
### Preflight Checklist
- [x] I have read the [Contributing Guidelines](https://github.com/electron/electron/blob/main/CONTRIBUTING.md) for this project.
- [x] I agree to follow the [Code of Conduct](https://github.com/electron/electron/blob/main/CODE_OF_CONDUCT.md) that this project adheres to.
- [x] I have searched the [issue tracker](https://www.github.com/electron/electron/issues) for a feature request that matches the one I want to file, without success.
### Problem Description
When an unsupported `productName` is used in `package.json` for a platform, the app instead of warning or causing an error exits silently. The user unaware of the productname spends days to find out why the app state is not getting ready and window is not being created.
For eg. in my case I used the app name as `App Name | Organisation Name` . it worked perfectly on mac. but when i started testing it on windows the app state never turned to ready and so the browser window was not created. the windows doesn't support this list of reserved characters: <, >, :, ", /, `\`, |, ?, * . If a simple error had been shown the user will not have to spend days figuring this out since it worked on mac I never gave the thought there would be issue in package.json but kept on debugging other files.
### Proposed Solution
Please add support to check if the `productName` set in `package.json` is actually supported by the platform and if not warn or create an error so the user can correct it.
For eg: windows doesn't support the app name if it includes this list of reserved characters: <, >, :, ", /, `\`, |, ?, *
### Alternatives Considered
The proposed solution is straightforward and easy to implement.
### Additional Information
Let me know if I should go ahead, fix it and raise a PR. Thanks
Contributor guide
Assessment
This issue has not been assessed yet.