{"action":"created","issue":{"url":"https://api.github.com/repos/ioam/holoviews/issues/2732","repository_url":"https://api.github.com/repos/ioam/holoviews","labels_url":"https://api.github.com/repos/ioam/holoviews/issues/2732/labels{/name}","comments_url":"https://api.github.com/repos/ioam/holoviews/issues/2732/comments","events_url":"https://api.github.com/repos/ioam/holoviews/issues/2732/events","html_url":"https://github.com/ioam/holoviews/pull/2732","id":326594055,"number":2732,"title":"Add baseclass for Overlay and Layout","user":{"login":"philippjfr","id":1550771,"avatar_url":"https://avatars2.githubusercontent.com/u/1550771?v=4","gravatar_id":"","url":"https://api.github.com/users/philippjfr","html_url":"https://github.com/philippjfr","followers_url":"https://api.github.com/users/philippjfr/followers","following_url":"https://api.github.com/users/philippjfr/following{/other_user}","gists_url":"https://api.github.com/users/philippjfr/gists{/gist_id}","starred_url":"https://api.github.com/users/philippjfr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philippjfr/subscriptions","organizations_url":"https://api.github.com/users/philippjfr/orgs","repos_url":"https://api.github.com/users/philippjfr/repos","events_url":"https://api.github.com/users/philippjfr/events{/privacy}","received_events_url":"https://api.github.com/users/philippjfr/received_events","type":"User","site_admin":false},"labels":[{"id":97850381,"url":"https://api.github.com/repos/ioam/holoviews/labels/API","name":"API","color":"cc317c","default":false},{"id":433702718,"url":"https://api.github.com/repos/ioam/holoviews/labels/WIP","name":"WIP","color":"FF9000","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":6,"created_at":"2018-05-25T16:44:30Z","updated_at":"2018-05-25T23:32:55Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/ioam/holoviews/pulls/2732","html_url":"https://github.com/ioam/holoviews/pull/2732","diff_url":"https://github.com/ioam/holoviews/pull/2732.diff","patch_url":"https://github.com/ioam/holoviews/pull/2732.patch"},"body":"As was rightly pointed out in https://github.com/ioam/holoviews/issues/2673 ``Overlay`` currently inherits from ``Layout`` which is not a sensible class hierarchy and also leads ``Overlay`` to inherit a number of methods and behaviors which do not make sense, e.g. ``.cols``, ``.shape`` and ``.grid_items``. This needs pretty thorough testing so it'll have to go in the 1.11 release."},"comment":{"url":"https://api.github.com/repos/ioam/holoviews/issues/comments/392213546","html_url":"https://github.com/ioam/holoviews/pull/2732#issuecomment-392213546","issue_url":"https://api.github.com/repos/ioam/holoviews/issues/2732","id":392213546,"user":{"login":"philippjfr","id":1550771,"avatar_url":"https://avatars2.githubusercontent.com/u/1550771?v=4","gravatar_id":"","url":"https://api.github.com/users/philippjfr","html_url":"https://github.com/philippjfr","followers_url":"https://api.github.com/users/philippjfr/followers","following_url":"https://api.github.com/users/philippjfr/following{/other_user}","gists_url":"https://api.github.com/users/philippjfr/gists{/gist_id}","starred_url":"https://api.github.com/users/philippjfr/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/philippjfr/subscriptions","organizations_url":"https://api.github.com/users/philippjfr/orgs","repos_url":"https://api.github.com/users/philippjfr/repos","events_url":"https://api.github.com/users/philippjfr/events{/privacy}","received_events_url":"https://api.github.com/users/philippjfr/received_events","type":"User","site_admin":false},"created_at":"2018-05-25T23:32:55Z","updated_at":"2018-05-25T23:32:55Z","author_association":"MEMBER","body":">but aren't both Layouts and Overlays restricted to a single non-hierarchical level?\r\n\r\nNo attribute access on both is two-level by default and nestable to whatever level you want if you construct it manually, e.g.:\r\n\r\n```\r\n>>> hv.Overlay([hv.Element([])])\r\n:Overlay\r\n   .Element.I :Element\r\n\r\n>>> hv.Layout([('A.Deeply.Nested.Layout', hv.Image([]))])\r\n:Layout\r\n   .A.Deeply.Nested.Layout :Image   [x,y]   (z)\r\n```\r\n\r\nPlus this is still a baseclass and the previous baseclass was AttrTree, so I don't think referencing the datastructure is really an issue.\r\n"}}
{"actor":{"display_login":"philippjfr"}}