{"action":"created","issue":{"url":"https://api.github.com/repos/spencerahill/aospy/issues/97","repository_url":"https://api.github.com/repos/spencerahill/aospy","labels_url":"https://api.github.com/repos/spencerahill/aospy/issues/97/labels{/name}","comments_url":"https://api.github.com/repos/spencerahill/aospy/issues/97/comments","events_url":"https://api.github.com/repos/spencerahill/aospy/issues/97/events","html_url":"https://github.com/spencerahill/aospy/pull/97","id":184965065,"number":97,"title":"WIP refactor timedate","user":{"login":"spencerahill","id":6200806,"avatar_url":"https://avatars.githubusercontent.com/u/6200806?v=3","gravatar_id":"","url":"https://api.github.com/users/spencerahill","html_url":"https://github.com/spencerahill","followers_url":"https://api.github.com/users/spencerahill/followers","following_url":"https://api.github.com/users/spencerahill/following{/other_user}","gists_url":"https://api.github.com/users/spencerahill/gists{/gist_id}","starred_url":"https://api.github.com/users/spencerahill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spencerahill/subscriptions","organizations_url":"https://api.github.com/users/spencerahill/orgs","repos_url":"https://api.github.com/users/spencerahill/repos","events_url":"https://api.github.com/users/spencerahill/events{/privacy}","received_events_url":"https://api.github.com/users/spencerahill/received_events","type":"User","site_admin":false},"labels":[{"id":401753155,"url":"https://api.github.com/repos/spencerahill/aospy/labels/Calc","name":"Calc","color":"d4c5f9","default":false},{"id":467924488,"url":"https://api.github.com/repos/spencerahill/aospy/labels/dates/times","name":"dates/times","color":"5319e7","default":false},{"id":401755618,"url":"https://api.github.com/repos/spencerahill/aospy/labels/Run","name":"Run","color":"b60205","default":false}],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":{"url":"https://api.github.com/repos/spencerahill/aospy/milestones/1","html_url":"https://github.com/spencerahill/aospy/milestones/v0.1","labels_url":"https://api.github.com/repos/spencerahill/aospy/milestones/1/labels","id":1860976,"number":1,"title":"v0.1","description":"First official aospy release.","creator":{"login":"spencerahill","id":6200806,"avatar_url":"https://avatars.githubusercontent.com/u/6200806?v=3","gravatar_id":"","url":"https://api.github.com/users/spencerahill","html_url":"https://github.com/spencerahill","followers_url":"https://api.github.com/users/spencerahill/followers","following_url":"https://api.github.com/users/spencerahill/following{/other_user}","gists_url":"https://api.github.com/users/spencerahill/gists{/gist_id}","starred_url":"https://api.github.com/users/spencerahill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spencerahill/subscriptions","organizations_url":"https://api.github.com/users/spencerahill/orgs","repos_url":"https://api.github.com/users/spencerahill/repos","events_url":"https://api.github.com/users/spencerahill/events{/privacy}","received_events_url":"https://api.github.com/users/spencerahill/received_events","type":"User","site_admin":false},"open_issues":15,"closed_issues":3,"state":"open","created_at":"2016-07-02T00:34:09Z","updated_at":"2016-11-21T01:23:17Z","due_on":null,"closed_at":null},"comments":4,"created_at":"2016-10-24T21:53:43Z","updated_at":"2016-11-21T01:46:55Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/spencerahill/aospy/pulls/97","html_url":"https://github.com/spencerahill/aospy/pull/97","diff_url":"https://github.com/spencerahill/aospy/pull/97.diff","patch_url":"https://github.com/spencerahill/aospy/pull/97.patch"},"body":"Fixes #96.\r\n\r\nIn working on this, I realized that much of timedate's logic was needlessly convoluted, and in some cases we were just making crummier versions of existing pandas and datetime functionality.  So I have started in on cleaning up that module.  But I think more should be done.\r\n\r\nIn particular, the `TimeManager` class was almost entirely static or class methods.  Having moved them to be module-level functions, I'm now wondering if there's any need for the TimeManager class at all.\r\n\r\nAlso, `to_datetime` feels hack-ish.  My sense is that if we were more careful with our logic in `calc` (and maybe elsewhere), we wouldn't need this utility function that catches all these different types.  At the very least, catching bools and returning them seems weird.\r\n\r\nEven having pruned a fair bit, it still feels like there's room to clean things up further.  But I need to move on to other things for the time being.\r\n\r\nTODOs:\r\n- [x] Make decisions on the above considerations.\r\n- [ ] More tests.\r\n- [ ] Further improve docstrings.\r\n"},"comment":{"url":"https://api.github.com/repos/spencerahill/aospy/issues/comments/261824092","html_url":"https://github.com/spencerahill/aospy/pull/97#issuecomment-261824092","issue_url":"https://api.github.com/repos/spencerahill/aospy/issues/97","id":261824092,"user":{"login":"spencerahill","id":6200806,"avatar_url":"https://avatars.githubusercontent.com/u/6200806?v=3","gravatar_id":"","url":"https://api.github.com/users/spencerahill","html_url":"https://github.com/spencerahill","followers_url":"https://api.github.com/users/spencerahill/followers","following_url":"https://api.github.com/users/spencerahill/following{/other_user}","gists_url":"https://api.github.com/users/spencerahill/gists{/gist_id}","starred_url":"https://api.github.com/users/spencerahill/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/spencerahill/subscriptions","organizations_url":"https://api.github.com/users/spencerahill/orgs","repos_url":"https://api.github.com/users/spencerahill/repos","events_url":"https://api.github.com/users/spencerahill/events{/privacy}","received_events_url":"https://api.github.com/users/spencerahill/received_events","type":"User","site_admin":false},"created_at":"2016-11-21T01:46:55Z","updated_at":"2016-11-21T01:46:55Z","body":"The checking I have implemented within `Run.__init__`, I now realize, should be implemented at all levels -- Proj, Model, and Run -- since we allow users to specify date ranges, etc. at any one of them.  Thus, I think it makes sense to go within it's own class or function.  This doesn't suite seem like the best fit for `DataLoader`, because it's really just the specifications for the data.  `DataSpecs`?\r\n\r\nHowever if we go that route, I still would like the Run, etc. __init__ call signatures to be able to specify these directly.  So we would need to catch those and pass them to the `DataSpecs` constructor.  @spencerkclark, I feel like I'm overlapping with #90 here...what is your take?"}}
{"actor":{"display_login":"spencerahill"}}