[Mono-dev] Behavior change in XmlWriterSettings/XmlTextWriter

Atsushi Eno atsushieno at veritas-vos-liberabit.com
Tue Sep 29 15:23:27 UTC 2015


And that brings incompatiblity with .NET Core. That makes things just 
worse. You cannot force other people to change their sanity just to 
match your existing code that premises the wrong behavior that Microsoft 
doesn't agree.

Atsushi Eno

On 2015年09月29日 14:58, Martin Thwaites wrote:
> I'd have to agree with Martin here.  The output of 2 functions should
> surely match.  The fact that the referencesource uses something that
> defaults to something different per platform should be irrelevant.
>
> The only point to consider is, should the output of a method be able to
> differ per platform and still be valid.  For this situation I imagine
> that the xaml that is being produced is invalid, and therefore the
> behaviour for the xaml writer is incorrect.
>
> On 29 Sep 2015 05:55, "Atsushi Eno"
> <atsushieno at veritas-vos-liberabit.com
> <mailto:atsushieno at veritas-vos-liberabit.com>> wrote:
>
>     You have no reason to be afraid of asking Microsoft to change the
>     behavior. I cannot find any justification to just ask Mono to change
>     things against Microsoft code behavior without asking Microsoft
>     about it.
>
>     Atsushi Eno
>
>     On 2015年09月29日 01:15, Martin Potter wrote:
>      > I wasn’t aware that the MSDN .NET documentation was viewed as being
>      > platform specific documentation.
>      >
>      > I am not sure how this is a Microsoft bug so much as an issue
>     with the
>      > fact they did not consider it being run on other platforms. Given
>     that
>      > Mono is cross-platform, whereas Microsoft’s implementation is
>     not, and
>      > Mono has made other changes to the reference source (which is
>     very Windows
>      > specific) to provide consistency across platforms it is unclear
>     as to why
>      > the previous behavior of using \r\n (prior to the switch to the
>     reference
>      > source) is incorrect.
>      >
>      > ― Martin
>      >
>      > On 9/28/15, 9:58 AM, "Atsushi Eno"
>     <atsushieno at veritas-vos-liberabit.com
>     <mailto:atsushieno at veritas-vos-liberabit.com>>
>      > wrote:
>      >
>      >> MSDN documentation describes the behavior how .NET Framework
>     works on
>      >> Windows, hence it says \r\n. As the referencesource is explicitly
>      >> implemented, it is NOT the case on non-Windows platform.
>      >>
>      >> If you are unhappy about Microsoft behavior, you should file a
>     bug to
>      >> Microsoft. referencesource is not for reporting issues though
>     (as its
>      >> README explicitly says so).
>      >>
>      >> Atsushi Eno
>      >>
>      >> On 2015年09月28日 23:15, Martin Potter wrote:
>      >>> The default for XamlWriterSettings NewLineChars was changed
>     from "\r\n"
>      >>> to
>      >>> "\n" when you imported the reference source and is what is
>     present on
>      >>> the
>      >>> 4.2 branch. This is not what the previous behavior was, nor
>     what the
>      >>> documentation on MSDN,
>      >>>
>      >>>
>     https://msdn.microsoft.com/en-us/library/system.xml.xmlwritersettings.new
>      >>> li
>      >>> nechars(v=vs.110).aspx, states.
>      >>>
>      >>> "The character string to use for line breaks. This can be set
>     to any
>      >>> string value. However, to ensure valid XML, you should specify only
>      >>> valid
>      >>> white space characters, such as space characters, tabs, carriage
>      >>> returns,
>      >>> or line feeds. The default is \r\n (carriage return, new line)."
>      >>>
>      >>> ― Martin
>      >>>
>      >>> On 9/28/15, 8:08 AM, "Atsushi Eno"
>      >>> <atsushieno at veritas-vos-liberabit.com
>     <mailto:atsushieno at veritas-vos-liberabit.com>>
>      >>> wrote:
>      >>>
>      >>>> Current Microsoft-based implementation is the correct one and
>     it's been
>      >>>> there in post-4.0 versions.
>      >>>>
>      >>>> Atsushi Eno
>      >>>>
>      >>>> On 2015年09月28日 22:46, Martin Potter wrote:
>      >>>>> Atsushi,
>      >>>>>
>      >>>>> Were you (or someone else) going to get this fixed before 4.2
>     is ready
>      >>>>> to
>      >>>>> ship?
>      >>>>>
>      >>>>> Thank you,
>      >>>>> Martin
>      >>>>>
>      >>>>> On 9/8/15, 8:03 PM, "Atsushi Eno"
>      >>>>> <atsushieno at veritas-vos-liberabit.com
>     <mailto:atsushieno at veritas-vos-liberabit.com>>
>      >>>>> wrote:
>      >>>>>
>      >>>>>> I had no idea when that commit was made, but that change was
>     wrong.
>      >>>>>> Microsoft behavior is the one we should use in that case.
>      >>>>>>
>      >>>>>> Atsushi Eno
>      >>>>>>
>      >>>>>> On 2015年09月09日 01:50, Martin Potter wrote:
>      >>>>>>> Way back in 2012, this commit
>      >>>>>>>
>      >>>>>>>
>      >>>>>>>
>      >>>>>>>
>     https://github.com/mono/mono/commit/9215ddf7ade5f0f0f54c2adb7b165e4e3
>      >>>>>>> e7
>      >>>>>>> 74
>      >>>>>>> 33b
>      >>>>>>>
>      >>>>>>>
>      >>>>>>>
>      >>>>>>>
>     <https://github.com/LogosBible/mono/commit/9215ddf7ade5f0f0f54c2adb7b
>      >>>>>>> 16
>      >>>>>>> 5e
>      >>>>>>> 4e3e77433b> changed
>      >>>>>>> the default newline in XmlWriterSettings to be "\r\n” to be
>      >>>>>>> compatible
>      >>>>>>> with MS (which some of our tests rely on). It appears that
>     when the
>      >>>>>>> reference source was imported in
>      >>>>>>>
>      >>>>>>>
>      >>>>>>>
>      >>>>>>>
>     https://github.com/mono/mono/commit/4990b4c47b8fe1b219c64884fad98d586
>      >>>>>>> 15
>      >>>>>>> 46
>      >>>>>>> a05#diff-5561e6ab8de20ec168dcb1f7b415b353,
>      >>>>>>> it was changed back to be platform specific. Was this an
>     intentional
>      >>>>>>> change?
>      >>>>>>>
>      >>>>>>> Thank you,
>      >>>>>>> Martin
>      >>>>>>>
>      >>>>>>>
>      >>>>>>>
>      >>>>>>> _______________________________________________
>      >>>>>>> Mono-devel-list mailing list
>      >>>>>>> Mono-devel-list at lists.ximian.com
>     <mailto:Mono-devel-list at lists.ximian.com>
>      >>>>>>> http://lists.ximian.com/mailman/listinfo/mono-devel-list
>      >>>>>>>
>      >>>>>>
>      >>>>>
>      >>>>>
>      >>>>>
>      >>>>
>      >>>
>      >>>
>      >>>
>      >>
>      >
>      >
>      >
>
>     _______________________________________________
>     Mono-devel-list mailing list
>     Mono-devel-list at lists.ximian.com
>     <mailto:Mono-devel-list at lists.ximian.com>
>     http://lists.ximian.com/mailman/listinfo/mono-devel-list
>



More information about the Mono-devel-list mailing list