Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Filenames with extended characters are not handled well #406

Open
vaniwaar opened this issue Oct 2, 2015 · 74 comments
Open

Filenames with extended characters are not handled well #406

vaniwaar opened this issue Oct 2, 2015 · 74 comments

Comments

@vaniwaar
Copy link

vaniwaar commented Oct 2, 2015

I have a bunch of music files with extended ascii characters in their names. When I try to push these, drive does not retain the name properly:

vaniwaar@storage ~/gdrive $ drive push -r foo
Resolving...

  • /foo
  • /foo/98 Bol?ro (from 10).mp3
    Addition count 2
    Proceed with the changes? [Y/n]:
    vaniwaar@storage ~/gdrive $ drive push -r foo
    Resolving...
  • /foo/98 Bol�ro (from 10).mp3
  • /foo/98 Bol?ro (from 10).mp3
    Deletion count 1
    Addition count 1
    Proceed with the changes? [Y/n]:n
    vaniwaar@storage ~/gdrive $ ls foo
    98 Bol?ro (from 10).mp3
    vaniwaar@storage ~/gdrive $

Unfortunately, I can't attach the tar file with this example but I can send it to someone if requested.

--Ron

@odeke-em
Copy link
Owner

odeke-em commented Oct 2, 2015

Hello @vaniwaar, thanks for reporting this issue and welcome to drive!
So for starters, what does drive version say?

@odeke-em
Copy link
Owner

odeke-em commented Oct 7, 2015

Ping!

@vaniwaar
Copy link
Author

Sorry for the delayed response.

vaniwaar@storage ~ $ drive version
drive version: 0.3.0
Commit Hash: <CURRENT_COMMIT>
Go Version: <GO_VERSION>
OS: <OS_INFO>
BuildTime:

@odeke-em
Copy link
Owner

Hmm, you can properly bundle the build info by running

$ go get github.com/odeke-em/drive/drive-gen && drive-gen

For sure, please mail the reproducing cases to me and I'll check them out at the end of this week.

@vaniwaar
Copy link
Author

Just sent a tar file reproducing this situation.

--Ron

@odeke-em
Copy link
Owner

Hey @vaniwaar, I got sometime and I've tried to replicate your issue but in vain as you'll see in this YouTube video
Failed 406 reproduction

Is there a way you could reliably reproduce this issue?

Thanks.

@vaniwaar
Copy link
Author

I will give it a go when I get home. FWIW, the machine on which I am running this is Linux Mint 17.

--Ron

@vaniwaar
Copy link
Author

Video of the error occurring for me is at https://drive.google.com/file/d/0B4ia4frohAd6WEUyTnJ3cG53LUU/view?usp=sharing

This is on a Linux box: Linux version 3.13.0-37-generic (buildd@kapok) (gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1) ) #64-Ubuntu SMP Mon Sep 22 21:28:38 UTC 2014

@vaniwaar
Copy link
Author

Didn't mean to close this...

@vaniwaar vaniwaar reopened this Oct 28, 2015
@odeke-em
Copy link
Owner

The other problem is that you've never run

$ go get github.com/odeke-em/drive/drive-gen && drive-gen

like I had asked in comment #406 (comment). Also you are running code that is more than a month old yet I don't have the commit tag that I had requested for.
To get the latest code, please run

$ go get -u -v github.com/odeke-em/drive/drive-gen && drive-gen

then ping me and retry that example.
Thanks.

@vaniwaar
Copy link
Author

Updated and now have 0.3.1. Tried your command and it crashes:

vaniwaar@storage ~/gdrive/testing $ drive version
drive version: 0.3.1
Commit Hash: <CURRENT_COMMIT>
Go Version: <GO_VERSION>
OS: <OS_INFO>
BuildTime:
vaniwaar@storage ~/gdrive/testing $ go get -u -v github.com/odeke-em/drive/drive-gen
github.com/odeke-em/drive (download)
github.com/boltdb/bolt (download)
github.com/cheggaaa/pb (download)
github.com/mattn/go-isatty (download)
github.com/odeke-em/cache (download)
github.com/odeke-em/cli-spinner (download)
github.com/odeke-em/command (download)
github.com/odeke-em/exponential-backoff (download)
github.com/odeke-em/extractor (download)
github.com/odeke-em/log (download)
github.com/odeke-em/meddler (download)
github.com/odeke-em/pretty-words (download)
github.com/odeke-em/statos (download)
github.com/skratchdot/open-golang (download)
Fetching https://golang.org/x/net/context?go-get=1
munmap of stack space failed: errno 22
Aborted

goroutine 1 [select]:
main.$nested27
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/http.go:57
main.httpsOrHTTP
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/http.go:65
main.repoRootForImportDynamic
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/vcs.go:468
main.repoRootForImportPath
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/vcs.go:362
main.downloadPackage
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/get.go:269
main.download
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/get.go:166
main.download
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/get.go:232
main.download
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/get.go:232
main.runGet
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/get.go:72
main.main
/build/gccgo-go-8UjdDR/gccgo-go-1.2.1/src/cmd/go/main.go:161

goroutine 3 [syscall]:
goroutine in C code; stack unavailable

goroutine 8 [finalizer wait]:
vaniwaar@storage ~/gdrive/testing $

@odeke-em
Copy link
Owner

That's a gcc-go issue that you could file against the Go project if you'd like. However, try re-running it as it could be a bunch of factors.

@vaniwaar
Copy link
Author

Fixed the crash problem. Now it won't complete due to:

vaniwaar@storage ~ $ go get -u -v github.com/odeke-em/drive/drive-gen && drive-gengit.luolix.top/odeke-em/drive (download)
github.com/boltdb/bolt (download)
github.com/cheggaaa/pb (download)
github.com/mattn/go-isatty (download)
github.com/odeke-em/cache (download)
github.com/odeke-em/cli-spinner (download)
github.com/odeke-em/command (download)
github.com/odeke-em/exponential-backoff (download)
github.com/odeke-em/extractor (download)
github.com/odeke-em/log (download)
github.com/odeke-em/meddler (download)
github.com/odeke-em/pretty-words (download)
github.com/odeke-em/statos (download)
github.com/skratchdot/open-golang (download)
Fetching https://golang.org/x/net/context?go-get=1
Parsing meta tags from https://golang.org/x/net/context?go-get=1 (status code 200)
get "golang.org/x/net/context": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/context?go-get=1
get "golang.org/x/net/context": verifying non-authoritative meta tag
Fetching https://golang.org/x/net?go-get=1
Parsing meta tags from https://golang.org/x/net?go-get=1 (status code 200)
golang.org/x/net (download)
Fetching https://golang.org/x/oauth2?go-get=1
Parsing meta tags from https://golang.org/x/oauth2?go-get=1 (status code 200)
get "golang.org/x/oauth2": found meta tag main.metaImport{Prefix:"golang.org/x/oauth2", VCS:"git", RepoRoot:"https://go.googlesource.com/oauth2"} at https://golang.org/x/oauth2?go-get=1
golang.org/x/oauth2 (download)
Fetching https://golang.org/x/oauth2/google?go-get=1
Parsing meta tags from https://golang.org/x/oauth2/google?go-get=1 (status code 200)
get "golang.org/x/oauth2/google": found meta tag main.metaImport{Prefix:"golang.org/x/oauth2", VCS:"git", RepoRoot:"https://go.googlesource.com/oauth2"} at https://golang.org/x/oauth2/google?go-get=1
get "golang.org/x/oauth2/google": verifying non-authoritative meta tag
Fetching https://golang.org/x/oauth2?go-get=1
Parsing meta tags from https://golang.org/x/oauth2?go-get=1 (status code 200)
Fetching https://google.golang.org/cloud/compute/metadata?go-get=1
Parsing meta tags from https://google.golang.org/cloud/compute/metadata?go-get=1 (status code 200)
get "google.golang.org/cloud/compute/metadata": found meta tag main.metaImport{Prefix:"google.golang.org/cloud", VCS:"git", RepoRoot:"https://code.googlesource.com/gocloud"} at https://google.golang.org/cloud/compute/metadata?go-get=1
get "google.golang.org/cloud/compute/metadata": verifying non-authoritative meta tag
Fetching https://google.golang.org/cloud?go-get=1
Parsing meta tags from https://google.golang.org/cloud?go-get=1 (status code 200)
google.golang.org/cloud (download)
Fetching https://google.golang.org/api/drive/v2?go-get=1
Parsing meta tags from https://google.golang.org/api/drive/v2?go-get=1 (status code 200)
get "google.golang.org/api/drive/v2": found meta tag main.metaImport{Prefix:"google.golang.org/api", VCS:"git", RepoRoot:"https://code.googlesource.com/google-api-go-client"} at https://google.golang.org/api/drive/v2?go-get=1
get "google.golang.org/api/drive/v2": verifying non-authoritative meta tag
Fetching https://google.golang.org/api?go-get=1
Parsing meta tags from https://google.golang.org/api?go-get=1 (status code 200)
google.golang.org/api (download)
Fetching https://google.golang.org/api/googleapi?go-get=1
Parsing meta tags from https://google.golang.org/api/googleapi?go-get=1 (status code 200)
get "google.golang.org/api/googleapi": found meta tag main.metaImport{Prefix:"google.golang.org/api", VCS:"git", RepoRoot:"https://code.googlesource.com/google-api-go-client"} at https://google.golang.org/api/googleapi?go-get=1
get "google.golang.org/api/googleapi": verifying non-authoritative meta tag
Fetching https://google.golang.org/api?go-get=1
Parsing meta tags from https://google.golang.org/api?go-get=1 (status code 200)
github.com/odeke-em/ripper (download)
github.com/odeke-em/xon (download)
load cmd/cgo: package cmd/cgo: open /usr/src/cmd/cgo: no such file or directory

