pkg/archive
Tonis Tiigi 4c53da8f9a Add basic support for .wh..wh..opq
This fixes the case where directory is removed in
aufs and then the same layer is imported to a
different graphdriver.

Currently when you do `rm -rf /foo && mkdir /foo`
in a layer in aufs the files under `foo` would
only be be hidden on aufs.

The problems with this fix:

1) When a new diff is recreated from non-aufs driver
the `opq` files would not be there. This should not
mean layer differences for the user but still
different content in the tar (one would have one
`opq` file, the others would have `.wh.*` for every
file inside that folder). This difference also only
happens if the tar-split file isn’t stored for the
layer.

2) New files that have the filenames before `.wh..wh..opq`
when they are sorted do not get picked up by non-aufs
graphdrivers. Fixing this would require a bigger
refactoring that is planned in the future.


Signed-off-by: Tonis Tiigi <tonistiigi@gmail.com>
2015-09-29 08:22:25 -07:00
..
testdata Move archive package into pkg/archive 2014-09-29 23:23:36 -07:00
archive.go Fixing Tar functions to support Windows long paths. 2015-08-11 16:07:36 -07:00
archive_test.go Fix docker cp Behavior With Symlinks 2015-07-30 12:14:28 -07:00
archive_unix.go Fix typo, "fil" -> "fill" 2015-08-19 21:50:54 -03:00
archive_unix_test.go pkg/archive: adjust chmod bits on windows 2015-03-04 14:10:37 -08:00
archive_windows.go Windows: Fix long path handling for docker build 2015-09-15 10:58:11 -07:00
archive_windows_test.go trivial: typo cleanup 2015-04-27 13:35:08 -07:00
changes.go fix golint warnings/errors on pkg/system and pkg/stdcopy 2015-08-13 18:47:13 +08:00
changes_linux.go ino and dev must both match for a file to be identical. 2015-05-05 11:06:54 -04:00
changes_other.go Windows: Docker build starting to work 2015-06-17 10:41:28 -07:00
changes_posix_test.go pkg/archive: test that confirms hardlink ordering 2015-02-06 18:14:38 +01:00
changes_test.go Add the parent directory to changes set if new files are generated 2015-06-10 20:29:29 +08:00
changes_unix.go fix golint warnings/errors on pkg/system and pkg/stdcopy 2015-08-13 18:47:13 +08:00
changes_windows.go fix golint warnings/errors on pkg/system and pkg/stdcopy 2015-08-13 18:47:13 +08:00
copy.go Windows: Fix absolute checks 2015-09-01 08:41:37 -07:00
copy_test.go Fix docker cp Behavior With Symlinks 2015-07-30 12:14:28 -07:00
copy_unix.go Windows - make docker cp functional 2015-08-06 11:22:38 -07:00
copy_windows.go Windows - make docker cp functional 2015-08-06 11:22:38 -07:00
diff.go Add basic support for .wh..wh..opq 2015-09-29 08:22:25 -07:00
diff_test.go Finally remove our copy of "archive/tar" now that Go 1.4 is the minimum! 2015-05-01 16:01:10 -06:00
example_changes.go archive: example app for diffing directories 2014-10-29 14:52:59 -04:00
README.md Move archive package into pkg/archive 2014-09-29 23:23:36 -07:00
time_linux.go Move archive package into pkg/archive 2014-09-29 23:23:36 -07:00
time_unsupported.go Move archive package into pkg/archive 2014-09-29 23:23:36 -07:00
utils_test.go Enable golint in pkg/arcive 2015-08-04 09:52:54 +08:00
wrap.go Finally remove our copy of "archive/tar" now that Go 1.4 is the minimum! 2015-05-01 16:01:10 -06:00
wrap_test.go Add coverage on pkg/archive 2015-04-24 17:03:33 +02:00

This code provides helper functions for dealing with archive files.