Hello,

> On 29 Mar 2017, at 01:05, qingnian...@gmail.com wrote:
> 
> the best library to replace Watchdog is Watchman, a library that supports 
> both of these three platforms (for Windows it's still in the alpha stage.)

Django currently doesn't use Watchdog. Watchdog is a cross-platform Python 
library that can be used for implementing an autoreloader. It's a plausible 
alternative to Watchman, likely easier to integrate, but Watchman has some 
fancy features that I'd love to have available -- like waiting for git to 
finish its operations before notifying a change.

> It runs as a standalone process and has a python wrapper library that is 
> incompatible with Python 3. Therefore, one of the goals is to figure out how 
> to interact with this library.

In order to be selected for this project, you have to convince us that you can 
solve this problem. At a minimum you must prove that you understand where the 
difficulties lie and suggest some possible approaches to tackle them.

> So my goals would be:
> 
>       • Replace the old auto-reloader with the Watchman version

Since installing watchman isn't trivial, you need to keep a pure-Python 
alternative so that beginners get an acceptable experience out of the box. This 
alternative may be the current "poll every second approach" or could be backed 
by watchdog, assuming it's pip-installable without complicated dependencies 
(e.g. a C compiler and development headers for a bunch of libraries) on all 
operating systems.

>       • Make sure that the new auto-reloader can work with Python3 and on 
> other platforms

Did you mean "work with Python 2" ? In any case, this isn't necessary, as you'd 
be working off the master branch which no longer supports Python 2.

>       • Make it compatible with other Python libraries
>       • Allow Django users to choose the files that should be watched
>       • Integrate the Watchman package and its Python wrapper into Django

Watchman should be installed separately by developers who wish to use it. 
Django should use it when it's available (and there should be a flag to disable 
that if for any reason someone has watchman installed systemwide but doesn't 
want to use it).

I hope this helps!

-- 
Aymeric.

-- 
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/F3334210-CCA2-4300-A368-6B48D596694B%40polytechnique.org.
For more options, visit https://groups.google.com/d/optout.

Reply via email to