public inbox for cygwin@cygwin.com
 help / color / mirror / Atom feed
* Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains  Umlaut characters
@ 2017-05-24  8:30 Ronald Fischer
  2017-05-24 10:05 ` Andrey Repin
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Ronald Fischer @ 2017-05-24  8:30 UTC (permalink / raw)
  To: cygwin

[-- Attachment #1: Type: text/plain, Size: 1181 bytes --]

I have a file X which contains ASCII text, but also in some lines German
umlaut characters. The file is classified as:

     $ file X
     X: ISO-8859 text, with CRLF line terminators

If I grep the file using, say,

     $ grep  .  X  >Y

(i.e. select every non-empty line and write the result to Y), this works
fine, if LANG is set to one of: UTF-8, C, C.de_DE, C.en_EN, en_EN,
de_DE.

However, if LANG is set to C.UTF-8, two things happen:

- grep classifies the file as binary file and produces the error message
"Binary file X matches" 

- Both the grepped lines (i.e. in our example the non-empty lines) AND
the error message end up in the standard output (i.e. in file Y).

IMO, there are several problems with this:

1. It's hard to see, why an umlaut character makes the file X binary
under encoding C.UTF-8, but not under encoding UTF-8 or C.en_EN

2. If grep classifies a file as binary, I think the desired behaviour
would be to NOT produce any output, unless the -a flag has been
supplied.

3. If grep writes a message "Binary file ... matches", this message
should go to stderr, not stdout. The stdout is supposed to contain only
a subset of the input lines.
 Ronald

[-- Attachment #2: cygcheck.out --]
[-- Type: application/octet-stream, Size: 46425 bytes --]


Cygwin Configuration Diagnostics
Current System Time: Wed May 24 09:39:01 2017

Windows 7 Enterprise Ver 6.1 Build 7601 Service Pack 1

Path:	C:\cygwin64\usr\local\bin
	C:\cygwin64\bin
	C:\cygwin64\usr\sbin
	C:\ProgramData\Oracle\Java\javapath
	C:\Windows\system32
	C:\Windows
	C:\Windows\System32\Wbem
	C:\Windows\System32\WindowsPowerShell\v1.0
	C:\Program Files (x86)\DC VB Extended Components\S00
	C:\Program Files (x86)\IDM Computer Solutions\UltraEdit
	C:\PROGRA~1\IBM\SQLLIB\BIN
	C:\PROGRA~1\IBM\SQLLIB\FUNCTION
	C:\Windows\System32\WindowsPowerShell\v1.0
	C:\Windows\System32\WindowsPowerShell\v1.0
	C:\wbin
	C:\cygwin64\home\FISRONA\bin
	C:\cygwin64\home\FISRONA\gitwrk\vp5\bin
	C:\cygwin64\home\FISRONA\gitwrk\vp\scripts
	.

Output from C:\cygwin64\bin\id.exe
UID: 3672028(FISRONA)
GID: 1049089(Domain Users)
1049089(Domain Users)
197612(CMTCL050839+ConfigMgr Remote Control Users)
197613(CMTCL050839+Remoteunterstützungsanbieter)
545(Users)
4(INTERAKTIV)
66049(KONSOLENANMELDUNG)
11(Authentifizierte Benutzer)
15(Diese Organisation)
4095(CurrentSession)
66048(LOKAL)
3640318(EMEA_FAK)
1352190(EMTC_ITS_USDM_A)
3529982(E415_SHARE_JIRA-VP5-Developers)
3303619(E415_SHARE_STASH-ALL)
3672400(E415_SHARE_JIRA-FPM-Users)
3672399(E415_SHARE_JIRA-FPM-Developers)
3529983(E415_SHARE_JIRA-VP5-Users)
3530003(E415_SHARE_BAMBOO-FPM-Administrators)
3303618(E415_SHARE_CONF-ALL)
1201258(EMTC_ITS_ProxyWWW)
3028447(EMTC_ITS_Internet)
3821090(E415_SHARE_CONF-FPM-Read)
3821089(E415_SHARE_CONF-FPM-Write)
3303617(E415_SHARE_JIRA-ALL)
3853996(EMTC_FAK-ALL)
3672402(E415_SHARE_STASH-FPM-Write)
1058927(EMTC_ITS_ProxyWWW)
2530843(EGAG_G-TM-TPF_00129_X)
3354537(EGAG_G-TM-TPF_00159_X)
4001124(E050_O00025_00294_X)
4318812(E050_O00025_00423_X)
3963123(E050_QM-QPQ_PiWeb-Monitor)
4001129(E050_O00025_00314_X)
4284091(E050_O00025_00412_X)
4001108(E050_O00025_00349_X)
4460704(E050_O00025_00460_X)
3597868(E050_O00025_00342_X)
3487151(EMTC_GSP-OVF-Projekte_L)
4001111(E050_O00025_00334_X)
4001140(E050_O00025_00383_X)
4001161(E050_O00025_00272_X)
4363640(E050_O00025_00436_X)
1920368(E010_G04278_00014_M)
3930036(EMTC_ITS_EEW-A-Reliability-workbench)
3569996(EMTC_GSP-OVF-Projekte_00040_M)
2499000(E050_O00025_00230_X)
3164854(EMTC_FP-MTE_L)
4363671(E050_O00025_00452_X)
4112505(ELBE_WIN10INT_WksAdm)
2135657(EMTC_ITS_Info-HKS-READ)
4001122(E050_O00025_00330_X)
2895130(EMTC_ITS_Dota-RA)
1345543(E010_G16013_00023_X)
3865978(EMTC_CAT2_A05_EE_Dauerlauf_r)
4363663(E050_O00025_00448_X)
4001126(E050_O00025_00319_X)
3779166(EMTC_FAK-PC-ACCESS-ALLOW)
4460702(E050_O00025_00459_X)
4363667(E050_O00025_00450_X)
3266383(EMTC_GSP-TP_00072_M)
4460708(E050_O00025_00461_X)
4460718(E050_O00025_00466_X)
3369936(EMTC_CAD-Powertrain_00005_X)
4001115(E050_O00025_00357_X)
4284085(E050_O00025_00406_X)
4363665(E050_O00025_00449_X)
4284087(E050_O00025_00408_X)
3569753(EMTC_ITS_GSPOVFFlashen-READ)
3780596(EMTC_CAT2_A05_DaCAR_DataLake_r)
4001119(E050_O00025_00361_X)
4318824(E050_O00025_00429_X)
4001118(E050_O00025_00241_X)
4090020(EGAG_G-TM-TPF_00185_X)
1256198(EMTC_X_USDM_A)
4001125(E050_O00025_00295_X)
4001149(E050_O00025_00384_X)
2391753(E050_O00025_00213_X)
3354526(EGAG_G-TM-TPF_00154_X)
3434234(E050_O00025_00327_X)
4460716(E050_O00025_00465_X)
3164856(EMTC_ITS_FP-MTE-MODIFY)
4001144(E050_O00025_00179_X)
3164855(EMTC_ITS_FP-MTE-READ)
3378541(E050_O00025_00316_X)
4001131(E050_O00025_00287_X)
4001145(E050_O00025_00177_X)
4363655(E050_O00025_00444_X)
4001138(E050_O00025_00242_X)
4001130(E050_O00025_00296_X)
4460690(E050_O00025_00455_X)
2998943(EMTC_ITS_Creta-LIST)
2508687(E050_O00025_X)
3930045(EMTC_ITS_WKSAdm-W10Test)
3113628(EMTC_CAD-Powertrain_00001_X)
1704936(E010_G04278_00010_X)
4363651(E050_O00025_00442_X)
2679794(EGAG_TM-TPF-R532)
3569754(EMTC_ITS_GSPOVFFlashen-MODIFY)
3354531(EGAG_G-TM-TPF_00156_X)
4460692(E050_O00025_00456_X)
4001139(E050_O00025_00183_X)
2954909(EMTC_GSP-TP_00054_X)
4001132(E050_O00025_00182_X)
1235601(EMTC_ITS_Benutzer)
4001109(E050_O00025_00368_X)
3283151(EMTC_ITS_RD-OT-PMI-READ)
2552366(EMTC_SMS59T-Rmt)
4001110(E050_O00025_00336_X)
3952454(EMTC_GSP-OVF-Projekte_00101_M)
4284090(E050_O00025_00411_X)
4001160(E050_O00025_00364_X)
4304086(EGAG_G-TM-TPF_00198_M)
3625442(E050_O00025_00348_X)
4001141(E050_O00025_00211_X)
3354529(EGAG_G-TM-TPF_00155_X)
4001155(E050_O00025_00244_X)
3976893(EGAG_G-TM-TPF_00184_X)
4000340(E050_O00025_00385_X)
4460714(E050_O00025_00464_X)
4001143(E050_O00025_00333_X)
4318820(E050_O00025_00427_X)
4001093(E050_O00025_00375_M)
4284086(E050_O00025_00407_X)
4318816(E050_O00025_00425_X)
4001148(E050_O00025_00322_X)
4318818(E050_O00025_00426_X)
4284092(E050_O00025_00413_X)
3634054(EMTC_ITS_EDM-Transfer-READ)
2294588(EMTC_REDNUT_M)
4363669(E050_O00025_00451_X)
4001156(E050_O00025_00245_X)
4093345(EMTC_CSDEV_WksAdm)
4318814(E050_O00025_00424_X)
4001116(E050_O00025_00326_X)
4001154(E050_O00025_00243_X)
3354535(EGAG_G-TM-TPF_00158_X)
3102644(EMTC_CAD-Powertrain_L)
2321022(E050_O00025_00186_X)
2506059(E010_G16013_00077_X)
2253401(EGAG_G-TM-TPF_X)
4363653(E050_O00025_00443_X)
4001157(E050_O00025_00366_X)
2709966(EGAG_G-TM-TPF_00148_X)
1293168(EMTC_FAHRW_ECN-Doku)
3434235(E050_O00025_00328_X)
4001123(E050_O00025_00293_X)
3584671(EMTC_GSP-OVF-Projekte_00042_M)
3546805(EMTC_GSP-OVF-Projekte_00033_M)
4191789(EGAG_G-TM-TPF_00190_X)
4001159(E050_O00025_00271_X)
3469377(EGAG_G-TM-TPF_00161_X)
4001112(E050_O00025_00337_X)
4363661(E050_O00025_00447_X)
4318810(E050_O00025_00422_X)
3412269(EMTC_TCUA-PT_00009_X)
4001162(E050_O00025_00273_X)
3569755(EMTC_ITS_GSPOVFFlashen-LIST)
1124266(E010_G04278_X)
4001142(E050_O00025_00365_X)
4460700(E050_O00025_00458_X)
3274468(EMTC_NetworkingPortal_X)
3366234(EMTC_ITS_BackupClients-READ)
4460712(E050_O00025_00463_X)
4001113(E050_O00025_00338_X)
3354533(EGAG_G-TM-TPF_00157_X)
3500217(EMTC_ITS_EEW-A-Putty)
3815257(EMTC_RD-KIA_00005_X)
4363657(E050_O00025_00445_X)
4460694(E050_O00025_00457_X)
4114459(EMTC_GSP-TP_00169_X)
3236648(E050_PW-PWM_Teiledaten-read)
3164823(EMTC_FP-MTE_M)
4067908(E050_O00025_00386_X)
4442334(E050_O00025_00435_X)
3023197(EMTC_ITS_Creta-public-read)
4001158(E050_O00025_00270_X)
2238661(EMTC_GSP-TP_00002_X)
3113548(EMTC_GSP-TP_00066_M)
4304088(EGAG_G-TM-TPF_00199_M)
2545317(EMTC_GSP-TP_00023_X)
4001117(E050_O00025_00235_X)
4363659(E050_O00025_00446_X)
4157307(E050_O00025_00392_X)
3354539(EGAG_G-TM-TPF_00160_X)
3545154(E050_O00025_00332_X)
4363673(E050_O00025_00453_X)
3477140(EMTC_ITS_RmtAssist-NonAdm)
3164822(EMTC_FP-MTE_X)
4460710(E050_O00025_00462_X)
4284093(E050_O00025_00414_X)
4284088(E050_O00025_00409_X)
4318822(E050_O00025_00428_X)
4284089(E050_O00025_00410_X)
4001153(E050_O00025_00194_X)
4001133(E050_O00025_00150_X)
401408(Mittlere Verbindlichkeitsstufe)

SysDir: C:\Windows\system32
WinDir: C:\Windows

HOME = '/home/FISRONA'
PWD = '/home/fisrona/gitwrk/vp5'
USER = 'FISRONA'

!:: = '::\'
!C: = 'C:\cygwin64\home\fisrona\gitwrk\vp5'
ALLUSERSPROFILE = 'C:\ProgramData'
APPDATA = 'C:\Users\fisrona\AppData\Roaming'
BitLockerStatus = '0x1D02641B'
COBRA_RF = '//CMTCD040192.rd.corpintra.net/RCD-Team/00 Mitarbeiter/RF85'
COMMONPROGRAMFILES = 'C:\Program Files\Common Files'
COMPUTERNAME = 'CMTCL050839'
COMSPEC = 'C:\Windows\system32\cmd.exe'
ClientManagementHealthResult = '<CMHR LastExecutionTime="20170523102401.000000+120" LastExecutionVersion="2.2.4.0" LastExecutionStatus="0"/>'
CommonProgramFiles(x86) = 'C:\Program Files (x86)\Common Files'
CommonProgramW6432 = 'C:\Program Files\Common Files'
ComputerDNSDomain = 'EMEA.corpdir.net'
ComputerDomain = 'EMEA'
DB2INSTANCE = 'DB2'
DB2PATH = 'C:\Program Files\IBM\SQLLIB'
DB2TEMPDIR = 'C:\Program Files\IBM\SQLLIB\DB2'
DCXClient = 'Client'
DEFLOGDIR = 'C:\ProgramData\McAfee\DesktopProtection'
DOCVP = '/home/FISRONA/gitwrk/vp5doc'
DeploymentConfiguration = '59T - Windows 7 x64 RD'
DeploymentSuite = 'DEPLOYMAX:5.3.0.37'
DriversImage = 'DRIVERS.WIM'
DriversModelFolder = 'Dell Inc. Latitude E6540 NTamd64.6.1 2014-09-05'
EDITOR = 'nano'
EncryptionPolicies = '0x40182244'
FP_NO_HOST_CHECK = 'NO'
GITVP = '/home/FISRONA/gitwrk/vp'
GIT_ASKPASS = '/home/FISRONA/bin/_say_pa.sh'
GIT_PROMPT_EXECUTABLE = 'python'
GIT_SSL_NO_VERIFY = 'true'
HOMEDRIVE = 'H:'
HOMEPATH = '\'
HOMESHARE = '\\SMTCF01016.RD.CORPINTRA.NET\FISRONA$\DATA'
INCLUDE = 'C:\PROGRA~1\IBM\SQLLIB\INCLUDE;C:\PROGRA~1\IBM\SQLLIB\LIB'
ImageBaseOS = 'Win7 x64 SP1'
ImageCoreLoad = 'Win7 x64 SP1 G201501.01'
KVP_XCHG = '//emea.corpdir.net/EMTC/PRJ/E-I/FP-MTE/Massentest/KoopVP'
LANG = 'C.UTF-8'
LESS = '--search-skip-screen --quit-if-one-screen --LONG-PROMPT -X'
LIB = ';C:\PROGRA~1\IBM\SQLLIB\LIB'
LOCALAPPDATA = 'C:\Users\fisrona\AppData\Local'
LOGNAME = 'FISRONA'
LOGONSERVER = '\\SEDCD050'
NUMBER_OF_PROCESSORS = '4'
OLDPWD = '/home/fisrona/gitwrk/vp5'
OS = 'Windows_NT'
PATHEXT = '.COM;.EXE;.BAT;.CMD;.VBS;.VBE;.JS;.JSE;.WSF;.WSH;.MSC'
PROCESSOR_ARCHITECTURE = 'AMD64'
PROCESSOR_IDENTIFIER = 'Intel64 Family 6 Model 60 Stepping 3, GenuineIntel'
PROCESSOR_LEVEL = '6'
PROCESSOR_REVISION = '3c03'
PROGRAMFILES = 'C:\Program Files'
PROMPT = '-%?-%L- %~ $(git_super_status) > '
PSModulePath = 'C:\Windows\system32\WindowsPowerShell\v1.0\Modules\'
PUBLIC = 'C:\Users\Public'
ProgramData = 'C:\ProgramData'
ProgramFiles(x86) = 'C:\Program Files (x86)'
ProgramW6432 = 'C:\Program Files'
RELEASES_DIR = '//emea.corpdir.net/EMTC/PRJ/E-I/FP-MTE/Massentest/gitTcl/tags'
RELEASE_BRANCHES_DIR = '//emea.corpdir.net/EMTC/PRJ/E-I/FP-MTE/Massentest/gitTcl/branches'
REPO = 'https://FISRONA@shared-stash.detss.corpintra.net/scm/fpm/vp.git'
ReleaseVersion = 'Win7 x64 SP1 G201501.01 (Build: 2015-2-23 10:51:0)'
SESSIONNAME = 'Console'
SHLVL = '3'
SH_ONCE = '22'
SNC_LIB_32_2 = 'C:\Program Files (x86)\SAP\FrontEnd\SecureLogin\lib\sapcrypto.dll'
SNC_LIB_64 = 'C:\Program Files\SAP\FrontEnd\SecureLogin\lib\sapcrypto.dll'
SNC_LIB_64_2 = 'C:\Program Files\SAP\FrontEnd\SecureLogin\lib\sapcrypto.dll'
SSF_LIBRARY_PATH = 'C:\Program Files (x86)\SAP\FrontEnd\SecureLogin\lib\sapcrypto.dll'
SSF_LIBRARY_PATH_64 = 'C:\Program Files\SAP\FrontEnd\SecureLogin\lib\sapcrypto.dll'
SYSTEMDRIVE = 'C:'
SYSTEMROOT = 'C:\Windows'
TEMP = '/cygdrive/c/temp'
TERM = 'xterm'
TMP = '/home/FISRONA/tmp'
TPMStatus = '0x5F'
TT_LOGFILE = 'C:\TEMP\starter489274.log'
TT_TRACKING_FILEPATH = 'C:\temp\tt_tracker_489274_1.txt'
UATDATA = 'C:\Windows\SysWOW64\CCM\UATData\D9F8C395-CAB8-491d-B8AC-179A1FE1BE77'
USERDNSDOMAIN = 'EMEA.CORPDIR.NET'
USERDOMAIN = 'EMEA'
USERDOMAIN_ROAMINGPROFILE = 'EMEA'
USERNAME = 'FISRONA'
USERPROFILE = 'C:\Users\fisrona'
USERTLOU = 'EMTC'
VP5 = '/home/FISRONA/gitwrk/vp5'
VP5_FACHTESTS = '//emea.corpdir.net/EMTC/PRJ/E-I/FP-MTE/Massentest/VP5-Austausch/Fachtests'
VP5_RUN_IN = 'c:/tmp/v5t'
VP5_SMOKE = '//emea.corpdir.net/EMTC/PRJ/E-I/FP-MTE/Massentest/VP5-Austausch/Smoketest'
VP5_XCHG = '//emea.corpdir.net/EMTC/PRJ/E-I/FP-MTE/Massentest/VP5-Austausch'
VSEDEFLOGDIR = 'C:\ProgramData\McAfee\DesktopProtection'
WINDIR = 'C:\Windows'
WRK = '/home/FISRONA/gitwrk'
XCHG_DIR = '//emea.corpdir.net/EMTC/prj/E-I/GSP-OVF-Projekte/02_Flashen/Koop-VP/90_Integration/10_Technische Dokumente/10_HistoFiles'
_ = '/usr/bin/cygcheck'
__GIT_PROMPT_DIR = '/cygdrive/c/cygwin64/home/fisrona/gprojects/zsh-git-prompt'
msooaopt = '118=0'
rcdteam = '//CMTCD040192.rd.corpintra.net/RCD-Team'
windows_tracing_flags = '3'
windows_tracing_logfile = 'C:\BVTBin\Tests\installpackage\csilogfile.log'

HKEY_CURRENT_USER\Software\Cygwin
HKEY_CURRENT_USER\Software\Cygwin\Installations
  (default) = '\??\C:\cygwin64'
HKEY_CURRENT_USER\Software\Cygwin\setup
  (default) = 'C:\cygwin64'

obcaseinsensitive set to 1

Cygwin installations found in the registry:
  User:   Key: e022582115c10879 Path: C:\cygwin64

c:  hd  NTFS    121794Mb  86% CP CS UN PA FC     EN
d:  cd             N/A    N/A                      
h:  net NTFS       512Mb  98% CP CS UN PA          
j:  net NTFS    953866Mb  75% CP CS UN PA FC     EN
m:  net NTFS   1907661Mb  46% CP CS UN PA FC     EN
o:  net NTFS    572015Mb  80% CP CS UN PA FC     EN
r:  net NTFS    572015Mb  80% CP CS UN PA FC     EN
z:  net NTFS    572015Mb  80% CP CS UN PA FC     EN

C:\cygwin64      /          system  binary,auto
C:\cygwin64\bin  /usr/bin   system  binary,auto
C:\cygwin64\lib  /usr/lib   system  binary,auto
cygdrive prefix  /cygdrive  user    binary,posix=0,auto

Found: C:\cygwin64\bin\awk
 -> C:\cygwin64\bin\gawk.exe
Found: C:\cygwin64\bin\bash.exe
Found: C:\cygwin64\bin\cat.exe
Found: C:\cygwin64\bin\cp.exe
Not Found: cpp (good!)
Not Found: crontab
Found: C:\cygwin64\bin\find.exe
Found: C:\Windows\system32\find.exe
Warning: C:\cygwin64\bin\find.exe hides C:\Windows\system32\find.exe
Not Found: gcc
Not Found: gdb
Found: C:\cygwin64\bin\grep.exe
Found: C:\cygwin64\bin\kill.exe
Found: C:\cygwin64\bin\ld.exe
Found: C:\cygwin64\bin\ls.exe
Not Found: make
Found: C:\cygwin64\bin\mv.exe
Not Found: patch
Found: C:\cygwin64\bin\perl.exe
Found: C:\cygwin64\bin\rm.exe
Found: C:\cygwin64\bin\sed.exe
Found: C:\cygwin64\bin\ssh.exe
Found: C:\cygwin64\bin\sh.exe
Found: C:\cygwin64\bin\tar.exe
Found: C:\cygwin64\bin\test.exe
Found: C:\cygwin64\bin\vi.exe
Not Found: vim

   39k 2016/09/19 C:\cygwin64\bin\cygargp-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygargp-0.dll" v0.0 ts=2016-09-19 03:13
   16k 2013/03/26 C:\cygwin64\bin\cygattr-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygattr-1.dll" v0.0 ts=2013-03-26 18:26
  177k 2016/05/04 C:\cygwin64\bin\cygautotrace-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygautotrace-3.dll" v0.0 ts=2016-05-05 00:00
  180k 2015/03/23 C:\cygwin64\bin\cygblkid-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygblkid-1.dll" v0.0 ts=2015-03-23 09:46
   64k 2017/02/22 C:\cygwin64\bin\cygbz2-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygbz2-1.dll" v0.0 ts=2017-02-22 08:22
 1078k 2017/03/06 C:\cygwin64\bin\cygcairo-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygcairo-2.dll" v0.0 ts=2017-03-06 07:15
   27k 2017/03/06 C:\cygwin64\bin\cygcairo-gobject-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygcairo-gobject-2.dll" v0.0 ts=2017-03-06 07:16
  119k 2017/03/06 C:\cygwin64\bin\cygcairo-script-interpreter-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygcairo-script-interpreter-2.dll" v0.0 ts=2017-03-06 07:16
   13k 2015/03/19 C:\cygwin64\bin\cygcom_err-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygcom_err-2.dll" v0.0 ts=2015-03-19 02:44
  203k 2017/04/25 C:\cygwin64\bin\cygcroco-0.6-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygcroco-0.6-3.dll" v0.0 ts=2017-04-25 18:03
   10k 2016/06/09 C:\cygwin64\bin\cygcrypt-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygcrypt-0.dll" v0.0 ts=2016-06-09 17:02
 2235k 2017/01/26 C:\cygwin64\bin\cygcrypto-1.0.0.dll - os=4.0 img=0.0 sys=5.2
                  "cygcrypto-1.0.0.dll" v0.0 ts=2017-01-26 21:10
  478k 2016/12/29 C:\cygwin64\bin\cygcurl-4.dll - os=4.0 img=0.0 sys=5.2
                  "cygcurl-4.dll" v0.0 ts=2016-12-29 05:33
   24k 2014/11/12 C:\cygwin64\bin\cygdatrie-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygdatrie-1.dll" v0.0 ts=2014-11-12 08:24
 1549k 2016/08/22 C:\cygwin64\bin\cygdb-5.3.dll - os=4.0 img=0.0 sys=5.2
                  "cygdb-5.3.dll" v0.0 ts=2016-08-22 10:51
  267k 2017/04/28 C:\cygwin64\bin\cygdbus-1-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygdbus-1-3.dll" v0.0 ts=2017-04-28 18:51
  124k 2016/08/22 C:\cygwin64\bin\cygdb_cxx-5.3.dll - os=4.0 img=0.0 sys=5.2
                  "cygdb_cxx-5.3.dll" v0.0 ts=2016-08-22 10:52
  570k 2016/08/22 C:\cygwin64\bin\cygdb_sql-5.3.dll - os=4.0 img=0.0 sys=5.2
                  "cygdb_sql-5.3.dll" v0.0 ts=2016-08-22 10:52
  154k 2013/10/20 C:\cygwin64\bin\cygedit-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygedit-0.dll" v0.0 ts=2013-10-20 22:56
  122k 2017/05/01 C:\cygwin64\bin\cygEGL-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygEGL-1.dll" v0.0 ts=2017-05-01 07:50
  158k 2016/08/23 C:\cygwin64\bin\cygEMF-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygEMF-1.dll" v0.0 ts=2016-08-23 18:23
  145k 2016/06/21 C:\cygwin64\bin\cygexpat-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygexpat-1.dll" v0.0 ts=2016-06-22 00:15
   30k 2014/10/14 C:\cygwin64\bin\cygfam-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygfam-0.dll" v0.0 ts=2014-10-14 22:33
   27k 2015/11/17 C:\cygwin64\bin\cygffi-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygffi-6.dll" v0.0 ts=2015-11-17 23:14
 1050k 2017/02/02 C:\cygwin64\bin\cygfftw3-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygfftw3-3.dll" v0.0 ts=2017-02-02 13:10
 1009k 2017/02/02 C:\cygwin64\bin\cygfftw3f-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygfftw3f-3.dll" v0.0 ts=2017-02-02 13:05
   24k 2017/02/02 C:\cygwin64\bin\cygfftw3f_threads-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygfftw3f_threads-3.dll" v0.0 ts=2017-02-02 13:05
  864k 2017/02/02 C:\cygwin64\bin\cygfftw3l-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygfftw3l-3.dll" v0.0 ts=2017-02-02 13:14
   24k 2017/02/02 C:\cygwin64\bin\cygfftw3l_threads-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygfftw3l_threads-3.dll" v0.0 ts=2017-02-02 13:15
   24k 2017/02/02 C:\cygwin64\bin\cygfftw3_threads-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygfftw3_threads-3.dll" v0.0 ts=2017-02-02 13:10
  243k 2016/08/11 C:\cygwin64\bin\cygfontconfig-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygfontconfig-1.dll" v0.0 ts=2016-08-11 03:54
   55k 2017/03/29 C:\cygwin64\bin\cygformw-10.dll - os=4.0 img=0.0 sys=5.2
                  "cygformw-10.dll" v0.0 ts=2017-03-30 00:26
  545k 2015/01/15 C:\cygwin64\bin\cygfpx-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygfpx-1.dll" v0.0 ts=2015-01-15 13:50
  597k 2016/07/28 C:\cygwin64\bin\cygfreetype-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygfreetype-6.dll" v0.0 ts=2016-07-28 18:48
   70k 2016/06/13 C:\cygwin64\bin\cyggcc_s-seh-1.dll - os=4.0 img=0.0 sys=5.2
                  "cyggcc_s-seh-1.dll" v0.0 ts=2016-06-13 17:18
  345k 2017/01/27 C:\cygwin64\bin\cyggd-3.dll - os=4.0 img=0.0 sys=5.2
                  "cyggd-3.dll" v0.0 ts=2017-01-27 09:59
   39k 2016/10/10 C:\cygwin64\bin\cyggdbm-4.dll - os=4.0 img=0.0 sys=5.2
                  "cyggdbm-4.dll" v0.0 ts=2016-10-10 10:26
   13k 2016/10/10 C:\cygwin64\bin\cyggdbm_compat-4.dll - os=4.0 img=0.0 sys=5.2
                  "cyggdbm_compat-4.dll" v0.0 ts=2016-10-10 10:26
  138k 2017/05/04 C:\cygwin64\bin\cyggdk_pixbuf-2.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cyggdk_pixbuf-2.0-0.dll" v0.0 ts=2017-05-04 07:22
   32k 2013/07/22 C:\cygwin64\bin\cyggif-4.dll - os=4.0 img=0.0 sys=5.2
                  "cyggif-4.dll" v0.0 ts=2013-07-22 06:17
 1344k 2017/03/17 C:\cygwin64\bin\cyggio-2.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cyggio-2.0-0.dll" v0.0 ts=2017-03-06 07:26
  455k 2017/05/01 C:\cygwin64\bin\cygGL-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygGL-1.dll" v0.0 ts=2017-05-01 07:50
  289k 2017/05/01 C:\cygwin64\bin\cygglapi-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygglapi-0.dll" v0.0 ts=2017-05-01 07:20
  975k 2017/03/17 C:\cygwin64\bin\cygglib-2.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygglib-2.0-0.dll" v0.0 ts=2017-03-05 04:42
   15k 2017/03/17 C:\cygwin64\bin\cyggmodule-2.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cyggmodule-2.0-0.dll" v0.0 ts=2017-03-17 20:26
  527k 2017/01/21 C:\cygwin64\bin\cyggmp-10.dll - os=4.0 img=0.0 sys=5.2
                  "cyggmp-10.dll" v0.0 ts=2017-01-21 19:25
  938k 2017/05/02 C:\cygwin64\bin\cyggnutls-28.dll - os=4.0 img=0.0 sys=5.2
                  "cyggnutls-28.dll" v0.0 ts=2017-05-02 23:06
   24k 2017/05/02 C:\cygwin64\bin\cyggnutls-openssl-27.dll - os=4.0 img=0.0 sys=5.2
                  "cyggnutls-openssl-27.dll" v0.0 ts=2017-05-02 23:06
  284k 2017/03/17 C:\cygwin64\bin\cyggobject-2.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cyggobject-2.0-0.dll" v0.0 ts=2017-03-05 04:42
  105k 2016/06/13 C:\cygwin64\bin\cyggomp-1.dll - os=4.0 img=0.0 sys=5.2
                  "cyggomp-1.dll" v0.0 ts=2016-06-13 17:22
   10k 2016/06/13 C:\cygwin64\bin\cyggomp-plugin-host_nonshm-1.dll - os=4.0 img=0.0 sys=5.2
                  "cyggomp-plugin-host_nonshm-1.dll" v0.0 ts=2016-06-13 17:23
  176k 2016/10/30 C:\cygwin64\bin\cyggraphite2-3.dll - os=4.0 img=3.0 sys=5.2
                  "cyggraphite2-3.dll" v0.0 ts=2016-10-30 20:52
11540k 2016/06/29 C:\cygwin64\bin\cyggs-9.dll - os=4.0 img=0.0 sys=5.2
                  "cyggs-9.dll" v0.0 ts=2016-06-29 10:54
  258k 2016/09/26 C:\cygwin64\bin\cyggssapi_krb5-2.dll - os=4.0 img=0.0 sys=5.2
                  "cyggssapi_krb5-2.dll" v0.0 ts=2016-09-26 07:55
    9k 2017/03/17 C:\cygwin64\bin\cyggthread-2.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cyggthread-2.0-0.dll" v0.0 ts=2017-03-05 04:42
  396k 2017/03/05 C:\cygwin64\bin\cygharfbuzz-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygharfbuzz-0.dll" v0.0 ts=2017-03-05 05:22
   33k 2017/02/13 C:\cygwin64\bin\cyghistory7.dll - os=4.0 img=0.0 sys=5.2
                  "cyghistory7.dll" v0.0 ts=2017-02-11 23:39
  167k 2016/03/13 C:\cygwin64\bin\cyghogweed-2.dll - os=4.0 img=0.0 sys=5.2
                  "cyghogweed-2.dll" v0.0 ts=2016-03-13 14:46
   77k 2014/08/10 C:\cygwin64\bin\cygICE-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygICE-6.dll" v0.0 ts=1970-01-01 01:00
 1009k 2015/02/20 C:\cygwin64\bin\cygiconv-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygiconv-2.dll" v0.0 ts=2015-02-20 18:07
  197k 2017/05/02 C:\cygwin64\bin\cygidn-11.dll - os=4.0 img=0.0 sys=5.2
                  "cygidn-11.dll" v0.0 ts=2017-05-02 02:18
  111k 2017/04/24 C:\cygwin64\bin\cygidn2-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygidn2-0.dll" v0.0 ts=2017-04-24 06:20
   42k 2016/10/23 C:\cygwin64\bin\cygintl-8.dll - os=4.0 img=0.0 sys=5.2
                  "cygintl-8.dll" v0.0 ts=2016-10-23 08:17
  284k 2017/01/03 C:\cygwin64\bin\cygjasper-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygjasper-1.dll" v0.0 ts=2017-01-03 15:07
  290k 2017/05/03 C:\cygwin64\bin\cygjasper-4.dll - os=4.0 img=4.0 sys=5.2
                  "cygjasper-4.dll" v0.0 ts=2017-05-04 00:26
   48k 2014/06/17 C:\cygwin64\bin\cygjbig-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygjbig-2.dll" v0.0 ts=1970-01-01 01:00
   18k 2014/06/17 C:\cygwin64\bin\cygjbig85-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygjbig85-2.dll" v0.0 ts=1970-01-01 01:00
  403k 2016/08/07 C:\cygwin64\bin\cygjpeg-8.dll - os=4.0 img=0.0 sys=5.2
                  "cygjpeg-8.dll" v0.0 ts=2016-08-07 21:20
  177k 2016/09/26 C:\cygwin64\bin\cygk5crypto-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygk5crypto-3.dll" v0.0 ts=2016-09-26 07:55
  722k 2016/09/26 C:\cygwin64\bin\cygkrb5-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygkrb5-3.dll" v0.0 ts=2016-09-26 07:55
   35k 2016/09/26 C:\cygwin64\bin\cygkrb5support-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygkrb5support-0.dll" v0.0 ts=2016-09-26 07:54
   45k 2015/11/19 C:\cygwin64\bin\cyglber-2-4-2.dll - os=4.0 img=0.0 sys=5.2
                  "cyglber-2-4-2.dll" v0.0 ts=2015-11-19 15:17
  299k 2017/01/03 C:\cygwin64\bin\cyglcms2-2.dll - os=4.0 img=0.0 sys=5.2
                  "cyglcms2-2.dll" v0.0 ts=2017-01-03 13:40
  246k 2015/11/19 C:\cygwin64\bin\cygldap-2-4-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygldap-2-4-2.dll" v0.0 ts=2015-11-19 15:18
  262k 2015/11/19 C:\cygwin64\bin\cygldap_r-2-4-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygldap_r-2-4-2.dll" v0.0 ts=2015-11-19 15:19
29379k 2017/02/20 C:\cygwin64\bin\cygLLVM-3.9.dll - os=4.0 img=0.0 sys=5.2
                  "cygLLVM-3.9.dll" v0.0 ts=2017-02-20 17:42
    6k 2017/04/01 C:\cygwin64\bin\cyglsa64.dll - os=4.0 img=0.0 sys=5.2
                  "cyglsa64.dll" v0.0 ts=2017-04-01 20:47
  139k 2015/11/09 C:\cygwin64\bin\cyglzma-5.dll - os=4.0 img=0.0 sys=5.2
                  "cyglzma-5.dll" v0.0 ts=2015-11-09 07:12
  126k 2014/11/17 C:\cygwin64\bin\cyglzo2-2.dll - os=4.0 img=0.0 sys=5.2
                  "cyglzo2-2.dll" v0.0 ts=2014-11-17 12:24
  121k 2017/05/03 C:\cygwin64\bin\cygmagic-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygmagic-1.dll" v0.0 ts=2017-05-03 19:25
  353k 2016/12/23 C:\cygwin64\bin\cygMagick++-6.Q16-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygMagick++-6.Q16-6.dll" v0.0 ts=2016-12-23 08:21
 4498k 2016/12/23 C:\cygwin64\bin\cygMagickCore-6.Q16-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygMagickCore-6.Q16-2.dll" v0.0 ts=2016-12-23 08:18
 1150k 2016/12/23 C:\cygwin64\bin\cygMagickWand-6.Q16-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygMagickWand-6.Q16-2.dll" v0.0 ts=2016-12-23 08:20
  169k 2016/10/10 C:\cygwin64\bin\cygman-2-7-5.dll - os=4.0 img=0.0 sys=5.2
                  "cygman-2-7-5.dll" v0.0 ts=2016-10-10 23:07
   22k 2016/10/10 C:\cygwin64\bin\cygmandb-2-7-5.dll - os=4.0 img=0.0 sys=5.2
                  "cygmandb-2-7-5.dll" v0.0 ts=2016-10-10 23:07
   29k 2017/03/29 C:\cygwin64\bin\cygmenuw-10.dll - os=4.0 img=0.0 sys=5.2
                  "cygmenuw-10.dll" v0.0 ts=2017-03-30 00:26
  329k 2016/08/24 C:\cygwin64\bin\cygming-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygming-1.dll" v0.0 ts=2016-08-24 16:27
  346k 2017/04/08 C:\cygwin64\bin\cygmpfr-4.dll - os=4.0 img=0.0 sys=5.2
                  "cygmpfr-4.dll" v0.0 ts=2017-04-08 13:19
   53k 2017/03/29 C:\cygwin64\bin\cygncurses++w-10.dll - os=4.0 img=0.0 sys=5.2
                  "cygncurses++w-10.dll" v0.0 ts=2017-03-30 00:31
  282k 2017/03/29 C:\cygwin64\bin\cygncursesw-10.dll - os=4.0 img=0.0 sys=5.2
                  "cygncursesw-10.dll" v0.0 ts=2017-03-30 00:25
  180k 2016/03/13 C:\cygwin64\bin\cygnettle-4.dll - os=4.0 img=0.0 sys=5.2
                  "cygnettle-4.dll" v0.0 ts=2016-03-13 14:46
  137k 2017/03/13 C:\cygwin64\bin\cygnghttp2-14.dll - os=4.0 img=0.0 sys=5.2
                  "cygnghttp2-14.dll" v0.0 ts=2017-03-13 19:40
 1003k 2017/04/28 C:\cygwin64\bin\cygp11-kit-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygp11-kit-0.dll" v0.0 ts=2017-04-28 06:23
   14k 2017/03/29 C:\cygwin64\bin\cygpanelw-10.dll - os=4.0 img=0.0 sys=5.2
                  "cygpanelw-10.dll" v0.0 ts=2017-03-30 00:25
  260k 2017/05/08 C:\cygwin64\bin\cygpango-1.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygpango-1.0-0.dll" v0.0 ts=2017-05-08 06:23
   43k 2017/05/08 C:\cygwin64\bin\cygpangocairo-1.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygpangocairo-1.0-0.dll" v0.0 ts=2017-05-08 06:23
   70k 2017/05/08 C:\cygwin64\bin\cygpangoft2-1.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygpangoft2-1.0-0.dll" v0.0 ts=2017-05-08 06:23
   28k 2017/05/08 C:\cygwin64\bin\cygpangoxft-1.0-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygpangoxft-1.0-0.dll" v0.0 ts=2017-05-08 06:23
   11k 2013/07/23 C:\cygwin64\bin\cygpaper-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygpaper-1.dll" v0.0 ts=2013-07-23 06:40
  475k 2017/04/23 C:\cygwin64\bin\cygpcre-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygpcre-1.dll" v0.0 ts=2017-04-24 01:50
 2020k 2017/01/15 C:\cygwin64\bin\cygperl5_22.dll - os=4.0 img=0.0 sys=5.2
                  "cygperl5_22.dll" v0.0 ts=2017-01-15 13:12
   39k 2015/04/09 C:\cygwin64\bin\cygpipeline-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygpipeline-1.dll" v0.0 ts=2015-04-09 22:04
  638k 2016/08/08 C:\cygwin64\bin\cygpixman-1-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygpixman-1-0.dll" v0.0 ts=2016-08-08 03:51
 1000k 2016/04/19 C:\cygwin64\bin\cygplotter-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygplotter-2.dll" v0.0 ts=2016-04-18 10:28
  179k 2017/01/17 C:\cygwin64\bin\cygpng16-16.dll - os=4.0 img=0.0 sys=5.2
                  "cygpng16-16.dll" v0.0 ts=2017-01-17 20:28
   41k 2016/07/13 C:\cygwin64\bin\cygpopt-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygpopt-0.dll" v0.0 ts=2016-07-13 07:16
   52k 2017/01/17 C:\cygwin64\bin\cygpsl-5.dll - os=4.0 img=0.0 sys=5.2
                  "cygpsl-5.dll" v0.0 ts=2017-01-17 18:10
  362k 2016/06/29 C:\cygwin64\bin\cygpstoedit-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygpstoedit-0.dll" v0.0 ts=2016-06-29 08:35
  219k 2017/02/13 C:\cygwin64\bin\cygreadline7.dll - os=4.0 img=0.0 sys=5.2
                  "cygreadline7.dll" v0.0 ts=2017-02-11 23:39
  202k 2017/05/08 C:\cygwin64\bin\cygrsvg-2-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygrsvg-2-2.dll" v0.0 ts=2017-05-08 05:52
 2293k 2017/03/19 C:\cygwin64\bin\cygruby230.dll - os=4.0 img=0.0 sys=5.2
                  "cygruby230.dll" v2.3 ts=2017-03-19 18:03
   96k 2017/04/16 C:\cygwin64\bin\cygsasl2-3.dll - os=4.0 img=0.0 sys=5.2
                  "cygsasl2-3.dll" v0.0 ts=2017-04-16 20:15
   11k 2015/07/17 C:\cygwin64\bin\cygsigsegv-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygsigsegv-2.dll" v0.0 ts=2015-07-17 23:35
   28k 2014/01/14 C:\cygwin64\bin\cygSM-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygSM-6.dll" v0.0 ts=2014-01-15 00:23
   89k 2015/03/23 C:\cygwin64\bin\cygsmartcols-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygsmartcols-1.dll" v0.0 ts=2015-03-23 09:46
  973k 2017/04/19 C:\cygwin64\bin\cygsqlite3-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygsqlite3-0.dll" v0.0 ts=2017-04-19 18:46
  156k 2016/03/02 C:\cygwin64\bin\cygssh2-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygssh2-1.dll" v0.0 ts=2016-03-02 19:03
  399k 2017/01/26 C:\cygwin64\bin\cygssl-1.0.0.dll - os=4.0 img=0.0 sys=5.2
                  "cygssl-1.0.0.dll" v0.0 ts=2017-01-26 21:10
   12k 2016/06/13 C:\cygwin64\bin\cygssp-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygssp-0.dll" v0.0 ts=2016-06-13 18:10
 1325k 2016/06/13 C:\cygwin64\bin\cygstdc++-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygstdc++-6.dll" v0.0 ts=2016-06-13 17:38
   66k 2017/05/02 C:\cygwin64\bin\cygtasn1-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygtasn1-6.dll" v0.0 ts=2017-05-02 02:16
   34k 2017/03/05 C:\cygwin64\bin\cygthai-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygthai-0.dll" v0.0 ts=2017-03-05 05:36
   53k 2017/03/29 C:\cygwin64\bin\cygticw-10.dll - os=4.0 img=0.0 sys=5.2
                  "cygticw-10.dll" v0.0 ts=2017-03-30 00:25
  420k 2015/10/28 C:\cygwin64\bin\cygtiff-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygtiff-6.dll" v0.0 ts=2015-10-28 21:37
   11k 2015/10/28 C:\cygwin64\bin\cygtiffxx-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygtiffxx-6.dll" v0.0 ts=2015-10-28 21:37
  218k 2016/05/10 C:\cygwin64\bin\cygtxc_dxtn.dll - os=4.0 img=0.0 sys=5.2
                  "cygtxc_dxtn.dll" v0.0 ts=2016-05-10 07:31
 1538k 2015/10/16 C:\cygwin64\bin\cygunistring-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygunistring-2.dll" v0.0 ts=2015-10-16 22:40
   15k 2015/03/23 C:\cygwin64\bin\cyguuid-1.dll - os=4.0 img=0.0 sys=5.2
                  "cyguuid-1.dll" v0.0 ts=2015-03-23 09:46
  344k 2016/07/08 C:\cygwin64\bin\cygwebp-5.dll - os=4.0 img=0.0 sys=5.2
                  "cygwebp-5.dll" v0.0 ts=2016-07-08 20:27
 1128k 2016/10/09 C:\cygwin64\bin\cygX11-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygX11-6.dll" v0.0 ts=2016-10-09 18:45
    9k 2016/10/09 C:\cygwin64\bin\cygX11-xcb-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygX11-xcb-1.dll" v0.0 ts=2016-10-09 18:45
   12k 2013/06/06 C:\cygwin64\bin\cygXau-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygXau-6.dll" v0.0 ts=2013-06-06 07:23
  375k 2016/01/29 C:\cygwin64\bin\cygXaw-7.dll - os=4.0 img=0.0 sys=5.2
                  "cygXaw-7.dll" v0.0 ts=2016-01-29 21:32
  121k 2016/08/09 C:\cygwin64\bin\cygxcb-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygxcb-1.dll" v0.0 ts=2016-08-09 22:45
   76k 2016/08/09 C:\cygwin64\bin\cygxcb-glx-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygxcb-glx-0.dll" v0.0 ts=2016-08-09 22:45
   41k 2016/08/09 C:\cygwin64\bin\cygxcb-render-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygxcb-render-0.dll" v0.0 ts=2016-08-09 22:45
   12k 2016/08/09 C:\cygwin64\bin\cygxcb-shm-0.dll - os=4.0 img=0.0 sys=5.2
                  "cygxcb-shm-0.dll" v0.0 ts=2016-08-09 22:45
   21k 2015/03/26 C:\cygwin64\bin\cygXdmcp-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygXdmcp-6.dll" v0.0 ts=2015-03-26 15:38
   56k 2014/08/10 C:\cygwin64\bin\cygXext-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygXext-6.dll" v0.0 ts=1970-01-01 01:00
   73k 2014/08/10 C:\cygwin64\bin\cygXft-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygXft-2.dll" v0.0 ts=1970-01-01 01:00
 1214k 2017/03/13 C:\cygwin64\bin\cygxml2-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygxml2-2.dll" v0.0 ts=2017-03-13 17:01
   85k 2014/01/15 C:\cygwin64\bin\cygXmu-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygXmu-6.dll" v0.0 ts=2014-01-15 03:27
   61k 2017/01/18 C:\cygwin64\bin\cygXpm-4.dll - os=4.0 img=0.0 sys=5.2
                  "cygXpm-4.dll" v0.0 ts=2017-01-18 18:27
   54k 2013/07/01 C:\cygwin64\bin\cygXpm-noX-4.dll - os=4.0 img=0.0 sys=5.2
                  "cygXpm-noX-4.dll" v0.0 ts=2013-07-01 13:24
   36k 2016/01/29 C:\cygwin64\bin\cygXrender-1.dll - os=4.0 img=0.0 sys=5.2
                  "cygXrender-1.dll" v0.0 ts=2016-01-29 21:24
  326k 2016/01/29 C:\cygwin64\bin\cygXt-6.dll - os=4.0 img=0.0 sys=5.2
                  "cygXt-6.dll" v0.0 ts=2016-01-29 21:26
  121k 2014/12/08 C:\cygwin64\bin\cygyaml-0-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygyaml-0-2.dll" v0.0 ts=2014-12-08 19:19
   83k 2017/03/03 C:\cygwin64\bin\cygz.dll - os=4.0 img=0.0 sys=5.2
                  "cygz.dll" v0.0 ts=2017-03-03 22:42
   61k 2015/03/26 C:\cygwin64\bin\cygzip-2.dll - os=4.0 img=0.0 sys=5.2
                  "cygzip-2.dll" v0.0 ts=2015-03-26 20:04
 3238k 2017/04/01 C:\cygwin64\bin\cygwin1.dll - os=4.0 img=0.0 sys=5.2
                  "cygwin1.dll" v0.0 ts=2017-04-01 20:47
    Cygwin DLL version info:
        DLL version: 2.8.0
        DLL epoch: 19
        DLL old termios: 5
        DLL malloc env: 28
        Cygwin conv: 181
        API major: 0
        API minor: 309
        Shared data: 5
        DLL identifier: cygwin1
        Mount registry: 3
        Cygwin registry name: Cygwin
        Installations name: Installations
        Cygdrive default prefix: 
        Build date: 
        Shared id: cygwin1S5


No Cygwin services found.


Cygwin Package Information
Last downloaded files to: C:\cygwin_packages
Last downloaded files from: http://ftp-stud.hs-esslingen.de/pub/Mirrors/sources.redhat.com/cygwin/

Package                   Version                      Status
_autorebase               001005-1                     OK
alternatives              1.3.30c-10                   OK
base-cygwin               3.8-1                        OK
base-files                4.2-4                        OK
bash                      4.4.12-3                     OK
binutils                  2.25-4                       OK
bzip2                     1.0.6-3                      OK
ca-certificates           2.14-1                       OK
chere                     1.4-1                        OK
coreutils                 8.26-2                       OK
csih                      0.9.9-1                      OK
cygrunsrv                 1.62-1                       OK
cygutils                  1.4.15-2                     OK
cygwin                    2.8.0-1                      OK
cygwin-devel              2.8.0-1                      OK
dash                      0.5.9.1-1                    OK
dejavu-fonts              2.37-1                       OK
desktop-file-utils        0.23-1                       OK
diffutils                 3.5-2                        OK
dos2unix                  7.3.4-1                      OK
dri-drivers               17.0.5-1                     OK
editrights                1.03-1                       OK
emacs                     25.2-1                       OK
emacs-w32                 25.2-1                       OK
file                      5.30-1                       OK
findutils                 4.6.0-1                      OK
gamin                     0.1.10-15                    OK
gawk                      4.1.4-3                      OK
getent                    2.18.90-4                    OK
git                       2.12.2-1                     OK
grep                      3.0-2                        OK
groff                     1.22.3-1                     OK
gsettings-desktop-schemas 3.22.0-1                     OK
gzip                      1.8-1                        OK
hostname                  3.13-1                       OK
info                      6.3-1                        OK
ipc-utils                 1.0-2                        OK
less                      487-1                        OK
libargp                   20110921-3                   OK
libattr1                  2.4.46-1                     OK
libautotrace3             0.31.1-17                    OK
libblkid1                 2.25.2-2                     OK
libbz2_1                  1.0.6-3                      OK
libcairo2                 1.14.8-1                     OK
libcom_err2               1.42.12-2                    OK
libcroco0.6_3             0.6.12-1                     OK
libcrypt0                 1.4-1                        OK
libcurl4                  7.52.1-1                     OK
libdatrie1                0.2.8-1                      OK
libdb5.3                  5.3.28-1                     OK
libdbus1_3                1.10.18-1                    OK
libedit0                  20130712-1                   OK
libEGL1                   17.0.5-1                     OK
libEMF1                   1.0.8-1                      OK
libexpat1                 2.2.0-0                      OK
libfam0                   0.1.10-15                    OK
libffi6                   3.2.1-2                      OK
libfftw3_3                3.3.6-pl1-1                  OK
libfontconfig-common      2.12.1-1                     OK
libfontconfig1            2.12.1-1                     OK
libfpx1                   1.3.1.4-1                    OK
libfreetype6              2.6.5-1                      OK
libgcc1                   5.4.0-1                      OK
libgd3                    2.2.4-1                      OK
libgdbm4                  1.12-1                       OK
libgdk_pixbuf2.0_0        2.36.6-2                     OK
libgif4                   4.1.6-12                     OK
libGL1                    17.0.5-1                     OK
libglapi0                 17.0.5-1                     OK
libglib2.0_0              2.50.3-1                     OK
libgmp10                  6.1.2-1                      OK
libgnutls28               3.3.27-1                     OK
libgomp1                  5.4.0-1                      OK
libgraphite2_3            1.3.8-1                      OK
libgs9                    9.19-1                       OK
libgssapi_krb5_2          1.14.4-1                     OK
libharfbuzz0              1.3.4-1                      OK
libhogweed2               2.7.1-1                      OK
libICE6                   1.0.9-1                      OK
libiconv                  1.14-3                       OK
libiconv2                 1.14-3                       OK
libidn11                  1.33-1                       OK
libidn2_0                 2.0.1-1                      OK
libintl8                  0.19.8.1-2                   OK
libjasper1                1.900.22-1                   OK
libjasper4                2.0.12-1                     OK
libjbig2                  2.0-14                       OK
libjpeg8                  1.5.0-1                      OK
libk5crypto3              1.14.4-1                     OK
libkrb5_3                 1.14.4-1                     OK
libkrb5support0           1.14.4-1                     OK
liblcms2_2                2.8-1                        OK
libllvm3.9                3.9.1-1                      OK
liblzma5                  5.2.2-1                      OK
liblzo2_2                 2.08-1                       OK
libMagickC++6_6           6.9.5.7-2                    OK
libMagickCore6_2          6.9.5.7-2                    OK
libMagickWand6_2          6.9.5.7-2                    OK
libming1                  0.4.7-2                      OK
libmpfr4                  3.1.5-1p2                    OK
libncursesw10             6.0-10.20170325              OK
libnettle4                2.7.1-1                      OK
libnghttp2_14             1.14.0-2                     OK
libopenldap2_4_2          2.4.42-1                     OK
libopenssl100             1.0.2k-1                     OK
libp11-kit0               0.23.5-1                     OK
libpango1.0_0             1.40.5-1                     OK
libpaper-common           1.1.24-2                     OK
libpaper1                 1.1.24-2                     OK
libpcre1                  8.40-3                       OK
libpipeline1              1.4.0-1                      OK
libpixman1_0              0.34.0-1                     OK
libplotter2               2.6-5                        OK
libpng16                  1.6.28-1                     OK
libpopt-common            1.16-2                       OK
libpopt0                  1.16-2                       OK
libpsl5                   0.17.0-1                     OK
libpstoedit0              3.70-2                       OK
libreadline7              7.0.3-3                      OK
librsvg2_2                2.40.17-1                    OK
libsasl2_3                2.1.26-11                    OK
libsigsegv2               2.10-2                       OK
libSM6                    1.2.2-1                      OK
libsmartcols1             2.25.2-2                     OK
libsqlite3_0              3.18.0-1                     OK
libssh2_1                 1.7.0-1                      OK
libssp0                   5.4.0-1                      OK
libstdc++6                5.4.0-1                      OK
libtasn1_6                4.10-1                       OK
libthai0                  0.1.26-1                     OK
libtiff6                  4.0.6-1                      OK
libtxc_dxtn               1.0-1.20151227gitf6ec862     OK
libunistring2             0.9.6-1                      OK
libuuid-devel             2.25.2-2                     OK
libuuid1                  2.25.2-2                     OK
libwebp5                  0.4.4-1                      OK
libX11-xcb1               1.6.4-1                      OK
libX11_6                  1.6.4-1                      OK
libXau6                   1.0.8-1                      OK
libXaw7                   1.0.13-1                     OK
libxcb-glx0               1.12-1                       OK
libxcb-render0            1.12-1                       OK
libxcb-shm0               1.12-1                       OK
libxcb1                   1.12-1                       OK
libXdmcp6                 1.1.2-1                      OK
libXext6                  1.3.3-1                      OK
libXft2                   2.3.2-1                      OK
libxml2                   2.9.4-2                      OK
libXmu6                   1.1.2-1                      OK
libXpm-noX_4              3.5.10-1                     OK
libXpm4                   3.5.12-1                     OK
libXrender1               0.9.9-1                      OK
libXt6                    1.1.5-1                      OK
libyaml0_2                0.1.6-2                      OK
libzip2                   0.11.2-2                     OK
login                     1.11-1                       OK
man-db                    2.7.5-2                      OK
mintty                    2.7.6-0                      OK
nano                      2.8.2-1                      OK
ncurses                   6.0-10.20170325              OK
openssh                   7.5p1-1                      OK
openssl                   1.0.2k-1                     OK
p11-kit                   0.23.5-1                     OK
p11-kit-trust             0.23.5-1                     OK
perl                      5.22.3-1                     OK
perl-Carp                 1.38-1                       OK
perl-Error                0.17024-1                    OK
perl-TermReadKey          2.37-1                       OK
perl_autorebase           5.22.3-1                     OK
perl_base                 5.22.3-1                     OK
pkg-config                0.29.1-1                     OK
publicsuffix-list-dafsa   20170424-1                   OK
Empty package python
python                    2.7.13-1                     OK
python2                   2.7.13-1                     OK
rebase                    4.4.2-1                      OK
rsync                     3.1.2-1                      OK
ruby                      2.3.3-1                      OK
ruby-builder              3.2.2-1                      OK
ruby-did_you_mean         1.0.2-1                      OK
ruby-io-console           0.4.6-1                      OK
ruby-json                 1.8.6-1                      OK
ruby-minitest             5.10.1-1                     OK
Empty package ruby-minitest4
ruby-minitest4            5.10.1-1                     OK
ruby-psych                2.2.4-1                      OK
ruby-rake                 11.3.0-1                     OK
ruby-rdoc                 4.3.0-1                      OK
rubygems                  2.6.11-1                     OK
run                       1.3.4-2                      OK
sed                       4.4-1                        OK
shared-mime-info          1.7-1                        OK
tar                       1.29-1                       OK
tcl                       8.6.6-1                      OK
tcl-devel                 8.6.6-1                      OK
terminfo                  6.0-10.20170325              OK
terminfo-extra            6.0-10.20170325              OK
tzcode                    2016j-1                      OK
tzdata                    2017b-1                      OK
unzip                     6.0-16                       OK
util-linux                2.25.2-2                     OK
vim-minimal               8.0.0542-1                   OK
wget                      1.19.1-1                     OK
which                     2.20-2                       OK
xz                        5.2.2-1                      OK
zip                       3.0-12                       OK
zlib-devel                1.2.11-1                     OK
zlib0                     1.2.11-1                     OK
zsh                       5.3-1                        OK
Use -h to see help about each section

[-- Attachment #3: Type: text/plain, Size: 219 bytes --]


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains  Umlaut characters
  2017-05-24  8:30 Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains Umlaut characters Ronald Fischer
@ 2017-05-24 10:05 ` Andrey Repin
  2017-05-24 10:20   ` Ronald Fischer
  2017-05-24 11:42 ` Erik Bray
  2017-05-24 12:33 ` Eric Blake
  2 siblings, 1 reply; 5+ messages in thread
From: Andrey Repin @ 2017-05-24 10:05 UTC (permalink / raw)
  To: Ronald Fischer, cygwin

Greetings, Ronald Fischer!

> I have a file X which contains ASCII text, but also in some lines German
> umlaut characters. The file is classified as:

>      $ file X
>      X: ISO-8859 text, with CRLF line terminators

> If I grep the file using, say,

>      $ grep  .  X  >Y

> (i.e. select every non-empty line and write the result to Y), this works
> fine, if LANG is set to one of: UTF-8, C, C.de_DE, C.en_EN, en_EN,
> de_DE.

> However, if LANG is set to C.UTF-8, two things happen:

> - grep classifies the file as binary file and produces the error message
> "Binary file X matches" 

This is an intended behavior, upstream decision since mid-2015, I recall.

> - Both the grepped lines (i.e. in our example the non-empty lines) AND
> the error message end up in the standard output (i.e. in file Y).

> IMO, there are several problems with this:

> 1. It's hard to see, why an umlaut character makes the file X binary
> under encoding C.UTF-8, but not under encoding UTF-8 or C.en_EN

> 2. If grep classifies a file as binary, I think the desired behaviour
> would be to NOT produce any output, unless the -a flag has been
> supplied.

> 3. If grep writes a message "Binary file ... matches", this message
> should go to stderr, not stdout. The stdout is supposed to contain only
> a subset of the input lines.
>  Ronald


-- 
With best regards,
Andrey Repin
Wednesday, May 24, 2017 13:02:39

Sorry for my terrible english...


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains  Umlaut characters
  2017-05-24 10:05 ` Andrey Repin
@ 2017-05-24 10:20   ` Ronald Fischer
  0 siblings, 0 replies; 5+ messages in thread
From: Ronald Fischer @ 2017-05-24 10:20 UTC (permalink / raw)
  To: cygwin

> > If I grep the file using, say,
> 
> >      $ grep  .  X  >Y
> 
> > (i.e. select every non-empty line and write the result to Y), this works
> > fine, if LANG is set to one of: UTF-8, C, C.de_DE, C.en_EN, en_EN,
> > de_DE.
> 
> > However, if LANG is set to C.UTF-8, two things happen:
> 
> > - grep classifies the file as binary file and produces the error message
> > "Binary file X matches" 
> 
> This is an intended behavior, upstream decision since mid-2015, I recall.


Might be, but this still does not explain the issues 1., 2. and 3.,
which I layed out in detail below. Note that never said that the fact,
that grep classifies certain characters as binary, would by itself a
bug.

Or is the intended behaviour, that with C.UTF-8 (and *only* with this
setting), the resulting standard output of grep is interspersed with
"Binary file matches" lines? If this is the case, I really would like to
se a justification for this decision. 


> 
> > - Both the grepped lines (i.e. in our example the non-empty lines) AND
> > the error message end up in the standard output (i.e. in file Y).
> 
> > IMO, there are several problems with this:
> 
> > 1. It's hard to see, why an umlaut character makes the file X binary
> > under encoding C.UTF-8, but not under encoding UTF-8 or C.en_EN
> 
> > 2. If grep classifies a file as binary, I think the desired behaviour
> > would be to NOT produce any output, unless the -a flag has been
> > supplied.
> 
> > 3. If grep writes a message "Binary file ... matches", this message
> > should go to stderr, not stdout. The stdout is supposed to contain only
> > a subset of the input lines.
> >  Ronald

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains Umlaut characters
  2017-05-24  8:30 Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains Umlaut characters Ronald Fischer
  2017-05-24 10:05 ` Andrey Repin
