Closed eppfel closed 8 years ago
Interesting. To help me reproduce, could you record the underlying Git interactions as described here? It is likely a parsing bug of some kind.
Created a detached HEAD and repeated all procedures.
[
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
},
{
"command": [
"branch",
"-a",
"-vv",
"--no-abbrev",
"--no-color"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "* (HEAD detached at 83fbfce) 83fbfceb08d487b99f05601731baccbf95780463 Fix link color\n android-colors b3bd9348ae519047c8a1275e2fb44c66c2e5fe38 Improve Test for color-[id] className removal\n master 592ddc673be29f165b5c89412fdff73866e8d545 [origin/master] tx pull\n material-design c8302d3a5887c2c658c05fde353c59e8531255d1 [dharma-guardian/material-design] Merge branch 'android-colors' into material-design\n to-from-keys a15f4d6675f04b60f3fc37a9d943cfc47ef1c9d8 Fix #583 from/to label translatable\n remotes/dharma-guardian/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/dharma-guardian/android-colors b3bd9348ae519047c8a1275e2fb44c66c2e5fe38 Improve Test for color-[id] className removal\n remotes/dharma-guardian/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/dharma-guardian/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/dharma-guardian/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/dharma-guardian/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/dharma-guardian/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/dharma-guardian/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/dharma-guardian/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/dharma-guardian/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/dharma-guardian/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/dharma-guardian/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/dharma-guardian/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/dharma-guardian/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/dharma-guardian/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/dharma-guardian/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/dharma-guardian/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/dharma-guardian/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/dharma-guardian/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/dharma-guardian/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/dharma-guardian/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/dharma-guardian/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/dharma-guardian/master 592ddc673be29f165b5c89412fdff73866e8d545 tx pull\n remotes/dharma-guardian/material-design c8302d3a5887c2c658c05fde353c59e8531255d1 Merge branch 'android-colors' into material-design\n remotes/dharma-guardian/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/dharma-guardian/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/dharma-guardian/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/dharma-guardian/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/dharma-guardian/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/dharma-guardian/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/dharma-guardian/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/dharma-guardian/to-from-keys a15f4d6675f04b60f3fc37a9d943cfc47ef1c9d8 Fix #583 from/to label translatable\n remotes/dharma-guardian/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/dharma-guardian/user-agent 284a757a2180f68ca38ec16d4de300f34bfc8412 Add user-agent string to DebugLog // fixes WhisperSystems/Signal-Desktop#404\n remotes/dharma-guardian/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/dharma-guardian/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n remotes/origin/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/origin/HEAD -> origin/master\n remotes/origin/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/origin/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/origin/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/origin/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/origin/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/origin/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/origin/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/origin/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/origin/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/origin/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/origin/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/origin/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/origin/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/origin/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/origin/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/origin/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/origin/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/origin/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/origin/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/origin/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/origin/master 592ddc673be29f165b5c89412fdff73866e8d545 tx pull\n remotes/origin/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/origin/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/origin/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/origin/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/origin/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/origin/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/origin/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/origin/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/origin/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/origin/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n remotes/runn1ng/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/runn1ng/521_fix e603f4474c9f77e7d6fbece7f7e5d1cf01788da2 Getting listeners/promises/timeouts less crazy\n remotes/runn1ng/545_fix 071b0d463a498ccf8ddd9dabe44a7b3e57516fa2 Fixing upper bounds on contact search (fixes #545)\n remotes/runn1ng/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/runn1ng/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/runn1ng/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/runn1ng/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/runn1ng/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/runn1ng/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/runn1ng/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/runn1ng/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/runn1ng/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/runn1ng/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/runn1ng/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/runn1ng/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/runn1ng/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/runn1ng/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/runn1ng/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/runn1ng/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/runn1ng/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/runn1ng/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/runn1ng/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/runn1ng/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/runn1ng/master 7c506ccf7c609d863aa3ab370d6073ba90fe68e7 Making textareas less ugly\n remotes/runn1ng/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/runn1ng/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/runn1ng/redesign 4fb5e81a568cc1642ced9d770f806d944200469e Merge pull request #1 from dharma-guardian/redesign\n remotes/runn1ng/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/runn1ng/shadows 34913553dbe5baeee2293fe293f2f78bfa59568d some shadows\n remotes/runn1ng/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/runn1ng/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/runn1ng/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/runn1ng/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/runn1ng/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/runn1ng/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/runn1ng/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n"
},
{
"command": [
"config",
"branch.android-colors.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.material-design.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.to-from-keys.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/android-colors.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/material-design.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/to-from-keys.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/user-agent.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/521_fix.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/545_fix.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/redesign.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/shadows.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\n"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"merge",
"android-colors"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "Auto-merging stylesheets/_variables.scss\nCONFLICT (content): Merge conflict in stylesheets/_variables.scss\nAuto-merging js/views/inbox_view.js\nCONFLICT (content): Merge conflict in js/views/inbox_view.js\nAutomatic merge failed; fix conflicts and then commit the result.\n"
},
{
"type": "error",
"error": "'`/usr/local/bin/git merge android-colors` failed with following output:\\nAuto-merging stylesheets/_variables.scss\\nCONFLICT (content): Merge conflict in stylesheets/_variables.scss\\nAuto-merging js/views/inbox_view.js\\nCONFLICT (content): Merge conflict in js/views/inbox_view.js\\nAutomatic merge failed; fix conflicts and then commit the result.\\n\\n'"
},
{
"command": [
"branch",
"-a",
"-vv",
"--no-abbrev",
"--no-color"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "* (HEAD detached at 83fbfce) 83fbfceb08d487b99f05601731baccbf95780463 Fix link color\n android-colors b3bd9348ae519047c8a1275e2fb44c66c2e5fe38 Improve Test for color-[id] className removal\n master 592ddc673be29f165b5c89412fdff73866e8d545 [origin/master] tx pull\n material-design c8302d3a5887c2c658c05fde353c59e8531255d1 [dharma-guardian/material-design] Merge branch 'android-colors' into material-design\n to-from-keys a15f4d6675f04b60f3fc37a9d943cfc47ef1c9d8 Fix #583 from/to label translatable\n remotes/dharma-guardian/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/dharma-guardian/android-colors b3bd9348ae519047c8a1275e2fb44c66c2e5fe38 Improve Test for color-[id] className removal\n remotes/dharma-guardian/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/dharma-guardian/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/dharma-guardian/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/dharma-guardian/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/dharma-guardian/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/dharma-guardian/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/dharma-guardian/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/dharma-guardian/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/dharma-guardian/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/dharma-guardian/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/dharma-guardian/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/dharma-guardian/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/dharma-guardian/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/dharma-guardian/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/dharma-guardian/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/dharma-guardian/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/dharma-guardian/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/dharma-guardian/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/dharma-guardian/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/dharma-guardian/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/dharma-guardian/master 592ddc673be29f165b5c89412fdff73866e8d545 tx pull\n remotes/dharma-guardian/material-design c8302d3a5887c2c658c05fde353c59e8531255d1 Merge branch 'android-colors' into material-design\n remotes/dharma-guardian/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/dharma-guardian/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/dharma-guardian/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/dharma-guardian/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/dharma-guardian/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/dharma-guardian/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/dharma-guardian/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/dharma-guardian/to-from-keys a15f4d6675f04b60f3fc37a9d943cfc47ef1c9d8 Fix #583 from/to label translatable\n remotes/dharma-guardian/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/dharma-guardian/user-agent 284a757a2180f68ca38ec16d4de300f34bfc8412 Add user-agent string to DebugLog // fixes WhisperSystems/Signal-Desktop#404\n remotes/dharma-guardian/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/dharma-guardian/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n remotes/origin/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/origin/HEAD -> origin/master\n remotes/origin/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/origin/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/origin/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/origin/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/origin/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/origin/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/origin/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/origin/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/origin/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/origin/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/origin/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/origin/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/origin/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/origin/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/origin/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/origin/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/origin/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/origin/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/origin/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/origin/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/origin/master 592ddc673be29f165b5c89412fdff73866e8d545 tx pull\n remotes/origin/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/origin/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/origin/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/origin/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/origin/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/origin/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/origin/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/origin/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/origin/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/origin/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n remotes/runn1ng/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/runn1ng/521_fix e603f4474c9f77e7d6fbece7f7e5d1cf01788da2 Getting listeners/promises/timeouts less crazy\n remotes/runn1ng/545_fix 071b0d463a498ccf8ddd9dabe44a7b3e57516fa2 Fixing upper bounds on contact search (fixes #545)\n remotes/runn1ng/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/runn1ng/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/runn1ng/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/runn1ng/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/runn1ng/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/runn1ng/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/runn1ng/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/runn1ng/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/runn1ng/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/runn1ng/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/runn1ng/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/runn1ng/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/runn1ng/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/runn1ng/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/runn1ng/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/runn1ng/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/runn1ng/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/runn1ng/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/runn1ng/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/runn1ng/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/runn1ng/master 7c506ccf7c609d863aa3ab370d6073ba90fe68e7 Making textareas less ugly\n remotes/runn1ng/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/runn1ng/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/runn1ng/redesign 4fb5e81a568cc1642ced9d770f806d944200469e Merge pull request #1 from dharma-guardian/redesign\n remotes/runn1ng/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/runn1ng/shadows 34913553dbe5baeee2293fe293f2f78bfa59568d some shadows\n remotes/runn1ng/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/runn1ng/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/runn1ng/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/runn1ng/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/runn1ng/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/runn1ng/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/runn1ng/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n"
},
{
"command": [
"config",
"branch.android-colors.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.material-design.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.to-from-keys.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/android-colors.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/material-design.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/to-from-keys.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/user-agent.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/521_fix.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/545_fix.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"branch",
"-a",
"-vv",
"--no-abbrev",
"--no-color"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "* (HEAD detached at 83fbfce) 83fbfceb08d487b99f05601731baccbf95780463 Fix link color\n android-colors b3bd9348ae519047c8a1275e2fb44c66c2e5fe38 Improve Test for color-[id] className removal\n master 592ddc673be29f165b5c89412fdff73866e8d545 [origin/master] tx pull\n material-design c8302d3a5887c2c658c05fde353c59e8531255d1 [dharma-guardian/material-design] Merge branch 'android-colors' into material-design\n to-from-keys a15f4d6675f04b60f3fc37a9d943cfc47ef1c9d8 Fix #583 from/to label translatable\n remotes/dharma-guardian/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/dharma-guardian/android-colors b3bd9348ae519047c8a1275e2fb44c66c2e5fe38 Improve Test for color-[id] className removal\n remotes/dharma-guardian/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/dharma-guardian/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/dharma-guardian/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/dharma-guardian/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/dharma-guardian/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/dharma-guardian/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/dharma-guardian/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/dharma-guardian/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/dharma-guardian/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/dharma-guardian/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/dharma-guardian/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/dharma-guardian/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/dharma-guardian/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/dharma-guardian/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/dharma-guardian/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/dharma-guardian/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/dharma-guardian/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/dharma-guardian/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/dharma-guardian/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/dharma-guardian/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/dharma-guardian/master 592ddc673be29f165b5c89412fdff73866e8d545 tx pull\n remotes/dharma-guardian/material-design c8302d3a5887c2c658c05fde353c59e8531255d1 Merge branch 'android-colors' into material-design\n remotes/dharma-guardian/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/dharma-guardian/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/dharma-guardian/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/dharma-guardian/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/dharma-guardian/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/dharma-guardian/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/dharma-guardian/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/dharma-guardian/to-from-keys a15f4d6675f04b60f3fc37a9d943cfc47ef1c9d8 Fix #583 from/to label translatable\n remotes/dharma-guardian/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/dharma-guardian/user-agent 284a757a2180f68ca38ec16d4de300f34bfc8412 Add user-agent string to DebugLog // fixes WhisperSystems/Signal-Desktop#404\n remotes/dharma-guardian/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/dharma-guardian/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n remotes/origin/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/origin/HEAD -> origin/master\n remotes/origin/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/origin/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/origin/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/origin/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/origin/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/origin/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/origin/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/origin/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/origin/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/origin/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/origin/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/origin/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/origin/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/origin/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/origin/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/origin/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/origin/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/origin/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/origin/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/origin/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/origin/master 592ddc673be29f165b5c89412fdff73866e8d545 tx pull\n remotes/origin/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/origin/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/origin/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/origin/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/origin/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/origin/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/origin/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/origin/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/origin/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/origin/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n remotes/runn1ng/0.1.4 25dbfb929f6874441395012d5fcce9126509027b Clear dock/taskbar attention on window focus\n remotes/runn1ng/521_fix e603f4474c9f77e7d6fbece7f7e5d1cf01788da2 Getting listeners/promises/timeouts less crazy\n remotes/runn1ng/545_fix 071b0d463a498ccf8ddd9dabe44a7b3e57516fa2 Fixing upper bounds on contact search (fixes #545)\n remotes/runn1ng/app 029c9754f029fa358192afedff52b4d868ab0dcf Fix tests\n remotes/runn1ng/arlolra-sauce cc281205823e805090f21052de9f652a32ceb5a9 Add secure environment vars for travis\n remotes/runn1ng/closeSession 0e8a5806a814bd1d88ae12884038836294521892 Fix textsecure.closeSession\n remotes/runn1ng/conflict 8bda92f8d0df3b154dc4b5c6f321b19c602bd83e Improve identity key conflict ux\n remotes/runn1ng/decrypt 7331c594feb4837d98e46b372ab4084625c31be2 Remove non-existant device messages\n remotes/runn1ng/desktop-notifications f385ae42057f8c41374cbd2c49f35f52ebc3e045 Simplify avatar rendering\n remotes/runn1ng/dev 6572c0836f5a1684223a1104c8511e868c6b9882 Get notification permission on install\n remotes/runn1ng/deviceinit 1dd43da6c0d5e2d700104ad36f87916c7817e746 Mostly done device-bringup stuff\n remotes/runn1ng/devices 37e09da1cc155d2d58abc370cde2eae02ab376ab Remove unsued argument from getDeviceObject\n remotes/runn1ng/fix-travis 1564b8ceef852dd798edd7b563ef85458bbd3a54 Shouldn't need window here\n remotes/runn1ng/fix166 9c3f8a1868fbc8248fe39b979fbe8c7dbb91c64d Dont send group-update right before we quit the group\n remotes/runn1ng/fixolotl 33e1a587298febdb50e5bfacc0fe7cec9f1bccef Return end session messages to the frontend\n remotes/runn1ng/fixsauce c89d5e59a3a10aacc296f94797fe7b3f138a0f65 Fixup saucelabs\n remotes/runn1ng/jsb 1e34d4facd72628455b6ae00a20bc4e9c90c70ce Force style to js-beautify\n remotes/runn1ng/keepalive e4d651abc49b2e1703bcf21fe69bf107dd70e961 Use new provisioning socket keepalive path\n remotes/runn1ng/killstorage 8b9a1685249803a61ddeba5118c9803db3de8fd3 Store session information separately\n remotes/runn1ng/libaxolotl 148410a826dd1e567fd177cd23b8520a2383f73e Move jquery dep from libaxolotl to libaxolotl tests\n remotes/runn1ng/libaxolotlv0 4550d9afa447788c618f38a228c7cbdbeaa8c1b3 Re-add jquery as it is needed for our test runners\n remotes/runn1ng/libaxolotlv01 a35c4cf501739b4492c633b8c5592015e42726fa Re-run concat\n remotes/runn1ng/libts/nojquery e52224e481c376d01378ea497bdb1e1a15f7442f Remove libtextsecure's jquery dependency\n remotes/runn1ng/master 7c506ccf7c609d863aa3ab370d6073ba90fe68e7 Making textareas less ugly\n remotes/runn1ng/nolibaxo f8e69fa8e7d6ffbb06deec37f07fb8146227a9ac Remove now-unused X11 license file\n remotes/runn1ng/panels 44f9ea5d495caaee1a016fc078361683f19b7a5c Fix identity key error rendering\n remotes/runn1ng/redesign 4fb5e81a568cc1642ced9d770f806d944200469e Merge pull request #1 from dharma-guardian/redesign\n remotes/runn1ng/sauce d2ab8ddd5bf2f80ab7796ad32f40550a059774a8 Use a newer chrome version\n remotes/runn1ng/shadows 34913553dbe5baeee2293fe293f2f78bfa59568d some shadows\n remotes/runn1ng/storage d0e262d7cb801d51fd3e8406be37b7af17737b3d AxolotlStore stores groups in indexeddb\n remotes/runn1ng/sync 40351fcc54bbcf8dbd9587e0f1249e1d5d010b89 Sync outgoing messages\n remotes/runn1ng/sync_v2 8d74d25720ffd913d357bb9db67d361c5dd5e1f6 Fix reinstalls\n remotes/runn1ng/test e4b49bde516d85a7b0c09f226dbf8b037917ef26 Add more websocket tests\n remotes/runn1ng/travis e61e77f4116e0ba2037bb960a815402ea38a339e Expose test results to sauce\n remotes/runn1ng/webcrypto 3fffbad11adbede50198c73bc7526987f21e3608 Fix now-broken test cases and change lots of things over to promises\n remotes/runn1ng/wipe-identity c1912cc6c1354b805dbf9057d26a79e002e8cb06 Add device storage method to wipe an identity\n"
},
{
"command": [
"config",
"branch.android-colors.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.material-design.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.to-from-keys.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/android-colors.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/material-design.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/to-from-keys.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/user-agent.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.dharma-guardian/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.origin/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/0.1.4.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/521_fix.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/545_fix.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/app.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/arlolra-sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/closeSession.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/conflict.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/decrypt.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/desktop-notifications.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/dev.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/deviceinit.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/devices.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fix-travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fix166.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/redesign.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/shadows.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"config",
"branch.runn1ng/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"merge-base",
"HEAD",
"master"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "592ddc673be29f165b5c89412fdff73866e8d545\n"
},
{
"command": [
"branch",
"--no-color"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "* (HEAD detached at 83fbfce)\n android-colors\n master\n material-design\n to-from-keys\n"
},
{
"command": [
"merge-base",
"HEAD",
"master"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "592ddc673be29f165b5c89412fdff73866e8d545\n"
},
{
"command": [
"log",
null,
null,
null,
"--reverse",
"--format=%h%n%H%n%s%n%an%n%ae%n%at%x00%B%x00%x00%n",
"592ddc673be29f165b5c89412fdff73866e8d545..HEAD",
null,
null
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "90b73fc\n90b73fc5e87306d8dc822a5be39fac7435c1ffa6\nColorize message bubbles by contact-hash\nFelix Epp\nwork@felixepp.de\n1451779113\u0000Colorize message bubbles by contact-hash\n\nThe message view gets a color-[id] class wich is choosen from 15\ncolors found in conversations model.\n\u0000\u0000\n\na10ba19\na10ba1987c50ba00a15d81f0b3adb0b68f7a5299\nStyle missing grey status icons (short-term fix)\nFelix Epp\nwork@felixepp.de\n1451823082\u0000Style missing grey status icons (short-term fix)\n\nI use CSS brightness filter to darken the white status icons.\nThis is just a quick fix and should be revised by proper icons.\n\u0000\u0000\n\n0603208\n0603208478eb6cf2d7f5b74e2833c67350987003\nsome shadows\nKarel Bilek\nkb@karelbilek.com\n1450972133\u0000some shadows\n\u0000\u0000\n\nbb61319\nbb61319619bffd6c0778bfd5a1c525ae56f05718\nAdding search icon\nKarel Bilek\nkb@karelbilek.com\n1451049606\u0000Adding search icon\n\nIcon is from wikimedia commons, public domain\nhttps://commons.wikimedia.org/wiki/File:Vector_search_icon.svg\n\u0000\u0000\n\nf5a3fdc\nf5a3fdc97f3082713d2aea78f2e823e3f751ba8c\nslight design changes\nKarel Bilek\nkb@karelbilek.com\n1451050187\u0000slight design changes\n\u0000\u0000\n\n6a07970\n6a0797080102df6c281297ecfed0a958783b376d\nStyle control messages more unobtrusive\nFelix Epp\nwork@felixepp.de\n1451700847\u0000Style control messages more unobtrusive\n\nControl messages are not actual conversation and therefore should not have bubbles. I copied the style from the Android App: centered grey text without any box/background.\n\u0000\u0000\n\na22ee43\na22ee43914d1e3c5d403310bdc672b9fe6712ca1\nStyle overall look more clean\nFelix Epp\nwork@felixepp.de\n1451704665\u0000Style overall look more clean\n\nLess is more: less padding for conversation column (+ fix for avatar), smaller bubble radius, consistent background color in conversation list.\n\u0000\u0000\n\n8c8a7cc\n8c8a7cc310221b78355530710e684fbd28a1e65b\nAdd Material Design and Signal colors\nFelix Epp\nwork@felixepp.de\n1451848773\u0000Add Material Design and Signal colors\n\nCopied from Android\n\u0000\u0000\n\nae6606d\nae6606d8b0a7ded397b44360a8ac146881581a7e\nColor inbox background according to converstation\nFelix Epp\nwork@felixepp.de\n1451850568\u0000Color inbox background according to converstation\n\nAdds color-[id] class to the inbox. I had to change the class identfier\nfor open converstations from .inbox to .list for no style collision.\n\u0000\u0000\n\nb1c41e0\nb1c41e0ef3521f5e55e3036be00cf2439cddaa5d\nMerge branch 'master' into material-design\nFelix Epp\nwork@felixepp.de\n1451851876\u0000Merge branch 'master' into material-design\n\u0000\u0000\n\n83fbfce\n83fbfceb08d487b99f05601731baccbf95780463\nFix link color\nFelix Epp\nwork@felixepp.de\n1451857943\u0000Fix link color\n\nIncoming were not style at all and outgoing were invisible.\n\u0000\u0000\n\n"
},
{
"command": [
"config",
"branch.runn1ng/fixolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/fixsauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/jsb.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/keepalive.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/killstorage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/libaxolotl.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/libaxolotlv0.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/libaxolotlv01.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/libts/nojquery.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/master.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/nolibaxo.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/panels.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/redesign.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/sauce.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/shadows.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/storage.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/sync.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/sync_v2.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/test.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/travis.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/webcrypto.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"config",
"branch.runn1ng/wipe-identity.description"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"show-ref",
"--tags",
null
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "0d5291acad3e54c7c576e98d7a4b2153d95f6546 refs/tags/c53\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"log",
"--oneline",
"--graph",
"--decorate"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "* 83fbfce (HEAD) Fix link color\n* b1c41e0 Merge branch 'master' into material-design\n|\\ \n| * 592ddc6 (origin/master, origin/HEAD, dharma-guardian/master, master) tx pull\n| * 85817bb Ignore .tx/\n* | ae6606d Color inbox background according to converstation\n* | 8c8a7cc Add Material Design and Signal colors\n* | a22ee43 Style overall look more clean\n* | 6a07970 Style control messages more unobtrusive\n* | f5a3fdc slight design changes\n* | bb61319 Adding search icon\n* | 0603208 some shadows\n* | a10ba19 Style missing grey status icons (short-term fix)\n* | 90b73fc Colorize message bubbles by contact-hash\n|/ \n* 49285ba Add transifex link to README\n* f127807 Bump to 0.1.6\n* 609ad70 Add German and Finnish\n* 62af9ff Add user-agent string to DebugLog // fixes WhisperSystems/Signal-Desktop#404\n* 557d33b Fixing upper bounds on contact search (fixes #545)\n* a229075 Update project/repo names in package.json\n* c6956f8 i18n DebugLogView\n* 1d6e391 Prefer single quotes\n* 0e2d2d6 i18n KeyConflictDialogue\n* 3172c49 i18n ContactView\n* d502f1b i18n KeyConflictView\n* ccdbfc3 i18n AttachmentView\n* 47e33a1 i18n UnsupportedFileTypeToast\n* 42f1501 i18n FileSizeToast\n* 4066223 i18n SocketView\n* 836a7cb i18n InboxView\n* 85eb5c4 i18n KeyVerificationView\n* 95e47da i18n GroupMemberListView\n* 73ea415 i18n ConfirmationDialogView\n* ea9fa00 i18n MessageDetailView\n* 0a43e9e i18n EndSessionView\n* 02cc662 i18n ConversationView\n* e9d3272 Prepare for i18n\n* d03d6fb Fix autolinking for urls with non-English characters\n* 3d55f2c Update libtextsecure\n* 881aa16 Fix up unsupported attachment rendering\n* 239ec8e Fix test\n* ce51620 Add fullscreen permission // Fixes #538\n* e24fa69 Added test case for unsupported type\n* 8251db6 Added error message for unsupported attachment type (issue #419)\n* 04359c9 Remove received_at from message detail on outgoing messages\n* 093eb00 Correct log statement\n* 2a6f42f Add dist to .gitignore\n* ed4015f Return early from previewImages for unsupported files\n* fa6d697 Discard unsupported files\n* 41357b4 Bump version to 0.1.5\n* d95f869 More logging\n* 51fc10a Don't wake up to check messages if not registered\n* d201c65 More verbose logging in message receiver\n* 7215afb Resize paperclip.png\n* 0009a50 Clean up css style\n* 2618c80 Let container-div fit in key-verification-window\n* bc576e1 Fix no delivery receipts on close session messages\n* adf919e Make fingerprints selectable\n* a23e862 Clear dock/taskbar attention on window focus\n* dabe51f Mark message sent iff at least 1 recipient got it\n* 7f60a2d Bump version to 0.1.4\n* bbde528 Spiffed out icon\n* 63135a2 Fix race between sync messages and receipts\n* 077cba2 Ignore delivery receipts from myself\n* a137415 Fix standalone registration\n* 77caa63 Normalize views' template fetching pattern\n* 0e09948 Fix message view tests\n* 11cedcc Add model-level search tests\n* 61a57a7 Provide user feedback when number is invalid\n* 0159336 Add migration to update search tokens\n* 720032b Remove id from search tokens\n* a258f1a Refactor number parsing and validation\n* 7dd0fb7 Remove unused code\n* 65c13ad Fix searching for numbers with parens or dashes\n* 3d98b54 Create contact from number with common punctuation\n* ae52c04 Clean up open-event logic with new convos and search results\n* af64784 Let search match on full e164 format numbers\n* 0b7742e Create contact by number with no country code or +\n* 0b95606 Display nicely formatted phone numbers\n* f2d2e08 Fix code styling\n* 652d096 Add drag and drop support for text\n* d914f4a change attachment icon\n* 9031b4c Update libaxolotl\n* ea980b4 Don't surface invalid attachment urls to the user\n* 7b1268e Log incoming invalid attachment urls also\n* fe7505c Log invalid attachment urls\n* 84fc288 Update readme\n* c1300fc Add styling for the file input area\n* cbbb8df Add drag and drop for attachments\n* 4e416c6 Set textarea size to 100 % - button\n* 97d8d11 Set search-cancel-pointer to hand\n* ae3a834 Log global errors\n* c1aada4 Don't request background page from background page\n* 88ec597 Normalize message input font size\n* cb98970 Add missing image file\n* ae686b3 Style search clear element\n* 2cde35e Change input type of search field to \"search\"\n* 85285a1 Inline a one-line function only used in one place\n* 9c59dfd Remove duplicate case statement\n* 37edf47 Add link to blog post / beta signup in README\n* 74273e8 Update CONTRIBUTING.md\n* 68f2505 Display phone number in conversation header\n* 0620f08 Save single errors returned from send functions\n* 2f46983 Handle group quit sync messages\n* edcb28a Don't save a MessageCounterError\n* 8d24373 Update README\n* b093e34 Bump version to 0.1.3\n* 999e084 Serialize notification updates\n* d0b1aa3 Silently remove read messages from existing notifications\n* 1a6ceda Fix #402\n* 5a71d15 Update README\n* e783e49 Bump to 0.1.2\n* f1ca06e Change welcome screen copy\n* 05fc4c5 Bump to 0.1.1\n* 77623dd Tweak breakpoint width for conversation avatar\n* 87b0574 Update name/description in app manifest\n* 2df50a6 Update CONTRIBUTING.md\n* ce97aaa Added Bug, Ideas and Fund Sections to the Readme\n* b00d528 Save message timestamp for resending\n* 5d15069 Bump version to 0.1.0\n* db773dd Fix selected state transition on firstRun\n* 8d214b7 Render conversation placeholder hint in place\n* 891a5e5 Add hint for users with no groups or contacts\n* e994915 Always return a promise from sendSyncMessage\n* acae4af Handle invalid responses better\n* 7bf94c3 Show all contacts when inbox is empty\n* 152f59c Restyle first run hint\n* 52b039a Remove unused function\n* 6445581 Update libaxolotl\n* 63cd3b2 Use constant time mac comparison\n* d4e0c11 Show a hint on startup if the inbox is empty\n* 61439a8 Validate json responses\n* b0d4370 Remove unused variable\n* ea87062 Post debug logs as non public gists\n* 07702c4 Let the application layer send sync messages\n* 5c37c3d Change return type from sending messages\n* 7b6820d Refactor messageSender/OutgoingMessage\n* adf8445 Populate registrationIds on deviceObjects\n* cf85c5e Fix key conflict with self after master device re-install\n* 4cc6b1f Validate attachment urls\n* f977827 Use secure endpoints for dependencies\n* f006bd9 Update libaxolotl\n* 29977be Remove cryptojs\n* 36f3bc5 Add minimum chrome version\n* 50602fb Remove unnecessary jquery insertion\n* 2457d51 Ignore search queries that are all whitespace\n* 73ab95b Serialize search queries\n* 798d1a4 Remove missing js include\n* 4358a46 Remove unused file // FREEBIE\n* 24e1939 Update install copy\n* 1892eea Simplify meta/timestamp styles\n* ed32801 Reset unreadCounts\n* 31b29b6 Don't let unreadCount become negative\n* 83298b8 Mark conversation as read if open and window focused\n* 86edcc0 Add updating of window title on launch\n* 156c7c3 Add unread count in window title\n* 8c59862 Fix global unread message counting\n* 641a7db Update libaxolotl\n* 4615e73 Save ReferenceErrors on messages\n* 765668b Clear message collections when the window is closed\n* 2fc78dd Fix scroll position jumping when images load\n* 2ee8cae Move some initial setup to the 'opened' event\n* 2861fa2 Implement infinite scrolling message lists\n* abf402b Terminate cursor cleanly when using limit and index\n* 987c067 Remove unused styles\n* 5e255e9 Remove 'Textsecure' from error message in api.js\n* 70bde5f Update libaxolotl\n* d8318ba Remove the gradient\n* 393e3e1 Fix unread badge for longer numbers\n* 43ca929 Change search box placeholder\n* 4418be1 Update conversation header avatar if it changes\n* a8e02a9 Tweak selected state\n* 832f7ab Limit max widths of various elements\n* 596188a Fix protocol version check\n* 16dc7ab Display unreadCount badges in conversation list\n* f860278 Add avatars to conversation headers\n* 86d5ac7 Add missed css recompile\n* 7feb55c Fix twitter link in install flow\n* 0d5291a (tag: c53) Replace sinewave with ellipse\n* 20901e6 Better anti-aliasing on red error mark\n* b59b702 Clear the lastMessage when deleting a conversation\n* 717108d Add regression test for #270\n* f0dcf44 Use onClosed instead of onSuspend\n* 038e263 Fix the build\n* d607996 Fixes #394\n* 7105307 Install flow accessibility tweaks\n* 6fc4bad Fix typo in install flow\n* e5c6541 Validate number before showing step 4\n* f11cfcb Auto-populate device name\n* 334e26a Fix invisible message detail scrollbar\n* 573d14f Use larger icon on register.html\n* 9fcd423 Clean up references to appWindow\n* a569e34 Refactor new message notification and frontend updates\n* 055fc4f Update README and CONTRIBUTING\n* 847fa43 Save group members when creating groups from non-updates\n* a3d29a9 Reject messages sent to groups with no members\n* 4136e36 Fix incoming key conflict behaviors\n* c34f8e3 Clear timestamp timeouts if the window closes\n* 2ce890b Update message bubble timestamps as needed\n* ddd2e67 Fix re-rendering when resolving conflicts with media\n* 9c8933c Resolve conflicts one at a time\n* 4c4b875 Fix displaying contact names as 'Unknown Group'\n* 8a73706 Fix container height in message detail screen\n* 14cb6b5 Create install flow\n* 675be2b Don't reconnect if close was called\n* f863616 Remove api TODO comments\n* 80d3210 Clear session store when re-registering\n* a52d35b Refactor and fixup key requests\n* 6717390 Catch cancelation of confirmation dialog\n* c64fe84 Convo list shows 'Media message' when appropriate\n* 503509f Fix blank lastMessage for non-text messages\n* b18cfd7 Check for device keys in memory before requesting more\n* 2b9d039 Serialize requests for keys\n* 4e2723a Create notifications if window is not focused\n* 0f023ac Focus the message field when conversation opens\n* 287aa49 After choosing a file, focus the message field\n* 6c98fc1 Remove send button\n* cb3b9f0 Fix some error messages' wording.\n* 78a2b74 Restyle attachment previews\n* fe2b152 Change target for appending file previews\n* 9011a85 Change selector for opening a file input\n* b354851 Update CONTRIBUTING.md\n* a644b7a Update libaxolotl\n* cbc82a9 Refactor pending/sent/delivered state markup & css\n* 2e575bf Add missing images\n* c77391b Sinewave animation for pending requests\n* 1065502 Change key conflict error message\n* c9e0139 Use check/double check for sent/delivered\n* f8fd613 Update libaxolotl\n* ac7c95f Validate argument lengths in crypto.js\n* cb93ad4 Avoid opening message-detail twice\n* ec6898f Process incoming messages in order\n* 9b12d8a Reconnect provisioning socket\n* 47befdb Messages bubbles with errors are clickable\n* c79a917 Remove unused localStorage adapter\n* ff3b23e Make sure group updates get emojified\n* 01e85b6 Handle exceptions when fetching keys for devices\n* 12276e6 Refactor contents of sendMessageProto\n* a2c7ac0 Serialize message sending per-recipient\n* 4970cbe Fix overlapping name and timestamp\n* 65231f4 Shorten the search box\n* 9be5efc Simplify keepalive resets\n* 5a8787f More small tweaks\n* cafbc0f Tweak conversation list style\n* e68b84a Fix saving TypeErrors\n* e842ade Slow your roll, socket status updates\n* 4b47833 Make new-contact use cursor: pointer\n* 2e32c7b Small refactor of attachment views\n* 4a9fcc3 Use cursor: pointer on image attachments\n* 49585c8 Add feature to open image attachments\n* a32780d Mark delivered messages as sent\n* b65adc1 Restyle debug log\n* 861bc41 Update attachment size limits to match mobile clients\n* b9b0133 Move jquery from libtextsecure components\n* bf81686 Remove gray background from message detail\n* f7452d2 Conversation list style tweaks\n* b0112e8 Remove unnecessary check in gruntfile\n* 389b9a0 Initial restyle\n* ee393bf Ensure that tokens get updated on initial save\n* 2f8d973 Restore native window chrome\n* 82ce762 Remove stray log statement\n* d864819 Hide buttons for group creation, update, and leave\n* f70c22f Add search field to inbox\n* 7414828 Disable keepalive tests\n* 81ebc5f Improve stack traces on HTTPErrors\n* c062fe3 Automatically retry failed http requests\n* a93b8ce Collapse multiple retry buttons\n* 816a206 Refactor sendMessageToDevices\n* e9bc39b Add parens and line breaks\n* b1c933c Don't show myself in the message detail contacts list\n* 87d4f0d Fix non-disappearing resend button\n* 0ff38e4 Let keepalive listen to socket events\n* 1345899 Use reject instead of throw\n* a32f3ff More work on replayable errors\n* bc0c9bd Remove attachment host string replace\n* 69bbaac Fix conversation model test\n* 5eabfa2 Fix libtextsecure tests\n* 5bf6085 Fix MessageSender prototype\n* b0da491 Don't throw on unknown groups\n* b426269 Don't double-render key conflict errors\n* 7ec4700 Handle saving errors when none exist already\n* 4cc7a30 Remove error class when no more message errors\n* ae25d62 Fix up post-conflict resolution error processing\n* d381286 Don't throw errors from background\n* bbb5b24 Fix disappearing conversation bug\n* 8f003ea Don't throw if sender is not a group member\n* 4a1d0eb Pass bytebuffer to axolotlInstance\n* 46c9a7f Fix tryMessageAgain\n* 08b864b Fix standalone registration\n* 9872b59 Simplify filter predicate\n* 0fa1069 Don't throw on duplicate members in a group update\n* 1aee065 Fix registration\n* 978b3d1 DRY up tryMessageAgain\n* fbb65d1 Add replayable network errors\n* bc03bdb Move tryMessageAgain to MessageReceiver\n* 0fc673f Refactor sendmessage for prototypality\n* 8686955 Throw on bad server url\n* e30ac86 Remove deleted file from concatentation list\n* c8a1e09 Move handleAttachment and processDecrypted\n* a8f4bac Let makeAttachmentPointer resolve falsey arguments\n* e626355 Let background page instantiate AccountManagers\n* edd76ec AccountManager takes a url\n* 9de23a9 Fix dropping the first websocket message\n* 3fcd980 Add websocket error and close event handlers\n* 78956ed Disable keepalive if we disconnect the socket\n* 9e9d767 Add MessageSender\n* 98aa515 Refactor TextSecureServer for storage\n* 09bd6c7 Lint\n* 19423bf Abstract message error handling\n* e1c9e28 Add comment\n* 569d065 Fix test failure\n* 1c306df Workaround for #363 Multiple open sessions bug\n* 876e11c Fix sync messages not getting displayed on arrival\n* 7d6adc4 Save outgoing error codes when messages fail\n* a802322 Display a default message for incoming message errors\n* 929c160 Move error messages to message detail view\n* 9a63703 Close the socket/keepalive when going offline\n* c1b9f32 Save all errors\n* 37ff3cf Change http logging\n* 0f8aff1 Refactor contact rendering in message detail view\n* b853667 Stop keepalive when socket closes\n* 04c5f83 Un-nest libtextsecure errors\n* 1879e73 Allow one more retry if we get a 409\n* 8453424 Fix stuck pending messages state\n* f9ce27f Refactor index.js\n* 2bdd010 Add comments\n* eb1cfe9 Move notification listeners to background\n* 3bf9e36 Move function declarations out of storage.onready\n* c8e5156 Refactor initial sync codepath to application layer\n* 6123c41 Remove refreshGroup\n* 94e1c2d Remove check for .humanError property\n* 6547538 Use foreach instead of a loop\n* acaf7b8 Refactor relay consistency check\n* bafc616 Refactor sendMessageToDevices\n* 9ff95c7 DRY up group update sending\n* f00d118 More logging\n* f6b35ff Log error stack traces\n* 213dbde Reorder functions\n* 62c90e3 Don't save/log websocket error\n* 289b82d Expose messageReceiver.close\n* 1d37085 Remove unused callback arguments\n* 2204ef8 Fix event name\n* d1191c5 Log outgoing errors individually\n* ada3d99 Log outgoing errors\n* ce49d14 Fix leave group bug\n* 4a48224 Simplify event arguments\n* c8a76ab Fix websocket event handler name\n* 21667d9 Log when we start waiting for an online event\n* 823f570 Add more websocket debug logging\n* f70e844 Include url in http response logging\n* d8803ee Mark leave group messages as sent\n* b1d3829 Update minimal window dimensions\n* 960754e Restyle compose button\n* 2243c09 MessageReceiver is an event target\n* a925027 Refactor MessageReceiver for storage/server independence\n* e59a579 Don't hardcode the attachment host\n* 184e373 Don't auto-populate the relay field\n* 7d9cf0c Pass the signaling key into decryptWebSocketMessage\n* c167fc9 Revert \"Remove global updateInbox method\"\n* 87ce324 Remove script-tag for nonexistant test\n* 310f40f Contact sync should update existing contacts\n* 7f4ef6e Remove double-check of unread count\n* 1c70293 Remove global updateInbox method\n* 6364cda Create requires an object\n* 78d7296 Fix tests\n* b617240 Stop calling updateInbox all the time\n* 537f0ce Log all http requests at start and end\n* 0017f19 Move ConversationController to its own file\n* 8f28c3a Fix disappearing contact info\n* 93a5d01 Delete old code\n* 2bc65c2 Let messages fetch references to senders\n* fd29ac8 Promote groups to top of inbox when we update them\n* 7398311 Render emoji in conversation title // Fixes #359\n* 6f94888 Use online event listener to reconnect more smrtly\n* 37998e2 Log more errors\n* 36ec430 Fix broken group avatar preview\n* b60d3d0 Make debug log handle multiple arguments\n* 90e9216 Add UI for submitting debug logs\n* 9809894 Automatically mark the open conversation read\n* 15a366d Opening a conversation should focus the window\n* a57451d Show notifications if the window is minimized\n* f74a7b9 Add code for submitting debug logs\n* fa0e258 Fix new threads not appearing at top of inbox\n* df99da1 Mark relevant convos active/unread on key conflict\n* 15d8419 Include ourselves in member list for a new group\n* 8b27c99 Fix exception while creating a conversation\n* 4b0c70f Resolve multiple conflicts independently\n* 299bd45 Add background color on key verification screen\n* f8745e1 Remove inactive models from inbox collection\n* 80764bf Remove unused function\n* a390e37 Fixup change:active_at handling when setting null\n* 712cad3 Restyle new-contact element\n* b81d931 Fix double selected states\n* 50add90 Include image previews in notifications\n* d89e3cc Don't fetch messages from the background\n* bd5f43b Avoid excessive re-rendering of the inbox list\n* e80fa18 Upsize svg identicons\n* 1a30d00 Fetch group contacts before fetching new messages\n* edbf237 Don't reset inboxWindowId\n* e8edbe5 Improve notification behavior\n* 59313b5 Let message models manage blob urls for attachments\n* 04c8796 Disable socket level reconnect\n* 0ebdf08 Render identicons in notifications\n* 3bd9108 Use isPrivate helper\n* d6d1a7d Don't notify on sync messages\n* 6b48319 Fix reconnect bugs from previous commit\n* 16de5aa Improve reconnect logic\n* 756875f Refactor inbox collection listeners\n* 0509bb0 Remove global updateInbox, used scoped version\n* 949cb8d Use generic Backbone collection for inbox\n* 2ab7315 Use generic collection for conversation contacts\n* 6d4bf4e Whitespace\n* 8dc0980 On delivery receipts, reload messages only\n* 5378cd8 Fix multiple spaces not beeing displayed in message bubbles\n* ec4ef90 Fix text color and text selection color of outgoing links\n* 01b0f96 Fix text selection color of outgiong message bubble contents\n* 515e1be Update CONTRIBUTING.md\n* f764445 Remove erroneous license file and headers\n* 1427369 Fix suggestion list template\n* 98aed29 Fix conversations opening from the background\n* 24a18e9 Clean up shared compose/group update ui\n* e402338 Make it easier to reference templates\n* 239b87a Fix conversation resize bug\n* 7d9490e Add contact list view\n* 5d9965a Make all mustache templates available as partials\n* 9566f10 Add bottom border to conversation header\n* cee2d4c Tweak recipient input style\n* 3e5946a Move worker initialization to background.js\n* 0ec9e69 Tweak dev and default grunt tasks\n* 43aaf54 Compose flow style tweaks\n* cc92cdf After destroying messages, remove the conversation view\n* 272d098 Make checkmark black // Fixes #338\n* 50939d1 Restyle conversation menu button\n* 89f5f21 Fix new conversation with no lastMessage\n* 5b430fa Make sure newly active conversations are added to the inbox\n* fbb50e6 Change colors and backgrounds\n* e8b4bd7 Fix lint warnings\n* 9e79ecd Fix scroll stickiness while hidden\n* e3c56a0 Refactor and remove old window mgmt code/globals\n* 3bc64cb Remove unused function\n* 21aaf0f Clean up notification and unread indicator behavior\n* e0f84d9 Clear unread on focus iff convo is open\n* baa55c9 Refactor for less model duplication\n* c4eac76 Fix for new contact button bug\n* a5a1dad Redelegate events for new contact view\n* 3569050 Make conversation list fill gutter\n* 17051ce Only add loading class from inbox\n* fbc73c0 Add spinner for long-loading message lists\n* 992dfa5 Bug fixes for group create flow\n* 39d13d5 Quiet notifications if the window is open\n* 0b98043 Add a worker\n* d07357c Retool various sub-screens to fit two-column layout\n* c780713 Fix up socket status display\n* bcec207 Mark read when opening a conversation\n* 877b345 Fix heade text style\n* 00ef30b Remove css maps from git\n* d6a4e6e Restore two column layout\n* 00dfcbb Change websocket closed message\n* c3d3ec1 Wait for contact sync before opening inbox\n* 4f1ce4c Assume unknown recipients are single-device\n* 82431c3 Update compose typeahead after fetching\n* 001a914 Add group member list // Closes #279\n* a3054bb Update contributing.md\n* 98a14e9 Fix bug in message model\n* 3e73f8f Resolve conflicts in series\n* f3f0843 Handle identity key errors when retrying decrypt\n* ccfae3c Fix bug in identity key conflict edge case\n* d808d25 Fix bug with 0th contact color\n* 47b58b8 Use the correct number of contact colors\n* 4fc4573 Don't try to sync after single device registration\n* 2f12275 Update contact colors\n* b3d93ab Request group sync when pairing\n* c89d5e5 (runn1ng/fixsauce, origin/fixsauce, dharma-guardian/fixsauce) Fixup saucelabs\n* d93bacb Fix for too eager scrolling to bottom when the scroll isn't actually stick to the bottom before resizing the window\n* 1498d90 Maintain bottom-most scroll position when resizing conversation area, once again.\n* 56b6375 Use new provisioning socket keepalive path\n* 2b56321 Change default for keepalive autodisconnect config\n* fdad87b Add minimum window dimensions\n* 05e81a3 Let grunt-saucelabs wait a little longer for status\n* 88363da Migrate to new travis infrastructure\n* ebca58b Fix multiple calls to done\n* 9f8b632 Fix up sauce config\n* 8851a64 Increase saucelabs test timeout\n* 7c0eb5e Add keepalive reset test\n* 01ca1be Fix test\n* 1a06cb5 Update consumers of WebsocketResources\n* 1af8bd1 Add default response message to websocketresources\n* 44b7b32 Update tests\n* 637cbcb Make handleRequest optional in WebSocketResources\n* cd363bd Integrate keepalives into websocket resources\n* 7d2b41d Add auto-disconnect config to keepalive constructor\n* d9fe783 Accept close code/message via websocket/resources\n* 8170a7b WebSocketResource exposes socket.close()\n* 98edd39 Fix up websocket options handling\n* 4c9d690 Work on message receiver tests\n* d9d4e28 Keepalive provisioning socket\n* 0d0bdbf Don't auto-reconnect provisioning socket\n* 15cd348 Remove nonexistant variable\n* 1f8856f MessageReceiver accepts a server websocket url\n* fd5b0ae Set lastmessage text on convo's with no timestamp\n* 17e515f Add identity key conflict tests\n* c05be72 Move makeAttachmentPointer\n* 67f2521 Refactor outgoing identity key conflict handling\n* 27016e1 Let textsecure devices throw on identity key change\n* 4e88d4a Add missing semicolons\n* c28b540 Plumb keys into outgoing conflicts\n* 0815a96 Display the new key for verification after a conflict\n* cc303e0 Update libaxolotl, handle untrusted identitykey\n* af48ca9 Update libaxolotl, remove one string conversion\n* 1ab5af3 Update libaxolotl, un-revert b790f828491681c8a5\n* 7d3d634 Move/refactor keepalive logic and add disconnect timer\n* 8a10c96 Reconnect once a minute if internet is down\n* f6b5eec Let key verification view use array buffers\n* 17a3025 Mark end session messages sent\n* c94c4bc Remove redundant identity key updates\n* 2e272b6 Turn off idb query logging\n* 9dfff87 Remove usage of extension.trigger\n* 2ad422a Convert to array buffer\n* 1f80409 Fix up array buffer comparison\n* 853b578 Change default value for active_at\n* 809c9bd Save outgoing group updates\n* 9710799 Close stale windows on background refresh\n* 815b79d Cleanup 'Too many devices' dialog\n* 7b6cb27 Tweak error icon\n* a3ae3ca Use Promise.reject for simplicity\n* 20586e2 Namespace events\n* 6e74ac9 Dispatch all network errors, not just auth errors\n* b40a869 DRY up Promise creation in api.js\n* 3711e0a Convert throwHumanError to custom error type\n* e86c40d Add transparent padding to 128px icon // Fixes #251\n* b44c128 Mark messages sent after resolving outgoing key conflicts\n* 82de814 Reload harder\n* 5634176 Mark group creation messages as sent\n* 3e4c571 Fix initial input focus in compose view\n* a95b616 Ellipsize long conversation window titles\n* 476eb54 Maintain bottom-most scroll position when resizing conversation area.\n* 1a82a12 Use input instead of keyup/change events\n* cfc3b8e Fix phantom outgoing messages\n* fa4022a Invert pending/sent model\n* a66195a Fix messages stuck in pending state\n* 3cbe4f1 remove unused argument\n* 8745424 Fix outgoing identity key conflict handling\n* 9f021a9 Update notification code to new avatar format\n* 66ae368 Fix decrypt error handling\n* f8ae555 Fix standalone registration\n* 6a98fc8 Reload contacts when resetting a recipients input\n* f5f4c12 Fix tests, let templating handle html escaping\n* fcc873f Trim the message before sending - disable sending whitespace characters only\n* c20c59a Include Ctrl+Enter as one the shortcuts that insert line break instead of submitting the message\n* 86f7b7a Allow line breaks in messages. Closes issue #291\n* 52857f0 Fix for conversation & inbox windows closing callbacks never called.\n* 1b8071f Tweak app icons a bit\n* 90fe82a Fixes #286 Allow selection of message text\n* 6aa36a9 Place message body after attachments\n* 5242108 Fix group update avatar handling\n* 5e6145a Mark conversation read on window focus event\n* 29360fe Fixes #275 default group image\n* 9441fa9 Add short_name manifest attribute\n* feb5e5b Display gray # instead of colored + for no-name contacts\n* 4c40861 Fix reinstalls\n* db31835 Handle group sync for existing groups\n* 5925c2f Support for group sync\n* 3dd8056 Add error dialog for too many devices\n* f126e3b Work on auth error handling / reinstall\n* ef8a977 Sort contacts by name ignoring case\n* 2f935df Add contact sync request protocol\n* f32ff58 Add support for device name\n* 9f1af24 Remove old curve25519 build task\n* 7d568b5 Fixup auto-expand\n* b807060 Fix for potential memory leaks\n* 9c563cf Fix for message box auto-sizing behavior on resize; menu z-index fix\n* da1abd7 Remove message textarea resize handle; fix resizing after submit\n* 07ac0ae 239 Auto-expand message area when typing\n* 1696898 Fix avatars in conversation view\n* 9a4a91b Fix avatar test\n* e26b9bf Default avatar support\n* ada8f77 Improve behaviors around long messages display\n* 8dc4e34 Bug and test fixes for contact sync\n* 6a5f923 Don't set attributes redundantly\n* b0603bc Wrap message receiver for minimum api exposure\n* 1843341 PushMessageContent is now DataMessage\n* 316838c Add tests and bug fixes for ContactBuffer\n* 290283f Conversations do not require timestamps\n* 6d9854f Remove plaintext message test case\n* 228ffe9 Update json formatting for legacy message requests\n* a833d62 Implement sync protocol changes\n* 757bcd4 Reset recipient typeahead after selecting a recipient\n* e9e8757 Group update recipient typeahead excludes exisiting members\n* 694f801 Stop hiding inbox instead of closing\n* 72f16b9 Polish group update ux\n* 23db580 Support custom placeholder on recipients input\n* 9795b26 Supress change event on avatarUrl initialization\n* ac401c7 Fix socket status indicator\n* 6bcfa84 Fix window border\n* 363c436 Handle single-error rejections when sending messages\n* 6e1a41e Update inbox when group avatars change\n* 583fb98 Support late-addition of default image to file input\n* 061d57c Fix string vs number comparison\n* a9549e2 Fix 410 handling\n* 7d08e11 Fix close session\n* f4a206b Scale and crop avatars to 256 square thumbnails.\n* cdb7fcf Pass windows around to let file inputs work\n* 3d1df79 Update the window title when a group title or contact name changes\n* d26c13b Add openInbox link to conversation menu. Fixes #246\n* 9d688cb List views persist sroll offset by percentage\n* d064b16 Switch to signal icon\n* 905e0f2 Remove weirdly sized icons\n* 590deef Decrease auto-scaling size\n* a66c879 Update inbox after destroying a conversation\n* 3e73282 Fix key verification screen\n* e2eff89 Fix 'Delete messages'\n* a2abfe3 Fix tests\n* 8a17953 Display sent_at timestamps instead of received_at\n* 3e39271 Render messages light blue until finished sending // Fixes #219\n* 405e67c Merge inbox and panel controllers\n* 53a9ab4 Fix bugs with handling large image attachments\n* 585c82a Fix the build\n* 3eafefe Don't display notifications for open windows.\n* d8f17f9 Fixes #240\n* 9882190 Wake up once a minute to check for messages\n* fa3e1ee Window ids should be strings\n* 7bf1d41 Render conversation titles\n* bc4d31c Fix for inbox sometimes not reappearing\n* 4ee8eb4 Change inbox title\n* d0a5293 Fix sending messages with no attachments\n* a5e80e8 Really close conversation windows\n* 5d3a2a4 Fix file inputs\n* 7d481fd Style tweaks for new window chrome\n* 39d11d8 Apply custom chrome to conversation windows\n* 95f8e39 Keep inbox window open, but allow it to be hidden\n* b83ce7a Delay conversation creation til post-decrypt\n* 12eb553 Draw attention to windows on new messages\n* 0b31823 Wait for storage on launch\n* 37086fd Modify default grunt task to include copy\n* db9c96c Fix preen config\n* 08878b3 Update inbox after sending a message\n* e9d7864 Set conversation type when creating from sync message\n* 7e8b131 Ignore sync contexts on messages not from ourselves\n* fdd2eb0 Make conversation windows taller\n* 1b83932 Update open conversations on sync messages\n* 090cc84 Do not include destination on group sync messages\n* 1ed0ef5 Process group updates before sync delivery receipts\n* 654373d Fix null conversationId on group sync messages\n* 65a6068 Fix for out-of-order message/receipt arrival\n* c4fa2cb Fix sync message timestamps\n* d1bcafa Update libaxolotl\n* fd52575 Remove obsolete build file\n* 88f0aa4 Correct production server url\n* 242f1e8 Fix image corruption in /dist\n* 16e9f03 Check for registration when launched\n* f6a3265 Crash fixes for chromium\n* 7ec3779 Remove manifest attributes\n* 029c975 (runn1ng/app, origin/app, dharma-guardian/app) Fix tests\n* 5a7ab54 Fix registration page\n* 7afd0a0 Convert beforeunload listeners\n* 002ff45 Adapt window management to chrome app window api\n* ddbaf87 Load notifications script from background page\n* f90f632 Don't resolve the background page til storage is ready\n* 704c6ce Signaling key is now an array buffer\n* 3f37cd2 Remove remaining traces of localStorage\n* a3c5b09 Port textsecure.storage.impl to indexeddb\n* d230df5 Move local identitykey and registrationid to indexeddb\n* fe1d78b Load protobufs asynchronously. Fixes #223\n* b8c5bc2 App windows cannot be refreshed\n* 76e1706 Make getBackground async\n* a57363f Update manifest to be a chrome packaged app\n* 2279609 Fix manifest\n* 7799bef Tweak key conflict error messages\n* 6572c08 (runn1ng/dev, origin/dev, dharma-guardian/dev) Get notification permission on install\n* 8da062f Resize icon to various resolutions\n* f8db7c6 Include bootstrap via sass\n* 7da9a1d Use production server in /dist\n* 65c069b Update extension name and description\n* 9156121 Remove general get/put/remove methods from AxolotlStore\n* d0e262d (runn1ng/storage, origin/storage, dharma-guardian/storage) AxolotlStore stores groups in indexeddb\n* 359b4a1 Move group storage to axolotl store\n* 748f320 Fix up refreshGroup\n* f774047 Make libtextsecure group storage asynchronous\n* c26c6fc Store sessions by encodedNumber\n* 37c496f Close the provisioning socket\n* 43d6efc Don't save device objects to disk\n* f18795a Add removeSession\n* f413f03 Add getDeviceIds to axolotlstore\n* 121671c Store identity keys in indexeddb\n* 7eda48f Move Session Storage to indexedDB\n* 20ebc3f Move identity key storage functions to axolotl store\n* f38b18e Move Session storage to axolotlstore\n* 9de1572 Convert all storage.devices methods to be asynchronous\n* 71715c9 Async remove identity\n* 26f1aa4 Async putSessionsForDevice\n* 666f6ba Async getSessionsForNumber\n* 9e7d8c0 Rename textsecure.api and make it internal-only\n* 45a6178 Fixup refreshPreKeys and call it whenever a prekey is deleted\n* 7d0aeac Use a worker to facilitate key generation\n* f465bdd Add textsecure.AccountManager\n* a960aca Add textsecure.refreshKeys\n* 96eafc7 Integrate libaxolotl async storage changes\n* 8304aa9 Update libaxololt to a087b9e746e67995f16e077183cc0\n* 2cb0070 s/TextSecure/Signal on options page\n* a76fbe1 Add css transition to smooth progress bar animation\n* 2ff954d Fix api.js\n* e4b49bd (runn1ng/test, origin/test, dharma-guardian/test) Add more websocket tests\n* cc6a44f Fix tests\n* 3ea254d Add TextSecureWebSocket tests\n* 849a407 Add mock-socket for testing socket stuff\n* da34b8e Rename textsecure.websocket and make it internal-only\n* 89c24cd Move throwHumanError to api.js\n* 36b1e87 Add textsecure.MessageReceiver\n* bf2bf4c Remove redirect to index from registration.done()\n* 6f3de68 Move browserAction call\n* 074bb66 Add tests for messages model.\n* 4157c2c Merge pull request #227 from WhisperSystems/devices\n|\\ \n| * 37e09da (runn1ng/devices, origin/devices, dharma-guardian/devices) Remove unsued argument from getDeviceObject\n|/ \n* 5a46300 Reorder database.js include in test\n* 5888039 Reorder database.js include\n* 026f110 Delete the database once, before tests run\n* c68bf07 Don't jscs the generated key_worker.js\n* bdecf5c Generate key_worker.js\n* 7af42a2 Fix registerKeys using array indices for key ids\n* 0098996 Rename worker script file\n* de65f9e Add missing resolve\n* b5d724f Replaced frontend getString calls broken in d3c158f.\n* 90c742d More error logging\n* c6b0b71 Change progress dialog header\n* 25224da Fix unsafe eval warning on registration page\n* 23feeec Wrap libts, don't leak into global namespace\n* c51773a More helpful error logging\n* 9effa85 Remove libaxolotl concat task\n* 319332b Add missing semicolon\n* 5d42986 Use view.$ shorthand for scoped jquery searches\n* 0373252 Update stylesheet\n* 13ce354 Registration UX improvements\n* 6d9c718 Let the key worker close itself when done\n* d3dbf23 Set unread count badge when background page is refreshed\n* bfe23d8 Run key generation in a worker\n* 0a9598a Update CONTRIBUTING.md\n* d65e0e5 Add tests for message and conversation models\n* 196aa28 Fix NaN badge\n* 8b9a168 (runn1ng/killstorage, origin/killstorage, dharma-guardian/killstorage) Store session information separately\n* e33c6fd Do not rely on deviceObject.sessions anywhere in sendmessage\n* 6c0f3ff Move session-storage logic to storage/devices from axolotl_wrapper\n* 169097a Remove stale comments in axolotl_wrapper\n* 89fefe4 Create a textsecure.storage.impl to be overriden if desired\n* 56bffdc Prefix libaxolotl-stored objects with \"libaxolotl\"\n* 00cb420 Merge (un)encrypted storage layers\n* 454b472 Replace load/decode/index around our own number with helpers\n* 3759fe4 Account for -1 HTTPError code\n* c3d8753 Restore delivery receipt checkmarks\n* e52224e (runn1ng/libts/nojquery, origin/libts/nojquery, dharma-guardian/libts/nojquery) Remove libtextsecure's jquery dependency\n* a2d88b4 Don't trigger notifications for sync messages\n* 923bb8b Fix crash in message detail view\n* e8cb4ef Allow key conflict resolution for group updates\n* 4bd46f8 Allow empty group avatar file input\n* ce36c36 Include outgoing control messages in message history\n* f067bb9 Remove dead code\n* fdb0935 Fix resolveConflicts for groups\n* 6c3ac2d Collapse two views into one\n* caddb8d Smoother group create experience\n* 74e01c2 Re-render control messages if necessary\n* 48b0e88 Fix message detail contacts for incoming group message\n* bd82591 Remove extraneous listener\n* a707920 Nicer looking end-session and group control messages\n* f160d1b Css source maps\n* 20baa79 Fixes #198 Squished avatars\n* 6509561 Make badge count accurate\n* c4ae7a2 Tighten up CSP\n* 2476871 Focus text input when opening a conversation\n* ebc8846 Fix bug in panels controller\n* 9474b16 In rare cases, a group has no members\n* 5ffa265 Revert \"Popout inbox\"\n* 06f4d44 Fix empty notification on key conflicts\n* ebdc865 Fix copy task\n* ea492ed Fix registration page styling\n* c526dbd Set up production build task\n* 66fb673 Add missing error.png\n* db3d97b Move icon.png to /images\n* 718f1a5 Improve notification contents\n* 43ec409 Reset the name field on new group form\n* 11b822e Allow unknown groups\n* 84237ca Fix standalone registration page\n* 9930937 Move handlePushMessageContent to message model\n* 897d391 Improve identity key conflict ux\n* 857eee5 Divorce identity wipe from tryAgain functions\n* c642854 Extract app-level logic from libtextsecure\n* e88d4d8 Tweak replayable errors\n* 31e7d28 Popout inbox\n* cecb438 Simplify avatar rendering\n* fa3699c Trigger desktop notifications\n* f8e69fa (runn1ng/nolibaxo, origin/nolibaxo, dharma-guardian/nolibaxo) Remove now-unused X11 license file\n* d3c158f Move libaxolotl out-of-tree\n* e2e06b2 Remove axolotl.storage usage from libtextsecure\n* b790f82 Remove libaxolotl dependency on textsecure/errors.js\n* 676ad04 Add device storage method to wipe an identity\n* 45a053b Break long links in message bubbles / Fixes #204\n* f86d6d5 Only init emoji map once.\n* 5df5666 Let jscs ignore libtextsecure.js\n* 9e04910 Recompile curve25519 with emcc 1.29.0\n* 08ccdf8 Move most scripts to the background page\n* 5405b06 Update CONTRIBUTING.md\n* 651b634 Unbind frontend listeners when window closes\n* 69d5a6a Improve group update ui/ux\n* 7e39618 Tweak menu styles\n* d20e234 Refactor RecipientsInputView from NewConversationView\n* 617b768 Register Input Handling\n* 0ac3239 Close the inbox if the background page is refreshed\n* 36319d6 Fix crash when sending :invalid_emoji:\n* 04796e5 Fix tests\n* f1309b7 Don't scale or compress gifs\n* 8e54aa1 Plumb contact avatars into conversations\n* 019a9d1 Unread counts\n* b9969b1 Always reconnect the socket except when there is an error\n* 5becd80 Show an error if a conversation window fails to init\n* 0cbad73 Don't send keepalive if socket has closed\n* 2b073f3 Reset keepalive timer if we're about to send\n* ed707db Support :emoji_name: syntax for emoji text input\n* 0109207 Add js-emoji as a component\n* 2541314 Render emoji in conversation and inbox views.\n* 99d599e Add twemoji as a component\n* 7e5e558 Bump keepalive to 60s\n* cd91a47 Updated Registration Instructions\n* c73f4d7 DRY up scrollable pattern\n* a72ea79 Clean up inbox/compose view rendering and swapping\n* fd6e295 Curtail over-zealous websocket reconnects\n* 1321a90 Rename Whisper.View#attributes\n* dc1b09f Auto-link urls in message bodies\n* 8ee282b Restyle registration page\n* a9cf4bd Update test config to run against latest Chrome\n* 01d5881 Remove unneeded if-gaurd\n* 7a03c26 Adjust message bubble tail position\n* fc6c8c0 Fix tests\n* b65190e Break a long line\n* e2bd55c Tweak delivery receipt and timestamp display\n* 9978775 Stop re-rendering attachments on delivery receipt\n* dfe7813 Fix multiple from address in message detail\n* 441167a Tighten up send btn icon size\n* 2ee3434 Use consistent boiler plate throughout js files\n* f89cf89 Clean up older views, mostly whitespace\n* 44a31f3 Remove unneeded function\n* 1bb480f DRY up a common view pattern\n* 7c9ad97 Unravel image processing recursion and fix bugs\n* 0da0463 Scale large images even if they are small\n* 567a48e Adjust widths of bubbles and chat window\n* 8bc77fa Automatically compress and scale large images\n* 37d20b9 Add canvas.toBlob polyfill\n* 68d68e9 Add blueimp lib for html5's canvas-based image scaling\n* f89340a Turn up the volume on README warnings\n* 258a872 Trigger update events after attachments load\n* f9ca13a DRY up audio and video views\n* df06499 Use blob urls to display attachments\n* 4f5d3f0 s/End Session/Reset Session/\n* 11bdc58 Update CONTRIBUTING.md\n* 4cefd17 Remove unused view\n* 9d94bce After clearing messages, leave conversation open\n* ce5f6e4 Add missing images\n* 0778854 Attachments should be in spans, not divs\n* 88a708c Fix file inputs on inbox view\n* 1311f7c Fix attachment previews for audio/video files\n* 6fe262c Lazy init file input's FileReader\n* c8274d7 Give video elements black backgrounds\n* db7dee9 Fixup file size warning\n* ddc0ed1 Add audio and video players\n* aa65987 Fix broken file input view\n* dcc1588 Add key verification screen\n* 33b9a11 Always overflow: auto\n* 1e45c08 Remove obsolete native client divs\n* c08c29b Render group members in the message detail view\n* 2277b41 Remove non-existant device messages\n* 5abf307 Check END_SESSION messages in processDecrypted\n* 29192ed Ignore END_SESSION on messages with a sync context\n* 9c3f8a1 (runn1ng/fix166, origin/fix166, dharma-guardian/fix166) Dont send group-update right before we quit the group\n* fd30dc6 Add message detail view\n* 368cd2f Refactor back button style\n* d0392a3 Refactor title bar text style\n* f35e8f3 Add grunt watch tasks to rebuild libs\n* e96aa2f Remove obsolete script tags\n* b1035c2 Preserve whitespace in _concat files\n* f2853d0 Merge pull request #167 from WhisperSystems/sync\n|\\ \n| * 40351fc (runn1ng/sync, origin/sync, dharma-guardian/sync) Sync outgoing messages\n* | f860cb4 Return end session messages to the frontend\n* | 55c46d1 Close conversation menu when clicking outside it\n* | 4945180 Constrain .end-session style to the .message-list\n* | e853c21 Remove unused code\n* | ec43a0b jshint all the things\n* | 76da5bb Add background.js to jshint\n* | 0970444 Fix missing delivery receipt checkmarks\n* | 06e8e0d Remove an extension.trigger\n* | 626b63e Fix some jshints\n* | 3292177 Remove resize logic in favor of pure css\n* | 07e44cc Revisit resize and scroll logic once more\n* | 7231bcd Flesh out font faces\n* | 1bdb42b Fix bug loading conversation upsidedown\n* | 296dae5 Open conversation on receiving a message w/ errors\n* | 955ef60 Fix list_view-related error in background page\n* | 1c589f2 Fix list_view.js and message_view.js whitespace\n* | 61581ba Fix inbox comparator\n* | 4716754 Refactor content message class names\n|/ \n* 94c94eb Refactor message view\n* 85bec04 Render leave-group messages correctly\n* 367421d Style end session messages\n* f00a8f1 Render end session messages correctly\n* 488f256 Wire up end session and leave group\n* 85b4643 Fixes #161\n* eddf416 Hide sender names in private conversations\n* b45c094 Merge pull request #155 from WhisperSystems/closeSession\n|\\ \n| * 0e8a580 (runn1ng/closeSession, origin/closeSession, dharma-guardian/closeSession) Fix textsecure.closeSession\n* | 04b1ab2 Merge pull request #154 from WhisperSystems/fixolotl\n|\\ \\ \n| |/ \n|/| \n| * 65c70a9 Fix provisioning flow\n* | 96af6b5 Handle incoming sync messages\n* | 104b49c Add SyncMessageContext\n|/ \n* 148410a (runn1ng/libaxolotl, origin/libaxolotl, dharma-guardian/libaxolotl) Move jquery dep from libaxolotl to libaxolotl tests\n* 44a094c Re-run concat\n* 1e318a8 Add missing TODO\n* b356403 De-duplicate registrationId in deviceObject\n* 92d0de6 [de]serialize sessions storage in device storage\n* 1bef1ce Split out identity key storage from session storage\n* 298c862 Move test vectors to libaxolotl\n* 7e3f1ef Actually store on removeDeviceIds\n* 1806210 Rewrite most of the device storage stuff\n* f1f5914 Re-run concat\n* 412f206 Encapsulate message sending to hide parameter\n* bfb3e77 Add missing validity check to device storage\n* 30dd13e Return a function instead of a session in decryptWhisperMessage\n* 3e648b0 Move groups storage back to libtextsecure\n* 04b2a13 Naively move device/session storage to wrapper\n* 870e5dc Remove all external non-test deps on libaxolotl/crypto\n* 7d2d2d9 Copy getRandomBytes from libaxolotl to libtextsecure\n* 1284459 Move prekey sigcheck to libaxolotl\n* cb6cb4f Re-add jquery as it is needed for our test runners\n* 8398a52 Re-run concat\n* bb32a51 s/textsecure.protocol/axolotl.protocol/\n* c1907b1 Use axolotl.api for a few more things in libaxolotl/protocol.js\n* 403ae43 Move attachment/websocket [en|de]cryption to libtextsecure\n* a961706 Move key updating and retry handling to libtextsecure\n* 184b1ec Move protocol protobufs to libaxolotl/, handling DeviceControl\n* 66cf5b0 Naively move textsecure.crypto into axolotl.crypto\n* 849fdb7 Move group storage into window.axolotl\n* 83c6fe9 Moveish the first files to libaxolotl/\n* 05a5b7e Fixes #152\n* a104ee9 Remove unused variables\n* 44f9ea5 (runn1ng/panels, origin/panels, dharma-guardian/panels) Fix identity key error rendering\n* 9fe99ad Get scrolling right on conversation load\n* f5c7be7 Add some resizes\n* 5a30227 Remove unneeded listeners\n* 0463e38 Remove uneeded render\n* 5e064db Render the message list view.\n* 5ad5464 Fetch messages in the background\n* 52b3114 Simplify list view resizing\n* 3279ddd Consolidate window logic in panel controller\n* 9014055 Fix tests\n* 44b1e5c Move inbox collection to the background page\n* a5bc261 Clear selected files after each sent message\n* 2de682e Don't create a group without a name\n* d5c85df Resize inbox listview after it finishes loading\n* 4422582 Fixup opening existing private conversations\n* 200981e Avoid adding empty-string numbers to recipients\n* 3a09965 Untangle select vs open events\n* b27826c Conversations must have an id before saving\n* a7a44e9 Swap in unminified typeahead code\n* 3a2f6fa Update favicons\n* 711e211 Remove bootstrap tagsinput\n* 9087918 Don't add new convos to inbox until a message is sent\n* af49ad9 Dry up new contact init and handling\n* 63d232d Draw attention to invalid numbers\n* 746e653 WIP pill view for selected recipients\n* c84ccfc Wrap model phonenumber validation in try/catch\n* eae072e Remove unneeded var, add todo\n* fc3a600 Validate conversation type\n* 5e3ed16 Show phone numbers in contact selector\n* c7550aa Fix whitespace in manifest\n* eaf3d46 Make 'New Message' view match new title bar style\n* bebe47e Hide our own avatar for consistency with Android\n* 9e245e6 Fix double-opening exsisting conversations from typeahead\n* b2345a5 Remove unused variable\n* ce4ce16 Stop clobbering conversation attributes\n* 29bf70b Shrink more styles\n* 515a687 Remove file modal from conversation page\n* aca3db9 New messages auto-update the inbox & conversation\n* bffdaf9 Restyle menu icon\n* db5e7fd Fix list view scrolling\n* ec01d33 Reorganize stylesheets and global styles\n* 33c0f5b Change title bar color\n* 374fa04 Shrink some styles\n* d107c3b Fix tests\n* 2386c7f Add new icon\n* 0f29cf2 Put spaces between joined members in group updates\n* d435ff0 Improve typeahead contact selector experience\n* acc2c6f Sort contact selector by title\n* 51dd287 Break up a long line\n* a00632c Hook up group creation flow UI\n* b3e32a2 Only load contacts (not groups) in the typeahead\n* 2f93fb9 Remove unneeded comparator\n* 0d6fbab Trigger a checkbox event from conversation list items\n* e05405e Format phone numbers before saving conversations\n* ed928aa Add index on conversation type\n* 1334032 Add hidden group update form to new conversation view\n* 3d5553d Remove listener for model open event\n* 87cd3f5 Save and open new contact on click\n* 17f3263 Listen for escape key anywhere in the inbox\n* d7436aa Adjust conversation menu styles\n* 0703931 Auto-focus new conversation input field\n* b1ad042 Add title bar label to new conversation view\n* d26dc8c Move openConversation handler to InboxView\n* 1eab266 Remove unused variable\n* 9a6c6bc Reset the typahead before showing it\n* b13e36a Style conversation menu\n* ed13d47 Break up grunt watch tasks\n* eacca80 Don't let contact details wrap in skinny windows\n* 80ce2d9 Sort contacts by name in compose flow\n* 6d81011 Add back button to compose view\n* fedfdcd Style elements for compose flow\n* 17deb69 Make conversation panel work with a new contact\n* 5762724 Don't show new contact unless input may be a phone number\n* 4ee4872 Stop matching typeahead against group members\n* 55802f2 Remove obsolete note on test page\n* e52c7a3 Remove stubborn width calculation\n* 19ee282 Restore delivery receipt checkmark\n* 00e9e3b Setup loading gif on conversation list\n* cc0acc5 Initially hide newConversationView\n* ee34e44 Label new-contact block\n* f504087 Move index styles to their own file\n* 613dc3b Start on support for messaging a brand new contact\n* d3d84f3 Let typeahead surface groups with matching members\n* e149650 Refactor typeahead into new conversation view\n* f207137 Customize typeahead tokenizer\n* c6a19af Tweak contact style in typeahead\n* 7bcceac Implement typeahead (first pass)\n* 79cdadd Add backbone typeahead component\n* 79b4c89 Fixup attachment preview\n* 11d07c5 add missing new group update view to conversation page\n* a2f5f73 Set up index.scss\n* bd86546 Make chat window titles match contact list\n* 1a553fe Hide file modal until it's needed\n* a1403c8 Move templates from index to converation pages\n* 58e7f3c Fix file input click zone\n* 8498d7a Fixup conversation page styles and functionality\n* 7827c4c Restore default avatars on the index\n* 5821e0d Add fonts so we don't have to hit googlefonts\n* 34d5f3e Cleanup inbox view\n* 607d5d3 Abstract chrome browser action and windows stuff\n* 71da6a1 Move index2 to index\n* 94ce4d4 Simplify panel state management and message passing\n* 9071d98 Update styles to material design to match Android client (first pass)\n* 783a3f7 Prevent duplicate conversations and refocus on click (still buggy)\n* 7ec27f8 Get conversations loading through localStorage\n* 2cbcb28 Start on panels\n* 02d0c58 Mostly done device-bringup stuff\n* c0a8c00 Rebuild libtextsecure also\n* c230b47 Rebuild curve25519 for free\n* 69ce591 Allocate 64 bytes for curve25519 sigs\n* 256dd51 Free allocated memory\n* 9d592bf Update contributing.md re: websocket error message\n* a91739a Micro edits to README and CONTRIBUTING\n* ffa0b2b Add Sass task to watch and dev\n* dc4ff85 Remove search bar\n* 8097db9 Micro refactor group update setup in message view\n* bea19e7 Update README, add CONTRIBUTING\n* 29b2ffc Update to real server provisioning API\n* c112c59 Fix group send (fixes #129)\n* 94e14f2 Add license headers\n* 5d044bd Fire an event on phone number validation\n* f6376c0 Rename event\n* ed06161 Quick fix for phone input style\n* f73596c Add a view for attachment previews\n* bb2b530 Restyled message attachments\n* 9baafdd Add license to file input view\n* d470b0e Less jquery, more templating in conversation view\n* e74cba8 Restyled country dropdown\n* 5d3020b Refactor phone number input view\n* 44007ca Add rudimentary ui for sending a group update\n* 9e9a4c1 Merge pull request #126 from WhisperSystems/nonacl\n|\\ \n| * 76cc4f3 Fix re-concat on build task\n| * 6b0e346 nacl -> native\n| * 334550b Regenerate components/libts\n| * e7f3e52 Remove NaCL!\n|/ \n* 2eac191 Merge pull request #123 from WhisperSystems/libts\n|\\ \n| * 1d7afd2 Also run sauce tests in firefox\n| * 325115b Skip NaCL if we're not running from chrome-extension:\n| * 5785f40 Compile curve25519/webcrypto into libtextsecure.js\n| * 0789955 Give libtextsecure its own components (with way fewer deps)\n| * 899d756 Split tests between libtextsecure and main\n| * 8ad1a38 Move js files around for libtextsecure split\n| * 444b765 Remove unused function in _test.js\n| * 13d403b Switch to isNumberSane in group storage\n| * 1778266 Add isNumberSane to textsecure.utils for basic validation\n* | ac8584d Add JSCS and run as grunt test task\n|/ \n* 6b93345 Merge pull request #108 from TheBlueMatt/refreshgroup\n|\\ \n| * eac5065 Replace refreshGroups with singular refreshGroup on send\n| * 0b19e5b Replace numer->group with group->number->registrationId tracking\n| * 67bb400 Revert \"Don't refreshGroups in tryMessageAgain\", making a better one\n* | d119bdf restore default avatars\n|/ \n* 1e4a710 Merge pull request #120 from WhisperSystems/testvectors\n|\\ \n| * fb03879 Re-add v3 testvectors with fixed sauce\n|/ \n* d2ab8dd (runn1ng/sauce, origin/sauce, dharma-guardian/sauce) Use a newer chrome version\n* 5c2006e Fix build: Revert \"Update some of the testvectors to v3\"\n* 33429bd Update some of the testvectors to v3\n* 2b0866e Bring protocol_test back in-line with new APIs\n* 6124084 Bring padding calculation in-line with android\n* d8efc4d Handle incoming group avatars on group creation\n* 3d6c251 Group avatars\n* d52db8f Render group updates\n* bcff1cf README.md: make links clickable\n* d08c2e4 Re-enable sauce for PR's\n* 4e6faf4 Always listen for (re-)registration events\n* 9a30a1e s/\\t/ /g in manifest.json\n* d9db0f5 s/\\t/ /g in {background,options}.html\n* b070c6c s/\\t/ /g in stylesheets/options.css\n* 2d41385 Remove last \\t in crypto_test.js\n* 7ebf0f5 Remove last \\t in protocol.js\n* 2c781e5 s/\\t/ /g in test/index.html\n* 28aa0a5 s/\\t/ /g in fake_api.js\n* 1f8b8cd s/\\t/ /g in testvectors.js\n* 406be10 s/\\t/ /g in sendmessage.js\n* cf99f03 Merge pull request #107 from zmanian/FixTravisBuildsOnPullRequests\n|\\ \n| * 7b851ba Do not run saucelabs tests on pull requests because they will fail\n|/ \n* fca67d7 Simplify pushMessageContent handler slightly\n* 0ea176d Don't require a conversation name\n* ff259a7 Tolerate extra whitespace in the registration code field\n* 0292c12 Catch and save Bad Mac errors on the incoming message model\n* 40b5418 If we happen to get a group message with no update, use a blank name\n* f23403f Fix arguments to sendMessageProto in tryMessageAgain\n* f9e68be Don't refreshGroups in tryMessageAgain\n* 2462aba Fixed timestamps and added last message to the gutter\n* 1c47fb7 Contact name now overflows into ellipsis\n* 441962a Fixed date format\n* 1175f2a Scratch that, reverse it.\n* 893fffd Added \u2713 to delivered messages\n* 8ed73d0 Normalize send-path error handling\n* 8099375 Fix bug overwriting existing conversation names\n* 30bca85 Fix undefined proto.source\n* ccc98d2 Fixup delivery receipts\n* 348b5a5 Fixup OutgoingIdentityKeyError handling\n* 3795ea5 Fix message view using the wrong attribute\n* cfd4ccc Move index querying logic to /models\n* 6cbde78 Delivery receipts\n* 1a4811f Fix tests\n* 006653e DB/Index Redux\n* 9c736df Handle incoming identity key changes\n* 5762e59 DRY up registration event callbacks\n* e68720f Frontend support for ReplayableErrors\n* 4a401f0 Rewrite ReplayableErrors\n* 14c53ff Support for lower-level queries on indexedDB\n* 8c93101 Don't store conversationType on messages\n* 27fa391 Indentation\n* 5114fa1 Update name and repository in package.json\n* 2209407 Keepalive endpoint\n* 4f97f8c Incoming request bodies are no longer base64\n* 2ba88bd Shorten keep alive interval. Closes #97\n* 46ec7c9 Add test coverage of isEqual function\n* 8257fa7 Add support for deleting a conversation\n* 7b23e24 Add stringview license info and script tags\n* db5683a Move Base64 functions to their own file\n* ee0d7ed WebSocket-Resources / websocket refactor\n* ccbe837 Rebind events when opening a previously opened conversation\n* 99a2685 Store attachments as binary blobs\n* bf22da2 Fix tests\n* d1c5b6d Get rid of Layout global\n* a835887 Fix scroll when re-opening a conversation\n* fd3a72d Destroy all globals\n* c0681be Consolidate message callbacks\n* 470346c Save incoming messages and pass to frontend asynchronously\n* ced295a Move message and conversation storage to IndexedDB\n* 5638b20 Expose test results to sauce\n* 94634fc Remove nativeclient from test page\n* cc28120 (runn1ng/arlolra-sauce, origin/arlolra-sauce, dharma-guardian/arlolra-sauce) Add secure environment vars for travis\n* 693e9a1 Add the build status\n* 8d56a1b Run tests on Sauce Labs\n* 6125f7c Add basic test coverage of toArrayBuffer function\n* 7f04439 New websocket protocol\n* 9364cee Misc cleanup threads\n* b9859ad Add some license headers\n* 735737f Merge Whisper.Messages into Whisper Threads\n* 5a0e199 Namespace registration helpers\n* 2829047 Nicer timestamps with momentjs\n* d537d6a Fixing lint errors\n* 0956d32 Fixes #71 Autoscroll\n* 13446e9 \"Fix dirty hack\" (runtime.reload) in chromium.js\n* 4119c13 Registration ux tweaks\n* 3eb98dd Fix options page stylesheet path\n* 18378d8 Fold nacl-common into components\n* db69bac Do fewer string conversions in tests\n* 1ad898a Simplify webcrypto type conversion\n* e190582 Build CryptoJS components into webcrypto.js\n* 4518d03 Move protocol test to end of suite and extend timeout\n* c69c05c Remove obsolete argument\n* 0ff3d43 Update libphonenumber\n* 1c4c47e Avoid breaking changes in qrcode library\n* 2f58ea5 Fixup curve25519 module\n* a1a528c Finish abstracting native client\n* 8d323a4 Hooray for options\n* 59f22ec Clean up after crazy emscripten fueled rager\n* 30dd43a Remove stray debugging test\n* b4f4f87 Add emscripten-compiled curve25519 module\n* 3d27c98 Remove stray curve25519.js include\n* 88b1f88 Remove curve25519.js\n* 054f027 Remove unused stylesheets\n* cd888f6 Build unminified manifest.css from sources\n* 349e7e1 Add sass stylesheets\n* 7c25ff8 Simplify a test\n* 74bfc9d Wrap some long lines\n* 0a3c030 Abstract nativeclient callback logic\n* 69c52d5 Abstract out curve25519 tests\n* df0e52a Split crypto_test into crypto, protocol and helpers tests\n* 79925fd Removed now unused copy of getRandomBytes\n* 9f676af Refactor crypto.js and native client interface\n* cd4b98d Remove 1mod8\n* db76c7e Initialize session.currentRatchet.previousCounter\n* aa937ae Add attachment inputs to new conversation form\n* f7d92cc Bowerize backbone.localstorage\n* 51de1d4 Update ByteBuffer.js\n* bc5dea6 Use FileReader to base64 encode attachments\n* 6e30148 Fix cryptojs hmac implementation\n* 6e86a2b Switch libphonenumber to bower\n* 8e48d95 Switch crypto js to bower via google code svn\n* 0cc0b8c Switch tagsinput to bower\n* 6b034e9 Make the concat list explicit\n* 756fdd2 Preen mocha and chai. todo: fix concat\n* 508c59e Rename bower_components\n* 3a17891 Missed qrcode source\n* 0c1ef92 README note about deps and wrap some lines\n* a79fb36 Let npm install bower\n* e02098e README updates\n* ca7ba43 Fix overly hidden elements on registration page\n* 2ec6a66 Move qrcode lib to bower\n* 31db562 Remove old underscore\n* 6e739a8 Add mustache to bower\n* 0c5e67d rm old jquery\n* b351e8c Switch mocha and chai to bower components\n* e156c2c Use jquery with native transport support\n* 800e5ab Pass protobuf attachment ids as strings\n* 73f4f64 Grunt preen and concat\n* c8ad65e Switch to bower dependencies\n* 9c568ed Don't warn on missing message bodies\n* df0eaf6 Clean up test files\n* 987744c Default avatars\n* 245dc5b Update message view test\n* cb89ac1 Fix view test nacl path\n* 2a7d399 Remove unused popup.html\n* 1c76c0b Move storage objects to their own files\n* b92c5bb Unused function\n* ddd6f1a remove another unused function\n* 80e3fad Remove unused *MACWithVersionByte functions\n* 39505c8 Finish up webcrypto integration, Fixes #72\n* 244e051 Add importKey to webcrypto.js\n* 37ef492 Remove now-broken axolotl test\n* 2e7b5b4 Remove AES-CTR entirely\n* da0c63f Add (untested) AES-CBC switch from v3 (fs loss resulted in old tested version being lost)\n* 3a39602 Fix borked spacing in webcrypto.js\n* 73f867f rm useless GPL, license testvectors under X11 (ie 3-c MIT + advertising provision)\n* 68a42a6 Give up on webcrypto :(\n* 21225b2 Save outgoing attachments\n* 3334504 render attachments\n* b69db59 Fix buffer concatenation\n* e07759a Fix CBC encryption, test\n* e35148a No, jQuery, don't processData!\n* 2111294 Fix attachment ids\n* eebb145 Well that's handy\n* 674b173 Add support for cbc encryption\n* 2290070 Basic frontend support for image attachments\n* d362d0d Autoscroll conversation views\n* 4675cdf Webcrypto won't go down without a fight\n* a4b25f7 Disable the real webcrypto\n* c6aae62 Small message form tweaks\n* d67b723 Highlight the selected thread\n* 19dac1f Decorate incoming group messages\n* 7816636 Fix new message number validation\n* 838283f Send acks instead of closing and opening the socket\n* 6e2a85c wip new message phone number validation\n* e831c64 Require a mandatory websocket reset once a minute\n* a3bf40e Shorten websocket time out. Fixes #67\n* 3a00e49 Open the most recent conversation on load\n* 1023ea1 Refactor textsecure.protos -> textsecure.protobuf\n* 03cc667 Standardize some whitespace\n* e568e2c Fixes #61 - Order by timestamps with tests\n* cc5327d Fix group loop\n* 1571868 Merge pull request #66 from aprescott/initial-setup-instructions\n|\\ \n| * ea85e41 Add some initial development setup instructions.\n|/ \n* ac5c359 Fix strange loop in sendMessageProto\n* e8399f9 Quickfix for wonky tagsinput\n* cd55c0a Put groupid back in id field also\n* 0bd5f3e If for some reason a group has no name, provide a default\n* 0036e4e Store group ids as strings\n* 8288e29 Group ids should be converted to ArrayBuffers for transport\n* 143254c Group ids are stored in groupId\n* bbe57ef Stringify incoming group ids\n* 13c06a2 Add phone number utils to background page\n* 4f21bbd Use textsecure.messaging to create groups\n* fa4c385 Make initial timestamp on a thread match the 1st message\n* f14cd2e Don't validate presence of thread id\n* 7e9c0e2 Group ids should be strings (or stringables)\n* 6db3eeb Convert incoming timestamps into numbers\n* 7a6c15b Avoid background thread overwriting outgoing messages\n* d7edfd4 Remove reference to undefined function\n* 43f4f6c Open a group's view after it's created\n* 320d1f1 Fix exception when protbuf-encoding groupIds\n* 5b05732 Fix references to GroupContext Type ENUM values\n* 01f9fc1 More frontend groups fixes\n* e89e691 Fix bug in groupId generation\n* dc41ebf Small frontend fixes for the new group view\n* 2bd7769 Refactor options page and style using bootstrap\n* 81e4af5 Move phonenumbery utils to libphonenumber object\n* 9fc14cf Remove erroneous comment re: MDN copyright\n* 75e78ca Function-wrap options.js\n* 683c373 Relaxes verification code validation\n* 27708cd Switch to staging. -ca is now production\n* 0f4b53c Update records list in BBLocalStorage on fetch\n* 2288f8a Fix new group ui not showing\n* 266600e There's no need to wrap this function inside a function afaict\n* ae98b86 Fix whitespace in popup.js\n* 778fa6b Remove some low-value makup\n* 40c3bc8 Fix nacl not loading\n* 0cf5ae3 Reorganize message view test a bit\n* ef066ea Make conversations open when they are created\n* 230d24a Views already have a #remove()\n* db86abd Add list view tests\n* 4ccb2b2 Add a page for testing views.\n* ad7456b Refactor away this poorly named and overloaded file\n* b9640a5 Move new convo stuff to its own file\n* 9af18ce Encapsulate page layout js\n* 806693a use new index page for popup\n* 563bb34 Rm old css\n* 5ddcc51 remove extra insertion, it's already happening\n* 2f0b0f7 Get overflow scrolls working\n* 546cdf8 Fix some markup issues\n* c2beda8 Get single recipient message composition working again\n* c034ac8 Refactor components for the main content section\n* 28e16aa bootstrap tags input\n* 8d83a8f This element is constant, so let's bootstrap it\n* 5f74a60 Format thread timestamps\n* 44f272a Get messages sending with new ui\n* 95c3162 get frontend rendering with new markup/css\n* 518bdb2 with love from tyler\n* 850a91c Fix message sending\n* d446da9 Someday we'll have images for contacts\n* 0741c74 Don't recreate views unnecessarily\n* 9d0be46 Close an open conversation before opening another\n* bbb5d56 Don't reopen a currently selected conversation\n* 9b30780 rm stale css\n* 98cfc1b Remove old convo compose view\n* 511b121 Refactor conversation view into two classes\n* 6ff6ef0 Parse the template before binding render to an event\n* d615a5a Let list view changes the color of selected conversations\n* dc95741 Cull dead code\n* 9082781 Make header and footer/form work without overflowing\n* df95a7f Move ui init out of nacl callback and remove some lines that no longer apply\n* def32f4 New layout/design\n* 6d5e32b Don't make a new collection on every call to thread.messages()\n* 7e20838 Rename file\n* 4724c96 Use $.find so these locals can go away\n* 2e3d89e Use mustache template for message rendering\n* 25fecc9 Condense some code using Backbone.View's event framework\n* 06ff6c3 Let thread collection double as contacts db\n* c6b7923 Fix whitespace, lint\n* ebf1b33 Use separate message collections for each thread to facilitate lookup and lazy loading\n* d6d17ea Remove unused function\n* 3696214 Add missing localStorage.clear()\n* 28779e0 Fix tests by returning promises\n* 87b626d Fix blanket popup\n* 615fa10 Fix blanket for plugin (http://stackoverflow.com/questions/23022686)\n* 5e3b7e9 Add missing blanket-js file\n* 90eb9cb Remove ping, update to latest spec proposal\n* 82d04e3 Update readme\n* 74d5fc1 Correction to url\n* 396857e Fix typo and add links to mocha and chai docs\n* 3accf69 Add a note about running tests locally\n* f6f35c5 Fix a missing function and dont blow up on delivery receipts\n* d9f53d4 Fix not-allowed inline scripts error\n* a6b0d1f Add entirely untested secondary device init\n* 379115d Add qrcode from https://github.com/davidshimjs/qrcodejs\n* 2751d0e Such tests. Very mocha. Much chai. Amaze!!!\n* 6455da5 Refactor a bunch of stuff re: session closing, add test cases\n* c427da0 Add closeSession tests as Alice and fix re-requesting prekeys\n* 6f3ee15 Add a BOB test-case around session closure\n* a642619 Update BOB test cases\n* 957587b Add identity keys to MAC, begin updating test cases\n* eab0911 I lied, there is no verification tag\n* 85f3334 Move test shuffling to js/testvectors.js\n* 0088721 Move AXOLOTL test vectors to js/testvectors.js\n* 07f79cb Fix tester\n* 7013c5e First steps towards BOB test vectors\n* ebcfd47 Fix session lookup in duplicate prekeymessage case\n* 5040bfb Fix pending verifications\n* a76ae2f Add verification tags, make alice tests strict(ish) again\n* 287b551 First cut of ALICE test vectors\n* a890864 Fix null flags in v3\n* 0d4ae6a Fix undefined variable in for's (browser update to strict mode?)\n* de83429 v3 steps\n* 66bf371 Use staging server (ie update to server keys v2) and protocolv3\n* 53f8ac9 Generate signed keys (breaks registration)\n* 4c3ee6f Compare equality w/o getString (in the future)\n* 1d2e252 Update WhisperTextProtocol for v3\n* 3190fe9 HMAC Update for Protov3\n* b5c6e3d JS ed25519\n* b94ba6b USE_NACL = true\n* 66a2a2d Rebuild\n* ababf30 Fix unused variable\n* 27a677b Add ed25519 copied directly from TextSecure\n* 87619fc Update curve25519-donna\n* 28d1f37 mkdir nacl\n* 7d27df9 Report testing done\n* a2da4ff Remove useless function\n* d63eba1 Merge pull request #49 from codedust/numberValidation\n|\\ \n| * 13a9329 improved number validation (based on google's libphonenumber)\n|/ \n* 92514ad Fix missing baseKey\n* ceca03c Close chainKey.key\n* 53a58f5 Update README (closes #42)\n* ce3c5eb Refactor conversation list view\n* 1ec6b0a Better TODO wording\n* 12a8499 Refresh groups on (probably) new identity key (maybe more often?)\n* 0f126fc Keep track of number->groups, add TODO to refresh, other tweaks\n* e495e8e Group updates to match real protocol and get better checking\n* ec900e0 Fix double display of outgoing messages\n* a09a477 Fix incoming message display/storage\n* c90b9a5 Some group update verification\n* b1ec02f Group API\n* c953c6c closeSession\n* 12e6b11 Fix options\n* a88d17e Fix CryptoJS minify\n* 6ae9510 Merge pull request #47 from rpicard/minify-deps\n|\\ \n| * 2d700e2 Covert spaces to tabs\n| * f13d473 Update dependencies in popup.html and test.html\n| * 5f827fb Minify CryptoJS dependencies\n* | d0fd3e9 sendMessage refactor, initial group stuff (breaks message storage)\n|/ \n* fb2aa61 Merge pull request #45 from codedust/extractchrome\n|\\ \n| * 69ba658 moved some chromium-specific code into chromium.js (using extension.navigator namespace)\n* | 9e5f96e Merge pull request #46 from codedust/optionsCssImprovements\n|\\ \\ \n| |/ \n|/| \n| * ce98f87 phased out some more inline styles\n| * 5cddcb5 improved some css for options.html\n|/ \n* cf35b70 Retry API, standardize <script> list\n* 8f49d20 Fix longstanding(?) attachment bug\n* c2d1d81 Save sessions in deviceObjects, test using fake_api, minor tweaks\n* 1724d12 More typos from me being too tired\n* 5cea7b6 Few typos blocking registration\n* eb80a10 Fix new function(){}() typo (thanks codedust on GitHub)\n* aec3646 Request new keys (largely untested)\n* 56433bd One more tiny error refactor\n* 68131a6 Add human readable version of errors\n* 753a950 Redo registration process\n* d21ab1f Merge pull request #38 from liliakai/threads\n|\\ \n| * 83508ab Thread model and UI improvements\n|/ \n* 2d12a33 Fix decoding/protos/tests\n* 6a00e8e Random things from James-Firth incl update icon\n* ac48d55 Fix some bugs recently introduced\n* 21b95ce Re-create some of d9bf0a4, which was broken and reverted in 1e6720\n* 18f1eed Some number verification refactor stuff\n* d387cd2 s/getEncodedNumber// (with XXXs)\n* 9aae93f textsecure.protos\n* 665f0ef Merge pull request #34 from James-Firth/master\n|\\ \n| * a9dd59d Fixed typo so list is a proper bullet list now.\n| * 5c3d1f9 Updated README\n|/ \n* 1e67203 Fix a couple things broken in d9bf0a4\n* 6064afd Fix Uncaught ReferenceError: isRegistrationDone is not defined\n* b458dbe Merge pull request #32 from jerkey/patch-1\n|\\ \n| * fc192a6 fixed a typo in options.html\n|/ \n* de0a1df Fix broken registration flow\n* d9bf0a4 textsecure.storage, chromium.js\n* ee2f43a Fix, display (image) attachments\n* 2820ff8 Minor css tweak\n* be82547 Move message saving out of helpers.js\n* 3bd559b DRY up PushMessageContentProtobuf construction\n* 2601c3c Rename some things to be a little more semantic\n* 0362ecf Merge pull request #31 from codedust/master\n|\\ \n| * 14ebef7 fixed 'TypeError: Promise.resolve is not a constructor' in Firefox\n|/ \n* 810aabf Save messages from 'Compose' UI\n* b852e68 Backbone message storage and views\n* 170257d Fix subscribeToPush is not defined\n* ed3aa96 Fix undefined URL_BASE in background.js\n* 4efb8a2 Fix NaCL (maybe it should be removed?)\n* 6bc19ef More namespacing\n* 05101b6 Some initial helpers.js namespaceing\n* 07a23f0 Fix attachments\n* 3103eaa Commit broken attachment loader (S3 403s I can't figure out...)\n* ea1bd53 Fix interpretation of prekeymsg.registrationId\n* 3744b16 Update to jQuery 2.1.1 + jQuery pull #1525\n* 2f16b88 Fixup last commit\n* e309774 Check registration ID on prekeymsg\n* 76e7dcb Clean up session retreival (fixes #30)\n* 8d408e6 THOUGH SALL USE TABSTOP AND SHIFTWIDTH 4 (so that indents read right)\n* ae41a5d Merge remote-tracking branch 'lilia/master'\n|\\ \n| * e3b00e0 Generate and submit registrationId, fixes #25\n* | d5491bd Stop an attacker from closing a session that isn't theirs (#29)\n* | 3a812d4 Multi-session storage for close/regular message race conditions\n* | cdebc8a Also delete chain key\n* | 08093a2 Fix old chain deletion\n* | 605863f Fix decryption of large messages (eg w/ attachments)\n|/ \n* 5752a77 promises, type conversion errors\n* caa363b FINALLY report crypto, etc errors to console thanks to promises...\n* a7de5e2 last(?) round of crypto.js AB-type-conversion changes, new tests\n* f46d8ea Merge pull request #23 from liliakai/fix\n|\\ \n| * 1d95fcc Fix exception in options.js on first run\n|/ \n* 3b79dd2 Remove TODO.txt now that I found time to put in github issues.\n* 5583e82 Refactor some low-level crypto things\n* 905357a More wholesale conversion to promises\n* efe2fa1 Move crypto things to js/crypto.js\n* 2b21111 Fix/test pre key generation\n* 3fffbad (runn1ng/webcrypto, origin/webcrypto, dharma-guardian/webcrypto) Fix now-broken test cases and change lots of things over to promises\n* 41d50d7 Lilia's Webcrypto branch rebased and a few very tiny tweaks\n* ab6ebba Add TODO\n* 1137f9d Add TODO file showing what still needs to be done\n* 1385817 tweak ui things a tiny bit\n* 3e60368 LGPL license (I'd like to be an axolotl/TS JS lib in the future)\n* 0f8643b Regenerate bins for fixed ephemeral bit\n* 01c4f3d Fix ALL the things!\n* d213cb0 I like stack traces, also, fix identity key bit fiddle crap\n* 705f8ce generic-ize\n* 87c19c0 Another step forward\n* d9e7e59 Merge pull request #9 from Ventero/password\n|\\ \n| * 3d7db4d Correctly extract string data for password.\n|/ \n* cf79b41 Merge pull request #8 from liliakai/master\n|\\ \n| * 68027da Fix click handler\n* | d56c3e1 Add bit for !identityKey and commit wip test-cases\n* | 244aa8d Fix NaCL priv calc code\n|/ \n* 2630d9e Merge pull request #7 from liliakai/master\n|\\ \n| * 984a76e Fix crashing send button\n| * 49cdf04 Work on message styling\n|/ \n* e492aae Fix popup refreshing on send\n* 732f9ac ping server to keep connection open\n* afd9924 Merge pull request #6 from liliakai/master\n|\\ \n| * a67ab3a Make popup a little nicer to look at\n|/ \n* 2ae5628 Send-to-self works =D\n* 136a894 Things:\n* 000a5e1 Fix up a few things so registration works\n* 832daf5 tabstabstabstabstabs\n* 8a2b35b Merge pull request #4 from liliakai/refactor\n|\\ \n| * be52e4c Fix infinite recursion in ensureStringed(Array)\n| * fe1b543 Add FakeWhisperAPI for serverless development\n| * 6934ba0 Refactor Server API functions\n|/ \n* 288d66b New protos with group messaging stuff\n* 1c20dba Merge pull request #2 from liliakai/master\n|\\ \n| * 820d67a Avoid jsonifying undefined data\n| * 0fff393 Make booleans stringable\n* | 51f6437 Merge pull request #3 from liliakai/clickies\n|\\ \\ \n| |/ \n|/| \n| * 0d5d14d Fix the clickies\n|/ \n* 7b0de6a Merge pull request #1 from liliakai/master\n|\\ \n| * a542d91 Minor updates to curve255.js\n|/ \n* b8357a6 Unmiified js files, mostly\n* 9e1c1f5 Add js\n* fee6a69 Optional curve25519 in js\n* 2c83fd9 Commit pnacl binaries (TODO: revertme at some point...)\n* 85f419b Passing test-cases (fscking type conversions...)\n* e932536 Untested send-encrypted support\n* fe570c7 Genericify initSession (and break it for alice)\n* 611d532 Pass tests\n* 6e0fe27 Few more steps\n* 465bdf2 Abstract out lots of CryptoJS\n* dd3dd11 Updates, more tests, etc\n* 6842f53 Add README describing current state.\n* da1b021 Fix up initial ratchet stuff\n* 3c603c7 Lots of updates post-test-cases\n* 6b0a1ac add nacl-common.js\n* e0d0df3 ECDHE through NaCL\n* 8db3885 Updates, NaCL\n* eec4c66 Fixup dir structure\n* 4595ad0 moar stuff\n* 42de35d Random fixes, stuff\n* 136da28 Entirely untested plane work.\n* 265ae82 (potentially) working device object storage\n* 6ded33a Badge UI\n* 41866ce Working background push.\n* b4ab726 Missing background.html\n* f4755cb Updates\n* 7e811c2 Working registration\n* aa8fe6f Fix MAC\n* 094ee4e rm useless thing\n* 2427b73 Untested Code\n* 8ad510e Minor tweaks and first step towards websocket\n* a25cf5f Initial Checkin\n"
},
{
"command": [
"show",
"83fbfce",
"--no-color",
"--format=fuller",
"--quiet"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "commit 83fbfceb08d487b99f05601731baccbf95780463\nAuthor: Felix Epp <work@felixepp.de>\nAuthorDate: Sun Jan 3 22:52:23 2016 +0100\nCommit: Felix Epp <work@felixepp.de>\nCommitDate: Sun Jan 3 22:52:23 2016 +0100\n\n Fix link color\n \n Incoming were not style at all and outgoing were invisible.\n"
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "UU js/views/inbox_view.js\u0000A stylesheets/_material-colors.scss\u0000UU stylesheets/_variables.scss\u0000"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
},
{
"command": [
"ls-files",
"-s",
"/Users/felix/Desktop/Signal-Desktop/js/views/inbox_view.js"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "100644 9a6a64005ce1b9a856270a3cce6c924571d040d1 1\tjs/views/inbox_view.js\n100644 8949f4b35d278db9c12ceac180ea4da2338a494d 2\tjs/views/inbox_view.js\n100644 57f2659fd1d515a03e1e776b687a8a131c371b90 3\tjs/views/inbox_view.js\n"
},
{
"command": [
"show",
"--no-color",
"9a6a64005ce1b9a856270a3cce6c924571d040d1"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/*\n * vim: ts=4:sw=4:expandtab\n */\n(function () {\n 'use strict';\n\n window.Whisper = window.Whisper || {};\n\n var SocketView = Whisper.View.extend({\n className: 'status',\n initialize: function() {\n setInterval(this.updateStatus.bind(this), 5000);\n },\n updateStatus: function() {\n var className, message = '';\n switch(getSocketStatus && getSocketStatus()) {\n case WebSocket.CONNECTING:\n className = 'connecting';\n break;\n case WebSocket.OPEN:\n className = 'open';\n break;\n case WebSocket.CLOSING:\n className = 'closing';\n break;\n case WebSocket.CLOSED:\n className = 'closed';\n message = i18n('disconnected');\n break;\n }\n if (!this.$el.hasClass(className)) {\n this.$el.attr('class', className);\n this.$el.text(message);\n }\n },\n events: {\n 'click': 'reloadBackgroundPage'\n },\n reloadBackgroundPage: function() {\n chrome.runtime.reload();\n }\n });\n\n Whisper.ConversationStack = Whisper.View.extend({\n className: 'conversation-stack',\n open: function(conversation) {\n var $el = this.$('#conversation-' + conversation.cid);\n if ($el === null || $el.length === 0) {\n var view = new Whisper.ConversationView({\n model: conversation,\n appWindow: this.model.appWindow\n });\n $el = view.$el;\n }\n $el.prependTo(this.el);\n conversation.trigger('opened');\n }\n });\n\n Whisper.InboxView = Whisper.View.extend({\n templateName: 'two-column',\n className: 'inbox',\n initialize: function (options) {\n this.render();\n this.conversation_stack = new Whisper.ConversationStack({\n el: this.$('.conversation-stack'),\n model: { appWindow: options.appWindow }\n });\n\n var inboxCollection = getInboxCollection();\n this.inboxListView = new Whisper.ConversationListView({\n el : this.$('.inbox'),\n collection : inboxCollection\n }).render();\n\n this.inboxListView.listenTo(inboxCollection,\n 'add change:active_at',\n this.inboxListView.onChangeActiveAt);\n\n this.searchView = new Whisper.ConversationSearchView({\n el : this.$('.search-results'),\n input : this.$('input.search')\n });\n\n this.searchView.$el.hide();\n\n this.listenTo(this.searchView, 'hide', function() {\n this.searchView.$el.hide();\n this.inboxListView.$el.show();\n });\n this.listenTo(this.searchView, 'show', function() {\n this.searchView.$el.show();\n this.inboxListView.$el.hide();\n });\n this.listenTo(this.searchView, 'open',\n this.openConversation.bind(this, null));\n\n if (inboxCollection.length === 0) {\n this.searchView.showAllContacts = true;\n this.searchView.reset();\n this.listenToOnce(inboxCollection, 'add', function(model) {\n this.searchView.showAllContacts = false;\n this.searchView.reset();\n model.trigger('opened');\n }.bind(this));\n }\n\n new SocketView().render().$el.appendTo(this.$('.socket-status'));\n\n extension.windows.onClosed(function() {\n this.inboxListView.stopListening();\n }.bind(this));\n },\n render_attributes: {\n welcomeToSignal: i18n('welcomeToSignal'),\n selectAContact: i18n('selectAContact'),\n searchForPeopleOrGroups: i18n('searchForPeopleOrGroups'),\n submitDebugLog: i18n('submitDebugLog')\n },\n events: {\n 'click': 'closeMenu',\n 'click .hamburger': 'toggleMenu',\n 'click .show-debug-log': 'showDebugLog',\n 'select .gutter .conversation-list-item': 'openConversation',\n 'input input.search': 'filterContacts'\n },\n filterContacts: function(e) {\n this.searchView.filterContacts(e);\n var input = this.$('input.search');\n if (input.val().length > 0) {\n input.addClass('active');\n } else {\n input.removeClass('active');\n }\n },\n openConversation: function(e, conversation) {\n this.searchView.hideHints();\n conversation = ConversationController.create(conversation);\n this.conversation_stack.open(conversation);\n },\n toggleMenu: function() {\n this.$('.global-menu .menu-list').toggle();\n },\n showDebugLog: function() {\n this.$('.debug-log').remove();\n new Whisper.DebugLogView().$el.appendTo(this.el);\n },\n closeMenu: function(e) {\n if (e && !$(e.target).hasClass('hamburger')) {\n this.$('.global-menu .menu-list').hide();\n }\n }\n });\n\n})();\n"
},
{
"command": [
"hash-object",
"-w",
"--stdin"
],
"stderr": "",
"stdin": "/*\n * vim: ts=4:sw=4:expandtab\n */\n(function () {\n 'use strict';\n\n window.Whisper = window.Whisper || {};\n\n Whisper.SocketView = Whisper.View.extend({\n className: 'status',\n initialize: function() {\n setInterval(this.updateStatus.bind(this), 5000);\n },\n updateStatus: function() {\n var className, message = '';\n switch(getSocketStatus && getSocketStatus()) {\n case WebSocket.CONNECTING:\n className = 'connecting';\n break;\n case WebSocket.OPEN:\n className = 'open';\n break;\n case WebSocket.CLOSING:\n className = 'closing';\n break;\n case WebSocket.CLOSED:\n className = 'closed';\n message = i18n('disconnected');\n break;\n }\n if (!this.$el.hasClass(className)) {\n this.$el.attr('class', className);\n this.$el.text(message);\n }\n },\n events: {\n 'click': 'reloadBackgroundPage'\n },\n reloadBackgroundPage: function() {\n chrome.runtime.reload();\n }\n });\n\n Whisper.ConversationStack = Whisper.View.extend({\n className: 'conversation-stack',\n open: function(conversation) {\n var $el = this.$('#conversation-' + conversation.cid);\n if ($el === null || $el.length === 0) {\n var view = new Whisper.ConversationView({\n model: conversation,\n appWindow: this.model.appWindow\n });\n $el = view.$el;\n }\n $el.prependTo(this.el);\n conversation.trigger('opened');\n }\n });\n\n Whisper.InboxView = Whisper.View.extend({\n templateName: 'two-column',\n className: 'inbox',\n initialize: function (options) {\n this.render();\n this.conversation_stack = new Whisper.ConversationStack({\n el: this.$('.conversation-stack'),\n model: { appWindow: options.appWindow }\n });\n\n var inboxCollection = getInboxCollection();\n this.inboxListView = new Whisper.ConversationListView({\n el : this.$('.list'),\n collection : inboxCollection\n }).render();\n\n this.inboxListView.listenTo(inboxCollection,\n 'add change:active_at',\n this.inboxListView.onChangeActiveAt);\n\n this.searchView = new Whisper.ConversationSearchView({\n el : this.$('.search-results'),\n input : this.$('input.search')\n });\n\n this.searchView.$el.hide();\n\n this.listenTo(this.searchView, 'hide', function() {\n this.searchView.$el.hide();\n this.inboxListView.$el.show();\n });\n this.listenTo(this.searchView, 'show', function() {\n this.searchView.$el.show();\n this.inboxListView.$el.hide();\n });\n this.listenTo(this.searchView, 'open',\n this.openConversation.bind(this, null));\n\n if (inboxCollection.length === 0) {\n this.searchView.showAllContacts = true;\n this.searchView.reset();\n this.listenToOnce(inboxCollection, 'add', function(model) {\n this.searchView.showAllContacts = false;\n this.searchView.reset();\n model.trigger('opened');\n }.bind(this));\n }\n\n new Whisper.SocketView().render().$el.appendTo(this.$('.socket-status'));\n\n extension.windows.onClosed(function() {\n this.inboxListView.stopListening();\n }.bind(this));\n },\n render_attributes: {\n welcomeToSignal: i18n('welcomeToSignal'),\n selectAContact: i18n('selectAContact'),\n searchForPeopleOrGroups: i18n('searchForPeopleOrGroups'),\n submitDebugLog: i18n('submitDebugLog')\n },\n events: {\n 'click': 'closeMenu',\n 'click .global-menu .drop-down': 'toggleMenu',\n 'click .show-debug-log': 'showDebugLog',\n 'select .gutter .conversation-list-item': 'openConversation',\n 'input input.search': 'filterContacts'\n },\n filterContacts: function(e) {\n this.searchView.filterContacts(e);\n var input = this.$('input.search');\n if (input.val().length > 0) {\n input.addClass('active');\n } else {\n input.removeClass('active');\n }\n },\n openConversation: function(e, conversation) {\n this.searchView.hideHints();\n conversation = ConversationController.create(conversation);\n this.conversation_stack.open(conversation);\n this.$el.removeClass(function(index, classNames) {\n return classNames.split(' ').filter(function (className) {\n<<<<<<< HEAD\n return (className.match(/^color-\\d/) !== null);\n=======\n return (className.search(/^color-\\d{1,2}$/) > -1);\n>>>>>>> android-colors\n }).join(' ');\n });\n if (conversation.get('type') === 'private') this.$el.addClass('color-' + (Math.abs(conversation.hashCode()) % 15) );\n },\n toggleMenu: function() {\n this.$('.global-menu .menu-list').toggle();\n },\n showDebugLog: function() {\n this.$('.debug-log').remove();\n new Whisper.DebugLogView().$el.appendTo(this.el);\n },\n closeMenu: function(e) {\n if (e && !$(e.target).hasClass('drop-down')) {\n this.$('.global-menu .menu-list').hide();\n }\n }\n });\n\n})();\n",
"type": "git",
"stdout": "f938efb5c946884a443067372bd7a2a97cd073a2\n"
},
{
"command": [
"diff",
"--no-color",
"-U0",
null,
"9a6a64005ce1b9a856270a3cce6c924571d040d1",
"f938efb5c946884a443067372bd7a2a97cd073a2"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "diff --git a/9a6a64005ce1b9a856270a3cce6c924571d040d1 b/f938efb5c946884a443067372bd7a2a97cd073a2\nindex 9a6a640..f938efb 100644\n--- a/9a6a64005ce1b9a856270a3cce6c924571d040d1\n+++ b/f938efb5c946884a443067372bd7a2a97cd073a2\n@@ -9 +9 @@\n- var SocketView = Whisper.View.extend({\n+ Whisper.SocketView = Whisper.View.extend({\n@@ -72 +72 @@\n- el : this.$('.inbox'),\n+ el : this.$('.list'),\n@@ -108 +108 @@\n- new SocketView().render().$el.appendTo(this.$('.socket-status'));\n+ new Whisper.SocketView().render().$el.appendTo(this.$('.socket-status'));\n@@ -122 +122 @@\n- 'click .hamburger': 'toggleMenu',\n+ 'click .global-menu .drop-down': 'toggleMenu',\n@@ -139,0 +140,10 @@\n+ this.$el.removeClass(function(index, classNames) {\n+ return classNames.split(' ').filter(function (className) {\n+<<<<<<< HEAD\n+ return (className.match(/^color-\\d/) !== null);\n+=======\n+ return (className.search(/^color-\\d{1,2}$/) > -1);\n+>>>>>>> android-colors\n+ }).join(' ');\n+ });\n+ if (conversation.get('type') === 'private') this.$el.addClass('color-' + (Math.abs(conversation.hashCode()) % 15) );\n@@ -149 +159 @@\n- if (e && !$(e.target).hasClass('hamburger')) {\n+ if (e && !$(e.target).hasClass('drop-down')) {\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "UU js/views/inbox_view.js\u0000A stylesheets/_material-colors.scss\u0000UU stylesheets/_variables.scss\u0000"
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "UU js/views/inbox_view.js\u0000A stylesheets/_material-colors.scss\u0000UU stylesheets/_variables.scss\u0000"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "UU js/views/inbox_view.js\u0000A stylesheets/_material-colors.scss\u0000UU stylesheets/_variables.scss\u0000"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nUU js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
},
{
"command": [
"add",
null,
"--all",
"--",
"js/views/inbox_view.js"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "M js/views/inbox_view.js\u0000A stylesheets/_material-colors.scss\u0000UU stylesheets/_variables.scss\u0000"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nM js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
},
{
"command": [
"rev-parse",
"--show-toplevel"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "/Users/felix/Desktop/Signal-Desktop\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nM js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nM js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nM js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nM js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "M js/views/inbox_view.js\u0000A stylesheets/_material-colors.scss\u0000UU stylesheets/_variables.scss\u0000"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nM js/views/inbox_view.js\nA stylesheets/_material-colors.scss\nUU stylesheets/_variables.scss\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
},
{
"command": [
"add",
null,
"--all",
"--",
"stylesheets/_variables.scss"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "M js/views/inbox_view.js\u0000C stylesheets/_material-colors.scss\u0000stylesheets/_variables.scss\u0000M stylesheets/_variables.scss\u0000"
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "83fbfce Fix link color"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\nM js/views/inbox_view.js\nC stylesheets/_variables.scss -> stylesheets/_material-colors.scss\nM stylesheets/_variables.scss\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
},
{
"command": [
"commit",
"-q",
null,
null,
"-F",
"-"
],
"stderr": "",
"stdin": "Merge branch 'android-colors' into HEAD\n\n# Conflicts:\n# js/views/inbox_view.js\n# stylesheets/_variables.scss\n",
"type": "git",
"stdout": ""
},
{
"command": [
"status",
"--porcelain",
"-z"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": ""
},
{
"command": [
"log",
"-n 1",
"--pretty=format:%h %s",
"--abbrev-commit"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "0c1a9e1 Merge branch 'android-colors' into HEAD"
},
{
"command": [
"status",
"-b",
"--porcelain"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "## HEAD (no branch)\n"
},
{
"command": [
"stash",
"list"
],
"stderr": "",
"stdin": null,
"type": "git",
"stdout": "stash@{0}: On master: redesign\n"
}
]
The status view adds an incomplete filename:
Git in the shell looks like this:
What I did in git: I tried to merge the android-colors branch into the material-design branch and this is a merge commit due to conflicts.
What I did in the code: I split up
_variables.scss
into_material-colors.scss
and_variables.scss
by manually copying parts of it to a new file.Maybe related: I have committed identical code changes to both branches, when I wanted to isolate code from the material design branch, because cherry picking was not really an option. But I don't think this causes the problem.