Jarek Kowalski
de02941442
plumbed through key time in map storage
2017-11-23 16:43:34 -08:00
Jarek Kowalski
7c41f45e9f
extracted block formatting options into a struct under 'block'
2017-10-29 13:00:24 -07:00
Jarek Kowalski
49a806154a
code reorg
2017-10-29 12:03:49 -07:00
Jarek Kowalski
b6575a97ba
moved metadata manager to 'metadata' package and refactored initialization sequence
2017-10-29 10:29:22 -07:00
Jarek Kowalski
b5d0f2d120
more renames
2017-10-14 16:38:27 -07:00
Jarek Kowalski
c3f31d744f
removed stuttering
2017-10-14 16:38:22 -07:00
Jarek Kowalski
31e5bce1cb
moved object management to kopia/kopia/object
2017-10-14 16:38:22 -07:00
Jarek Kowalski
f33ae14573
renamed 'blob.Storage' to 'storage.Storage'
2017-10-14 16:38:09 -07:00
Jarek Kowalski
cc3e590136
moved block manager and formatter to a separate package
2017-10-09 06:42:30 -07:00
Jarek Kowalski
444b6306ca
refactored object manager to use block manager, exposed on repository
...
added CLI commands to manipulate blocks
2017-10-08 12:44:53 -07:00
Jarek Kowalski
91e43b6842
changed how pack files get split by using the same splitter mechanism (static or dynamic) in use for regular objects
2017-09-14 19:17:19 -07:00
Jarek Kowalski
b08a35e92b
refactored FS cache into reusable wrapper that can be applied on top of any filesystem abstraction
2017-09-04 17:42:50 -07:00
Jarek Kowalski
e8847b65cc
mounting webdav works, changed how FS directory caching is implemented to be based solely on ObjectIDs
2017-09-02 08:29:59 -07:00
Jarek Kowalski
2c6213239a
added cache expiration to fscache.Cache, so that entries based on ObjectID are cached for a very long time and others expire almost immediately.
...
This allows 'kopia mount all' to see newly created snapshots.
2017-08-29 21:47:06 -07:00
Jarek Kowalski
7b766a7681
fixed liter warnings not detected by old linter
2017-08-27 15:16:27 -07:00
Jarek Kowalski
d613d99f7e
beginnings of WebDAV mounting support, not really working yet, need to do have better caching
2017-08-27 15:02:56 -07:00
Jarek Kowalski
ebe00e9405
fixup
2017-08-27 09:00:32 -07:00
Jarek Kowalski
2b887b0b2e
changed fs.Reader to be a Seeker too
2017-08-27 08:58:59 -07:00
Jarek Kowalski
c3064f56b0
added experimental support for WebDAV backends (use http:// or https://)
2017-08-21 22:17:04 -07:00
Jarek Kowalski
484db94e23
removed support for legacy bundles, now that packs are supported everywhere
2017-08-19 18:06:15 -07:00
Jarek Kowalski
f0fcc60374
now that packing is transparent, inline object IDs are not needed, removed support for them and simplified ObjectWriter.Result() to no longer require a parameter
2017-08-19 14:23:09 -07:00
Jarek Kowalski
3e36ce748f
removed conditional PutBlock, which was causing more trouble that it's worth
...
with unconditional rewrites any partial block writes are self-correcting on subsequent updates,
without it they can't complete at all.
2017-08-13 08:54:50 -07:00
Jarek Kowalski
8dda3bf2c5
added option to read portions of blob storage blocks
2017-08-12 23:11:01 -07:00
Jarek Kowalski
94f5420557
re-added support for bundles (read-only) to aid data migration
2017-08-12 14:07:22 -07:00
Jarek Kowalski
ce4d59d8bb
added support for cancelling upload with Ctrl-C which marks the snapshot as incomplete
...
added --include-incomplete to 'backups' command
improved upload API, added support for better cancellation and upload limits
changed hashcache Reader and Writer to use interfaces
2017-08-10 20:27:31 -07:00
Jarek Kowalski
2c86e54c81
removed support for bundles now that packs are looking much better and more flexible
2017-08-10 18:24:22 -07:00
Jarek Kowalski
6821b8def4
Initial support for creating pack objects, which are identified by
...
P<pack-id>.<block-id> and store smaller files in big objects.
For each pack there is a corresponding metadata object that ObjectID to (offset,length) within a pack object.
2017-08-07 14:18:00 +02:00
Jarek Kowalski
2dfcd23ea9
added hashcache database, based on BoltDB which caches results of computing ObjectID for any given os.FileInfo.
2017-08-04 13:19:28 +02:00
Jarek Kowalski
21a1cbd0bb
renamed auth.Options to auth.SecurityOptions
2017-08-01 17:47:28 +02:00
Jarek Kowalski
cfbef13aff
Major refactoring to how repository connections are established and managed to simplify programmatic API usage and CLI.
...
Removed unnecessary and confusing options, improved the API.
2017-08-01 08:35:14 +02:00
Jarek Kowalski
095fc4aba4
removed 'client' package and merged with 'repo', names still not final
2017-08-01 08:29:42 +02:00
Jarek Kowalski
4dcdb69dcc
replaced use of Vault with Repository
2017-08-01 08:29:41 +02:00
Jarek Kowalski
c3f0d5ddc4
moved all Vault types to 'repo' package
2017-08-01 08:29:41 +02:00
Jarek Kowalski
6e28a8688c
changed blob.Storage.ListBlock() to return cancellation function
2017-07-01 12:03:42 -07:00
Jarek Kowalski
0195d2740a
moved directory JSON format handling to internal/dir
2017-01-30 20:04:13 -08:00
Jarek Kowalski
4b89c95721
moved hashcache to internal
2017-01-29 07:50:49 -08:00
Jarek Kowalski
a5cf717397
Refactored kopia.Connection to expose snapshot.Manager, which exposes methods to manipulate snapshots.
2017-01-28 21:24:01 -08:00
Jarek Kowalski
b21a53bccd
added backup size output
2016-10-01 10:19:38 -07:00
Jarek Kowalski
88e3366a41
Added support for upload and download throttling for GCS.
2016-09-19 20:38:25 -07:00
Jarek Kowalski
3323d17536
renamed storage.Storage to blob.Storage
2016-09-08 21:11:50 -07:00
Jarek Kowalski
baa8451403
added kopia.Connection as top-level API.
...
simplified vault API
2016-09-05 22:30:27 -07:00
Jarek Kowalski
7d066ae2ea
godoc
2016-08-28 10:18:16 -07:00
Jarek Kowalski
6f5b5dc9a9
Enabled bundling by default.
2016-08-27 14:29:35 -07:00
Jarek Kowalski
940e63832d
Moved ObjectID and BundledChildren out of EntryMetadata and into repofs.dirEntry.
...
Fixed metadata hashing of bundles.
2016-08-27 10:45:45 -07:00
Jarek Kowalski
cded7ba49b
renamed fs.EntryMetadataReadCloser as fs.Reader
2016-08-26 21:31:51 -07:00
Jarek Kowalski
38fc47e2f1
Continuing the API cleanup, Created internal/dirstream, internal/mockfs, repo/repofs and upload packages.
2016-08-26 21:26:35 -07:00
Jarek Kowalski
bf40d91585
replaced storage.BlockExists() with storage.BlockSize() which returns additional info
2016-08-25 21:39:17 -07:00
Jarek Kowalski
381d3780dc
simplified Storage.PutBlock() API - passing []byte instead of convoluted reader, this greatly simplifies crypto code in the Repository
...
removed Storage.Flush()
2016-08-24 22:18:22 -07:00
Jarek Kowalski
dcd7e0f76f
godoc cleanup, hiding internal APIs
2016-08-21 08:28:40 -07:00
Jarek Kowalski
91d4346f67
replaced generated protobuf code with hand-written, switched back to JSON serialization, but preserving protobuf code structure.
...
The generated code leaked unclean concepts to public API.
2016-08-21 00:21:40 -07:00