On Sat, Jun 7, 2014 at 11:40 PM, <to...@acm.org> wrote: > In general, an SCM that is supposed to be used by various people each > working on a their own ‘random’ platform should be able to give to all of > them the impression that text files are normal text files, that is ‘normal’ > according to their own system, not to the system of the person who > initiated the repo. Otherwise, repos should be marked as ‘Linux-only’, > ‘Windows-only’, ‘Mac-only’, etc. and trying to open them in the wrong > platform should fail with a related error message. Do we agree so far? If > not, there is no need to read further. >
Disagree strongly. Repos in and of themselves are platform-neutral. What you put in them is _your_ business, and fossil puts _exactly_ in what you told it to. Likewise, it pulls _exactly_ out what you put in it. It's not there to do any sort of conversions for you (be they line endings or UTFBE to UTFLE), just as it does _no_ other transformation of the content (for purposes of importing/exporting, though it internally may store the data in delta/compressed form). > Given that all text files contain their meaningful info in the part of the > file that is not the EOL marker, and the EOL marker is only there to assist > the underlying OS/library to be able to correctly load/process that text > file, changing those EOL at will to be compatible with the user’s current > platform is not a violation of any sanctity. If the platform’s tool cannot > deal with a text file in its own native format, then that tool is at fault, > nobody else. But if a tool cannot deal with a text file of a different > platform, we cannot blame the tool. > i think you are confusing the definition of "platform" as an OS (where the line endings are defined) and development platform, where the tools need to be able to work with both, simply for portability reasons. Software developers (by and large the target audience of fossil) tend to use development tools (as opposed to notepad), the vast majority of which can handle either line-ending in some way (even if it's annoying, like ^M in emacs/vi). (Notepad++ is excellent, for example.) The CRNL convention comes from line printers and related terminals, where the separation of CR and NL made a good deal of sense. However, it is only one of two major EOL standards, and dev tools need to be able to work with both. -- ----- stephan beal http://wanderinghorse.net/home/stephan/ http://gplus.to/sgbeal "Freedom is sloppy. But since tyranny's the only guaranteed byproduct of those who insist on a perfect world, freedom will have to do." -- Bigby Wolf
_______________________________________________ fossil-users mailing list fossil-users@lists.fossil-scm.org http://lists.fossil-scm.org:8080/cgi-bin/mailman/listinfo/fossil-users