Re: [Django] #16731: startswith endswith and contains doesn't work with F expression

2014-11-28 Thread Django
#16731: startswith endswith and contains doesn't work with F expression
-+-
 Reporter:  ronnas@… |Owner:  tchaumeny
 Type:  Bug  |   Status:  closed
Component:  Database layer   |  Version:  master
  (models, ORM)  |   Resolution:  fixed
 Severity:  Normal   | Triage Stage:  Ready for
 Keywords:  startswith, F(), |  checkin
  wildcards  |  Needs documentation:  0
Has patch:  1|  Patch needs improvement:  0
  Needs tests:  0|UI/UX:  0
Easy pickings:  0|
-+-
Changes (by Anssi Kääriäinen ):

 * status:  assigned => closed
 * resolution:   => fixed


Comment:

 In [changeset:"6b5d82749c57a1aae8c9e81d2b85b2cadb9ef933"]:
 {{{
 #!CommitTicketReference repository=""
 revision="6b5d82749c57a1aae8c9e81d2b85b2cadb9ef933"
 Fixed #16731 -- Made pattern lookups work properly with F() expressions
 }}}

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.27543429835562492f18df2cbad6ac07%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #16731: startswith endswith and contains doesn't work with F expression

2014-11-27 Thread Django
#16731: startswith endswith and contains doesn't work with F expression
-+-
 Reporter:  ronnas@… |Owner:  tchaumeny
 Type:  Bug  |   Status:  assigned
Component:  Database layer   |  Version:  master
  (models, ORM)  |   Resolution:
 Severity:  Normal   | Triage Stage:  Ready for
 Keywords:  startswith, F(), |  checkin
  wildcards  |  Needs documentation:  0
Has patch:  1|  Patch needs improvement:  0
  Needs tests:  0|UI/UX:  0
Easy pickings:  0|
-+-
Changes (by akaariai):

 * stage:  Accepted => Ready for checkin


Comment:

 Looks good to me.

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.90c4e56a67bb9005b6e3934d24b5bc8c%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #16731: startswith endswith and contains doesn't work with F expression

2014-09-27 Thread Django
#16731: startswith endswith and contains doesn't work with F expression
-+-
 Reporter:  ronnas@… |Owner:  tchaumeny
 Type:  Bug  |   Status:  assigned
Component:  Database layer   |  Version:  master
  (models, ORM)  |   Resolution:
 Severity:  Normal   | Triage Stage:  Accepted
 Keywords:  startswith, F(), |  Needs documentation:  0
  wildcards  |  Patch needs improvement:  0
Has patch:  1|UI/UX:  0
  Needs tests:  0|
Easy pickings:  0|
-+-
Changes (by tchaumeny):

 * status:  new => assigned
 * owner:  nobody => tchaumeny
 * has_patch:  0 => 1
 * version:   => master


Comment:

 The current implementation (master) looks definitely broken:
 * A special case is made of startswith / istartswith which inherit from
 PatternLookup whereas contains/icontains/endswith/iendswith don't — see
 https://github.com/django/django/blob/master/django/db/models/lookups.py#L263
 * Postgres is the only backend defining the corresponding `pattern_ops`
 
https://github.com/django/django/blob/master/django/db/backends/postgresql_psycopg2/base.py#L88
 — used to concatenate the wildcard character when using an `F()`
 expression — and this definition does not escape the database content
 meaning that % stored in database will be interpreted as wildcard
 characters.

 In https://github.com/django/django/pull/3284, `PatternLookup` is
 inherited for all "LIKE" lookups and the appropriate `pattern_ops` are
 provided for Postgresql, MySQL and SQLite — I don't have an Oracle
 database to test and there seems to be too much specific code...

--
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.20593a54447fb666e80e5a64d45fc1c5%40djangoproject.com.
For more options, visit https://groups.google.com/d/optout.


Re: [Django] #16731: startswith endswith and contains doesn't work with F expression (was: startswith and contains doesn't work with F expression)

2013-12-31 Thread Django
#16731: startswith endswith and contains doesn't work with F expression
-+-
 Reporter:  ronnas@… |Owner:  nobody
 Type:  Bug  |   Status:  new
Component:  Database layer   |  Version:
  (models, ORM)  |   Resolution:
 Severity:  Normal   | Triage Stage:  Accepted
 Keywords:  startswith, F(), |  Needs documentation:  0
  wildcards  |  Patch needs improvement:  0
Has patch:  0|UI/UX:  0
  Needs tests:  0|
Easy pickings:  0|
-+-

-- 
Ticket URL: 
Django 
The Web framework for perfectionists with deadlines.

-- 
You received this message because you are subscribed to the Google Groups 
"Django updates" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-updates+unsubscr...@googlegroups.com.
To post to this group, send email to django-updates@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-updates/074.a1647aa1a8fd74c4354b1f34328c71aa%40djangoproject.com.
For more options, visit https://groups.google.com/groups/opt_out.