This is an issue I have with the git repository rather than with the actual decompiler.
Not all *.java files in the jpexs github repository are "normalized" and this is giving me
a number of issues.
With "normalized", I mean normalized as defined in http://git-scm.com/docs/gitattributes
a text file is normalized, its line endings are converted to LF in the repository."
The .gitattributes files in the jpexs github repository includes the following line for
*.java text eol=crlf
The "text" attributes controls how eol is stored in the repository and the "eol=crlf"
attribute controls how the file is stored in the working directory.
The presence of the "text" attributes means that when checking in, "LF" line ending will
be used to store the file in the repository. But for some reason it looks like not all the
commits perform this conversion to "LF" (e.g. I've seen it in commits made by Honfika). I
guess that a git implementation is used that disregards the .gitattributes file (JGit was
known to do that, I don't know if it is still the case).
The main point is that some java files have crlf-endings (not normalized) in the
repository and some java files have lf-endings (normalized).
For example the following shows that
libsrc/ffdec_lib/src/com/jpexs/decompiler/flash/action/Action.java has crlf line endings
in the repo:
$ git cat-file -p 1e5ec49df2bb3f8da62a22619d6bae604a593b1f|head -5|grep -U $'\r'
This has a special side-effect.
Every time i fetch and merge the commits from upstream/master (the original jpexs github
repository), "git status" will show me a bunch of files as "modified" in the working
directory which are not actually modified: the working directory is expected to be up to
date at that point. The files shown as modified correspond with the updated files that are
not normalized. Commands like "git checkout -- ." or git reset will not help, the files
will always show as being modified because git detects an eol mismatch.
Removing the "text" attribute from .gitattributes as hinted at
restores the "git status" as up to date. This link also
states that files should be normalized when using the text attribute:
"When text=auto normalization is enabled in an existing repository, any text files
containing CRLFs should be normalized. If they are not they will be normalized the next
time someone tries to change them, causing unfortunate misattribution."
After this long explanation I would like to make the kind request if it would be possible
to normalize the files in the repository, i.e. to convert all java files so that they have
LF- file endings?
Thanks in advance.