← Back to team overview

maria-developers team mailing list archive

Re: Windows line endings in MariaDB sources again (

 

2016-06-24 18:58 GMT+03:00 Sergei Golubchik <serg@xxxxxxxxxxx>:
>> dpkg-source: info: building mariadb-10.0 using existing ./mariadb-10.0_10.0.26.orig.tar.gz
>> dpkg-source: info: local changes detected, the modified files are:
>>  mariadb-10.0/storage/connect/mysql-test/connect/std_data/boyswin.txt
>>  mariadb-10.0/storage/connect/mysql-test/connect/std_data/emp.txt
>>  mariadb-10.0/storage/connect/mysql-test/connect/std_data/expenses.txt
>> dpkg-source: error: aborting due to unexpected upstream changes, see
>> /tmp/mariadb-10.0_10.0.26-1.diff.Yzwwhw
>
> Sorry, I don't follow. How does the first (CRLF in specific files) cause
> the second (your dpkg-source error) ?

Somehow, despite the current .gitattributes, the std_data file line
endings get converted by git during import/merge and the resulting
repository CRLF files are only these:

./mysql-test/std_data/loaddata7.dat:        ASCII text, with CRLF line
terminators
./mysql-test/r/loadxml.result:                    ASCII text, with
CRLF, LF line terminators
./mysql-test/r/perror-win.result:                 ASCII text, with
CRLF, LF line terminators
./mysql-test/r/mysql_binary_mode.result:     ASCII English text, with
CRLF, LF line terminators
./mysql-test/r/func_regexp_pcre.result:       UTF-8 Unicode C++
program text, with CRLF, CR, LF line terminators
./pcre/testdata/grepoutputN:               ASCII text, with CRLF, CR,
LF line terminators
./pcre/testdata/greppatN4:                  ASCII text, with CRLF line
terminators


To get git not to change the line endings I defined in .git/info/attributes
*.* binary
* binary


But this was just a temporary fix of course.

Only the files girls.txt was touched in 10.0.26, I didn't figure out
why git wanted to import/update those other files.
However, 10.0.26 introduced a storage/connect/.gitattributes file,
maybe it lead to this situation.

It declares like this:

+# Declare files that will always have LF line endings on checkout.
+*.result text eol=lf
+mysql-test/connect/std_data/*.txt text eol=lf
+mysql-test/connect/std_data/*.dat text eol=lf

Apparently connect developers what those files to have unix line
endings, maybe we should follow suite.


Follow ups

References