@ 2017-05-24 11:42 ` Erik Bray
  2017-05-24 12:33 ` Eric Blake
  2 siblings, 0 replies; 5+ messages in thread
From: Erik Bray @ 2017-05-24 11:42 UTC (permalink / raw)
  To: cygwin

On Wed, May 24, 2017 at 9:52 AM, Ronald Fischer wrote:
> I have a file X which contains ASCII text, but also in some lines German
> umlaut characters. The file is classified as:
>
>      $ file X
>      X: ISO-8859 text, with CRLF line terminators
>
> If I grep the file using, say,
>
>      $ grep  .  X  >Y
>
> (i.e. select every non-empty line and write the result to Y), this works
> fine, if LANG is set to one of: UTF-8, C, C.de_DE, C.en_EN, en_EN,
> de_DE.
>
> However, if LANG is set to C.UTF-8, two things happen:
>
> - grep classifies the file as binary file and produces the error message
> "Binary file X matches"
>
> - Both the grepped lines (i.e. in our example the non-empty lines) AND
> the error message end up in the standard output (i.e. in file Y).
>
> IMO, there are several problems with this:
>
> 1. It's hard to see, why an umlaut character makes the file X binary
> under encoding C.UTF-8, but not under encoding UTF-8 or C.en_EN

Only one of these, "UTF-8", specifies an *encoding*.  Further, I don't
think just "UTF-8" or "C.en_EN" are valid locale specifiers.  You can
read more about how Cygwin handles locales here:

