* Update goleveldb to v1.0.0
* Update goleveldb to 64b5b1c739545ed311fb9d9924d19d188fabdc83
- fix data race (758128399b1df3a87e92df6c26c1d2063da8fabe)
- optimizations from bytes.Buffer (42cf80bcefdf184caead3785a11b06fe6dfe9649)
- fsync after creating new manifest (eb135432c5aa4c841c91f3fdc871f07a94aa5a44)
* Update all dependencies.
Keep google.golang.org/api on v0.42.0 as that's the latest not borking
servicemanagement/v1 APIService.Enable.
* Pin bazil.org to latest version that supports macOS
Support has been removed in mid-2018 - see
https://github.com/bazil/fuse/issues/224
for details.
* pkg/blobserver/sftp: Make it pass on Windows
Translate paths with filepath.ToSlash
* Remove macos test cache
* go mod tidy
Remove zembed*.go as pkg/fileembed is history
* Remove caching in tests-linux
Co-authored-by: Tamás Gulácsi <tamas@gulacsi.eu>
- Add documentation in storage-examples for using Perkeep with b2 as a
storage backend. The documentation uses the new API terminology:
AccountID is no longer a thing in the Backblaze web console.
- Replace FiloSottile/b2 by perkeep/b2 where we host a copy of
clgillis's Pull Request[1]. We can point to the original project
again as soon as it is merged.
Note that I haven't updated the vendor directory and it seems that
`go mod vendor` updates way more things that are also outdated in the
master branch, so I will leave that as an exercise to whoever has
commit access :).
Before this Pull Request, launching the b2 storage would error with the
following error message:
```
Error parsing config: Caught panic: error instantiating storage for prefix "/sto-b2/", type "b2": Post "https://api000.backblazeb2.com/b2api/v1/b2_list_buckets": b2 remote error [bad_request]: accountId invalid
```
Now, it seems to work as expected!
1. https://github.com/FiloSottile/b2/pull/8
github.com/gopherjs/gopherjs no longer supports new Go versions and
doing a full perkeep build currently requires go 1.12.
This moves to github.com/goplusjs/gopherjs which supports new Go
version. Building perkeep no longer requires go 1.12.
- Support building webui with just go 1.15
- Before this PR, reactGen was built from the vendor directory.
Now, it is built with gomodules. We can't run it with `go run`
because it breaks myitcv.io/gogenerate which they use to determine
what file to compile.
- go.mod: require go 1.15
- goplusjs/gopherjs is built and ran with gomodules. We run it
with go run github.com/goplusjs/gopherjs
- Add test-tidy workflow to ensure that go.mod can't drift.
- We use go run -mod=readonly so packages are not sneakily updated.
Any update in go.mod should be voluntary.
This is in relation to #580; we will need something like it to hook
Bleve up to the index. Currently only the SQL backends are implemented;
the rest is still TODO.
This also updates the version of the postgres library that we're using;
the old one didn't support setting the isolation level in TxOptions.
Change-Id: I14fdf74832e088d164b757417bfbb500a752d216
This change:
1) makes perkeep.org/server/perkeepd/ui/goui a module on its own, so that it
gets ignored by go mod with respect to perkeep.org. Because there's no reason it
should appear in perkeep.org/go.mod, as it is only used by gopherjs to rebuild
the web UI code.
2) updates a few of our dependencies to keep up with upstream changes (go get
-u, go mod tidy, go mod vendor).
3) readds manually (since go mod vendor removes them)
vendor/github.com/gopherjs/gopherjs (and its deps) as well as vendor/myitcv.io
because they are needed when one wants to rebuild the web UI.
As a result I think we can now drop dep, so it is done in this change as
well.
Change-Id: I155819163e15e214a6ba44bab2c19ae171d83d1b
And vendor in a compatible GopherJS version
(bd77b112433e999447bf4bc599e36214ba494a99).
In addition, since GopherJS:
1) Still does not support Go modules for now
2) Seems to be dying (https://github.com/gopherjs/gopherjs/issues/894)
3) Has been hard to maintain for Perkeep
we decided to gradually move away from it, and to remove it from go.mod. As a
result, in this PR, we repurposed the skipGopherJS option into buildWebUI,
which, in combination with the GO111MODULE env value gives the 4 following
possible behaviours (GO111MODULE=auto omitted on purpose).
1) GO111MODULE=off, -buildWebUI=true:
-old behaviour, i.e. use vendored in gopherjs to rebuild (gophejs itself and then)
the web UI
2) GO111MODULE=off, -buildWebUI=false:
-fetch the JS code for the web UI and the publisher from the Google Cloud bucket
of the Perkeep project. That code was previously built by the scenario 1) and
uploaded there.
3) GO111MODULE=on, -buildWebUI=false:
-same as 2)
4) GO111MODULE=on, -buildWebUI=true:
-forces GO111MODULE=off behind the scenes when rebuilding GopherJS and the
web UI code with it.
Finally, we also modified the checks regarding where we are (i.e.
whether in $GOPATH/src/perkeep.org). Because even though go modules will
in theory allow to build from anywhere, since we disable modules when
the Web UI is rebuilt, we can therefore only do it from within the
GOPATH.
Change-Id: Iee66d7ee882c6d408b5996fd26178bcd7426e3f8
Wich also means updating github.com/gopherjs/gopherjs to
rev 0210a2f0f73c96103378b0b935f39868e5731809
Fixes#1211
Change-Id: I9ae580bffda523237d471942f39ae157ff4bd303