Re: DEP pre-proposal for a simpler URLs syntax.

2017-07-29 Thread Emil Stenström
John: Awesome! Do you need anything to get started or is Sjoerd's review 
comments and todolist enough?

On Friday, 28 July 2017 15:03:12 UTC+2, John Griebel wrote:
>
> Hi Sjoerd,
> I too would love to see this feature in Django 2.0; in fact, I've been 
> following its progress quite closely. I would love to help out with it and 
> have the necessary time to do so.
>
> John Griebel | Senior Backend Engineer | 3Blades.io | 814-227-4213
>
> On Thu, Jul 27, 2017 at 5:06 PM, Sjoerd Job Postmus  > wrote:
>
>> Hi all,
>>
>> Due to scheduling, I have not been able to give this the attention I 
>> would like to give it, and I don't see myself freeing up a significant 
>> amount of time to give it the final push forward before the feature freeze 
>> on September 18th.
>>
>> I did a final review of my changes. Though there are some things that 
>> might need a bit of cleaning up, I have the feeling the pull request (
>> https://github.com/django/django/pull/7482) is in a reasonable state. 
>> There are a lot of comments by me about things that might be improved, 
>> though. There's also a TODO list (
>> https://github.com/django/django/pull/7482#issuecomment-305482442) about 
>> things that still need doing.
>>
>> Based on the check-list, I think the following items remain:
>>
>> - Documentation the new syntax (but Tom already has a PR open for that), 
>> but that should only be picked up after this feature is merged/mergeable.
>> - Updating existing documentation (maybe even the tutorial?) to use the 
>> new syntax. I think that's also included in Tom's PR.
>> - Extra tests. There are dedicated tests already, but given such a core 
>> feature I would feel more comfortable if there were even more tests.
>> - Not mentioned in the checklist, but performance concerns should also be 
>> checked [1].
>>
>> Personally, I would love for this feature to land in Django 2.0, but I'm 
>> doubtful that I can push it further myself, and would be greatly 
>> appreciative if somebody were willing to help push it forward.
>>
>> [1]: Previously, the code used `LocaleRegexDescriptor`, which acted as 
>> `@property` when the regular expression was lazy, while if it is a pure 
>> string it would set the attribute directly as an optimisation trick. This 
>> might need to be replicated.
>>
>> Regards,
>> Sjoerd Job
>>
>> -- 
>> You received this message because you are subscribed to the Google Groups 
>> "Django developers (Contributions to Django itself)" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to django-develop...@googlegroups.com .
>> To post to this group, send email to django-d...@googlegroups.com 
>> .
>> Visit this group at https://groups.google.com/group/django-developers.
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/django-developers/d75698e7-e75e-4719-a000-4172f3ed1082%40googlegroups.com
>>  
>> 
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/12ac3285-5d09-4fe1-bbf2-b34c75150724%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.


Re: Future of the development server's auto-reloading

2017-07-29 Thread Aymeric Augustin
Hello Tom,

Your approach seems comprehensive. I'm commenting on your PR on Trac and 
GitHub. Let's do this!

Regarding watchdog / watchman, I think Django could select automatically one or 
the other depending on which on is installed. If none is installed, Django 
would fall back to the current approach and perhaps raise a warning to suggest 
installing something better.

Regarding the syntax error reloading, I believe the solution is the two-process 
approach described by Carl earlier in this thread. Check it out.

Thanks!

-- 
Aymeric.



> On 24 Jul 2017, at 15:58, Tom Forbes  wrote:
> 
> I was looking into refactoring the auto-reloading code and I wanted to gather 
> some feedback. There is some potential to squash several bugs in one 
> go[1][2][3].
> 
> To begin with we can get rid of the Jython specific code, Jython is 2.7 only 
> at the moment and I don't think that will change soon.
> 
> We currently have an implicit dependency on `pyinotify`, if it's installed a 
> more efficient inotify-based watcher is used. I've never seen this advertised 
> anywhere, and pyinotify has not received any updates in over 3 years. There 
> is also this[4] blog post which says perhaps pyinotify isn't the best. I 
> think the best way forward is to use the 'watchdog' package if it's 
> installed, as it contains platform-specific implementations for observing 
> file modifications[6] and even their fallback polling observer[7] is better 
> than any we could include in Django. If we want to add the ability to use the 
> watchman service with Django (something I fully agree with) perhaps adding 
> support for it directly to that library would be more preferable than 
> bundling it in Django itself.
> 
> The current autoreloading code contains some translations specific code that 
> would be good to split out. It would be nice to have the autoreload module be 
> as focused as possible on just detecting and handling file changes in a 
> pretty neutral way, other parts of Django could register subscriptions to be 
> notified when files change and can handle it themselves (perhaps via 
> signals?). For example the cached template loader could register a callback 
> to fire whenever one if it's source files changes and delete that entry from 
> the cache, the translations framework could handle .mo files changing itself 
> or third party modules can use these hooks to do whatever crazy things they 
> want.
> 
> I've got a first-draft branch with a cleanup of the autoreload code here[8], 
> any feedback would be welcome. It currently doesn't handle syntax error 
> reloading or the i18n resetting. Could the syntax error reloading be improved 
> with a clean re-implementation of the autoreloader? I can't think of any nice 
> ways to handle it.
> 
> 1. https://code.djangoproject.com/ticket/27685#ticket
> 2. https://code.djangoproject.com/ticket/25624
> 3. https://code.djangoproject.com/ticket/25791
> 4. http://www.serpentine.com/blog/2008/01/04/why-you-should-not-use-pyinotify/
> 5. https://pythonhosted.org/watchdog/_modules/watchdog/observers/polling.html
> 6. https://pythonhosted.org/watchdog/api.html#module-watchdog.observers
> 7. https://pythonhosted.org/watchdog/_modules/watchdog/observers/polling.html
> 8. 
> https://github.com/orf/django/blob/27685-autoreloader-refactor/django/utils/autoreload.py
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "Django developers (Contributions to Django itself)" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to django-developers+unsubscr...@googlegroups.com 
> .
> To post to this group, send email to django-developers@googlegroups.com 
> .
> Visit this group at https://groups.google.com/group/django-developers 
> .
> To view this discussion on the web visit 
> https://groups.google.com/d/msgid/django-developers/b33d73e3-6ff5-431d-b9ff-7db1219d11cd%40googlegroups.com
>  
> .
> For more options, visit https://groups.google.com/d/optout 
> .

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/CAF906F4-A98F-4043-AA79-E60E4789D1EB%40polytechnique.org.
For more options, visit https://groups.google.com/d/optout.


Re: DEP pre-proposal for a simpler URLs syntax.

2017-07-29 Thread John Griebel
I think the review comments and the Todo list should get me off to a good
start. I'm sure I'll have a few questions along the way as I've contributed
to other open source projects before, but not Django. I spent some time
last evening reading the contribution docs and getting my environment set
up.

On Jul 29, 2017 4:49 AM, "Emil Stenström"  wrote:

John: Awesome! Do you need anything to get started or is Sjoerd's review
comments and todolist enough?


On Friday, 28 July 2017 15:03:12 UTC+2, John Griebel wrote:

> Hi Sjoerd,
> I too would love to see this feature in Django 2.0; in fact, I've been
> following its progress quite closely. I would love to help out with it and
> have the necessary time to do so.
>
> John Griebel | Senior Backend Engineer | 3Blades.io | 814-227-4213
> <(814)%20227-4213>
>
> On Thu, Jul 27, 2017 at 5:06 PM, Sjoerd Job Postmus 
> wrote:
>
>> Hi all,
>>
>> Due to scheduling, I have not been able to give this the attention I
>> would like to give it, and I don't see myself freeing up a significant
>> amount of time to give it the final push forward before the feature freeze
>> on September 18th.
>>
>> I did a final review of my changes. Though there are some things that
>> might need a bit of cleaning up, I have the feeling the pull request (
>> https://github.com/django/django/pull/7482) is in a reasonable state.
>> There are a lot of comments by me about things that might be improved,
>> though. There's also a TODO list (https://github.com/django/dja
>> ngo/pull/7482#issuecomment-305482442) about things that still need doing.
>>
>> Based on the check-list, I think the following items remain:
>>
>> - Documentation the new syntax (but Tom already has a PR open for that),
>> but that should only be picked up after this feature is merged/mergeable.
>> - Updating existing documentation (maybe even the tutorial?) to use the
>> new syntax. I think that's also included in Tom's PR.
>> - Extra tests. There are dedicated tests already, but given such a core
>> feature I would feel more comfortable if there were even more tests.
>> - Not mentioned in the checklist, but performance concerns should also be
>> checked [1].
>>
>> Personally, I would love for this feature to land in Django 2.0, but I'm
>> doubtful that I can push it further myself, and would be greatly
>> appreciative if somebody were willing to help push it forward.
>>
>> [1]: Previously, the code used `LocaleRegexDescriptor`, which acted as
>> `@property` when the regular expression was lazy, while if it is a pure
>> string it would set the attribute directly as an optimisation trick. This
>> might need to be replicated.
>>
>> Regards,
>> Sjoerd Job
>>
>> --
>> You received this message because you are subscribed to the Google Groups
>> "Django developers (Contributions to Django itself)" group.
>> To unsubscribe from this group and stop receiving emails from it, send an
>> email to django-develop...@googlegroups.com.
>> To post to this group, send email to django-d...@googlegroups.com.
>>
>> Visit this group at https://groups.google.com/group/django-developers.
>> To view this discussion on the web visit https://groups.google.com/d/ms
>> gid/django-developers/d75698e7-e75e-4719-a000-4172f3ed1082%
>> 40googlegroups.com
>> 
>> .
>> For more options, visit https://groups.google.com/d/optout.
>>
>
> --
You received this message because you are subscribed to the Google Groups
"Django developers (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an
email to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit https://groups.google.com/d/
msgid/django-developers/12ac3285-5d09-4fe1-bbf2-b34c75150724%40googlegroups.
com

.

For more options, visit https://groups.google.com/d/optout.

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/CAOK12Wbe2XMY0WsoCApvG3tnvTLikwek%2B8LqNxc7X-HrNC2ePA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.


Fellow Report - July 29, 2017

2017-07-29 Thread Tim Graham


Triaged

---

https://code.djangoproject.com/ticket/28431 - default='' (non-bytestring) 
on BinaryField crashes some migration operations (accepted)

https://code.djangoproject.com/ticket/28430 - Response is not necessarily 
rendered when response middlewares are applied (worksforme)
https://code.djangoproject.com/ticket/28435 - SECURE_HSTS_PRELOAD has a 
warning about possibly breaking your website when it cannot (fixed)

https://code.djangoproject.com/ticket/28439 - When() crashes with 
ValidationError with models using UUID as primary key (accepted)

https://code.djangoproject.com/ticket/28444 - Allow for different settings 
for each thread when testing with --parallel (wontfix)

https://code.djangoproject.com/ticket/28445 - DateField timezone issue with 
get_or_create (duplicate key value violates unique constraint) (invalid)

https://code.djangoproject.com/ticket/28442 - Error creating queryset with 
nested OuterRefs on a foreign key (accepted)

Authored

--

https://github.com/django/django/pull/8751 - Fixed #28349 -- Doc'd how to 
upgrade Django from LTS to LTS.

https://github.com/django/django/pull/8817 - Fixed #28441 -- Fixed GEOS 
version parsing with a commit hash at the end.

Reviewed/committed

--

https://github.com/django/django/pull/8799 - Fixed #28420 -- Doc'd 'is' 
comparison restriction for User.is_authenticated/anonymous.

https://github.com/django/django/pull/8695 - Fixed #28321 -- Prevented 
FormSet.full_clean() from adding errors from deleted forms.

https://github.com/django/django/pull/8802 - Fixed #28432 -- Allowed 
geometry expressions to be used with distance lookups.

https://github.com/django/django/pull/8812 - Fixed #28436 -- Added support 
for distance lookups on MySQL.

https://github.com/django/django/pull/8808 - Fixed #28433 -- Made 
GEOSGeometry.__eq__() work correctly with non-canonical EWKT string.

https://github.com/django/django/pull/8087 - Fixed #28363 -- Allowed naming 
the migration generated by squashmigrations.

https://github.com/django/django/pull/8126 - Improved test coverage for 
django.conf.

https://github.com/django/django/pull/8208 - Improved test coverage for 
django.contrib.sitemaps.

https://github.com/django/django/pull/8813 - Fixed #28437 -- Added support 
for complex geometry expressions in GIS lookups.

https://github.com/django/django/pull/8758 - Fixed #28371 -- Fixed Cast() 
with CharField if max_length isn't provided.

https://github.com/django/django/pull/8763 - Fixed #28264 -- Made 
FilePathField sort files and directories when recursive=True.
https://github.com/django/django/pull/8257 - Used assertRaisesMessage() to 
test Django's error messages.

-- 
You received this message because you are subscribed to the Google Groups 
"Django developers  (Contributions to Django itself)" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-developers+unsubscr...@googlegroups.com.
To post to this group, send email to django-developers@googlegroups.com.
Visit this group at https://groups.google.com/group/django-developers.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/bf2d6283-3cd4-4b18-a00c-1893d12a51bf%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.