https://cygwin.com/cygwin-ug-net/setup-locale.html

Certainly, if you set something like LANG="C.UTF-8" it will use UTF-8
to decode the text in the file and, failing that, treat it as binary.
If you know it's ISO-8859-1 you can use either LANG= or
LC_CTYPE="C.ISO-8859-1".  Or, if you know the language, you should be
able to use LC_CTYPE="de_DE".  Each language+territory has a default
encoding associated with it.  For German I think it is one of the
ISO-8859-* variants.  Or you can use the variant "de_DE@euro" which
forces ISO-8859-15 which includes the euro symbol, among other
possibilities.  So I think your main problem here is just not
specifying your locale correctly.

> 2. If grep classifies a file as binary, I think the desired behaviour
> would be to NOT produce any output, unless the -a flag has been
> supplied.
>
> 3. If grep writes a message "Binary file ... matches", this message
> should go to stderr, not stdout. The stdout is supposed to contain only
> a subset of the input lines.

I would tend to agree with this, but this is normal behavior of grep
(on Linux too), so I would take it up with the authors of grep.

Best,
Erik

--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains Umlaut characters
  2017-05-24  8:30 Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains Umlaut characters Ronald Fischer
  2017-05-24 10:05 ` Andrey Repin
  2017-05-24 11:42 ` Erik Bray
