Aaron Jacobs
dc1be2d5b8
Update documentation for Go style.
6 years ago
Aaron Jacobs
2642d571aa
memfs_test: pass on Go 1.8 and above, too.
...
This was broken by golang/go@321c312d8246dec6889f5fe334b6193c320baf0e.
6 years ago
Aaron Jacobs
dfa49f5592
buffer: fix build issues on Go 1.8.
6 years ago
Aaron Jacobs
cea04881bd
buffer: generate decent code for OutMessage.Reset in Go 1.8 beta 2.
6 years ago
Aaron Jacobs
bd496ea048
buffer: don't use memclr for the tiny header, whose size is known.
6 years ago
Aaron Jacobs
05b4591414
buffer: split runtime.s into pre- and post-Go 1.8 files.
...
Go 1.8 renamed this function; cf. golang/go@87e48c5.
6 years ago
Aaron Jacobs
641629d124
buffer: refactor to a form that won't require memclr.
...
Necessary because our evil memclr should go away.
Benchmarks:
benchmark old ns/op new ns/op delta
BenchmarkOutMessageReset/Single_buffer-12 4.94 4.95 +0.20%
BenchmarkOutMessageReset/Many_buffers-12 10.4 12.0 +15.38%
BenchmarkOutMessageGrowShrink/Single_buffer-12 42861 47666 +11.21%
BenchmarkOutMessageGrowShrink/Many_buffers-12 101896 100626 -1.25%
benchmark old MB/s new MB/s speedup
BenchmarkOutMessageReset/Single_buffer-12 4853.85 4851.64 1.00x
BenchmarkOutMessageReset/Many_buffers-12 2311.82 2006.72 0.87x
BenchmarkOutMessageGrowShrink/Single_buffer-12 24464.39 21998.19 0.90x
BenchmarkOutMessageGrowShrink/Many_buffers-12 10290.60 10420.48 1.01x
6 years ago
Aaron Jacobs
95e4d8b12e
conversions.go: use the new buffer API.
6 years ago
Aaron Jacobs
0cd689f560
buffer: simplify storage of the header.
6 years ago
Aaron Jacobs
d1ff915b0b
OutMessage.OutHeader
6 years ago
Aaron Jacobs
849f53b080
OutMessage.ShrinkTo
6 years ago
Aaron Jacobs
e03fa52bbf
OutMessage.Grow
6 years ago
Aaron Jacobs
d1ed507a5a
OutMessage.GrowNoZero
6 years ago
Aaron Jacobs
a7c1a1474a
buffer_test: fix build errors.
6 years ago
Aaron Jacobs
0a22738acf
OutMessage.Bytes
6 years ago
Aaron Jacobs
6f4af61734
buffer: consistently use 'm' for OutMessage receivers.
6 years ago
Aaron Jacobs
98a2b634bf
OutMessage.Reset
6 years ago
Aaron Jacobs
9eb5e0793f
buffer: define OutMessage's contents.
6 years ago
Aaron Jacobs
6e5247d16d
buffer_test: make use of the new API.
6 years ago
Aaron Jacobs
0f6db15c59
buffer: give OutMessage's public API a makeover.
...
Use int where appropriate, fix up documentation, and clarify. Delete the
implementation where it will soon need to change.
6 years ago
Aaron Jacobs
10bc0e766c
buffer_test: fix computation of the number of bytes cleared.
6 years ago
Aaron Jacobs
40b516328e
buffer: expand test coverage.
...
In preparation for changing the public API.
6 years ago
Aaron Jacobs
06b9c19b5e
TestOutMessageHeader
6 years ago
Aaron Jacobs
78a1450a77
TestOutMessageShrinkTo
6 years ago
Aaron Jacobs
39f1f7c489
TestOutMessageAppendString
6 years ago
Aaron Jacobs
c1af0dbdee
TestOutMessageAppend
6 years ago
Aaron Jacobs
e7b9860f41
buffer_test: expand the coverage of TestOutMessageGrow.
6 years ago
Aaron Jacobs
02e3f7895c
buffer_test: expand the coverage of TestOutMessageReset.
6 years ago
Aaron Jacobs
f250e46e83
buffer_test: add TODOs where more test coverage is necessary.
6 years ago
Aaron Jacobs
102b1184fb
buffer: add more tests.
...
At the level of the OutMessage API. In preparation for reworking its
implementation.
6 years ago
Aaron Jacobs
ad65849346
Add a test for OutMessage.Grow.
6 years ago
Aaron Jacobs
e329c0ef33
Add a test for OutMessage.Reset.
6 years ago
Aaron Jacobs
e1a6f0e2d8
.travis.yml: require a modern version of Go.
...
For the sake of testing.T.Run.
6 years ago
Aaron Jacobs
2bb2916cf4
buffer: add tests and benchmarks.
...
In preparation for considering a switch away from the evil use of
runtime's internal memclr function.
6 years ago
Aaron Jacobs
72fc9c96ca
Add a benchmark for growing and shrinking.
...
This should better stress memclr.
6 years ago
Aaron Jacobs
b87ffb528b
Fix a bug in BenchmarkOutMessageReset.
...
I misunderstood what was being zeroed. Only the header is.
6 years ago
Aaron Jacobs
d31e0a4eae
Add a test for memclr.
6 years ago
Aaron Jacobs
92e3407014
Add benchmarks for OutMessage.Reset.
6 years ago
Aaron Jacobs
3b8b4e55df
Add support for osxfuse 3.
...
There are a few changes to tests and documentation to reflect changes to
osxfuse behavior. All of them should probably be seen as backwards
compatible. The tests now test the osxfuse 3 behavior, and for this
reason we should consider killing osxfuse 2 support after some time.
Closes #18 .
Closes #19 .
7 years ago
Aaron Jacobs
a067b22c1d
Fix issues around statfs(2) changes with osxfuse 3.
...
Tested on OS X 10.11.6 (15G1004) with osxfuse 3.5.2.
7 years ago
Aaron Jacobs
b2c3396382
Update state around "close without msyc" behavior on OS X.
7 years ago
Aaron Jacobs
d66bad8705
Unexport osxfuse-related code.
7 years ago
Aaron Jacobs
8b5caee575
Unexport OSXFUSEPaths.
7 years ago
Aaron Jacobs
f1e482d155
Move osxfuse-specific config into mount_darwin.go.
7 years ago
Aaron Jacobs
fc5bd98d65
Don't allow configurability for osxfuse paths.
...
There's no need to complicate the API. If osxfuse makes a
backwards-incompatible change again, we can add support for it.
7 years ago
Nemanja Zbiljić
eadfaa0742
Support OSXFUSE 3.x, fall back to 2.x if needed
...
Also supports custom bundled OSXFUSE installs.
7 years ago
Aaron Jacobs
0b9db0a706
fuse: improve debug logging, including more inode and name info.
...
To aid in debugging GoogleCloudPlatform/gcsfuse#170 .
7 years ago
Aaron Jacobs
652a72aae2
Return better errors from Mount, instead of dumping them to stderr.
...
For googlecloudplatform/gcsfuse#161 .
7 years ago
Aaron Jacobs
2c0c70f477
Kill off silly fusermount screen scraping.
7 years ago
Aaron Jacobs
2e4cd6720b
Add integration tests for mounting.
...
In particular TestNonEmptyMountPoint, which is currently failing on
Linux due to the poor error handling we inherited from bazil.org/fuse.
7 years ago