On the topic of namespace packages, I noticed this line in the 3.1 release 
notes:  "Migrations are now loaded also from directories 
without __init__.py files." https://code.djangoproject.com/ticket/30300

The ticket's rationale seems to be "We've just finished migrating our 
codebase to all-python 3, and nuked all our __init__py files. We are now 
upgrading to Django 2.1, and noticing the various places where they're 
still de-facto required by Django. This particular case seemed unnecessary 
and easy to fix."

Another commenter remarked, "We had a similar issue with test discovery. 
One of our developers read an article that __init__.py files are not 
required on Python3 and started removing them. Everything seemingly worked 
but some tests were not discovered and did not run in CI (which made it 
difficult to spot). I think Django should not required them if technically 
possible or at least it should be made clear in the documentation (sorry if 
I overlooked it)."

Supporting namespace packages without a real use case seems contrary to the 
consensus in this thread (which I see as not promoting implicit namespace 
packages). Based on that consensus, my inclination wouldn't be to try to 
make Django work with as few __init__.py files as possible. What do you 
think?


On Thursday, May 21, 2020 at 7:52:49 AM UTC-4 Adam Johnson wrote:

> +1 for reverting ccc25bf .
>
> On Wed, 20 May 2020 at 19:54, Aymeric Augustin <
> [email protected]> wrote:
>
>> Hello,
>>
>> Commit ccc25bf refers to ticket #23919 in the commit message. In that 
>> ticket, I argued that the __init__.py files should be kept: 
>> https://code.djangoproject.com/ticket/23919#comment:102. No one brought 
>> a counter argument.
>>
>> It's weird that the __init__.py files were removed anyway without further 
>> discussion (that I can find with my browser's search on that page, at 
>> least).
>>
>> It's fairly minor, but I think that ccc25bf should be reverted.
>>
>> Best regards,
>>
>> -- 
>> Aymeric.
>>
>>
>>
>> On 20 May 2020, at 14:58, René Fleschenberg <[email protected]> 
>> wrote:
>>
>> On Github, Tim pointed out that with
>>
>> https://github.com/django/django/commit/ccc25bfe4f0964a00df3af6f91c2d9e20159a0c2
>> ,
>> various __init__.py files in Django's own code were removed.
>>
>> I tend to say it would be good to revert that change. Or we could update
>> the docs only, since they serve much more directly as an example for
>> user code.
>>
>> -- 
>> René Fleschenberg
>>
>> -- 
>> 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 [email protected].
>> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/django-developers/5d689d5c-01ab-d017-249c-a53a6d9b1f87%40fleschenberg.net
>> .
>>
>>
>> -- 
>> 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 [email protected].
>>
> To view this discussion on the web visit 
>> https://groups.google.com/d/msgid/django-developers/C9E429E5-DC4C-4C47-8126-17B32D31D245%40polytechnique.org
>>  
>> <https://groups.google.com/d/msgid/django-developers/C9E429E5-DC4C-4C47-8126-17B32D31D245%40polytechnique.org?utm_medium=email&utm_source=footer>
>> .
>>
>
>
> -- 
> Adam
>

-- 
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 [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-developers/d725cf0c-b0bd-4fe0-83b0-7315d0c742ben%40googlegroups.com.

Reply via email to