Compare commits
	
		
			No commits in common. "756f0a8e5d54fb2d2a8c15ba85ec7effe31a0a10" and "8fb11fd269f45ce9a2f42b2167f22be838763301" have entirely different histories.
		
	
	
		
			756f0a8e5d
			...
			8fb11fd269
		
	
		
					 3 changed files with 4 additions and 29 deletions
				
			
		
							
								
								
									
										2
									
								
								setup.py
									
										
									
									
									
								
							
							
						
						
									
										2
									
								
								setup.py
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -66,7 +66,7 @@ specific version of this database, that version being 7.5.1.
 | 
			
		|||
    packages = find_packages(),
 | 
			
		||||
 | 
			
		||||
    install_requires = [
 | 
			
		||||
        'SQLAlchemy>0.5.2',
 | 
			
		||||
        'SQLAlchemy',
 | 
			
		||||
        ],
 | 
			
		||||
 | 
			
		||||
    entry_points = {
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -23,4 +23,4 @@
 | 
			
		|||
################################################################################
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
__version__ = '0.1b5'
 | 
			
		||||
__version__ = '0.1b1'
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -26,7 +26,6 @@
 | 
			
		|||
from sqlalchemy.engine.default import DefaultDialect
 | 
			
		||||
from sqlalchemy import types, and_
 | 
			
		||||
from sqlalchemy.sql.expression import Join
 | 
			
		||||
from sqlalchemy.sql import visitors, operators, ClauseElement
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
import sqlalchemy
 | 
			
		||||
| 
						 | 
				
			
			@ -57,12 +56,7 @@ class SQLBase7Compiler(CompilerBase):
 | 
			
		|||
        return self.process(join.left, **kwargs) + ", " + self.process(join.right, **kwargs)
 | 
			
		||||
 | 
			
		||||
    def visit_select(self, select, **kwargs):
 | 
			
		||||
        if self.stack and 'from' in self.stack[-1]:
 | 
			
		||||
            existingfroms = self.stack[-1]['from']
 | 
			
		||||
        else:
 | 
			
		||||
            existingfroms = None
 | 
			
		||||
            
 | 
			
		||||
        froms = select._get_display_froms(existingfroms)
 | 
			
		||||
        froms = select._get_display_froms()
 | 
			
		||||
        whereclause = self._get_join_whereclause(froms)
 | 
			
		||||
        if whereclause is not None:
 | 
			
		||||
            select = select.where(whereclause)
 | 
			
		||||
| 
						 | 
				
			
			@ -77,16 +71,7 @@ class SQLBase7Compiler(CompilerBase):
 | 
			
		|||
        clauses = []
 | 
			
		||||
 | 
			
		||||
        def visit_join(join):
 | 
			
		||||
            if join.isouter:
 | 
			
		||||
                def visit_binary(binary):
 | 
			
		||||
                    if binary.operator == operators.eq:
 | 
			
		||||
                        if binary.left.table is join.right:
 | 
			
		||||
                            binary.left = _OuterJoinColumn(binary.left)
 | 
			
		||||
                        elif binary.right.table is join.right:
 | 
			
		||||
                            binary.right = _OuterJoinColumn(binary.right)
 | 
			
		||||
                clauses.append(visitors.cloned_traverse(join.onclause, {}, {'binary':visit_binary}))
 | 
			
		||||
            else:
 | 
			
		||||
                clauses.append(join.onclause)
 | 
			
		||||
            clauses.append(join.onclause)
 | 
			
		||||
            for j in join.left, join.right:
 | 
			
		||||
                if isinstance(j, Join):
 | 
			
		||||
                    visit_join(j)
 | 
			
		||||
| 
						 | 
				
			
			@ -99,16 +84,6 @@ class SQLBase7Compiler(CompilerBase):
 | 
			
		|||
            return and_(*clauses)
 | 
			
		||||
        return None
 | 
			
		||||
 | 
			
		||||
    def visit_outer_join_column(self, vc):
 | 
			
		||||
        return self.process(vc.column) + "(+)"
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class _OuterJoinColumn(ClauseElement):
 | 
			
		||||
    __visit_name__ = 'outer_join_column'
 | 
			
		||||
    
 | 
			
		||||
    def __init__(self, column):
 | 
			
		||||
        self.column = column
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
class SQLBase7Dialect(DefaultDialect):
 | 
			
		||||
    
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue