{"action":"created","issue":{"url":"https://api.github.com/repos/owncloud/client/issues/4327","repository_url":"https://api.github.com/repos/owncloud/client","labels_url":"https://api.github.com/repos/owncloud/client/issues/4327/labels{/name}","comments_url":"https://api.github.com/repos/owncloud/client/issues/4327/comments","events_url":"https://api.github.com/repos/owncloud/client/issues/4327/events","html_url":"https://github.com/owncloud/client/issues/4327","id":124352406,"number":4327,"title":"Adding ownCrypt : client-side encryption","user":{"login":"orion1024","id":6241740,"avatar_url":"https://avatars.githubusercontent.com/u/6241740?v=3","gravatar_id":"","url":"https://api.github.com/users/orion1024","html_url":"https://github.com/orion1024","followers_url":"https://api.github.com/users/orion1024/followers","following_url":"https://api.github.com/users/orion1024/following{/other_user}","gists_url":"https://api.github.com/users/orion1024/gists{/gist_id}","starred_url":"https://api.github.com/users/orion1024/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/orion1024/subscriptions","organizations_url":"https://api.github.com/users/orion1024/orgs","repos_url":"https://api.github.com/users/orion1024/repos","events_url":"https://api.github.com/users/orion1024/events{/privacy}","received_events_url":"https://api.github.com/users/orion1024/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/owncloud/client/labels/enhancement%20-%20proposed","name":"enhancement - proposed","color":"FF9900"}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":60,"created_at":"2015-12-30T14:09:35Z","updated_at":"2016-10-27T17:38:54Z","closed_at":null,"body":"Hello,\r\n\r\nThis issue is created so that we can discuss the details on how ownCrypt should be integrated in the current code, both for the initial integration and as work on it progresses.\r\n\r\n## Some discussion material\r\n\r\n### General documentation about ownCrypt\r\n\r\n* [Design, intents and features] (https://cloud.airmail.fr/public.php?service=files&t=a9fe1a55a59374dd6bc399f4ff4d60db) (finished)\r\n\r\n* Crypto design :\r\n  * [Crypto design] (https://cloud.airmail.fr/public.php?service=files&t=d475f3c9d77e99d8b413977729be5f0e) (ongoing work)\r\n  * [Crypto design basic graph] (https://cloud.airmail.fr/index.php/s/2AgPkL5cxeXFVul) (finished)\r\n  * [Crypto design advanced graph] (https://cloud.airmail.fr/index.php/s/QWWtS64NwqjSjBW) (finished)\r\n\r\n### Integration discussion \r\nTo start the discussion [I created a more specific document] (https://cloud.airmail.fr/index.php/s/uqXpyMmv8AESSA8).\r\n\r\nHere is a quick brief of its content :\r\n* **Section 1 to 3** is an analysis of the sync algorithm code.\r\n* **Section 4 is where I detailed my proposal and what needs to be discussed with the client team.**\r\n\r\nWhile **section 1** is for the most part a verbose description of what the code does, and not very interesting for someone familiar with the existing code, **section 2 and 3** are more \"meta\" and are an attempt at documenting things to get a better overall understanding of the code structure.\r\nNB : Section 1 to 3 are not completely finished but most of the remaining analysis is not critical for the initial integration.\r\n\r\n\r\nI also created a \"state graph\" that describes how the discovery and reconcile phase decides what to do with each file. [This is the graph] (https://cloud.airmail.fr/index.php/s/XgbRGN8Mwa9Vlnz) (not included here because it too big).\r\n\r\nWhile not very useful for someone who knows this by heart, it is a good reference when one needs (for instance) to know the possible paths for how an item could end up with the XXXX instruction.\r\n\r\n\r\n## Next steps\r\n\r\n@ogoffart @danimo @dragotin @jturcotte \r\n\r\n### Starting point\r\n\r\n**The first thing I would like to do is reach an agreement with the client team on the proposals I made in the document**, so that I can start coding.\r\nFurther discussion will be needed on other topics after this one, but I believe this is the most structuring code-wise.\r\n\r\n### Integration tests \r\n\r\n\r\nI plan to use Jenkins to run proper integration tests. Is there any templates I could use to speed up the initial set up of Jenkins (for instance, to configure the building test) ?\r\n\r\nI'm also considering tools [such as Sikuli] (http://www.sikuli.org) to test more things than the current torture tests. I read about Smashbox but it seems more about testing server-side functionality.\r\nComprehensive integration tests are pretty critical for ownCrypt since it will be implemented in the deepest layer of the client, so the risk of introducing regression is great.\r\n\r\n \r\n\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/owncloud/client/issues/comments/256716740","html_url":"https://github.com/owncloud/client/issues/4327#issuecomment-256716740","issue_url":"https://api.github.com/repos/owncloud/client/issues/4327","id":256716740,"user":{"login":"chrsch","id":198256,"avatar_url":"https://avatars.githubusercontent.com/u/198256?v=3","gravatar_id":"","url":"https://api.github.com/users/chrsch","html_url":"https://github.com/chrsch","followers_url":"https://api.github.com/users/chrsch/followers","following_url":"https://api.github.com/users/chrsch/following{/other_user}","gists_url":"https://api.github.com/users/chrsch/gists{/gist_id}","starred_url":"https://api.github.com/users/chrsch/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/chrsch/subscriptions","organizations_url":"https://api.github.com/users/chrsch/orgs","repos_url":"https://api.github.com/users/chrsch/repos","events_url":"https://api.github.com/users/chrsch/events{/privacy}","received_events_url":"https://api.github.com/users/chrsch/received_events","type":"User","site_admin":false},"created_at":"2016-10-27T17:38:53Z","updated_at":"2016-10-27T17:38:53Z","body":"@orion1024 I can help in any part of the project. I have a lot experience in backend stuff and quite reasonable Qt experience as well. Just let me know :-)"}}
{"actor":{"display_login":"chrsch"}}