Rainbow icon indicating copy to clipboard operation
Rainbow copied to clipboard

Allow Exceeding Windows 250 character limit

Open AdamHess opened this issue 6 years ago • 4 comments

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

AdamHess avatar Dec 12 '18 19:12 AdamHess

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 ?

cassidydotdk avatar Dec 12 '18 20:12 cassidydotdk

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

AdamHess avatar Dec 12 '18 20:12 AdamHess

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

AdamHess avatar Dec 12 '18 21:12 AdamHess

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.

dmealo avatar Feb 07 '19 17:02 dmealo