Friday, 13 July 2018

Mypy 0.620 Released

We’ve just uploaded mypy 0.620 to the Python Package Index (PyPI). Mypy is an optional static type checker for Python. This release includes new features, bug fixes and library stub (typeshed) updates. You can install it as follows:
    python3 -m pip install -U mypy
You can read the documentation for this release on ReadTheDocs.

New Features

Support for data classes in Python 3.7

The recently released Python 3.7 added a new module dataclasses that allows writing simple boilerplate-free classes. Mypy now supports this new feature:
    from dataclasses import dataclass
    from typing import List
    
    @dataclass
    class FitResult:
        optimum: List[float]
        chi: float
        method: str = "TRF"
    
    FitResult([0.1, 0.2], 1.2)  # OK
    FitResult([0.1, 0.2], 1.2, "LM")  # Also OK
    FitResult(1, 2)  # Error!
Note: there are some limitations in supported features — see the docs. (Contributed by Bogdan Popa in PR 5010.)

Overloads on generic types and other overload improvements

Mypy previously rejected certain patterns involving overloaded functions, in particular defining overloads on generic types, and calling overloads on union and optional types. These (and a few others) are now supported. In addition, the error messages for overloads are now more detailed:
    from typing import List, Union, overload
    
    @overload
    def summarize(data: List[int]) -> float: ...
    @overload
    def summarize(data: List[str]) -> str: ...
    def summarize(data):
        # Implementation goes here
        ...
    
    gen_data: Union[List[int], List[str]]
    res = summarize(gen_data)  # OK, inferred type is Union[float, str]
    
    bad_data: int
    summarize(bad_data)
    # error: No overload variant of "summarize" matches argument type "int"
    # note: Possible overload variants:
    # note:     def summarize(data: List[int]) -> float
    # note:     def summarize(data: List[str]) -> str
See the updated docs for more details. (Contributed by Michael Lee.)

Incomplete and partial packages

Writing complete stubs for an existing large library may be hard and sometimes impractical. To allow gradual improvements in library stubs without generating spurious errors, two mechanisms are now supported. Adding a __getattr__ function to __init__.pyi indicates that the corresponding package (or subpackage) is incomplete, thus silencing Missing library stub errors for this package:
    # pack/__init__.pyi
    from typing import Any
    def __getattr__(arrr: str) -> Any: ...
    
    # pack/subpack/__init__.pyi
    # empty
    
    # pack/subpack/mod.pyi
    class Test: ...
    
    # main.py
    from pack import other  # OK, pack is incomplete
    other.func(1, 2)  # OK, all types in incomplete packages are Any
    
    from pack.subpack import mod  # OK
    from pack.subpack import another  # Error: missing library stub file
In addition, a PEP 561 stub package can declare itself as partial, allowing fallbacks to other sources of typing information such as inline annotations and typeshed stubs. See PEP 561 for the details. (Contributed by Ethan Smith.)

Other Improvements and Notable Bugs Fixed

  • Fix running mypy from editable install directory (Ethan Smith, PR 5381)
  • Support egg/setuptools packages for PEP 561 searching (Ethan Smith, PR 5282)
  • Refactor and reorder search path to make it compliant with PEP 561 (Ethan Smith, PR 5256)
  • Silence errors in modules in site-packages and typeshed (Ethan Smith, PR 5303)
  • Fix two option handling bugs in dmypy (PR 5172)
  • Fix a daemon crash bug (PR 5285)
  • Fix incorrect handling of attrs attributes with init=False and default (David Euresti, PR 5154)
  • Various additional overload bug fixes (PR 5236, PR 5254, PR 5224, PR 5163, PR 5166) (Michael Lee)
  • Several module __getattr__ fixes (PR 5332, PR 5306, PR 5295, PR 5292)

Internal Improvements

  • Test suite cleanups (PR 5142, PR 5271) (Elazar Gershuni)
  • Improve PEP 561 testing infrastructure (PR 5060, PR 5225, PR 5237) (Ethan Smith)
  • Support for PyCharm test debugging, and add tox environment setup (Bernát Gábor, PR 5189)

Acknowledgments

First of all, we’d like to thank our employer, Dropbox, for funding the mypy core team. Thanks to all mypy contributors who contributed to this release:
  • Alex Tereshenkov
  • Bogdan Popa
  • David Euresti
  • Elazar Gershuni
  • Emil Hessman
  • Ethan Smith
  • Gábor Bernát
  • Herst
  • Jelle Zijlstra
  • Julian Ospald
  • Michael Lee
  • Nate White
  • Sebastian Rittau
