Commits

Anonymous committed f6b633c

[soc2010/query-refactor] Merged up to trunk r13405.

Comments (0)

Files changed (8)

django/contrib/admin/media/css/base.css

     background: #ffc url(../img/admin/icon_success.gif) 5px .3em no-repeat;
 }
 
+ul.messagelist li.warning{
+    background-image: url(../img/admin/icon_alert.gif);
+}
+
+ul.messagelist li.error{
+    background-image: url(../img/admin/icon_error.gif);
+}
+
 .errornote {
     font-size: 12px !important;
     display: block;

django/contrib/admin/templates/admin/base.html

     {% endif %}
 
         {% if messages %}
-        <ul class="messagelist">{% for message in messages %}<li>{{ message }}</li>{% endfor %}</ul>
+        <ul class="messagelist">{% for message in messages %}
+          <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
+	{% endfor %}</ul>
         {% endif %}
 
     <!-- Content -->

django/contrib/gis/gdal/libgdal.py

     lib_names = None
 elif os.name == 'nt':
     # Windows NT shared library
-    lib_names = ['gdal16', 'gdal15']
+    lib_names = ['gdal17', 'gdal16', 'gdal15']
 elif os.name == 'posix':
     # *NIX library names.
-    lib_names = ['gdal', 'GDAL', 'gdal1.6.0', 'gdal1.5.0', 'gdal1.4.0']
+    lib_names = ['gdal', 'GDAL', 'gdal1.7.0', 'gdal1.6.0', 'gdal1.5.0', 'gdal1.4.0']
 else:
     raise OGRException('Unsupported OS "%s"' % os.name)
 

django/middleware/csrf.py

                 return accept()
 
             if request.is_secure():
-                # Strict referer checking for HTTPS
+                # Suppose user visits http://example.com/
+                # An active network attacker,(man-in-the-middle, MITM) sends a
+                # POST form which targets https://example.com/detonate-bomb/ and
+                # submits it via javascript.
+                #
+                # The attacker will need to provide a CSRF cookie and token, but
+                # that is no problem for a MITM and the session independent
+                # nonce we are using. So the MITM can circumvent the CSRF
+                # protection. This is true for any HTTP connection, but anyone
+                # using HTTPS expects better!  For this reason, for
+                # https://example.com/ we need additional protection that treats
+                # http://example.com/ as completely untrusted.  Under HTTPS,
+                # Barth et al. found that the Referer header is missing for
+                # same-domain requests in only about 0.2% of cases or less, so
+                # we can use strict Referer checking.
                 referer = request.META.get('HTTP_REFERER')
                 if referer is None:
                     return reject("Referer checking failed - no Referer.")
 
                 # The following check ensures that the referer is HTTPS,
-                # the domains match and the ports match.  This might be too strict.
+                # the domains match and the ports match - the same origin policy.
                 good_referer = 'https://%s/' % request.get_host()
                 if not referer.startswith(good_referer):
                     return reject("Referer checking failed - %s does not match %s." %

docs/ref/contrib/gis/create_template_postgis-1.4.sh

 #!/usr/bin/env bash
-POSTGIS_SQL_PATH=`pg_config --sharedir`/contrib/postgis-1.4
+POSTGIS_SQL_PATH=`pg_config --sharedir`/contrib
 createdb -E UTF8 template_postgis # Create the template spatial database.
 createlang -d template_postgis plpgsql # Adding PLPGSQL language support.
 psql -d postgres -c "UPDATE pg_database SET datistemplate='true' WHERE datname='template_postgis';"

docs/ref/contrib/gis/install.txt

 thus it must be compiled from source.  First download the latest amalgamation 
 source archive from the `SQLite download page`__, and extract::
 
-    $ wget http://www.sqlite.org/sqlite-amalgamation-3.6.22.tar.gz
-    $ tar xzf sqlite-amalgamation-3.6.22.tar.gz
-    $ cd sqlite-3.6.22
+    $ wget http://sqlite.org/sqlite-amalgamation-3.6.23.1.tar.gz
+    $ tar xzf sqlite-amalgamation-3.6.23.1.tar.gz
+    $ cd sqlite-3.6.23.1
 
 Next, run the ``configure`` script -- however the ``CFLAGS`` environment variable
 needs to be customized so that SQLite knows to build the R*Tree module::
 .. note::
 
     For Mac OS X users building from source, the SpatiaLite library *and* tools 
-    need to be linked into the existing ``iconv`` library. While this happens 
-    automatically on Linux, the ``configure`` scripts need to know about the 
-    specific location on Mac OS X (via modification of the ``CFLAGS`` and 
-    ``LDFLAGS`` environment variables prior to configuration)::
+    need to have their ``target`` configured::
 
-        $ CFLAGS=-I/usr/include LDFLAGS="-L/usr/lib -liconv" ./configure
+        $ ./configure --target=macosx
 
 __ http://www.gaia-gis.it/spatialite/sources.html
 
     export PATH=/Library/Frameworks/GDAL.framework/Programs:$PATH
     export PATH=/usr/local/pgsql/bin:$PATH
 
-__ http://www.kyngchaos.com/wiki/software:frameworks
-__ http://www.kyngchaos.com/wiki/software:postgres
+__ http://www.kyngchaos.com/software/frameworks
+__ http://www.kyngchaos.com/software/postgres
 
 .. note::
 

docs/topics/auth.txt

       instead of ``False``.
     * :meth:`~django.contrib.auth.models.User.is_authenticated()` returns
       ``False`` instead of ``True``.
-    * :meth:`~django.contrib.auth.models.User.has_perm()` always returns
-      ``False``.
     * :meth:`~django.contrib.auth.models.User.set_password()`,
       :meth:`~django.contrib.auth.models.User.check_password()`,
       :meth:`~django.contrib.auth.models.User.save()`,

tests/regressiontests/m2m_through_regress/tests.py

 
         p = Person.objects.create(name="Bob")
         g = Group.objects.create(name="Roll")
-        Membership.objects.create(person=p, group=g)
+        m =Membership.objects.create(person=p, group=g)
+
+        pks = {"p_pk": p.pk, "g_pk": g.pk, "m_pk": m.pk}
 
         out = StringIO()
         management.call_command("dumpdata", "m2m_through_regress", format="json", stdout=out)
-        self.assertEqual(out.getvalue().strip(), """[{"pk": 1, "model": "m2m_through_regress.membership", "fields": {"person": 1, "price": 100, "group": 1}}, {"pk": 1, "model": "m2m_through_regress.person", "fields": {"name": "Bob"}}, {"pk": 1, "model": "m2m_through_regress.group", "fields": {"name": "Roll"}}]""")
+        self.assertEqual(out.getvalue().strip(), """[{"pk": %(m_pk)s, "model": "m2m_through_regress.membership", "fields": {"person": %(p_pk)s, "price": 100, "group": %(g_pk)s}}, {"pk": %(p_pk)s, "model": "m2m_through_regress.person", "fields": {"name": "Bob"}}, {"pk": %(g_pk)s, "model": "m2m_through_regress.group", "fields": {"name": "Roll"}}]""" % pks)
 
         out = StringIO()
         management.call_command("dumpdata", "m2m_through_regress", format="xml",
         self.assertEqual(out.getvalue().strip(), """
 <?xml version="1.0" encoding="utf-8"?>
 <django-objects version="1.0">
-  <object pk="1" model="m2m_through_regress.membership">
-    <field to="m2m_through_regress.person" name="person" rel="ManyToOneRel">1</field>
-    <field to="m2m_through_regress.group" name="group" rel="ManyToOneRel">1</field>
+  <object pk="%(m_pk)s" model="m2m_through_regress.membership">
+    <field to="m2m_through_regress.person" name="person" rel="ManyToOneRel">%(p_pk)s</field>
+    <field to="m2m_through_regress.group" name="group" rel="ManyToOneRel">%(g_pk)s</field>
     <field type="IntegerField" name="price">100</field>
   </object>
-  <object pk="1" model="m2m_through_regress.person">
+  <object pk="%(p_pk)s" model="m2m_through_regress.person">
     <field type="CharField" name="name">Bob</field>
   </object>
-  <object pk="1" model="m2m_through_regress.group">
+  <object pk="%(g_pk)s" model="m2m_through_regress.group">
     <field type="CharField" name="name">Roll</field>
   </object>
 </django-objects>
-        """.strip())
+        """.strip() % pks)
 
     def test_join_trimming(self):
         "Check that we don't involve too many copies of the intermediate table when doing a join. Refs #8046, #8254"