Commit Graph

213 Commits

Author SHA1 Message Date
Brad Fitzpatrick 70a9c72528 geocode: support the now-required Google API key and document how to configure
Change-Id: Ic4f01c7bf0ad37d06ee76aad53ad99a91d986c03
2018-04-25 11:20:47 -07:00
mpl 7a27eb42eb cmd: rename camget to pk-get, and make it a mode of pk
A couple of related fixes and renames too.

Updates #981
Fixes #1056

Change-Id: Id47a933c77422edfb9db41d34c38ed9d0d7a1846
2018-04-22 20:50:54 -07:00
Brad Fitzpatrick ca76a40bbc Rename camlistored to perkeepd.
Updates #981

Change-Id: I8fe43c240c149074c23128a89ab426af9cbf94b4
2018-04-21 11:06:09 -07:00
mpl ce4658abfc cmd: rename camput to pk-put, and make "pk put" call it
A new "put" mode is added to the pk command, so that the "pk put"
command can be used to create and upload blobs.

What this command does is actually just call the previously named
"camput" executable, which is renamed to "pk-put" in this change.

This involves adding a new way to register a mode in cmdmain, when such
a mode is just meant to call an external binary. To emphasize the
distinction, the existing func (to register a sub-command, or a mode) is
renamed from RegisterCommand to RegisterMode, and RegisterCommand is now
the name of the new func/way.

Updates #981
Updates #1056

Change-Id: Ief954c17aa88a376f551df7de4b4e9fe41ad96d1
2018-04-21 10:26:55 -07:00
Brad Fitzpatrick 61de9881da pkg/index: redo indexing of a blob when CAMLI_REDO_INDEX_ON_RECEIVE is set
So an upcoming HEIC reindexing tool.

Updates #969

Change-Id: If194904d770bb670fa581c4e5e09c303806bc784
2018-04-20 19:40:11 -07:00
mpl f8ef262ff9 make.go: clean up, notably remove the tmp source code mirroring
Fixes #1004

Change-Id: Iea01cfc601b8dd8f2a81fe5da40cdd272b164bb1
2018-04-17 19:39:46 +02:00
mpl 6dcbe2ee9c cmd/camtool: rename from camtool to pk
Updates #981
Updates #1056

Change-Id: Ib78c47a69fa9816d5ac6cc547586a2af321005e3
2018-03-06 16:20:59 +01:00
mpl db2604f981 pkg/schema: break static-sets in subsets for large directories
The current maximum size for a schema blob is 1MB. For a large enough
directory (~20000 children), the resulting static-set JSON schema is
over that maximum size.

We could increase that maximum, but we would eventually hit the maximum
blob size (16MB), which would only allow for ~300000 children. Even if
that is an uncommon size, it is technically possible to have such large
directories, so I don't think it would be reasonable to restrict users
to such a limit. So it does not seems like enough of a solution.

The solution proposed in this CL is to spread the children of a
directory (when they are more numerous than a given maximum, here set to
10000) onto several static-sets, recursively if needed. These
static-sets (subsets of the whole lot of children) are stored in the new
"mergeSets" field of their parent static-set schema. The actual fileRefs
or dirRefs, are still stored in the "members" field of the subset they were
spread in. The "mergeSets" and "members" field of a static-set are therefore
mutually exclusive.

Fixes #924

Change-Id: Ibe47b50795d5288fe904d3cce0cc7f780d313408
2018-02-09 01:36:38 +01:00
Mathieu Lonjaret 6e8a5930c9 all: make server advertise when it has legacy SHA-1 indexes, use that info
when its wholeref index lines contain any "sha1-" wholeref lines.

Then, have the client use that info when uploading files to also
compute the sha-1 (in addition to the sha-224) and ask the server for
both.

By client, we mean changes to cmd/camput, to pkg/client functions (for
camput and other Go clients, such as the apps), and to the web UI.

Also, add a -sha1 mode to devcam server, as well as the
CAMLI_SHA1_ENABLED env var, to facilitate testing/debugging of the
legacy sha1 mode.  Fix/document unrelated options in devcam server
while we're at it.

