1
0
mirror of https://github.com/rclone/rclone.git synced 2026-01-12 13:34:01 +00:00

Compare commits

..

1 Commits
v1.04 ... v1.02

Author SHA1 Message Date
Nick Craig-Wood
094cc27621 Version 1.02 2014-07-19 13:12:20 +01:00
10 changed files with 30 additions and 66 deletions

View File

@@ -2,13 +2,9 @@ TAG := $(shell git describe --tags)
LAST_TAG := $(shell git describe --tags --abbrev=0)
NEW_TAG := $(shell echo $(LAST_TAG) | perl -lpe 's/v//; $$_ += 0.01; $$_ = sprintf("v%.2f", $$_)')
rclone:
rclone: *.go */*.go
@go version
go install -v ./...
test: rclone
go test ./...
rclonetest/test.sh
go build
doc: rclone.1 README.html README.txt
@@ -23,7 +19,7 @@ README.txt: README.md
install: rclone
install -d ${DESTDIR}/usr/bin
install -t ${DESTDIR}/usr/bin ${GOPATH}/bin/rclone
install -t ${DESTDIR}/usr/bin rclone
clean:
go clean ./...
@@ -35,10 +31,10 @@ website:
cd docs && hugo
upload_website: website
rclone -v sync docs/public memstore:www-rclone-org
./rclone -v sync docs/public memstore:www-rclone-org
upload:
rclone -v copy build/ memstore:downloads-rclone-org
./rclone -v copy build/ memstore:downloads-rclone-org
cross: doc
./cross-compile $(TAG)

View File

@@ -261,11 +261,6 @@ Bugs
Changelog
---------
* v1.04 - 2014-07-21
* google cloud storage: Fix crash on Update
* v1.03 - 2014-07-20
* swift, s3, dropbox: fix updated files being marked as corrupted
* Make compile with go 1.1 again
* v1.02 - 2014-07-19
* Implement Dropbox remote
* Implement Google Cloud Storage remote

View File

@@ -2,34 +2,34 @@
title: "Rclone downloads"
description: "Download rclone binaries for your OS."
type: page
date: "2014-07-21"
date: "2014-07-19"
---
Rclone Download v1.04
Rclone Download v1.02
=====================
* Windows
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.04-windows-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.04-windows-amd64.zip)
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.02-windows-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.02-windows-amd64.zip)
* OSX
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.04-osx-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.04-osx-amd64.zip)
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.02-osx-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.02-osx-amd64.zip)
* Linux
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.04-linux-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.04-linux-amd64.zip)
* [ARM - 32 Bit](http://downloads.rclone.org/rclone-v1.04-linux-arm.zip)
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.02-linux-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.02-linux-amd64.zip)
* [ARM - 32 Bit](http://downloads.rclone.org/rclone-v1.02-linux-arm.zip)
* FreeBSD
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.04-freebsd-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.04-freebsd-amd64.zip)
* [ARM - 32 Bit](http://downloads.rclone.org/rclone-v1.04-freebsd-arm.zip)
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.02-freebsd-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.02-freebsd-amd64.zip)
* [ARM - 32 Bit](http://downloads.rclone.org/rclone-v1.02-freebsd-arm.zip)
* NetBSD
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.04-netbsd-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.04-netbsd-amd64.zip)
* [ARM - 32 Bit](http://downloads.rclone.org/rclone-v1.04-netbsd-arm.zip)
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.02-netbsd-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.02-netbsd-amd64.zip)
* [ARM - 32 Bit](http://downloads.rclone.org/rclone-v1.02-netbsd-arm.zip)
* OpenBSD
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.04-openbsd-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.04-openbsd-amd64.zip)
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.02-openbsd-386.zip)
* [AMD64 - 64 Bit](http://downloads.rclone.org/rclone-v1.02-openbsd-amd64.zip)
* Plan 9
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.04-plan9-386.zip)
* [386 - 32 Bit](http://downloads.rclone.org/rclone-v1.02-plan9-386.zip)
Older downloads can be found [here](http://downloads.rclone.org/)

View File

@@ -573,9 +573,7 @@ func (o *FsObjectDropbox) remotePath() string {
func metadataKey(path string) string {
// NB File system is case insensitive
path = strings.ToLower(path)
hash := md5.New()
hash.Write([]byte(path))
return fmt.Sprintf("%x", hash.Sum(nil))
return fmt.Sprintf("%x", md5.Sum([]byte(path)))
}
// Returns the key for the metadata database
@@ -668,7 +666,6 @@ func (o *FsObjectDropbox) setModTimeAndMd5sum(modTime time.Time, md5sum string)
if err != nil {
return fmt.Errorf("Couldn't set md5sum record: %s", err)
}
o.md5sum = md5sum
}
if !modTime.IsZero() {
@@ -677,7 +674,6 @@ func (o *FsObjectDropbox) setModTimeAndMd5sum(modTime time.Time, md5sum string)
if err != nil {
return fmt.Errorf("Couldn't set mtime record: %s", err)
}
o.modTime = modTime
}
return nil

View File

@@ -1,3 +1,3 @@
package fs
const Version = "v1.04"
const Version = "v1.02"

View File

@@ -555,12 +555,9 @@ func (o *FsObjectStorage) Update(in io.Reader, modTime time.Time, size int64) er
Metadata: metadataFromModTime(modTime),
}
newObject, err := o.storage.svc.Objects.Insert(o.storage.bucket, &object).Media(in).Name(object.Name).PredefinedAcl(o.storage.objectAcl).Do()
if err != nil {
return err
}
// Set the metadata for the new object while we have it
o.setMetaData(newObject)
return nil
return err
}
// Remove an object

View File

@@ -1,8 +1,3 @@
Remove FIXME skipping directory
Change lsd command so it doesn't show -1
* Make sure all Fses show -1 for objects Zero for dates etc
Todo
* FIXME: More -dry-run checks for object transfer
* Might be quicker to check md5sums first? for swift <-> swift certainly, and maybe for small files
@@ -51,7 +46,9 @@ Bugs
* When doing copy it recurses the whole of the destination FS which isn't necessary
Making a release
* make test
* go install -v ./...
* go test ./...
* rclonetest/test.sh
* make tag
* edit README.md
* git commit fs/version.go README.md docs/content/downloads.md

View File

@@ -260,21 +260,6 @@ func TestSync(flocal, fremote fs.Fs) {
// ------------------------------------------------------------
log.Printf("Sync after changing a file's contents, modtime but not length")
WriteFile("potato", "SMALLER BUT SAME DATE", t2)
err = fs.Sync(fremote, flocal, true)
if err != nil {
log.Fatalf("Sync failed: %v", err)
}
items = []Item{
{Path: "empty space", Size: 0, ModTime: t2, Md5sum: "d41d8cd98f00b204e9800998ecf8427e"},
{Path: "potato", Size: 21, ModTime: t2, Md5sum: "e4cb6955d9106df6263c45fcfc10f163"},
}
CheckListing(flocal, items)
CheckListing(fremote, items)
// ------------------------------------------------------------
log.Printf("Sync after removing a file and adding a file --dry-run")
WriteFile("potato2", "------------------------------------------------------------", t1)
err = os.Remove(localName + "/potato")
@@ -290,7 +275,7 @@ func TestSync(flocal, fremote fs.Fs) {
before := []Item{
{Path: "empty space", Size: 0, ModTime: t2, Md5sum: "d41d8cd98f00b204e9800998ecf8427e"},
{Path: "potato", Size: 21, ModTime: t2, Md5sum: "e4cb6955d9106df6263c45fcfc10f163"},
{Path: "potato", Size: 21, ModTime: t3, Md5sum: "100defcf18c42a1e0dc42a789b107cd2"},
}
items = []Item{
{Path: "empty space", Size: 0, ModTime: t2, Md5sum: "d41d8cd98f00b204e9800998ecf8427e"},

View File

@@ -518,7 +518,6 @@ func (o *FsObjectS3) Update(in io.Reader, modTime time.Time, size int64) error {
return err
}
// Read the metadata from the newly created object
o.meta = nil // wipe old metadata
err = o.readMetaData()
return err
}

View File

@@ -413,7 +413,6 @@ func (o *FsObjectSwift) Update(in io.Reader, modTime time.Time, size int64) erro
return err
}
// Read the metadata from the newly created object
o.meta = nil // wipe old metadata
err = o.readMetaData()
return err
}