{"action":"created","issue":{"url":"https://api.github.com/repos/bokeh/bokeh/issues/4212","repository_url":"https://api.github.com/repos/bokeh/bokeh","labels_url":"https://api.github.com/repos/bokeh/bokeh/issues/4212/labels{/name}","comments_url":"https://api.github.com/repos/bokeh/bokeh/issues/4212/comments","events_url":"https://api.github.com/repos/bokeh/bokeh/issues/4212/events","html_url":"https://github.com/bokeh/bokeh/pull/4212","id":150205711,"number":4212,"title":"More TS API improvements","user":{"login":"mattpap","id":27475,"avatar_url":"https://avatars.githubusercontent.com/u/27475?v=3","gravatar_id":"","url":"https://api.github.com/users/mattpap","html_url":"https://github.com/mattpap","followers_url":"https://api.github.com/users/mattpap/followers","following_url":"https://api.github.com/users/mattpap/following{/other_user}","gists_url":"https://api.github.com/users/mattpap/gists{/gist_id}","starred_url":"https://api.github.com/users/mattpap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattpap/subscriptions","organizations_url":"https://api.github.com/users/mattpap/orgs","repos_url":"https://api.github.com/users/mattpap/repos","events_url":"https://api.github.com/users/mattpap/events{/privacy}","received_events_url":"https://api.github.com/users/mattpap/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/bokeh/bokeh/labels/status:%20ready","name":"status: ready","color":"bfd4f2"},{"url":"https://api.github.com/repos/bokeh/bokeh/labels/type:%20task","name":"type: task","color":"872A50"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/bokeh/bokeh/milestones/23","html_url":"https://github.com/bokeh/bokeh/milestones/0.12","labels_url":"https://api.github.com/repos/bokeh/bokeh/milestones/23/labels","id":1477666,"number":23,"title":"0.12","description":"","creator":{"login":"mattpap","id":27475,"avatar_url":"https://avatars.githubusercontent.com/u/27475?v=3","gravatar_id":"","url":"https://api.github.com/users/mattpap","html_url":"https://github.com/mattpap","followers_url":"https://api.github.com/users/mattpap/followers","following_url":"https://api.github.com/users/mattpap/following{/other_user}","gists_url":"https://api.github.com/users/mattpap/gists{/gist_id}","starred_url":"https://api.github.com/users/mattpap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattpap/subscriptions","organizations_url":"https://api.github.com/users/mattpap/orgs","repos_url":"https://api.github.com/users/mattpap/repos","events_url":"https://api.github.com/users/mattpap/events{/privacy}","received_events_url":"https://api.github.com/users/mattpap/received_events","type":"User","site_admin":false},"open_issues":51,"closed_issues":365,"state":"open","created_at":"2015-12-29T23:54:47Z","updated_at":"2016-05-01T20:42:33Z","due_on":"2016-05-16T05:00:00Z","closed_at":null},"comments":13,"created_at":"2016-04-21T22:14:34Z","updated_at":"2016-05-02T09:45:57Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/bokeh/bokeh/pulls/4212","html_url":"https://github.com/bokeh/bokeh/pull/4212","diff_url":"https://github.com/bokeh/bokeh/pull/4212.diff","patch_url":"https://github.com/bokeh/bokeh/pull/4212.patch"},"body":"- [x] always create legend, so that we can style it before adding glyphs\r\n- [x] toolbar is now a `<div>` and its CSS is fixed\r\n- [x] toolbar is rendered immediately, instead of in `render()`\r\n- [x] fix `Legend`'s typings\r\n"},"comment":{"url":"https://api.github.com/repos/bokeh/bokeh/issues/comments/216179236","html_url":"https://github.com/bokeh/bokeh/pull/4212#issuecomment-216179236","issue_url":"https://api.github.com/repos/bokeh/bokeh/issues/4212","id":216179236,"user":{"login":"mattpap","id":27475,"avatar_url":"https://avatars.githubusercontent.com/u/27475?v=3","gravatar_id":"","url":"https://api.github.com/users/mattpap","html_url":"https://github.com/mattpap","followers_url":"https://api.github.com/users/mattpap/followers","following_url":"https://api.github.com/users/mattpap/following{/other_user}","gists_url":"https://api.github.com/users/mattpap/gists{/gist_id}","starred_url":"https://api.github.com/users/mattpap/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/mattpap/subscriptions","organizations_url":"https://api.github.com/users/mattpap/orgs","repos_url":"https://api.github.com/users/mattpap/repos","events_url":"https://api.github.com/users/mattpap/events{/privacy}","received_events_url":"https://api.github.com/users/mattpap/received_events","type":"User","site_admin":false},"created_at":"2016-05-02T09:45:57Z","updated_at":"2016-05-02T09:45:57Z","body":"Despite unrelated discussions in this PR, I would like to actually fix the problem there is with integration tests. At this point we know that there is a slight difference in how toolbar is rendered. There used to be more space (1~2px) above the toolbar. The difference comes most likely from the fact that toolbar isn't embedded into a table directly anymore, but has its own div and thus there are no interaction between table's borders and toolbar borders (but maybe there is some thing else going on in similar fashion). This difference is acceptable, especially that whole table structure is going away soon.\r\n\r\nExamples tests don't fail hard and give valuable feedback on what is actually different between `master` and this PR. The reason they are helpful is because despite plot size change, they take more space into account, so plot size difference (up to some degree) is incorporated in a diff. On the other hand, integration tests fail hard. This raises a question I asked at the beginning of this PR, how do I recover from this? Obviously I can restore original plot size, which I don't have intention to, because I think the new size is actually better (less space wasted). What do I do next? I tried to follow integration tests' code, but I don't see where `base` images come from. I presume `base` images are stored on S3, the same as images produced by examples. At this point my observation is that I'm not allowed to change plot size in integration tests. So are there any actions for me to perform to get around this? Is this a bug or a design oversight? I would expect image diff images to fail softly and always produce a diff.\r\n\r\nI have a long list of things that don't work or don't work for me in the new testing infrastructure (some inherited from the old one), but that's something for longer term development perspective. The problem in the PR is something I need to get fixed soon."}}