Change-Id: I369679d2a4719f6f8b409f78dd4d065e13a3f62f
2018-01-31 01:10:52 +01:00
Paul Lindner 459c75410e all: more renaming of Camlistore to Perkeep
Change-Id: I118e3cbcf20d80afeffc84f001388c4556f21628
2018-01-30 03:02:56 -08:00
mpl c03ad46ce9 doc: warn that multi claims are not implemented
Related: issue #110

Change-Id: I2726f4e2aef714b62397f3a30633eb30e65ef079
2018-01-24 01:34:52 +01:00
Brad Fitzpatrick 97752c049f doc: cross-link compare and prior-art pages
Change-Id: I0fbbe38a72b6d4de895c8f5e13c483375d20a5ba
2018-01-09 11:14:00 -08:00
Brad Fitzpatrick 916f8807a7 doc: add comparison to other software and services
Change-Id: I45f228abd4ca7f970e433e5254428dd48fe596fc
2018-01-09 11:04:44 -08:00
Brad Fitzpatrick 617ac40512 all: rename cammount to pk-mount
Updates #981

Change-Id: Ie1d2e3c0fd7e2b7a7801ceac0fd8f93f62d56651
2018-01-08 09:54:41 -08:00
Brad Fitzpatrick 9265c980de all: change github.com/camlistore/camlistore to github.com/perkeep/perkeep
Change-Id: I0d612bf450e9e8d9ce0767c5a0cb0c44c0d8704f
2018-01-05 19:49:59 -08:00
mpl 7eda9fd502 pkg/serverinit: remove DBNames and provide consistent default instead
DBNames is supposed to provide configuration for the various databases
names. However,
1) I contend that nobody needs or wants to configure them as long as we
provide sane defaults.
2) it seems the only obvious user we have for this is to set up some of
the names on GCE.
3) having another external source for names complicates the code
further, especially when we already have the distinction between
database names for DBMS and file names for file-based databases.
4) writing a correct documentation for it is awkward.

Therefore, in this CL, I propose that we remove DBNames. Instead,
genconfig.go now sets some consistent default names for the various
queues and indexes set up on a DBMS (MySQL, PostGres, Mongo). To that
end, we introduce the new, but optional, DBUnique configuration
parameter, that is used as a part of all the database names, in order to
be able to run several Perkeep instances on the same DBMS, without name
conflicts.

In addition, the queue for the bs->index synchandler is now set up on
the same DBMS that is already in use for the index itself, instead of
using a file-base database.
And i think we could proceed likewise for the other queues.

Fixes #951

Change-Id: Ib6a638f088a563d881e3957e4042e932382b44f4
2018-01-04 04:01:34 +01:00
Brad Fitzpatrick ac44e8ef57 doc: add missing jsondoc.go from e093206a2a
Change-Id: I9f91a330f854e47888bd5f6286e8da4fecde262f
2018-01-02 19:29:44 -08:00
Brad Fitzpatrick 80b44a0a00 Merge "doc: add jsonsign protocol docs" 2018-01-03 03:26:23 +00:00
Brad Fitzpatrick e093206a2a doc: add jsonsign protocol docs
And misc tweaks.

Updates #1009
Updates #1007

Change-Id: Ibb750c8cc69763c0a59b72f42bc53f68e3ee120f
2018-01-02 19:24:58 -08:00
Adam Shannon 37ac053294 website: add /doc/search-ui under "For Users"
Change-Id: I18a1bd2d8866879096b23eaebe460542bc68776b
2018-01-02 19:55:35 -06:00
Mathieu Lonjaret 5087c6efd9 Merge "doc: add libchop and upspin to related projects" 2018-01-02 15:02:09 +00:00
Will Norris c155466aba doc: add libchop and upspin to related projects
fixes #674

Change-Id: I14ac5b9c5dcece685391863b50ec018c13af535e
2018-01-02 06:32:29 +00:00
Will Norris a36741bce4 doc: remove unused search-ui.txt
fixes #735

Change-Id: I7af63739fecd423b4cbe04d163f214f3b5eb042b
2018-01-02 06:18:23 +00:00
Brad Fitzpatrick d6a0b05df0 Rename import paths from camlistore.org to perkeep.org.
Part of the project renaming, issue #981.