I c++ all day long but I don't know the first thing about go...

--Ron

@odeke-em
Copy link
Owner

I once encountered that and after dealing with gcc-go on Ubuntu plus other issues with it, I decided to install gc go from the official Go downloads page https://golang.org/doc/install and not gccgo. Worked for me, feel free to try it.

@vaniwaar
Copy link
Author

Getting closer. Now the last few lines are:

github.com/odeke-em/ripper (download)
github.com/odeke-em/xon (download)
-bash: drive-gengit.luolix.top/odeke-em/drive: No such file or directory
vaniwaar@storage ~/go $
vaniwaar@storage ~/go $

If you would like, I could give you an account on my machine and you could just work from there if it is easier...

--Ron

@odeke-em
Copy link
Owner

No thanks, that's alright.
Is your gopath properly set? Since you say it is almost done and the dependencies have been successfully updated

$ go get github.com/odeke-em/drive/drive-gen

Should run if your gopath is properly set.
Am off to class for a long day so I might not be too responsive, and no longer at a computer.

@vaniwaar
Copy link
Author

Ok, I got things going and the problem is still exactly as it was before:

vaniwaar@storage ~/gdrive/testing $ drive version
drive version: 0.3.1
Commit Hash: <CURRENT_COMMIT>
Go Version: <GO_VERSION>
OS: <OS_INFO>
BuildTime:
vaniwaar@storage ~/gdrive/testing $ drive push foo
Resolving...

  • /testing/foo
  • /testing/foo/98 Bol?ro (from 10).mp3
    Addition count 2
    Proceed with the changes? [Y/n]:
    vaniwaar@storage ~/gdrive/testing $ drive push --verbose --force foo
    Resolving...
  • /testing/foo
  • /testing/foo/98 Bol�ro (from 10).mp3
  • /testing/foo/98 Bol?ro (from 10).mp3
    Addition count 2
    Deletion count 1
    Proceed with the changes? [Y/n]:
    Push::Started /testing/foo/98 Bol?ro (from 10).mp3
    Push::Started /testing/foo/98 Bol�ro (from 10).mp3
    Push::Started /testing/foo
    Push::Done /testing/foo/98 Bol�ro (from 10).mp3
    Push::Done /testing/foo/98 Bol?ro (from 10).mp3
    Push::Done /testing/foo
    vaniwaar@storage ~/gdrive/testing $ which drive
    /home/vaniwaar/go/bin/drive
    vaniwaar@storage ~/gdrive/testing $

@odeke-em
Copy link
Owner

Hello again @vaniwaar, my mid term exams are finally done and I've gotten a little free time.
BTW all along you've never mentioned what your version of Go is.

To test out if this issue is a problem with your setup, golang version, OS packages that aid in string comparison etc, would you mind running this program at https://github.com/odeke-em/go-utils/blob/master/strcmp-check/main.go
by

$ go get github.com/odeke-em/go-utils/strcmp-check
$ echo <trippy_filename> | strcmp-check
$ # or
$ cat filenames.txt | strcmp-check

if you see a message like "panic" then it is a problem with your Go version, but please give me information on what the versions are before re-installing etc. Thanks.

@vaniwaar
Copy link
Author

Hope your midterms went well! I don't get any output:

vaniwaar@storage ~ $ echo gdrive/testing/foo/98\ Boléro\ (from\ 10).mp3 | strcmp-check
vaniwaar@storage ~ $

@vaniwaar
Copy link
Author

vaniwaar@storage ~ $ go version
go version go1.5.1 linux/amd64
vaniwaar@storage ~ $

@odeke-em
Copy link
Owner

How about?

$ echo "98 Boléro (from 10).mp3" | strcmp-check

@vaniwaar
Copy link
Author

vaniwaar@storage ~ $ echo "98 Boléro (from 10).mp3" | strcmp-check
vaniwaar@storage ~ $

@odeke-em
Copy link
Owner

Edit: Hello @vaniwaar I think @colinkeenan might have diagnosed your problem in issue #472 and he made a wiki entry here https://github.com/odeke-em/drive/wiki

@colinkeenan
Copy link

