15
0

Accepting request 57347 from home:frispete:python

OBS-URL: https://build.opensuse.org/request/show/57347
OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-decorator?expand=0&rev=6
This commit is contained in:
Pavol Rusnak
2011-01-07 13:26:51 +00:00
committed by Git OBS Bridge
parent fd2f56ce32
commit 8ed31c27df
5 changed files with 1023 additions and 83 deletions

View File

@@ -1,75 +0,0 @@
diff -up decorator-3.0.1/documentation.py.doctest decorator-3.0.1/documentation.py
--- decorator-3.0.1/documentation.py.doctest 2009-05-21 21:13:24.171482875 -0700
+++ decorator-3.0.1/documentation.py 2009-05-21 21:59:01.242233871 -0700
@@ -120,7 +120,7 @@ keyword arguments:
>>> from inspect import getargspec
>>> print getargspec(f1)
- ([], 'args', 'kw', None)
+ ArgSpec(args=[], varargs='args', keywords='kw', defaults=None)
This means that introspection tools such as pydoc will give
wrong informations about the signature of ``f1``. This is pretty bad:
@@ -186,7 +186,7 @@ The signature of ``heavy_computation`` i
.. code-block:: python
>>> print getargspec(heavy_computation)
- ([], None, None, None)
+ ArgSpec(args=[], varargs=None, keywords=None, defaults=None)
A ``trace`` decorator
------------------------------------------------------
@@ -219,7 +219,7 @@ and it that it has the correct signature
.. code-block:: python
>>> print getargspec(f1)
- (['x'], None, None, None)
+ ArgSpec(args=['x'], varargs=None, keywords=None, defaults=None)
The same decorator works with functions of any signature:
@@ -233,7 +233,7 @@ The same decorator works with functions
calling f with args (0, 3, 2), {}
>>> print getargspec(f)
- (['x', 'y', 'z'], 'args', 'kw', (1, 2))
+ ArgSpec(args=['x', 'y', 'z'], varargs='args', keywords='kw', defaults=(1, 2))
That includes even functions with exotic signatures like the following:
@@ -243,7 +243,7 @@ That includes even functions with exotic
... def exotic_signature((x, y)=(1,2)): return x+y
>>> print getargspec(exotic_signature)
- ([['x', 'y']], None, None, ((1, 2),))
+ ArgSpec(args=[['x', 'y']], varargs=None, keywords=None, defaults=((1, 2),))
>>> exotic_signature()
calling exotic_signature with args ((1, 2),), {}
3
@@ -281,7 +281,7 @@ can easily check that the signature has
.. code-block:: python
>>> print getargspec(trace)
- (['f'], None, None, None)
+ ArgSpec(args=['f'], varargs=None, keywords=None, defaults=None)
Therefore now ``trace`` can be used as a decorator and
the following will work:
@@ -387,13 +387,13 @@ be locked. Here is a minimalistic exampl
Each call to ``write`` will create a new writer thread, but there will
be no synchronization problems since ``write`` is locked.
->>> write("data1")
-<Thread(write-1, started)>
+>>> write("data1") # doctest: +ELLIPSIS
+<Thread(write-1, started...)>
>>> time.sleep(.1) # wait a bit, so we are sure data2 is written after data1
->>> write("data2")
-<Thread(write-2, started)>
+>>> write("data2") # doctest: +ELLIPSIS
+<Thread(write-2, started...)>
>>> time.sleep(2) # wait for the writers to complete

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:6c3b80ef5ffc06010990889c7cb9e9c6883907bb27fd8dd2e91f1a94108f3804
size 121559

3
decorator-3.3.0.tar.bz2 Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b913374471e4bd385705ec510560a0040def2959ee36fe2e21e4b221ccfbbc55
size 18624

1012
documentation.html Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1,13 +1,13 @@
%define modname decorator
Name: python-%{modname}
Version: 3.0.1
Version: 3.3.0
Release: 1
Summary: Better Living Through Python With Decorators
URL: http://www.phyast.pitt.edu/~micheles/python/documentation.html
License: BSD
Group: Development/Libraries/Python
Source: %{modname}-%{version}.tar.bz2
Patch0: decorator-3.0.1-doctest.patch
Source1: documentation.html
BuildRoot: %{_tmppath}/%{name}-buildroot
%{py_requires}
BuildRequires: python-devel
@@ -30,11 +30,11 @@ Authors:
Michele Simionato <michele.simionato@gmail.com>
%prep
%setup -q -n %{modname}-%{version}
%patch0 -p1 -b .doctest
%setup -q -n %{modname}-%{version}
# Remove executable bits from doc files
chmod a-x *.txt *.py
sed -i 's/\r//' README.txt
cp %{SOURCE1} .
%build
export CFLAGS="$RPM_OPT_FLAGS"
@@ -48,9 +48,12 @@ rm -rf %{buildroot}
%files -f INSTALLED_FILES
%defattr(-,root,root)
%doc CHANGES.txt README.txt documentation.html
%doc README.txt PKG-INFO documentation.html
%changelog
* Fri Jan 07 2010 - Hans-Peter Jansen <hpj@urpla.net> - 3.3.0-1
- Update to 3.3.0
* Mon Aug 10 2009 - Ciaran Farrell <cfarrell1980@gmail.com> - 3.0.1-1
- Update to 3.0.1