Skip to content
Snippets Groups Projects
ChangeLog 10.7 KiB
Newer Older
Nicolas Chauvat's avatar
Nicolas Chauvat committed
ChangeLog for RQL
=================
Sylvain's avatar
Sylvain committed

Sylvain Thénault's avatar
Sylvain Thénault committed
2010-09-10  --  0.26.6
    * enhance bad rql query detection with ordered distinct (can't use distinct
      if an attribute is selected and we sort on another attribute)

    * fix subquery_selection_index responsability mess-up: it wasn't doing what
      it should have done (see cw.rset related_entity implementation)

    * consider subquery aliases in Select.clean_solutions

Sylvain Thénault's avatar
Sylvain Thénault committed
    * add constraint package to setuptools dependencies so we've fallback
      opportunity if gecode is not installed

    * fix setuptools dependency on yapps by forcing install of our custom
      package, so it don't try to install pypi's one which doesn't work well
      with both pip and easy_install


Sylvain Thénault's avatar
Sylvain Thénault committed
2010-08-02  --  0.26.5
    * fix solutions computation crash with some query using sub-queries (closes #37423)


Sylvain Thénault's avatar
Sylvain Thénault committed
2010-07-28  --  0.26.4
    * fix re-annotation pb: some stinfo keys were not properly reinitialized
      which may cause pb later (at sql generation time for instance)
Sylvain Thénault's avatar
Sylvain Thénault committed
2010-06-21  --  0.26.3
    * support for node from having in Select.remove
Sylvain Thénault's avatar
Sylvain Thénault committed

    * enhanced Select.replace method
Sylvain Thénault's avatar
Sylvain Thénault committed

    * rql st checker now checks function avaibility according to backend (if specified)

Sylvain Thénault's avatar
Sylvain Thénault committed


Sylvain Thénault's avatar
Sylvain Thénault committed
2010-06-11  --  0.26.2
    * totally remove 'IS' operator

    * replace get_variable_variables by get_variable_indicies

    * fix rule order so 'HAVING (X op Y)' is now parseable while 'HAVING (1+2) op Y' isn't anymore parseable

    * fix simplification bug with ored uid relations

Sylvain Thénault's avatar
Sylvain Thénault committed


Sylvain Thénault's avatar
Sylvain Thénault committed
2010-06-04  --  0.26.1
Sylvain Thénault's avatar
Sylvain Thénault committed

Sylvain Thénault's avatar
Sylvain Thénault committed
    * fix grammar bug in HAVING clause: should all arbitrary expression and fix to deal with IN() hack
Sylvain Thénault's avatar
Sylvain Thénault committed


Sylvain Thénault's avatar
Sylvain Thénault committed
2010-04-20  --  0.26.0
    * setuptools support

    * variable and column alias stinfo optimization

    * analyzer return key used in args to unambiguify solutions

    * rewrite_shared_optional refactoring



Sylvain Thénault's avatar
Sylvain Thénault committed
2010-03-16  --  0.25.0
    * depends on logilab-database

    * raise BadRQLQuery when using optional on attribute relation



Sylvain Thénault's avatar
Sylvain Thénault committed
2010-02-10  --  0.24.0
    * update to yams 0.27 api

    * fully dropped mx support

    * various bugs fixed



Sylvain Thénault's avatar
Sylvain Thénault committed
2009-08-26  --  0.23.0
Sylvain Thénault's avatar
Sylvain Thénault committed
    * Union.locate_subquery now return a 2-uple (select subquery, column index in the subquery)
Sylvain Thénault's avatar
Sylvain Thénault committed

Sylvain Thénault's avatar
Sylvain Thénault committed
    * new subquery_selection_index method on Union
Sylvain Thénault's avatar
Sylvain Thénault committed

Sylvain Thénault's avatar
Sylvain Thénault committed
    * new root_selection_index method on VariableRef

Sylvain Thénault's avatar
Sylvain Thénault committed


Sylvain Thénault's avatar
Sylvain Thénault committed
2009-08-18  --  0.22.2
    * fixes to compile with different versions of gecode

Sylvain Thénault's avatar
Sylvain Thénault committed


sylvain thenault's avatar
sylvain thenault committed
2009-05-04  --  0.22.0
sylvain thenault's avatar
sylvain thenault committed
    * consider subqueries in variables graph
sylvain thenault's avatar
sylvain thenault committed

sylvain thenault's avatar
sylvain thenault committed
    * py datetime support (must be explicitly activated until we drop mx.DateTime support)
sylvain thenault's avatar
sylvain thenault committed

    * implements main_relation on ColumnAlias
sylvain thenault's avatar
sylvain thenault committed



2009-02-17  --  0.21.0
sylvain thenault's avatar
sylvain thenault committed
    * new type solver based on gecode

sylvain thenault's avatar
sylvain thenault committed


Sylvain Thenault's avatar
Sylvain Thenault committed
2008-10-17  --  0.20.2
    * new remove_subquery method on Select node

    * remove_node accepts a new 'undefine' argument (default to False for bw compat)
     telling if it should undefine no more referenced variables



Sylvain Thenault's avatar
Sylvain Thenault committed
2008-10-09  --  0.20.1
Sylvain Thenault's avatar
Sylvain Thenault committed
    * introduce "sqlscope" where NOT node is considered as a new scope
Sylvain Thenault's avatar
Sylvain Thenault committed

    * rql checker raise BadRQLQuery for inconsistent orderby on distinct query
Sylvain Thenault's avatar
Sylvain Thenault committed

    * correctly restore .parent when undoing RemoveNodeOperation
2008-09-24  --  0.20.0
Sylvain Thenault's avatar
Sylvain Thenault committed
    * is_instance_of support
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain Thenault's avatar
Sylvain Thenault committed
    * raise BadRQLQuery on queries like 'Any X WHERE X name Toto, P is Person'
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain Thenault's avatar
Sylvain Thenault committed
    * "NOT X identity Y" is now allowed
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain Thenault's avatar
Sylvain Thenault committed
    * do not add relation constraint on variables used in math expression
Sylvain Thenault's avatar
Sylvain Thenault committed
    * fix undoing of add_relation and variable name allocation on query using
      some subquery
Sylvain Thenault's avatar
Sylvain Thenault committed

    * add missing selected_index() method on ColumnAlias
Sylvain Thenault's avatar
Sylvain Thenault committed

    * set_possible_types() propagate to sub-queries since some additional
      type constraints may be set in the outer query
Sylvain Thenault's avatar
Sylvain Thenault committed

    * new type resolver ignore type restrictions, used by erudi during syntax
      tree annotation
Sylvain Thenault's avatar
Sylvain Thenault committed
2008-08-07  --  0.19.1
    * should not simplify variables used in the GROUPBY clause when there is a
Pierre-Yves David's avatar
Pierre-Yves David committed
      HAVING clause
Sylvain Thenault's avatar
Sylvain Thenault committed
    * implements set_limit / set_offset on UNION nodes



2008-07-22  --  0.19.0
    * grammar changes: LIMIT / OFFSET should now be before the WHERE clause,
Pierre-Yves David's avatar
Pierre-Yves David committed
      though bw compat will be kept for some time
Sylvain Thenault's avatar
Sylvain Thenault committed

    * when simplifying constant uid nodes, don't remove them from group terms if
Pierre-Yves David's avatar
Pierre-Yves David committed
      there is a HAVING clause
Sylvain Thenault's avatar
Sylvain Thenault committed

    * new get_variable_variables on Union and Select nodes



Adrien Di Mascio's avatar
Adrien Di Mascio committed
2008-07-04  --  0.18.3
    * fix add_type_restriction to support frozenset and dict of types

Sylvain's avatar
Sylvain committed
2008-06-06  --  0.18.2
    * remove group/sort undoing fix
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * set stinfo['possibletypes'] and update solution dictionnary for variable
      inserted for new identity relation
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * error resilient unregister_reference
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * init variable annotation information on annotation, not variable
Sylvain's avatar
Sylvain committed
2008-05-12  --  0.18.1
Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * bugfix in remove_groups and remove_sort_terms
Sylvain's avatar
Sylvain committed
2008-05-08  --  0.18.0
Sylvain's avatar
Sylvain committed
    * UNION support
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * HAVING support
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * GROUPBY and ORDERBY moved *before* WHERE
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * code cleanup, fixes and refactorings
Sylvain's avatar
Sylvain committed

Sylvain's avatar
Sylvain committed
2008-03-26  --  0.17.2
    * fix a bug in get_solutions,possible_types should be reseted first
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * some documentation update
Sylvain's avatar
Sylvain committed
2008-03-12  --  0.17.1
    * method to add group variable with undoing support
Sylvain Thenault's avatar
Sylvain Thenault committed

    * fix remove_sort_term
Sylvain's avatar
Sylvain committed
2008-02-27  --  0.17.0
Sylvain's avatar
Sylvain committed
    * use bool values for Boolean constants, None for NULL constant
Sylvain Thenault's avatar
Sylvain Thenault committed

    * allow one char relation names
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * allow multiple capitalized characters in entity types
Sylvain's avatar
Sylvain committed
2008-02-15  --  0.16.0
    * understand "C is NULL"
Sylvain Thenault's avatar
Sylvain Thenault committed

    * allow multiple annotation
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fix stinfo['possibletypes']
Sylvain's avatar
Sylvain committed
2008-01-25  --  0.15.4
    * better add_type_restriction methods
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * nicer error message in stcheck
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fix some buggy assertion in editextensions
Sylvain's avatar
Sylvain committed
2008-01-17  --  0.15.3
    * only put valuable relations in uidrels
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * always put an operator node as rhs children of a Relation
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fix rewrite-shared_optional to correctly update stinfo
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * new index_path / go_to_index_path methodes

Sylvain's avatar
Sylvain committed
2008-01-14  --  0.15.2
Sylvain's avatar
Sylvain committed
    * fix nested aggregat checking
Sylvain Thenault's avatar
Sylvain Thenault committed

    * fix a bug in Relation.__repr__
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fix should_register_op which was expected to be a property
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * support for undoing limit/offset change
Sylvain's avatar
Sylvain committed
2008-01-07  --  0.15.1
    * ensure some attributes are encoded strings
Sylvain's avatar
Sylvain committed
2007-12-11  --  0.15.0
    * cleanup, optimizations, some api changes
Sylvain's avatar
Sylvain committed
2007-11-26  --  0.14.0
Sylvain's avatar
Sylvain committed
    * Node.get_type take kwargs as second argument to better guess the type of
      constants
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * new attrvars stinfo
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * new scope attribute on other nodes than Variable
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * thread safety for the RQLHleper
Sylvain's avatar
Sylvain committed
2007-10-29  --  0.13.0
Sylvain's avatar
Sylvain committed
    * use lgc.adbh module
Sylvain's avatar
Sylvain committed

Sylvain's avatar
Sylvain committed
2007-10-23  --  0.12.0
    * add ILIKE comparison operator, '~=' operator is now aliased to ILIKE
      instead of LIKE
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * variable scope handling
Sylvain's avatar
Sylvain committed
2007-06-04  --  0.11.3
Sylvain's avatar
Sylvain committed
    * as_string w/ kwargs fix
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * get_description fix on Variable, enhancement on Function by delegating
      to the function's description
Nicolas Chauvat's avatar
Nicolas Chauvat committed

Sylvain's avatar
Sylvain committed
2007-05-23  --  0.11.2
    * fix as_string bug for NOW/TODAY constants which may cause coercion bugs
Sylvain Thenault's avatar
Sylvain Thenault committed

    * as_string with now encoding specified will (hum, probably) return an
      unicode string
Sylvain's avatar
Sylvain committed
2007-05-14  --  0.11.1
Sylvain's avatar
Sylvain committed
    * Sortterm.var -> Sortterm.term
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fix function name normalization
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * make remove_node available without having to import editextensions

Sylvain's avatar
Sylvain committed
2007-04-05  --  0.11.0
Sylvain's avatar
Sylvain committed
    * EXISTS support
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * proper get_type/get_description api, try to coerce math expression
      in get_type
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * some edition api cleanup


Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
2007-03-08  --  0.10.2
Sylvain's avatar
Sylvain committed
    * fix #17887: analyzis error on "Any U WHERE NOT U owned_by U"
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fix #17907: annotation foire potentiellement sur arbre simplifié
2007-02-09  --  0.10.1
    * fix rewriting bug: variable used in an optional relation can't be
sylvain thenault's avatar
sylvain thenault committed
      rewritten
Sylvain Thenault's avatar
Sylvain Thenault committed

    * new 'main_relation' method on variable

2007-02-02  --  0.10.0
    * allow variable as rhs of 'is' relation
Sylvain Thenault's avatar
Sylvain Thenault committed

    * can use Any as type specification in DELETE queries (eg DELETE Any X)
Sylvain Thenault's avatar
Sylvain Thenault committed

    * fix type inference when non '=' operator on uid relation

Sylvain's avatar
Sylvain committed
2006-11-15  --  0.9.1
Sylvain's avatar
Sylvain committed
    * fix Variable.selected_index()
Sylvain Thenault's avatar
Sylvain Thenault committed

    * do not raise bad rql query on non selected sorted variable in
      distinct query since this is supported by erudi's rql engine
Sylvain's avatar
0.9
Sylvain committed
2006-11-14  --  0.9.0
    * proper full/right/left outer join support
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * removed a buggy assertion in stcheck on aggregat function
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
0.9
Sylvain committed
    * new .selected_index method on Variable
Sylvain's avatar
Sylvain committed
2006-10-31  --  0.8.1
Sylvain's avatar
Sylvain committed
    * fix SortTerm implementation
Sylvain Thenault's avatar
Sylvain Thenault committed

    * fix a NameError in set_offset/set_limit and regenerate parser to
      use those methods
Sylvain Thenault's avatar
Sylvain Thenault committed

    * stinfo['references'] is now a list since order is important
Sylvain's avatar
Sylvain committed
2006-10-27  --  0.8.0
Sylvain's avatar
Sylvain committed
    * fix grammar for negative integer :/
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * simplify generated subtree for IN(onechildren)
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * stcheck is now doing full annotation and additional constant variable
      rewriting
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * do not include yapps anymore
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * removed broken C parser
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fixes to follow yams api changes
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * editextensions fixes
Sylvain's avatar
Sylvain committed

Sylvain's avatar
Sylvain committed
2006-10-08  --  0.7.2
    * add missing as_string method on groups and sorts
Sylvain Thenault's avatar
Sylvain Thenault committed

    * detect that queries like "Any C where C suivi_par P, P eid %(x)s ORDERBY N"
      are incorrect (N isn't defined)
Sylvain's avatar
Sylvain committed
2006-09-22  --  0.7.1
Sylvain's avatar
Sylvain committed
    * fix as_string bugs
Sylvain Thenault's avatar
Sylvain Thenault committed

Sylvain's avatar
Sylvain committed
    * fix a bug in stcheck to detect bad queries when aggregat/transform
Adrien Di Mascio's avatar
Adrien Di Mascio committed
2006-09-05  --  0.7.0
syt's avatar
syt committed
    * new method on variable to get the name of relations where it's used
Sylvain Thenault's avatar
Sylvain Thenault committed

syt's avatar
syt committed
    * new function into utils to register known registered procedures
Sylvain Thenault's avatar
Sylvain Thenault committed

    * fixed grammar to allow "_" into function name
syt's avatar
syt committed

Sylvain's avatar
Sylvain committed
2006-06-08  --  0.6.0
syt's avatar
hop
syt committed
    * new add method on statement

Sylvain's avatar
Sylvain committed
2006-05-21  --  0.5.2
Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * fixed syntax tree copy, just call stmt.copy() to have a
      full deep copy
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * support for substitute on uid relation in the type analyzer
sylvain thenault's avatar
sylvain thenault committed
      (this implies to give the kwargs dictionary of the query to the
Nicolas Chauvat's avatar
Nicolas Chauvat committed
      analyzer)

Nicolas Chauvat's avatar
Nicolas Chauvat committed
2006-03-28  --  0.4.2
    * fixed a bug when a variable is related to itself
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * allow numbers in variable and entity types
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * C parser (disabled by default)

Nicolas Chauvat's avatar
Nicolas Chauvat committed
2006-02-10  --  0.4.1
    * fix set_distinct so that previous distinct attribute is correctly undoed
      if necessary
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * remove a false assertion in remove_selected
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * remove unnecessary OR from the tree when used with a symetric relation
Nicolas Chauvat's avatar
Nicolas Chauvat committed
2006-01-23  --  0.4.0
    * fix Constant's type when NOW is used
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * allow function in ORDERBY expression
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * refactor some edit extensions


Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
2005-07-26  --  0.3.1
    * close #9629, "Any E WHERE P is Project, P eid E"  foire
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * fix bug with IN() used in update queries


Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
2005-07-06  --  0.3.0
    * reintroduce analyze restriction from special relations, which may speed
      up analyzing


Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
2005-06-16  --  0.2.0
    * minor evolutions
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * added Cpp parser module (not yet activated)
Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
    * minor performance improvement

Nicolas Chauvat's avatar
Nicolas Chauvat committed
2004-09-23  --  0.1.2
    * minor evolutions

    * bugfixes with constant management (TODAY, etc.)


Sylvain Thenault's avatar
Sylvain Thenault committed

Nicolas Chauvat's avatar
Nicolas Chauvat committed
2004-06-10  --  0.1.1
    * minor evolutions