{"action":"created","issue":{"url":"https://api.github.com/repos/daviis/PyDucker/issues/63","labels_url":"https://api.github.com/repos/daviis/PyDucker/issues/63/labels{/name}","comments_url":"https://api.github.com/repos/daviis/PyDucker/issues/63/comments","events_url":"https://api.github.com/repos/daviis/PyDucker/issues/63/events","html_url":"https://github.com/daviis/PyDucker/pull/63","id":57737631,"number":63,"title":"First changes post January","user":{"login":"daviis","id":4260321,"avatar_url":"https://avatars.githubusercontent.com/u/4260321?v=3","gravatar_id":"","url":"https://api.github.com/users/daviis","html_url":"https://github.com/daviis","followers_url":"https://api.github.com/users/daviis/followers","following_url":"https://api.github.com/users/daviis/following{/other_user}","gists_url":"https://api.github.com/users/daviis/gists{/gist_id}","starred_url":"https://api.github.com/users/daviis/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/daviis/subscriptions","organizations_url":"https://api.github.com/users/daviis/orgs","repos_url":"https://api.github.com/users/daviis/repos","events_url":"https://api.github.com/users/daviis/events{/privacy}","received_events_url":"https://api.github.com/users/daviis/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"JakeAlbee","id":5231850,"avatar_url":"https://avatars.githubusercontent.com/u/5231850?v=3","gravatar_id":"","url":"https://api.github.com/users/JakeAlbee","html_url":"https://github.com/JakeAlbee","followers_url":"https://api.github.com/users/JakeAlbee/followers","following_url":"https://api.github.com/users/JakeAlbee/following{/other_user}","gists_url":"https://api.github.com/users/JakeAlbee/gists{/gist_id}","starred_url":"https://api.github.com/users/JakeAlbee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JakeAlbee/subscriptions","organizations_url":"https://api.github.com/users/JakeAlbee/orgs","repos_url":"https://api.github.com/users/JakeAlbee/repos","events_url":"https://api.github.com/users/JakeAlbee/events{/privacy}","received_events_url":"https://api.github.com/users/JakeAlbee/received_events","type":"User","site_admin":false},"milestone":null,"comments":4,"created_at":"2015-02-15T17:21:05Z","updated_at":"2015-02-15T19:20:29Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/daviis/PyDucker/pulls/63","html_url":"https://github.com/daviis/PyDucker/pull/63","diff_url":"https://github.com/daviis/PyDucker/pull/63.diff","patch_url":"https://github.com/daviis/PyDucker/pull/63.patch"},"body":"The visits implemented are:\r\n* Div\r\n* FloorDiv\r\n* Index\r\n* Mod\r\n* Not\r\n* Pow\r\n* Sub\r\n* Assert\r\n* IfExp\r\n* Is\r\n* ExceptHandler\r\n* Raise\r\n* Try\r\n* Break\r\n* Continue\r\n\r\nAlso have code for new tests:\r\n* Test/Correct/Collections.py\r\n* Test/Correct/Compare.py \r\n* Test/Correct/Ops.py (merged from addedTests)\r\n* Test/Correct/control.py (merged from addedTests)\r\n* Test/Correct/tryRaiseExcept.py (merged from addedTests)\r\n* Test/Correct/SliceIndex.py\r\n\r\nRemoved tests:\r\n* Test/Correct/Bin.py\r\n* Test/Correct/BinOp.py\r\n* Test/Correct/SingleMethodDef.py\r\n* Test/Correct/UnOp.py\r\n* Test/Correct/add.py\r\n\r\nAltered test:\r\n* Test/Incorrect/StrPlusInt.py so it doesn't have the print which isn't in the namespace yet.\r\n\r\nIn Bean.py I moved the function checking into the namespacebean then down further into the individual components. Along with that I moved exception creation into the beans (look at exceptions.py for changes there). Exceptions are also now made in ClassDefBean so when isIterable or a similar function is called it will either throw an exception or not do anything if it works.\r\n\r\nIn Exceptions.py I changed most creators from being strings to either VarBeans or ClassDefBeans or FunDefBeans. I also made lineNum an optional part of the creator because when Exceptions are spawned in the NameSpace or below they wont have access to the node that was their originator, so now there are exception handlers in the walker to catch possible exceptions and put the lineNum into them before reraiseing them.\r\n\r\nIn NameSpaceBean.py I set up the code so we can prime the environment with scope information.\r\n\r\nIn TestAST.py I made it possible to unit test all incorrect cases, also I started working on how we might print out exceptions to the user.\r\n\r\nIn Walker.py I implemented the new visits and refactored the exceptions/namespace checks.\r\n"},"comment":{"url":"https://api.github.com/repos/daviis/PyDucker/issues/comments/74432014","html_url":"https://github.com/daviis/PyDucker/pull/63#issuecomment-74432014","issue_url":"https://api.github.com/repos/daviis/PyDucker/issues/63","id":74432014,"user":{"login":"JakeAlbee","id":5231850,"avatar_url":"https://avatars.githubusercontent.com/u/5231850?v=3","gravatar_id":"","url":"https://api.github.com/users/JakeAlbee","html_url":"https://github.com/JakeAlbee","followers_url":"https://api.github.com/users/JakeAlbee/followers","following_url":"https://api.github.com/users/JakeAlbee/following{/other_user}","gists_url":"https://api.github.com/users/JakeAlbee/gists{/gist_id}","starred_url":"https://api.github.com/users/JakeAlbee/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/JakeAlbee/subscriptions","organizations_url":"https://api.github.com/users/JakeAlbee/orgs","repos_url":"https://api.github.com/users/JakeAlbee/repos","events_url":"https://api.github.com/users/JakeAlbee/events{/privacy}","received_events_url":"https://api.github.com/users/JakeAlbee/received_events","type":"User","site_admin":false},"created_at":"2015-02-15T19:20:29Z","updated_at":"2015-02-15T19:20:29Z","body":"Exception handling makes sense and is a good change, works with testing"}}