After this, users will need to mv their $GOPATH/src/camlistore.org to
$GOPATH/src/perkeep.org. Sorry.

This doesn't yet rename the tools like camlistored, camput, camget,
camtool, etc.

Also, this only moves the lru package to internal. More will move to
internal later.

Also, this doesn't yet remove the "/pkg/" directory. That'll likely
happen later.

This updates some docs, but not all.

devcam test now passes again, even with Go 1.10 (which requires vet
checks are clean too). So a bunch of vet tests are fixed in this CL
too, and a bunch of other broken tests are now fixed (introduced from
the past week of merging the CL backlog).

Change-Id: If580db1691b5b99f8ed6195070789b1f44877dd4
2018-01-01 16:03:34 -08:00
Will Norris 4ede70d95a website: fix links on doc pages
Remove gerrit redirect for /doc/* links, and instead link directly to
the on-site doc page. This allows us to remove special handling of any
/gw/doc/* URLs. However, we also need to add special handling for
/gw/server/* URLs to fix a couple of broken links on /doc/status.md.

Change-Id: Ica73c3d78b47dd363c5c3e736123af2977dedb0d
2018-01-01 10:49:09 +00:00
Brad Fitzpatrick d893baa701 Merge "website: added note about MySQL permissions in server-config" 2017-12-29 15:54:10 +00:00
Mike Lloyd 223fb6e223 website: added note about MySQL permissions in server-config
This change specifies the required permissions when using a MySQL or
MariaDB index

Change-Id: Ib8852234946037da8f902bdaf4a6346f0f23ddec
2017-12-29 15:53:54 +00:00
mpl c03615688c website: link blobserver protocol on /doc/ page
Change-Id: I72ffe096dea13242b088b303561c237dca623dcb
2017-12-21 17:37:50 +01:00
mpl cea35f8a40 website: first pass of s/Camlistore/Perkeep/ on contents
A second pass will be needed on the URLs once we have moved all the
repos and such.

Issue #981

Change-Id: Ibb58f4c4f16481da69e811142e8337b826c0d164
2017-12-18 16:46:08 +01:00
Paul Lindner f28eb3cce8 Remove appengine server and the old python blobserver
Change-Id: I734f4621f77ce902050e9b37805e7f8912f75e97
2017-11-30 19:13:37 -08:00
mpl 28bc007676 pkg/serverinit: add low-level config generation for Backblaze B2
Fixes #971

Change-Id: Iba944e3597009b18a380007b72fba5127e9a1698
2017-10-26 19:59:01 +02:00
Mathieu Lonjaret be77d7a4cb Merge "website: add "ref" predicate in search-ui" 2017-09-21 14:39:03 +00:00
mpl f9093c6970 website: add "ref" predicate in search-ui
Also add anchor to each of the predicates

Change-Id: I9f785cdb5dbaf4c7947ee314570987c09dadc855
2017-09-21 16:37:25 +02:00
Sterchele Nicolas 2e46fca5cc Update camlistore and gopherjs to go1.9
Vendoring:
- update gopherjs to rev: b40cd48c38f9a18eb3db20d163bad78de12cf0b7
- as usual, replace the fsnotify import statements with our dummy
  pkg/misc/fakefsnotify, as described in
https://camlistore-review.googlesource.com/c/9409
- add vendor/golang.org/x/tools/go/gcimporter15 dependency from
  rev: e531a2a1c15f94033f6fa87666caeb19a688175f

- make.go + .travis.yml: make go1.9 the required version
- Update comments on doc/environments-vars.md for CAMLI_GOPHERJS_GOROOT

Fixes #948
Fixes #949

Change-Id: I9285aebadad1502708d164a9dc69e044a325cb3a
2017-09-20 08:23:11 +02:00
mpl 088cdae82d server/camlistored/ui: map aspect improvements
-keep the browser URL bar in sync with the current search/zoom-level

-introduce the "map:" predicate, to be used as the current viewport in
the map aspect. This was previously achieved with the locrect predicate. We
try to keep this new predicate unknown to the server, and replaced on
the fly by an equivalent locrect predicate.

-stay on the map aspect when the search expression has a map predicate.
Same thing when loading a URL with a map predicate parameter: try to
load directly on map aspect, instead of going to search aspect first.

-make sure there's only at most one map query in flight at all times

Change-Id: Ibf928ee5c926670c221f212f14ca9799e1e7bb79
2017-08-29 18:13:07 +00:00
Mathieu Lonjaret 89591fed0e Merge "pkg/search: support location area predicate" 2017-07-20 23:37:01 +00:00
mpl 1e56d64ee8 pkg/search: support location area predicate
This change adds the "locrect" search predicate, which works like the
"loc" predicate, except it allows to specify the coordinates of a
rectangular area as a location, instead of a named location.

The coordinates are the latitude and longitude of the North-East corner
of the rectangle, followed by the latitude and longitude of the
South-West corner. For example: locrect:48.63,-123.37,46.59,-121.28

Related: issue #934

Change-Id: I0cf39c1d0b49d557b2081f07b2c8b4508ccfc052
2017-07-20 01:34:27 +02:00
Mathieu Lonjaret 6325136bbd doc/overview: fix typo
Initial patch proposed on github by @joelterry

Change-Id: I16bbb1e2e18c2fd168c277acaced90cd8acef058
2017-07-18 15:35:19 +02:00
mpl d21ecfd24e website: 2017-05-05 release
GCE launcher also deploys at revision
8f1a7df176

Change-Id: I74b03e9b0cac08c13bde3083be99f4efa05b2d9d
2017-05-05 20:25:29 +02:00
Attila Tajti 4797dca34a doc: add reverse proxy settings for publisher
Change-Id: I5a4ed5f96506f4519d6bb7d183dee5af68c41fe0
2017-04-27 15:17:32 +02:00
mpl fae92b072e app/scanningcabinet: add go doc
Change-Id: I7076e0777a10675b0cf1ae5ed86e473dad148c46
2017-04-12 18:36:31 +02:00
mpl 71131ae554 website: add link to launcher on release page
Change-Id: I3f06ebb689ebaac6c5c47f6bf85c05831a97b6f0
2017-04-07 15:41:16 +02:00
mpl d8f58a3512 website: 2017-04-05 release
GCE launcher now also deploys at
9e34d14ef5

Change-Id: I61fc461832effc608f6daf7777eea599a1841a2e
2017-04-05 19:00:18 +02:00
mpl ece654c596 website: 2017-03-01 release
The image deployed by the launcher is also at
dc4d1650b3

Change-Id: Ifb22c5501aa31dde3ca5a0af2ad25c6127b293e1
2017-03-01 20:09:52 +01:00
mpl 372f6c68b2 doc: add low-level section in server-config
And the first low-level configuration example: replication to a remote
instance.

Change-Id: I028d9185c192421fe0904b3149d4d187c78474dc
2017-02-28 23:58:41 +01:00
mpl 0167d40164 vendor: update gopherjs to 1.8-1
rev b9bcb1da229a59cc1e1d168401662cb6450aae08

Also added pkg/misc/fakefsnotify just so we only have to do:
-       "github.com/fsnotify/fsnotify"
+       fsnotify "camlistore.org/pkg/misc/fakefsnotify"
in vendor/github.com/gopherjs/gopherjs/build/build.go
in order to avoid vendoring fsnotify, without having to grossly
patch the gopherjs code as we previously did.

Change-Id: Ic106a6afa1117d2061415355c236433f835895f1
2017-02-18 01:06:58 +01:00
Mathieu Lonjaret 5fc2ba9298 Merge "doc/storage.md: Document how to configure s3 storage" 2017-02-14 15:24:52 +00:00
Daniel Heath 0b682c6711 doc/storage.md: Document how to configure s3 storage
Change-Id: I10f8b43724063ec7dc091e250ff1f3834224165c
2017-02-14 16:22:26 +01:00
mpl fb8724d49a website: fix google styleguide URL
Fixes #907

Change-Id: I867b4efd7e8f56571d1b98464a350aa6f1adf153
2017-02-11 00:35:12 +01:00
mpl d72dc9a6ef doc: add camliNetIP in server-config
Change-Id: I3fc14112432db4428aee38862a709877d9fe9787
2017-01-30 16:39:28 +01:00