I have updated the wiki (https://github.com/odeke-em/drive/wiki#linux-terminal-character-encoding) with more information about setting LANG. The original as pictured above will work, but I added another way that may be easier:

 sudo localectl set-locale LANG=en_US.UTF-8

@odeke-em
Copy link
Owner

Thanks again @colinkeenan, in that case I'll remove the screenshot I attached to avoid any confusion so that users can then go directly to the link you've shared.

@odeke-em
Copy link
Owner

@vaniwaar ping!

@vaniwaar
Copy link
Author

Doesn't fix the problem... I have LANG set to en_US.UTF-8 but it still exhibits the same problem.

--Ron

@vaniwaar
Copy link
Author

@colinkeenan, I missed that instruction. Thanks!

--Ron

@odeke-em
Copy link
Owner

@vaniwaar good point. @colinkeenan good point, we could add a sanity check at the beginning.

@odeke-em
Copy link
Owner

Hey folks, I was wondering if y'all could try out the output of this https://gist.github.com/odeke-em/3f8eabb5547168fd402b and see if it catches your invalid locale. If so, we can adapt this code into drive to help catch this cases.

@colinkeenan
Copy link

It was in an inconvenient format because I assume I was not to include the "$" and ">" at the beginning of each line. I copy and pasted it line by line leaving that first character off. I got an error though:

/home/colin %mkdir -p locale-test
 /home/colin %cd locale-test && cat << ! > main.go && go get . && go run .
cmdand cmdand cmdand heredoc> package main
cmdand cmdand cmdand heredoc> 
cmdand cmdand cmdand heredoc> // Code credited to and adapted from asciinema
cmdand cmdand cmdand heredoc> // https://github.com/asciinema/asciinema/blob/c3ba15ba56aae69dd91d9a82a58d5351ad6f0285/main.go
cmdand cmdand cmdand heredoc> 
cmdand cmdand cmdand heredoc> import (
cmdand cmdand cmdand heredoc>   "fmt"
cmdand cmdand cmdand heredoc>   "os"
cmdand cmdand cmdand heredoc>   "strings"
cmdand cmdand cmdand heredoc> 
cmdand cmdand cmdand heredoc>   "github.com/asciinema/asciinema/util"
cmdand cmdand cmdand heredoc> )
cmdand cmdand cmdand heredoc> 
cmdand cmdand cmdand heredoc> func environment() map[string]string {
cmdand cmdand cmdand heredoc>   env := map[string]string{}
cmdand cmdand cmdand heredoc>   for _, keyval := range os.Environ() {
cmdand cmdand cmdand heredoc>           pair := strings.SplitN(keyval, "=", 2)
cmdand cmdand cmdand heredoc>           env[pair[0]] = pair[1]
cmdand cmdand cmdand heredoc>   }
cmdand cmdand cmdand heredoc>   return env
cmdand cmdand cmdand heredoc> }
cmdand cmdand cmdand heredoc> 
cmdand cmdand cmdand heredoc> func main() {
cmdand cmdand cmdand heredoc>   env := environment()
cmdand cmdand cmdand heredoc>   if !util.IsUtf8Locale(env) {
cmdand cmdand cmdand heredoc>           fmt.Fprintf(os.Stderr, "a non UTF-8 native locale detected")
cmdand cmdand cmdand heredoc>           os.Exit(1)
cmdand cmdand cmdand heredoc>   }
cmdand cmdand cmdand heredoc>  }
cmdand cmdand cmdand heredoc> !
go install: no install location for directory /home/colin/locale-test outside GOPATH
    For more details see: go help gopath
 /home/colin/locale-test %

@odeke-em
Copy link
Owner

Ooops my bad, let me it in the gist, please see https://gist.github.com/odeke-em/3f8eabb5547168fd402b#file-main-go.
Also if you use Vi/Vim you could just say

:%s/^> / /g

and it will strip them out

@odeke-em
Copy link
Owner

Yeah please properly setup your $GOPATH as shown here https://github.com/odeke-em/drive#requirements

@colinkeenan
Copy link

I had already done that the first time I reported an issue. Those paths are defined already:

/home/colin/locale-test %echo $GOPATH
/home/colin/gopath
 /home/colin/locale-test %echo $PATH
/home/colin/gopath:/home/colin/gopath/bin:/home/colin/gopath:/home/colin/gopath/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl

@odeke-em
Copy link
Owner

And you aren't able to build that example? To just get the example running in your case https://gist.github.com/odeke-em/3f8eabb5547168fd402b#file-build-alt-md

@colinkeenan
Copy link

go get github.com/asciinema/asciinema/util is not getting anything so the next part says stat main.go: no such file or directory

@odeke-em
Copy link
Owner

Please make sure you have the content of the gist https://gist.github.com/odeke-em/3f8eabb5547168fd402b#file-main-go pasted into main.go.

@colinkeenan
Copy link

I started over and went slowly.

mkdir locale-test
cd locale-test
vim main.go
go get . && go run .

And, of course, on the vim step, I put in the correct content. The result was the same as the first time:

go install: no install location for directory /home/colin/locale-test outside GOPATH
    For more details see: go help gopath

@colinkeenan
Copy link

I tried go get . && go run . in my home directory and also in the gopath directory after moving main.go to each of those locations and still got the same result each time.

@odeke-em
Copy link
Owner

No worries. I'll restep you through it
a) mkdir -p locale-test && cd locale-test
b) Paste the content of https://gist.github.com/odeke-em/3f8eabb5547168fd402b#file-main-go into a file called main.go inside that directory
c) perform the step in https://gist.github.com/odeke-em/3f8eabb5547168fd402b#file-build-alt-md

@colinkeenan
Copy link

I made a little progress. Not knowing anything about go but reading some answers and comments on http://stackoverflow.com/questions/18149601/go-install-always-fails-no-install-directory-outside-gopath, here's what I tried:

/home/colin/locale-test %export GOPATH=/home/colin/locale-test
 /home/colin/locale-test %export GOBIN=/home/colin/gopath/bin 
 /home/colin/locale-test %go get . && go run .
go run: no go files listed
 /home/colin/locale-test %ls
main.go  pkg  src
 /home/colin/locale-test %

As you can see, now the error message changed to go run: no go files listed

@odeke-em
Copy link
Owner

Please check out the comments I made in #406 (comment).

@colinkeenan
Copy link

I have been following those instructions correctly from the beginning. That was what generated the original error. Please look at what I have now done and see if you can understand what is wrong or different with my go installation because it's not working.

