Multiline entry fields (text are) are pretty rare in my app, and mostly filled with a single line anyway, so it is quite possible that the problem was hidden for a long time.
I will perform a git bisect to deploy previous states. As this is a bit quite some work due to data migration, I'd be super happy if I get a hint what could be possible going on.
jugmac00 via Plone Community wrote at 2020-11-24 14:36 +0000:
...
Any hint for me? Is this a browser thing? OS? Zope? ....
It is the browser ("firefox 83" in my case) which transform
the \n into `\r\n'.
How I found out?
I always have a show_request object which allows me to get
the request details.
For the verification, I defined a DTML Methodtextarea:
I used the "firefox" network analysis to see what happens
for the request "...textarea?v=a%0Ab"
and when I submit the form. This showed that "firefox" posted
"a\r\nb". I verify with wget that Zope has delivered a\nb.
Looks like there is an HTML specification for that, and when I read it correctly, a line break in a text area has to be \r\n.
As line breaks were stored as \n until I switched from Zope 2 to Zope 4, there had to be some conversion going on in Zope 2, which was removed back then.