Welcome to Nashi Notes!
I'm glad you're here and you're reading this.
Your Johannes, TF
curl --silent "$source_url/_changes?feed=normal&style=all_docs" \ | |
| jq '.results | reduce .[] as $change ({}; . + { ($change.id): $change.changes | map(.rev) } )' \ | |
| curl --silent -XPOST "$target_url/_revs_diff" -d@- -H 'Content-Type:application/json' \ | |
| jq 'to_entries | reduce .[] as $entry ([]; . + ($entry.value.missing | map({ id: $entry.key, rev: . }))) | { docs: . }' \ | |
| curl --silent -XPOST "$source_url/_bulk_get?revs=true&attachments=true" -d@- -H 'Content-Type:application/json' \ | |
| jq '.results | map(.docs) | reduce .[] as $docs ([]; . + ($docs | map(.ok))) | { docs: ., new_edits: false }' \ | |
| curl --silent -XPOST "$target_url/_bulk_docs" -d@- -H 'Content-Type:application/json' \ | |
| jq |
{ | |
"builders": | |
[ | |
{ | |
"type": "qemu", | |
"output_directory": "output", | |
"iso_url": "trusty-server-cloudimg-amd64-disk1.img", | |
"iso_checksum": "cf12c9878c9fb71c95d8f8c288761a99", | |
"iso_checksum_type": "md5", | |
"ssh_wait_timeout": "300s", |
Welcome to Nashi Notes!
I'm glad you're here and you're reading this.
Your Johannes, TF
import PouchDB from 'pouchdb-browser' // Or however you are importing PouchDB using your module system | |
PouchDB.plugin((PouchDB) => { // Add the 'plug-in' to the Pouchdb instance | |
let pouchReplicate = PouchDB.replicate | |
PouchDB.replicate = (source, target, repOptions) => { | |
let sourceAjax = source._ajax | |
source._ajax = (ajaxOps, callback) => { | |
if (ajaxOps.url.includes('_selector')) { |
--53189632b3ce5de9dea79cb967b6e0c7 | |
Content-Type: application/json | |
{"_id":"gnome-rust-couchdb-adventures:text","_rev":"1-45fa252f660e886b336c780f328b0810","text":"Hello CouchDB!"} | |
--53189632b3ce5de9dea79cb967b6e0c7 | |
Content-Type: application/json | |
{"_id":"gnome-rust-couchdb-adventures:text","_rev":"2-f0216b155efdac3278a570f594ab0d83","text":"Hello CouchDB!\n<3"} | |
--53189632b3ce5de9dea79cb967b6e0c7-- |
name of display: :0 | |
display: :0 screen: 0 | |
direct rendering: Yes | |
server glx vendor string: SGI | |
server glx version string: 1.4 | |
server glx extensions: | |
GLX_ARB_create_context, GLX_ARB_create_context_profile, | |
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float, | |
GLX_ARB_framebuffer_sRGB, GLX_ARB_multisample, | |
GLX_EXT_create_context_es2_profile, GLX_EXT_create_context_es_profile, |
{ | |
"name": "hello-import", | |
"version": "1.0.0", | |
"scripts": { | |
"build": "rollup -c" | |
}, | |
"author": "Johannes J. Schmidt <[email protected]> (http://die-tf.de/)", | |
"license": "Apache-2.0", | |
"devDependencies": { | |
"events": "^1.1.0", |
function(doc) { | |
function emitObject(path, o) { | |
if (typeof o !== 'object') { | |
return emit(path, o); | |
} | |
for (var key in o) { | |
emitObject(path.concat(key), o[key]) | |
} | |
} |
I think the problem is that the proxy decodes the slashes, it rewrites %2F to / without being asked. One proxy, I donno remember if it was Apache or nginx, could get convinced to stop this url mangling by (!) appending a / to the proxy target.
See http://stackoverflow.com/questions/20496963/avoid-nginx-decoding-query-parameters-on-proxy-pass-equivalent-to-allowencodeds and https://wiki.apache.org/couchdb/Apache_As_a_Reverse_Proxy
{ | |
"vars": { | |
"@gray-base": "#000", | |
"@gray-darker": "lighten(@gray-base, 13.5%)", | |
"@gray-dark": "lighten(@gray-base, 20%)", | |
"@gray": "lighten(@gray-base, 33.5%)", | |
"@gray-light": "lighten(@gray-base, 46.7%)", | |
"@gray-lighter": "lighten(@gray-base, 93.5%)", | |
"@brand-primary": "darken(#428bca, 6.5%)", | |
"@brand-success": "#5cb85c", |