@colinkeenan
Copy link

I have had the correct main.go in the locale-test directory from the very beginning. After that, it's simply go get . && go run . which I can't get past.

@odeke-em
Copy link
Owner

There isn't a single step in #406 (comment) that has go run . in it, I also changed it up so that you wouldn't go get . that's why am wondering what you are running.

@colinkeenan
Copy link

What did you intend me to do with the last step of that comment? The last step is:

c) perform the step in https://gist.github.com/odeke-em/3f8eabb5547168fd402b#file-build-alt-md

And, when I click that link, it just takes me to the following code:

go get github.com/asciinema/asciinema/util && go run main.go

Which never worked because nothing was got from the get command and also makes no sense since the previous steps already obtained main.go.

Now, since I've had main.go for hours, please just tell me what to do with it without any links.

@colinkeenan
Copy link

Well, although I don't understand it, I went ahead and ran

go get github.com/asciinema/asciinema/util && go run main.go

after already having main.go. There was no output at all, but at least no errors.

@odeke-em
Copy link
Owner

Alright, if you go get asciinema/asciinema/util then you can run the content of main.go simply by go run main.go.
What do you mean by nothing was got from the get command?

  • If go get github.com/asciinema/asciinema/util succeeds you get no output, it only puts out content if it failed or there were warnings.
  • If go run main.go succeeds, there is no output either, nor crashes. If it fails then there is a problem.

@odeke-em
Copy link
Owner

Yes so finally that run it right, your result in #406 (comment) is it running alright, so your locale is set, all good then.

@colinkeenan
Copy link

Ok. I just ran it and it worked (i.e. no output). What does it mean. I thought the point was to generate some sort of error about the locale or something.

@odeke-em
Copy link
Owner

Not really, the point of that code was to crash and tell the user that their locale was not properly setup which is what will happen in the future if this code is incorporated. This way drive can't be run until they go through the setup that you provided in the wiki as well as the conversation in this issue. This will address the concerns raised in #406 (comment) and #406 (comment) as this issue is detectable.

@colinkeenan
Copy link

Well, not quite though. I believe he had his environment set to utf8 from the beginning. The problem was that the filenames were not encoded the same way. I thought he could set his locale to match the filename encoding and it would work, but he could not get that to work. However, simply converting the filenames to utf8 does work.

I think this utility will help, but you still need to detect whether or not the uploaded filename matches the local filename of the file just uploaded. It won't match if the filename encoding is not utf8 when the locale is utf8.

@odeke-em
Copy link
Owner

Ah I see, thanks. Do you think there is a way we could reliably detect this at startup time ie the discrepancy between the encoding? Would it be a good approach to take? Or do we just have to incur a comparison after every upload? Also there is a step before upload in trying to match files up, this will fail in any case if the locale and encoding discrepancies exist.

@colinkeenan
Copy link

Somehow it was uploading the file with the ? in the filename. If you can stop the upload from happening just by seeing that the filename has changed, then that would be enough. That's what happens when done in the browser. The error message isn't helpful at all though. It was something like "server error".

@vaniwaar
Copy link
Author

vaniwaar@storage ~ $ cd locale-test/
vaniwaar@storage ~/locale-test $ vi main.go
vaniwaar@storage ~/locale-test $ go get github.com/asciinema/asciinema/util && go run main.go
a non UTF-8 native locale detectedexit status 1
vaniwaar@storage ~/locale-test $

@colinkeenan
Copy link

@vaniwaar you should probably put your locale back to utf-8 since the attempted switch to iso-8859-15 didn't solve your problem. At least you confirmed this test works. I think he is planning to add it to drive and stop drive from working in non utf-8 environments, so you will need to put yours back to utf-8. You can run this script to verify you were successful.

@nelsonjr
Copy link

This seems to be happening with the mere presence of spaces in the file name. On some of my files with spaces (not all of them) the "drive push/pull" always tries to add/remove the files. By going to Drive's web console and removing the spaces (e.g. replacing with underscores) it works well going forward. Just rename back to have spaces and problem returns.

I tried running with -v but no useful data showed. How to enable debug to send to you?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants