{"action":"created","issue":{"url":"https://api.github.com/repos/kbower/tickettest2/issues/290","repository_url":"https://api.github.com/repos/kbower/tickettest2","labels_url":"https://api.github.com/repos/kbower/tickettest2/issues/290/labels{/name}","comments_url":"https://api.github.com/repos/kbower/tickettest2/issues/290/comments","events_url":"https://api.github.com/repos/kbower/tickettest2/issues/290/events","html_url":"https://github.com/kbower/tickettest2/issues/290","id":195857898,"number":290,"title":"Future upgrade of sqlalchemy dependencies","user":{"login":"kbower","id":4621154,"avatar_url":"https://avatars.githubusercontent.com/u/4621154?v=3","gravatar_id":"","url":"https://api.github.com/users/kbower","html_url":"https://github.com/kbower","followers_url":"https://api.github.com/users/kbower/followers","following_url":"https://api.github.com/users/kbower/following{/other_user}","gists_url":"https://api.github.com/users/kbower/gists{/gist_id}","starred_url":"https://api.github.com/users/kbower/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kbower/subscriptions","organizations_url":"https://api.github.com/users/kbower/orgs","repos_url":"https://api.github.com/users/kbower/repos","events_url":"https://api.github.com/users/kbower/events{/privacy}","received_events_url":"https://api.github.com/users/kbower/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"kbower","id":4621154,"avatar_url":"https://avatars.githubusercontent.com/u/4621154?v=3","gravatar_id":"","url":"https://api.github.com/users/kbower","html_url":"https://github.com/kbower","followers_url":"https://api.github.com/users/kbower/followers","following_url":"https://api.github.com/users/kbower/following{/other_user}","gists_url":"https://api.github.com/users/kbower/gists{/gist_id}","starred_url":"https://api.github.com/users/kbower/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kbower/subscriptions","organizations_url":"https://api.github.com/users/kbower/orgs","repos_url":"https://api.github.com/users/kbower/repos","events_url":"https://api.github.com/users/kbower/events{/privacy}","received_events_url":"https://api.github.com/users/kbower/received_events","type":"User","site_admin":false},"assignees":[{"login":"kbower","id":4621154,"avatar_url":"https://avatars.githubusercontent.com/u/4621154?v=3","gravatar_id":"","url":"https://api.github.com/users/kbower","html_url":"https://github.com/kbower","followers_url":"https://api.github.com/users/kbower/followers","following_url":"https://api.github.com/users/kbower/following{/other_user}","gists_url":"https://api.github.com/users/kbower/gists{/gist_id}","starred_url":"https://api.github.com/users/kbower/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kbower/subscriptions","organizations_url":"https://api.github.com/users/kbower/orgs","repos_url":"https://api.github.com/users/kbower/repos","events_url":"https://api.github.com/users/kbower/events{/privacy}","received_events_url":"https://api.github.com/users/kbower/received_events","type":"User","site_admin":false}],"milestone":null,"comments":8,"created_at":"2016-12-15T16:56:04Z","updated_at":"2016-12-15T16:56:08Z","closed_at":null,"body":"_Imported from trac ticket 1550.\nCreated by kbower\nOpened in trac: Mar 21, 2012, 5:16:19 PM\nLast modified in trac: Oct 27, 2016, 2:01:03 PM_\n***\nRequired in sqlalchemy before upgrade:\r\n * https://bitbucket.org/zzzeek/sqlalchemy/issues/2350\r\n   * inside flush extensions we can reference related objects like normal and get our updated values (instead of what is currently in database)\r\n   * <hyperlink to revision 2471>\r\n * ~~https://bitbucket.org/zzzeek/sqlalchemy/issues/2449~~\r\n   * polymorphic order types\r\n   * <hyperlink to revision 2518>\r\n * ~~https://bitbucket.org/zzzeek/sqlalchemy/issues/2480~~\r\n   * polymorphic order types\r\n   * <hyperlink to revision 2729>\r\n * https://bitbucket.org/zzzeek/sqlalchemy/issues/2497\r\n   * credit comments when split automatically\r\n   * <hyperlink to revision 2737>\r\n * ~~https://bitbucket.org/zzzeek/sqlalchemy/issues/2776~~\r\n   * oracle 8i reconnect issue\r\n   * <hyperlink to revision 4335>\r\n * ~~https://bitbucket.org/zzzeek/sqlalchemy/commits/85368d25ed158c85bd19f4a63400884ab1cda26a?at=rel_0_9~~\r\n   * oracle 8 (non-ansi) nested join problem, especially with joinedload of sitestocklevels\r\n   * <hyperlink to revision 6053>\r\n   * see also [https://groups.google.com/forum/#!topic/sqlalchemy/vPNi4ZXkq4E forum notes]\r\n * ~~https://bitbucket.org/zzzeek/sqlalchemy/issue/2453/~~\r\n   * bug when using joined aliases (especially on column_properties) that adds table too many times to SQL\r\n   * <hyperlink to revision 6499>\r\n * ~~https://bitbucket.org/zzzeek/sqlalchemy/issues/2837~~\r\n   * Do not log large data (BLOB, CLOB, etc.)\r\n   * <hyperlink to revision 7577> and <hyperlink to revision 7699>\r\nNot required: ```checkhere```\r\n * https://bitbucket.org/zzzeek/sqlalchemy/issues/2358 (may want to check where we reference PASSIVE_NO_FETCH and PASSIVE_NO_RESULT)\r\n * https://bitbucket.org/zzzeek/sqlalchemy/issues/2372\r\n * https://bitbucket.org/zzzeek/sqlalchemy/issues/1939\r\n\r\nSee and remove <hyperlink to revision 6178> when upgraded sqlalchemy includes .exists() method.\r\n\r\nSee <hyperlink to revision 6269> processbases.py comment and fix after sqlalchemy >= 0.8"},"comment":{"url":"https://api.github.com/repos/kbower/tickettest2/issues/comments/267380370","html_url":"https://github.com/kbower/tickettest2/issues/290#issuecomment-267380370","issue_url":"https://api.github.com/repos/kbower/tickettest2/issues/290","id":267380370,"user":{"login":"kbower","id":4621154,"avatar_url":"https://avatars.githubusercontent.com/u/4621154?v=3","gravatar_id":"","url":"https://api.github.com/users/kbower","html_url":"https://github.com/kbower","followers_url":"https://api.github.com/users/kbower/followers","following_url":"https://api.github.com/users/kbower/following{/other_user}","gists_url":"https://api.github.com/users/kbower/gists{/gist_id}","starred_url":"https://api.github.com/users/kbower/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/kbower/subscriptions","organizations_url":"https://api.github.com/users/kbower/orgs","repos_url":"https://api.github.com/users/kbower/repos","events_url":"https://api.github.com/users/kbower/events{/privacy}","received_events_url":"https://api.github.com/users/kbower/received_events","type":"User","site_admin":false},"created_at":"2016-12-15T16:56:08Z","updated_at":"2016-12-15T16:56:08Z","body":"_Trac comment by kbower on Jun 15, 2015, 2:28:30 PM:_\n\n(Changeset <hyperlink to revision 6499>)\n* patch in SQLAlchemy fix for joined aliases, especially in column_property() ('ordertotal' for service orders)\n   * SQLAlchemy ticket: https://bitbucket.org/zzzeek/sqlalchemy/issue/2453, see #1550\n```diff\ndiff -U10 -r SQLAlchemy-0.7.606kb/lib/sqlalchemy/__init__.py SQLAlchemy-0.7.607kb/lib/sqlalchemy/__init__.py\n--- SQLAlchemy-0.7.606kb/lib/sqlalchemy/__init__.py     2015-01-22 08:30:07.000000000 -0500\n+++ SQLAlchemy-0.7.607kb/lib/sqlalchemy/__init__.py     2015-06-15 14:14:05.000000000 -0400\n@@ -110,16 +110,16 @@\n     ThreadLocalMetaData,\n     UniqueConstraint,\n     )\n\n from sqlalchemy.engine import create_engine, engine_from_config\n\n\n __all__ = sorted(name for name, obj in locals().items()\n                  if not (name.startswith('_') or inspect.ismodule(obj)))\n\n-__version__ = '0.7.606kb'\n+__version__ = '0.7.607kb'\n\n del inspect, sys\n\n from sqlalchemy import util as _sa_util\n _sa_util.importlater.resolve_all()\ndiff -U10 -r SQLAlchemy-0.7.606kb/lib/sqlalchemy/sql/expression.py SQLAlchemy-0.7.607kb/lib/sqlalchemy/sql/expression.py\n--- SQLAlchemy-0.7.606kb/lib/sqlalchemy/sql/expression.py       2012-03-21 15:25:46.000000000 -0400\n+++ SQLAlchemy-0.7.607kb/lib/sqlalchemy/sql/expression.py       2015-06-15 14:19:38.000000000 -0400\n@@ -4788,20 +4788,29 @@\n         Takes into account a set of existing froms which may be\n         rendered in the FROM clause of enclosing selects; this Select\n         may want to leave those absent if it is automatically\n         correlating.\n\n         \"\"\"\n         froms = self._froms\n\n         toremove = set(itertools.chain(*[f._hide_froms for f in froms]))\n         if toremove:\n+            # if we're maintaining clones of froms,\n+            # add the copies out to the toremove list\n+            if self._from_cloned:\n+                toremove.update(\n+                    self._from_cloned[f] for f in\n+                    toremove.intersection(self._from_cloned)\n+                )\n+            # filter out to FROM clauses not in the list,\n+            # using a list to maintain ordering\n             froms = [f for f in froms if f not in toremove]\n\n         if len(froms) > 1 or self._correlate:\n             if self._correlate:\n                 froms = [f for f in froms if f not in _cloned_intersection(froms,\n                         self._correlate)]\n             if self._should_correlate and existing_froms:\n                 froms = [f for f in froms if f not in _cloned_intersection(froms,\n                         existing_froms)]\n\n```\n"}}
{"actor":{"display_login":"kbower"}}