{"action":"created","issue":{"url":"https://api.github.com/repos/bblfsh/python-driver/issues/154","repository_url":"https://api.github.com/repos/bblfsh/python-driver","labels_url":"https://api.github.com/repos/bblfsh/python-driver/issues/154/labels{/name}","comments_url":"https://api.github.com/repos/bblfsh/python-driver/issues/154/comments","events_url":"https://api.github.com/repos/bblfsh/python-driver/issues/154/events","html_url":"https://github.com/bblfsh/python-driver/pull/154","id":315939833,"number":154,"title":"Migration to the new DSL","user":{"login":"juanjux","id":277378,"avatar_url":"https://avatars2.githubusercontent.com/u/277378?v=4","gravatar_id":"","url":"https://api.github.com/users/juanjux","html_url":"https://github.com/juanjux","followers_url":"https://api.github.com/users/juanjux/followers","following_url":"https://api.github.com/users/juanjux/following{/other_user}","gists_url":"https://api.github.com/users/juanjux/gists{/gist_id}","starred_url":"https://api.github.com/users/juanjux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juanjux/subscriptions","organizations_url":"https://api.github.com/users/juanjux/orgs","repos_url":"https://api.github.com/users/juanjux/repos","events_url":"https://api.github.com/users/juanjux/events{/privacy}","received_events_url":"https://api.github.com/users/juanjux/received_events","type":"User","site_admin":false},"labels":[{"id":538625486,"url":"https://api.github.com/repos/bblfsh/python-driver/labels/enhancement","name":"enhancement","color":"84b6eb","default":true}],"state":"open","locked":false,"assignee":{"login":"juanjux","id":277378,"avatar_url":"https://avatars2.githubusercontent.com/u/277378?v=4","gravatar_id":"","url":"https://api.github.com/users/juanjux","html_url":"https://github.com/juanjux","followers_url":"https://api.github.com/users/juanjux/followers","following_url":"https://api.github.com/users/juanjux/following{/other_user}","gists_url":"https://api.github.com/users/juanjux/gists{/gist_id}","starred_url":"https://api.github.com/users/juanjux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juanjux/subscriptions","organizations_url":"https://api.github.com/users/juanjux/orgs","repos_url":"https://api.github.com/users/juanjux/repos","events_url":"https://api.github.com/users/juanjux/events{/privacy}","received_events_url":"https://api.github.com/users/juanjux/received_events","type":"User","site_admin":false},"assignees":[{"login":"juanjux","id":277378,"avatar_url":"https://avatars2.githubusercontent.com/u/277378?v=4","gravatar_id":"","url":"https://api.github.com/users/juanjux","html_url":"https://github.com/juanjux","followers_url":"https://api.github.com/users/juanjux/followers","following_url":"https://api.github.com/users/juanjux/following{/other_user}","gists_url":"https://api.github.com/users/juanjux/gists{/gist_id}","starred_url":"https://api.github.com/users/juanjux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juanjux/subscriptions","organizations_url":"https://api.github.com/users/juanjux/orgs","repos_url":"https://api.github.com/users/juanjux/repos","events_url":"https://api.github.com/users/juanjux/events{/privacy}","received_events_url":"https://api.github.com/users/juanjux/received_events","type":"User","site_admin":false}],"milestone":null,"comments":4,"created_at":"2018-04-19T15:56:47Z","updated_at":"2018-04-23T08:30:45Z","closed_at":null,"author_association":"MEMBER","pull_request":{"url":"https://api.github.com/repos/bblfsh/python-driver/pulls/154","html_url":"https://github.com/bblfsh/python-driver/pull/154","diff_url":"https://github.com/bblfsh/python-driver/pull/154.diff","patch_url":"https://github.com/bblfsh/python-driver/pull/154.patch"},"body":""},"comment":{"url":"https://api.github.com/repos/bblfsh/python-driver/issues/comments/383496455","html_url":"https://github.com/bblfsh/python-driver/pull/154#issuecomment-383496455","issue_url":"https://api.github.com/repos/bblfsh/python-driver/issues/154","id":383496455,"user":{"login":"juanjux","id":277378,"avatar_url":"https://avatars2.githubusercontent.com/u/277378?v=4","gravatar_id":"","url":"https://api.github.com/users/juanjux","html_url":"https://github.com/juanjux","followers_url":"https://api.github.com/users/juanjux/followers","following_url":"https://api.github.com/users/juanjux/following{/other_user}","gists_url":"https://api.github.com/users/juanjux/gists{/gist_id}","starred_url":"https://api.github.com/users/juanjux/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/juanjux/subscriptions","organizations_url":"https://api.github.com/users/juanjux/orgs","repos_url":"https://api.github.com/users/juanjux/repos","events_url":"https://api.github.com/users/juanjux/events{/privacy}","received_events_url":"https://api.github.com/users/juanjux/received_events","type":"User","site_admin":false},"created_at":"2018-04-23T08:30:45Z","updated_at":"2018-04-23T08:30:45Z","author_association":"MEMBER","body":"\n\n\n\nReview status: all files reviewed at latest revision, 6 unresolved discussions, some commit checks broke.\n\n---\n\n*[native/python_package/python_driver/astimprove.py, line 361 at r1](https://beta.reviewable.io/reviews/bblfsh/python-driver/154#-LAYpuNk8-7QBwb3aZU-:-LAl_53M7xL5KlE58cUM:b-nilhia) ([raw file](https://github.com/bblfsh/python-driver/blob/8f6c05da3d1febc1b821a502e1348170ab4301e2/native/python_package/python_driver/astimprove.py#L361)):*\n<details><summary><i>Previously, dennwc (Denys Smirnov) wrote…</i></summary><blockquote>\n\nThese token fields can be processed in DSL\n</blockquote></details>\n\nThis is used for the tokenizer that sync positions of nodes with tokens. This is done before the DSL, so it must remain.\n\n---\n\n*[native/python_package/python_driver/astimprove.py, line 364 at r1](https://beta.reviewable.io/reviews/bblfsh/python-driver/154#-LAYpIFdBsYL_3mlJVtF:-LAl_Ajg2CQnCCqWfQhs:bllm24) ([raw file](https://github.com/bblfsh/python-driver/blob/8f6c05da3d1febc1b821a502e1348170ab4301e2/native/python_package/python_driver/astimprove.py#L364)):*\n<details><summary><i>Previously, dennwc (Denys Smirnov) wrote…</i></summary><blockquote>\n\nThese tokens can be added in DSL\n</blockquote></details>\n\nDitto (needed by the tokenizer to sync positions).\n\n---\n\n*[native/python_package/python_driver/astimprove.py, line 445 at r1](https://beta.reviewable.io/reviews/bblfsh/python-driver/154#-LAYqAjYBd7wUxxvxvbF:-LAl_N1Q2rhSIGn4vbr4:b-6soxkn) ([raw file](https://github.com/bblfsh/python-driver/blob/8f6c05da3d1febc1b821a502e1348170ab4301e2/native/python_package/python_driver/astimprove.py#L445)):*\n<details><summary><i>Previously, dennwc (Denys Smirnov) wrote…</i></summary><blockquote>\n\nI would say we can drop this logic\n</blockquote></details>\n\nThe ctx field It's not used by anything in the annotations so I would prefer to leave this simple transformation here to keep the go transformations on topic about things related to the UAST.\n\n---\n\n*[native/python_package/python_driver/astimprove.py, line 496 at r1](https://beta.reviewable.io/reviews/bblfsh/python-driver/154#-LAYqPh-3KTb-7MTUCjg:-LAl_Sa49CtairSukx_1:b-h3zaxd) ([raw file](https://github.com/bblfsh/python-driver/blob/8f6c05da3d1febc1b821a502e1348170ab4301e2/native/python_package/python_driver/astimprove.py#L496)):*\n<details><summary><i>Previously, dennwc (Denys Smirnov) wrote…</i></summary><blockquote>\n\nCan be done in DSL\n</blockquote></details>\n\nI don't think so (correct me if I'm wrong) since the DSL/SDK doesn't seem to support arrays of strings (had to do something else in the native driver to avoid the \"is not a node or array\" error).\n\n---\n\n*[native/python_package/python_driver/astimprove.py, line 535 at r1](https://beta.reviewable.io/reviews/bblfsh/python-driver/154#-LAYqoFx0drsEpCQs1Er:-LAlaQwzA16EK4J_t21C:bperjzx) ([raw file](https://github.com/bblfsh/python-driver/blob/8f6c05da3d1febc1b821a502e1348170ab4301e2/native/python_package/python_driver/astimprove.py#L535)):*\n<details><summary><i>Previously, dennwc (Denys Smirnov) wrote…</i></summary><blockquote>\n\nIdeally, this should be the only visitor function, and everything else can be done on Go side (to be able to reverse it later)\n</blockquote></details>\n\nDoing a visitor is the recommended way to access the Python AST so the result of this is the native AST, not the input of this visitor (the input are binary python objects with python types that always have to be processed in some way or other to export outside of Python). Anyway what this method does is to call another visit methods so it can't really operate by itself without the others.\n\n---\n\n\n*Comments from [Reviewable](https://beta.reviewable.io/reviews/bblfsh/python-driver/154)*\n<!-- Sent from Reviewable.io -->\n"}}
{"actor":{"display_login":"juanjux"}}