@ 2017-05-24 12:33 ` Eric Blake
  2 siblings, 0 replies; 5+ messages in thread
From: Eric Blake @ 2017-05-24 12:33 UTC (permalink / raw)
  To: cygwin, ynnor


[-- Attachment #1.1: Type: text/plain, Size: 3108 bytes --]

On 05/24/2017 02:52 AM, Ronald Fischer wrote:
> I have a file X which contains ASCII text, but also in some lines German
> umlaut characters. The file is classified as:
> 
>      $ file X
>      X: ISO-8859 text, with CRLF line terminators

In ISO-8859, a German umlaut occupies one byte with the high-bit set.

> 
> However, if LANG is set to C.UTF-8, two things happen:
> 
> - grep classifies the file as binary file and produces the error message
> "Binary file X matches" 

In UTF-8, any one-byte sequence with the high bit set in isolation is an
encoding error (all high-bit bytes in UTF-8 occur in 2-or-more byte
sequences).  According to POSIX, grep is only required to operate on
text files, and the definition of a text file includes a requirement
that ALL bytes in the file form valid encodings of characters in the
current locale.  Yes, this means that there are files that are valid
text files in some locales and invalid in others (such as your file
here).  Once you violate the POSIX constraint of passing a non-text file
to grep, all bets are off, and grep can do whatever it wants, including
telling you that a binary file matches.

> 
> - Both the grepped lines (i.e. in our example the non-empty lines) AND
> the error message end up in the standard output (i.e. in file Y).

Yes, that's the current intended behavior in upstream grep. It's not
unique to Cygwin, so complaining here won't change it.

> 
> IMO, there are several problems with this:
> 
> 1. It's hard to see, why an umlaut character makes the file X binary
> under encoding C.UTF-8, 

Because it's not a valid UTF-8 encoding. Use iconv to convert your file
from ISO-8859 to UTF-8 if you want to grep it under C.UTF-8.

> but not under encoding UTF-8 or C.en_EN

Those aren't valid locale names.

But if you mean that it does what you want under LC_ALL=C, that's
because in the straight C locale, there are no multi-byte characters,
and therefore no encoding errors are possible, and therefore you can't
get a binary file in that locale due merely to an encoding error.

> 
> 2. If grep classifies a file as binary, I think the desired behaviour
> would be to NOT produce any output, unless the -a flag has been
> supplied.

Once behavior is in the realm of the undefined, it's hard to say what
the desired behavior should be. But again, if you want the current
behavior changed, it's an upstream issue to complain about on bug-grep,
and not something that I'm going to change for Cygwin in isolation.

> 
> 3. If grep writes a message "Binary file ... matches", this message
> should go to stderr, not stdout. The stdout is supposed to contain only
> a subset of the input lines.

The message "Binary file ... matches" has always gone to stdout, even
before upstream was tightened to flag more encoding errors as binary
files.  Whether the behavior of mixing it with actual output is
desirable is a question for upstream.

-- 
Eric Blake, Principal Software Engineer
Red Hat, Inc.           +1-919-301-3266
Virtualization:  qemu.org | libvirt.org


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 604 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2017-05-24 12:18 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-05-24  8:30 Bug: grep behaves incorrectly under the locale C.UTF-8, if a file contains Umlaut characters Ronald Fischer
2017-05-24 10:05 ` Andrey Repin
2017-05-24 10:20   ` Ronald Fischer
2017-05-24 11:42 ` Erik Bray
2017-05-24 12:33 ` Eric Blake

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).