Rainbow
Rainbow copied to clipboard
Allow Exceeding Windows 250 character limit
Do you want to request a feature or report a bug?
Feature
What is the current behavior?
Will not work if SerializationFolderPathMaxLength+ 8 + MaxItemNameLengthBeforeTruncation > 250
Desired Behavior
Ability to set even longer lengths or not be artificially restricted and then display error message when exception is thrown due to path length being an issue and to enable long path length on our OS.
Option name ideas:
Rainbow.Sfs.DisablePathLengthChecks
or Rainbow.Sfs.AllowUnlimitedPathLength
Please mention your Sitecore version, Rainbow version, and if also using Unicorn, your version of that too.
9.0.2 and 2.01
We've had this feature debated a lot of times, and we continue to re-evaluate it every... 3-4 months or so. The problem is not just Rainbow, it's also the surrounding tooling. Enabling a setting such as this will make it so that you HAVE to deploy to Windows Server 2016 (AND have the same limitation disabled). Then there are concerns around the GIT for Windows client (last checked, it did not support the extended path length), Zip tools and so on.
We are getting to the point where it might be feasible to release this as an option. I plan to look into this in the early new year.
I think there are many shops still that run on Windows Server 2012. What do you use at your place @AdamHess ?
2012 and 2016. They both support long paths you just need to enable them either through group policy or registry key.
It would make more sense to allow developers to shoot themselves in the foot in the first place, just give them a warning when they do.
It wouldn't take much for this, just change this line here:
https://github.com/SitecoreUnicorn/Rainbow/blob/1645394f83bb5b006421b890da268fcc518e8c20/src/Rainbow/Storage/SerializationFileSystemTree.cs#L733
Alternatively you could make an easier way to override that
I'm not 100% if this would apply but AFAIK you can get windows tooling to exceed the path-length limit: https://stackoverflow.com/a/22575737/1296597
I'm in support of at least having the option to override this via a config switch or value so that there's a way forward for the increasing number of us that are on Windows Server 2016 or even 2012 with the registry/policy suggested above. Especially with a lot of our clients on Azure even lately.