Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.lang.python.announce > #1794
| Path | csiph.com!usenet.pasdenom.info!nntpfeed.proxad.net!proxad.net!feeder1-1.proxad.net!ecngs!feeder2.ecngs.de!217.188.199.168.MISMATCH!takemy.news.telefonica.de!telefonica.de!newsfeed.xs4all.nl!newsfeed7.news.xs4all.nl!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail |
|---|---|
| Return-Path | <news@google.com> |
| X-Original-To | python-announce@python.org |
| Delivered-To | python-announce-list@mail.python.org |
| X-Spam-Status | OK 0.003 |
| X-Spam-Evidence | '*H*': 0.99; '*S*': 0.00; 'versions,': 0.05; 'deprecated': 0.07; 'distributing': 0.07; 'feature.': 0.07; 'pypi': 0.07; 'setup.py': 0.07; 'subject:ANN': 0.07; 'subject:released': 0.07; 'api': 0.09; 'anymore.': 0.09; 'experimental': 0.09; 'url:github': 0.09; 'url:rst': 0.09; 'python': 0.10; '3.0,': 0.16; '3.2,': 0.16; '3.3,': 0.16; 'received:eu': 0.16; 'sake,': 0.16; 'setuptools': 0.16; 'url:documentation': 0.16; 'documented': 0.18; 'frameworks': 0.18; 'skip:` 10': 0.18; 'skip:` 20': 0.18; 'tests.': 0.18; '4.0': 0.22; 'decorator': 0.22; 'dropped': 0.22; 'consistent': 0.23; 'examples': 0.24; 'module': 0.25; 'install': 0.25; 'header:User- Agent:1': 0.26; 'compatible': 0.27; 'packaging': 0.27; 'function': 0.28; 'preserve': 0.29; 'unified': 0.29; 'too.': 0.30; 'code': 0.30; 'option': 0.31; 'run': 0.33; 'source': 0.33; 'decorators': 0.33; 'utility': 0.33; '(for': 0.34; 'except': 0.34; 'that,': 0.34; 'received:google.com': 0.35; 'done': 0.35; 'functions.': 0.35; 'generic': 0.35; 'stable': 0.35; 'but': 0.36; 'there': 0.36; 'received:209.85': 0.36; 'subject:: ': 0.37; 'signature': 0.37; 'release': 0.37; 'doing': 0.38; 'integration': 0.38; 'manual': 0.38; 'version': 0.38; 'received:209': 0.38; 'received:209.85.216': 0.38; 'several': 0.38; 'skip:- 20': 0.39; 'format': 0.39; 'subject:-': 0.39; 'still': 0.40; 'ten': 0.60; 'your': 0.60; 'improved': 0.63; 'url:0': 0.63; 'past,': 0.66; 'user,': 0.67; 'to:addr:comp-lang-python-announce': 0.68; 'apart': 0.70; 'url:4': 0.70; 'to:addr:moderators.isc.org': 0.77; 'old,': 0.83; 'improved.': 0.84; 'message-id:@googlegroups.com': 0.84; 'michele': 0.84; 'occasion': 0.84; 'pip': 0.84; 'wheel': 0.84; 'releases.': 0.91 |
| X-Google-DKIM-Signature | v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=path:newsgroups:date:complaints-to:injection-info:nntp-posting-host :user-agent:mime-version:message-id:subject:from:injection-date:to :content-type; bh=BCuZS6AbW7t6dKCnRrdLWp6KtDfZRHR642Uk9QBmxYk=; b=ktrSPHmGMxFios4kCuTH8Hvut++6buPkHs2eMxw/z4oa6UL8qHrkjLouzl6C9E4fbW 0Xzfm4N1HW+BfmzwGJQ/kmbZBZjOMuY8fSKnwG5+nG/iNTTUe6H38M3/2EBkANprtrH1 6m7xSwu4h9SOzTEI7O96Lqb5scArmrfNKC0ew+J2mKAVVqY00kn/g/cTpNkDDoiIiyQq s9QOcUoTgiwFPSryXoQmRSUuVRYe7OEZu9LjkraFADJBPcBviTHpYJxzYIaK+U9niP/v +nd4gHTibV+fs7d1boy5/2KkRX4nm09KAcGGsvGBTCkzmHRNiZSX6SuhQSSUuCLzo3EF xlyg== |
| X-Received | by 10.129.75.13 with SMTP id y13mr13323056ywa.29.1437733090452; Fri, 24 Jul 2015 03:18:10 -0700 (PDT) |
| X-Received | by 10.140.109.132 with SMTP id l4mr268889qgf.15.1437733090416; Fri, 24 Jul 2015 03:18:10 -0700 (PDT) |
| Newsgroups | comp.lang.python.announce |
| Date | Fri, 24 Jul 2015 03:18:10 -0700 (PDT) |
| Complaints-To | groups-abuse@google.com |
| Injection-Info | glegroupsg2000goo.googlegroups.com; posting-host=109.239.241.238; posting-account=gxxH8QkAAABVKeYyAqGOGoaFtdDdsshI |
| User-Agent | G2/1.0 |
| MIME-Version | 1.0 |
| Subject | ANN: decorator-4.0.0 released |
| From | Michele Simionato <michele.simionato@gmail.com> |
| Injection-Date | Fri, 24 Jul 2015 10:18:10 +0000 |
| To | comp-lang-python-announce@moderators.isc.org |
| Content-Type | text/plain; charset=ISO-8859-1 |
| X-Mailman-Approved-At | Fri, 24 Jul 2015 12:22:36 +0200 |
| X-BeenThere | python-announce-list@python.org |
| X-Mailman-Version | 2.1.20+ |
| Precedence | list |
| List-Id | Announcement-only list for the Python programming language <python-announce-list.python.org> |
| List-Unsubscribe | <https://mail.python.org/mailman/options/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=unsubscribe> |
| List-Archive | <http://mail.python.org/pipermail/python-announce-list/> |
| List-Post | <mailto:python-announce-list@python.org> |
| List-Help | <mailto:python-announce-list-request@python.org?subject=help> |
| List-Subscribe | <https://mail.python.org/mailman/listinfo/python-announce-list>, <mailto:python-announce-list-request@python.org?subject=subscribe> |
| Approved | python-announce-list@python.org |
| Message-ID | <mailman.939.1437733356.3674.python-announce-list@python.org> (permalink) |
| Lines | 43 |
| NNTP-Posting-Host | 2001:888:2000:d::a6 |
| X-Trace | 1437733356 news.xs4all.nl 2933 [2001:888:2000:d::a6]:37824 |
| X-Complaints-To | abuse@xs4all.nl |
| Xref | csiph.com comp.lang.python.announce:1794 |
Show key headers only | View raw
The decorator module is over ten years old, but still alive and
kicking. It is used by several frameworks and has been stable for a long
time. It is your best option if you want to preserve the signature of
decorated functions in a consistent way across Python
releases. Version 4.0 is fully compatible with the past, except for
one thing: support for Python 2.4 and 2.5 has been dropped and now
there is an unified code base for Python 2.6, 2.7, 3.0, 3.1, 3.2, 3.3, 3.4, 3.5.
You can download the new release from PyPI with the usual
$ pip install decorator
The source code and the documentation are on GitHub:
https://github.com/micheles/decorator/blob/4.0.0/documentation.rst (for Python 2.X)
https://github.com/micheles/decorator/blob/4.0.0/documentation3.rst (for Python 3.X)
What's new
---------------------
Since now there is a single manual for all Python versions, I took the
occasion for overhauling the documentation. Therefore, even if you are
an old time user, you may want to read the docs again, since several
examples have been improved. The packaging has been improved and I
am distributing the code in wheel format too. The integration with
setuptools has been improved and now you can use ``python setup.py
test`` to run the tests. A new utility function ``decorate(func,
caller)`` has been added, doing the same job that in the past was done
by ``decorator(caller, func)``. The old functionality is still there
for compatibility sake, but it is deprecated and not documented
anymore.
Apart from that, there is a new experimental feature. The decorator
module now includes an implementation of generic (multiple dispatch)
functions. The API is designed to mimic the one of
``functools.singledispatch`` (introduced in Python 3.4) but the
implementation is much simpler; moreover all the decorators involved
preserve the signature of the decorated functions.
Enjoy!
Michele Simionato
Back to comp.lang.python.announce | Previous | Next — Next in thread | Find similar | Unroll thread
ANN: decorator-4.0.0 released Michele Simionato <michele.simionato@gmail.com> - 2015-07-24 03:18 -0700 Re: ANN: decorator-4.0.0 released Michele Simionato <michele.simionato@gmail.com> - 2015-07-24 03:29 -0700
csiph-web