Jakob Borg
181939c841
lib/ignore: Correct case insensitive matching on Mac/Windows
...
There was a bug in that we only did the lowercase folding when the
pattern had an explicit (?i), which is not the case on Windows/Mac
necessarily.
2016-04-05 06:35:51 +00:00
Jakob Borg
1934b3a5b6
lib/ignore: Remove pattern for foo/** which is already covered by foo/
...
Actual speed difference according to benchmarks is hidden in the noise
Also make the "pattern" field for each entry match what is actually
evaluated.
2016-04-04 13:22:25 +01:00
Jakob Borg
4c3cd4c9e3
lib/ignore: Replace lib/fnmatch with github.com/gobwas/glob
...
Because it's literally ten times faster:
benchmark old ns/op new ns/op delta
BenchmarkMatch-8 13842 1200 -91.33%
BenchmarkMatchCached-8 139 147 +5.76%
benchmark old allocs new allocs delta
BenchmarkMatch-8 0 0 +0.00%
BenchmarkMatchCached-8 0 0 +0.00%
benchmark old bytes new bytes delta
BenchmarkMatch-8 12 0 -100.00%
BenchmarkMatchCached-8 0 0 +0.00%
2016-04-02 20:03:24 +01:00
Jakob Borg
a80fc1b062
Correctly report errors encountered parsing ignores ( fixes #2309 , fixes #2296 )
...
An error on opening .stignore will satisfy os.IsNotExist() and not be
reported. Other errors will be reported and stop the folder, including
is-not-exist errors from #include as these are passed through fmt.Errorf.
Also fixes minor issue where we would not print cause of folder stopping
to the log.
Also fixes minor issue with capitalization of errors.
2015-09-29 18:04:18 +02:00
Jakob Borg
b0cd7be39b
New global discovery protocol over HTTPS ( fixes #628 , fixes #1907 )
2015-09-20 21:10:53 +02:00
Jakob Borg
e3e1036dda
Correctly handle (?i) in ignores ( fixes #1953 )
2015-09-02 21:12:41 +02:00
Jakob Borg
7705a6c1f1
mv internal lib
2015-08-09 09:35:26 +02:00