Umbraco version 15 seems to omit the language prefix for the default language in the route path. It did not do this in V14. This also seems to apply only to items contained in properties and only for default language (en-US in this case).
Notice below the first route.path includes the language prefix. The properties.topLevelMenuItems[].content.properties.secondLevelLinks[].route.path does not include the language prefix. If the language was not en-US, it would be included.
Is there a setting or means to assure that the language prefix is always included? I would definitely prefer to change this in a configuration rather than need to change the content delivery consumer to check if the language prefix is included.
I believe the above issue was likely caused by a some exception during the upgrade process. I created a bug for this on github (https://github.com/umbraco/Umbraco-CMS/issues/17941)
In the process of trying to identify the source cause, I created clean installations of umbraco version 14.3.1 and 15.1.1. I was able to run the upgrade and not reproduce the issue.
As part of the debugging process, I was saving and publishing items as well as changing container document vary by culture settings. The problem started going away on its own to the point of it not being reproducible.
So if you encounter this issue, my suggestion would be to start with a clean installation of umbraco, re-run the upgrade with the clean installation and see if you encounter any of the above issues. Then use your full upgraded code solution against the upgraded database.
V15 Content Delivery API Omitting Language Prefix
Umbraco version 15 seems to omit the language prefix for the default language in the route path. It did not do this in V14. This also seems to apply only to items contained in properties and only for default language (en-US in this case).
Notice below the first route.path includes the language prefix. The properties.topLevelMenuItems[].content.properties.secondLevelLinks[].route.path does not include the language prefix. If the language was not en-US, it would be included.
Is there a setting or means to assure that the language prefix is always included? I would definitely prefer to change this in a configuration rather than need to change the content delivery consumer to check if the language prefix is included.
I believe the above issue was likely caused by a some exception during the upgrade process. I created a bug for this on github (https://github.com/umbraco/Umbraco-CMS/issues/17941)
In the process of trying to identify the source cause, I created clean installations of umbraco version 14.3.1 and 15.1.1. I was able to run the upgrade and not reproduce the issue.
As part of the debugging process, I was saving and publishing items as well as changing container document vary by culture settings. The problem started going away on its own to the point of it not being reproducible.
So if you encounter this issue, my suggestion would be to start with a clean installation of umbraco, re-run the upgrade with the clean installation and see if you encounter any of the above issues. Then use your full upgraded code solution against the upgraded database.
is working on a reply...