configHandler strips the key "_knownkeys" from all JSON objects in its
output using a regex on the marshaled JSON. If this was the last key of
an object which contains multiples keys, this leaves the JSON in an
invalid state. For example,
{
"foo": "bar",
"_knownkeys": {}
}
becomes:
{
"foo": "bar",
}
The trailing comma here is illegal. To fix this, we run one more regex
across the output removing any comma at the end of a line just before a
closing brace. This is never valid in JSON, so is safe to remove
globally here.
Change-Id: I05f54e9f094fbe9cbc720f073b2b78ae80525106
storage.Client.CopyObject does not exist anymore. Replaced with CopyTo
calls.
Also removed checks based on the presence of /.dockerinit to know
whether we're on docker because apparently they're gone or something.
I'll investigate why and a replacement later; we want a new GCE docker
image asap and I'm pressed for time.
Change-Id: I6b3ebcb048f03bdf53db94b41fe96ddcb6ed7537
make the "REDACTED" placeholder a valid JSON string and include trailing
comma in attempt to make the document valid JSON (primarily helpful with
browser extensions that parse and render JSON documents, even though the
content type is text/plain).
Add client_secret to the list of redacted keys (used with google cloud
storage, possibly others).
Change-Id: Ia10fc9fffbd667ea7018b750b2a98db0b05dcf82
GitHub treats the CONTRIBUTING file special, in that it is referenced
any time someone files a new issue or starts to create a pull request.
Also make minor updates to file to use markdown and current hacking
instructions.
Change-Id: I68f0d7a69397851ee6c65671ae692cbfb2b93946
this is now needed to have camweb wrap the file in the site template
rather than just serving it raw.
Change-Id: I1ac20030dd7bf878429fd70386e2e2814c66822c
Using go4.org/cloud/google/gcsutil
for the things we can't yet do efficiently with the cloud/storage
Client.
Fixes issue #652
Change-Id: I8a43a754c4e0762629ce2a21bb95d9991f6f4771
to rev 36e3752134d445180a77cd40c922c48850b6fe9c
So we get ErrObjectNotExist on ObjectHandle.Delete
And update google.golang.org/api to rev
9737cc9e103c00d06a8f3993361dec083df3d252
for consistency.
Change-Id: I58c706d1d71a98ad01f4fef8929eac52338c1bbe
The help page in the camlistore binary has a direct link for "Search bar
predicates" that links to this search-ui.txt on gerrit. Restore this
file so that these links will still resolve, but with a pointer to the
new docs on camlistore.org.
Also update the help link for future builds of camlistore to point to
the correct URL.
Change-Id: Ib81ff820869d86e6e6f664e8b52c5f20d4eed4d3
It looks better than the half-organization we had so far, and it will
actually make it easier for editorial changes to come. Also keeps us
more honest about doing it sooner rather than later.
Change-Id: I6303325f6d75389c7e8ca908f3740cf92af3836a
The website has several non-HTML files that mostly serve as examples
(eg: https://camlistore.org/doc/json-signing/example/signing-before.camli).
Today these files are parsed and rendered the same as HTML files, which
is particularly bad for these json-signing examples. Instead, they
should be served raw, without any interpretation.
Change-Id: I09f7de130e55da7b2e585f1a110bbbf391f2279f
This is all so that we can enable auto creating header IDs based on the
text of the header. For example "# Foo" is converted to:
<h1 id="foo">Foo</h1>
I'm not really sure why this isn't a default option, but whatever. It's
also unfortunate that we have to copy all of the flags and extensions
from MarkdownCommon, but at least this will make it easier to add more
options in the future, I gues.
Change-Id: I65800c75560ad3b9a3fd0389b722c07ba11ee098
Update links to reference the website URLs rather than gerrit. There is
some more cleanup that could be done with the docs (for example, using
tables for the request and response keys), but this is focused on just
basic rendering.
Git is treating these as file deletions and additions... apparently
there were too many changes to treat them as renames, though that's what
they really are.
Refs #720
Change-Id: Ibca17b78e1412c049843236bfbc8f2a9e368bb23
It was breaking the websocket integration test. We still need to
compute the last status message even if nobody is currently connected,
because when a websocket connection does arrive, we need to send the
last commputed status message.
Change-Id: Icea0fcc69941aa6249d32f0a4ef4ec03bdfb1e20
Needed by bazil.org/fuse , it should have been added with
e0a9699c63
rev 8fdfb00a6a1add0f7a145480e3729a5427a74375
Fixes#730
Change-Id: I2f9c7aa21a5ead82d7043392e4a55baf3cecffe6
This helps set up serving /docs/ requests out of different file root.
Additional, this allows the actual files on disk used to satisfy
requests to contain a .md or .html file extension (basically simulating
Apache multiviews). Finally, requests that map to directories can be
satisfied by either a index.html or README.md file.
Ref #720
Change-Id: Id6076c242edd74b99a12699cd58c4567973d0d42
We used to have --depth=1 when cloning camlistore.org on startup, for
efficiency reasons.
But not having all the commits locally caused problems when pushing to
github, because it would see the remote had commits that we didn't.
So we're now doing a full cloning.
It looks like it's now taking ~4s (as opposed to ~2.5s before), and
consuming ~50MB diskspace (as opposed to 35MB before).
Plus a few bugfixes.
Change-Id: If7dbae1d3119d8b3336fb7d735f6bd0ba7606fc6