Additional thanks to all contributors to typeshed:
  • Andrew Svetlov
  • Anthony Sottile
  • Bertrand Bonnefoy-Claudet
  • Cyril Jouve
  • Daniel Li
  • Ethan Smith
  • Froger David
  • George King
  • Hanaasagi
  • Ilya Konstantinov
  • Jason Fried
  • Jelle Zijlstra
  • John Reese
  • Josh Holland
  • Martin DeMello
  • Mathieu Leduc-Hamel
  • Max
  • Max R
  • Michael
  • Michael Hirsch, Ph.D
  • Michael Lee
  • NAKAMURA Yoshitaka
  • Nipunn Koorapati
  • Philipp Hahn
  • Rebecca Chen
  • Robert Collins
  • Roy Williams
  • Scott Belden
  • Sebastian Rittau
  • Sekou Diao
  • Stephen Thorne
  • Steven Karas
  • Sushain Cherivirala
  • Yusuke Miyazaki
  • mbarkhau
  • potykion
  • strager
— Ivan Levkivskyi, on behalf of the mypy team

18 comments:

  1. هل تبحث عن شركة متخصصة فى خدمات التنظيف بالطائف بافضل المعدات والسوائل وثقة تمة فى العمل ودقة فى النتائج كل هذه المميزت توفرها شركة الخليج الشركة الافضل والامثل فى الخدمات المنزلية بالطائف وبما اننا الشركة الافضل والامثل بدون منافس سوف نسعى لتوفر افضل الخدمات باقل تكلفة وبقدر كبير من الاهتمام والدقة عزيزى اينما كنت فى اى منطقة ا وحى تابع لمدينة الطائف اتصل بنا وسوف نصلك فى الحال شركة الخليج للخدمات المنزلية شركة تنظيف منازل بالطائف
    شركة تنظيف فلل بالطائف
    شركة تنظيف خزانات بالطائف
    شركة تسليك مجارى بالطائف
    شركة رش مبيدات بالطائف
    شركة مكافحة نمل ابيض بالطائف
    شركة مكافحة حشرات بالطائف
    شركة عزل اسطح بالطائف
    شركة عزل خزانات بالطائف

    ReplyDelete
  2. تعمل على توفير كل خدمات عمليات التنظيف شركة تنظيف بالبخار بجدة بالإضافة إلى الخدمات الاخري شركة تنظيف كنب بالبخار بجدة التي تحتاجها ربات البيوت وأصحاب الشركات شركة تنظيف سجاد بالبخار بجدة والعقارات ومن خلال شركتنا المتمزية فى خدمات تنظيف المفروشات شركة تنظيف مجالس بالبخار بجدة بالبخار بافضل الاسعار تعرف على كافة شركة تنظيف بالبخار بمكة الخدمات المتميزة التى نقدمها شركة نقل عفش بمكة اليكن والى كل عملائنا الكرام

    ReplyDelete
  3. شركة نظافة خزانات بمكة تقدم خدمات لا يوجد شركة تنظيف بمكة منشأة لا تحتاج لها حيث أن الخزانات تعد من أهم المحتويات التي تحتاج لها المنشآت المختلفة خاصة شركة مكافحة حشرات بمكة في المملكة العربية السعودية التي تعتمد على المياه الجوفية ومياه الآبار شركة تنظيف خزانات بمكة والعيون وتخزينها في خزانات شركة تنظيف بالبخار بمكة بعد تصفيتها وتنقيتها لذا ظهرت الحاجة الشديدة للاستعانة بشركة متخصصة شركة نقل عفش بمكة يستعين بها مختلف الأشخاص في تنظيف وتعقيم الخزانات لديهم من أجل الحفاظ على المياه نظيفة وغير ملوثة

    ReplyDelete
  4. العمالة الفلبينية معروفة بأنها تتعلم شركة نقل عفش بجدة بسرعة كبيرة وجميع الأعمال التي تسند اليها تخرج جودتها بمستوى عالية فى حين ان مستوى الاجور لها منخفض وعليه فإن الشركة شركة تنظيف بالبخار بجدة تعمل على توفير تلك النوعية شركة تنظيف دكت المكيفات بمكة من العمالة ومن خلال افضل شركة نقل عفش بجده شركة تنظيف دكت المكيفات بجدة عمالة فلبينية سوف يتم الحصول على عمال متفوقين وقادرين شركة تنظيف دكت المكيفات بالطائف على نقل الاثاث بعناية كبيرة من اي مكان حتى الادوار العالية وتتم عملية النقل تبعا للأسلوب الحديث وهي كالتالي :-

    ReplyDelete
  5. توفر شركة تنظيف دبي أفضل خدمات نظافة شركة تنظيف بدبي من خلال خبراء في عالم النظافة شركة تنظيف كنب بدبي لديهم احتراف ومهارة عالية وعلى درجة كبيرة من الأمانة والالتزام لديهم حلول شركة تنظيف عجمان عملية وسريعة لجميع شركة تنظيف بالشارقة مشاكل التنظيف ملتزمون بتلبية شركة تنظيف ابو ظبي رغبات العملاء وتنفيذها وعدم إهدار الوقت

    ReplyDelete
  6. تنظيف المساحات الشاسعة ليس بالأمر الهين شركة تنظيف دبي ولا يقدر عليه فرد واحد أو الخدم الذين قد يتواجدون شركة تنظيف ابو ظبي بالمنشأة حيث أنه يلزم توافر معدات خاصة شركة تنظيف كنب بدبي من أجل التنظيف تساعد شركة تنظيف بالشارقة على تقديم أفضل الخدمات وتعمل على تيسيرها بأسعار لا تعد عبء على من يبحث عن شركة تنظيف عجمان هذه الخدمات لذا تقدم الشركة كافة الخدمات التي تلزم في تنظيف الفلل شركة تنظيف العين بما تحتويه من محتويات وأغراض

    ReplyDelete
  7. سميت بحشرات الفراش لانها غالبا ما تتواجد شركة مكافحة حشرات بمكة فيه وتعيش وتتغذى على الدم سواء دم الإنسان أو الحيوان شركة تنظيف شقق بمكة تعد الحيوانات شركة تنظيف خزانات بمكة الأليفة ذات الشعر شركة مكافحة حشرات بالطائف الكثيف أيضاً أحد المصادر الناقلة لهذه العدوى تقوم حشرة البق بوضع البيض شركة نقل عفش بمكة الخاص بها على المراتب والآسرة شركة تنظيف خزانات بالطائف والذي يتميز بلون ابيض شفاف وملمس لز

    ReplyDelete
  8. يمكنكم اللجوء لتنظيف منازل عجمان إذا شركة تنظيف دبي أصبحتم في حاجة إلى تنظيف المنزل شركة تنظيف عجمان في أي وقت تحددوه أنتم , فقط اتصلوا بتنظيف منازل عجمان شركة تنظيف بالشارقة وسوف يرد عليكم فريق متخصص من خدمة العملاء والذي يحدد معكم المطلوب شركة تنظيف ابو ظبي والوقت المحدد لإتمام تلك المهمة الضرورية وفي أسرع وقت ممكن سوف تجدونها انتهت شركة تنظيف كنب بدبي , فقط انسوا هم الأسعار التي تقلق الجميع في حالة الرغبة في التعامل مع أي شركة نظافة

    ReplyDelete
  9. German Translation Legal Translation services German Translation The German German Translation dubai language has a great influence on the world because Germany plays a vital role in the European Union chinese Translation dubai . Also, the economy of Germany russian translation in dubai encourages the growth Translation services in Dubai of the English Translation dubai German translation industry.

    ReplyDelete
  10. كما يقوم فريق العمل بتنظيف الموكيت حيث أن الموكيت شركة تنظيف بدبي يعتبر من أهم الأشياء التي توجد في المنزل ويتميز بوجود الزخارف المختلفة شركة تنظيف بالعين به، لهذا فإنه يحتاج إلى التنظيف بكل دقة وحرص ويتم هذا من خلال استخدام شركة تنظيف عجمان الماء الفاتر والمنظفات المخصصة للموكيت، أو يتم تنظيفه عن طريق البخار شركة تنظيف كنب بدبي حتى يعطي أفضل النتائج وفي أسرع وقت
    تعتبر طريقة التنظيف بالبخار من أفضل شركة تنظيف بدبي وأحدث الطرق التي تستخدم في عمليات التنظيف شركة تنظيف كنب بدبي للوصول إلى أفضل النتائج، وتقوم شركة تنظيف بالبخار في دبي شركة تنظيف بالشارقة في استخدامه في العديد من عمليات التنظيف؛ لهذا فإن جميع الأعمال شركة تنظيف ابو ظبي التي تقوم بها الشركة شركة تنظيف بعجمان تكون على درجة شركة تنظيف بدبي عالية من الكفاءة شركة تنظيف بالشارقة

    ReplyDelete
  11. Really good information to show through this blog. I really appreciate you for all the valuable information that you are providing us through your blog. python Online course

    ReplyDelete