Skip to content
This repository has been archived by the owner on Nov 23, 2017. It is now read-only.

Python #500

Open
wants to merge 1,537 commits into
base: redirect
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1537 commits
Select commit Hold shift + click to select a range
de9990e
Fix BaseSubprocessTransport._kill_wait()
vstinner Jan 14, 2015
233af8c
cleanup BaseSelectorEventLoop
vstinner Jan 14, 2015
ed21baf
TestLoop.close() now calls the close() method of the parent class (Ba…
vstinner Jan 14, 2015
158f621
Fix BaseSubprocessTransport.close()
vstinner Jan 14, 2015
d5cc030
_ProactorBasePipeTransport now sets _sock to None when the transport …
vstinner Jan 14, 2015
f2e08a0
Fix BaseEventLoop._create_connection_transport()
vstinner Jan 14, 2015
58d27b7
Fix test_events on Python older than 3.5
vstinner Jan 14, 2015
20a103c
PipeHandle now uses None instead of -1 for a closed handle
vstinner Jan 14, 2015
47152d6
StreamWriter: close() now clears the reference to the transport
vstinner Jan 15, 2015
1da6e1d
Python issue #22560: Fix SSLProtocol._on_handshake_complete()
vstinner Jan 15, 2015
3ce21be
Python issue #23242: SubprocessStreamProtocol now closes the subprocess
vstinner Jan 15, 2015
8addd76
SSLProtocol: set the _transport attribute in the constructor
vstinner Jan 15, 2015
693fa4b
Python issue #23243: Fix _UnixWritePipeTransport.close()
vstinner Jan 15, 2015
ae6f24c
Python issue #23243: Close explicitly event loops in tests
vstinner Jan 15, 2015
eba6a46
Python issue #23243: Close explicitly transports in tests
vstinner Jan 15, 2015
d9de03a
Fix _ProactorBasePipeTransport.__repr__()
vstinner Jan 15, 2015
873bc97
Fix _ProactorBasePipeTransport.close()
vstinner Jan 15, 2015
f9c91e5
Close the transport on subprocess creation failure
vstinner Jan 15, 2015
cf01d42
Close transports in tests
vstinner Jan 15, 2015
408fbab
Python issue #23219: cancelling wait_for() now cancels the task
vstinner Jan 15, 2015
416f59d
Backout changeset 3a06020af8cf
vstinner Jan 15, 2015
e87e26f
Issue #22685: Fix test_pause_reading() of test_subprocess
vstinner Jan 15, 2015
21192c4
Cleanup BaseEventLoop._create_connection_transport()
vstinner Jan 16, 2015
777da23
tox.ini: fix comment
vstinner Jan 16, 2015
346737d
runtests.py: rephrase the message mentionning randomization of tests
vstinner Jan 16, 2015
ad1724a
release.py: fix typo
vstinner Jan 16, 2015
2b5becd
tests: Remove unused function; inline another function
vstinner Jan 16, 2015
3c0eabf
Enhance BaseProactorEventLoop._loop_self_reading()
vstinner Jan 16, 2015
c3a18fd
pyflakes: remove unused import
vstinner Jan 16, 2015
f1fbd1e
test_selectors: use asyncio.test_support if test.support is missing
vstinner Jan 20, 2015
5500000
Python issue #23095: Rewrite _WaitHandleFuture.cancel()
vstinner Jan 21, 2015
0bb6858
BaseEventLoop._create_connection_transport() catchs any exception, no…
vstinner Jan 21, 2015
ae97759
Python issue #23095: IocpProactor.close() must not cancel pending
vstinner Jan 21, 2015
2fe68a3
IocpProactor.close(): don't cancel futures which are already cancelled
vstinner Jan 22, 2015
bb31eae
release.py: Fix help
vstinner Jan 22, 2015
8f386cd
Python issue #23293: Rewrite IocpProactor.connect_pipe()
vstinner Jan 22, 2015
8b4b4f1
Tulip issue #204: Fix IocpProactor.accept_pipe()
vstinner Jan 22, 2015
995e2c1
Close transports on error
vstinner Jan 22, 2015
adc9c3e
Python issue #23293: Cleanup IocpProactor.close()
vstinner Jan 23, 2015
86bbe9e
Tulip issue #219: Fix comments in simple_tcp_server.py example
vstinner Jan 23, 2015
a4aa7c1
Tulip issue #220: Merge JoinableQueue with Queue.
ajdavis Jan 24, 2015
dc19c32
Docstring for Queue.join shouldn't mention threads.
ajdavis Jan 24, 2015
684f3be
Python issue #23208: Add BaseEventLoop._current_handle
vstinner Jan 26, 2015
febe4cb
Fix ProactorEventLoop.start_serving_pipe()
vstinner Jan 26, 2015
4945c1a
PipeHandle.fileno() now raises an exception if the pipe is closed
vstinner Jan 26, 2015
34214f4
Python issue #23293: Rewrite IocpProactor.connect_pipe() as a coroutine
vstinner Jan 26, 2015
09f7de1
Python issue #23095: Fix _WaitHandleFuture.cancel()
vstinner Jan 26, 2015
29487bb
Tulip issue #204: Fix IocpProactor.recv()
vstinner Jan 26, 2015
54faf33
_overlapped.ConnectPipe(): release the GIL
vstinner Jan 26, 2015
f1774fc
Python issue #23208: Don't use the traceback of the current handle if we
vstinner Jan 26, 2015
8343733
test_sslproto: skip test if ssl module is missing
vstinner Jan 27, 2015
fdd3d9b
Remove unused SSLProtocol._closing attribute
vstinner Jan 27, 2015
63d8fc1
Fix SSLProtocol.eof_received()
vstinner Jan 28, 2015
aed248b
SSL transports now clear their reference to the waiter
vstinner Jan 28, 2015
c560003
Fix _SelectorSocketTransport constructor
vstinner Jan 28, 2015
74a3c25
BaseSubprocessTransport._kill_wait() now also call close()
vstinner Jan 29, 2015
2c89c71
Fix _SelectorDatagramTransport constructor
vstinner Jan 29, 2015
1162bf2
_SelectorTransport constructor: extra parameter is now optional
vstinner Jan 29, 2015
7a46eda
Fix _SelectorSslTransport.close()
vstinner Jan 29, 2015
c662822
Cleanup gather(): use cancelled() method instead of using private Future
vstinner Jan 29, 2015
5fe382d
Fix _UnixReadPipeTransport and _UnixWritePipeTransport
vstinner Jan 29, 2015
59fcee2
Fix BaseSelectorEventLoop._accept_connection()
vstinner Jan 29, 2015
93a4cf4
Document Protocol state machine
vstinner Jan 29, 2015
2b0f274
Python issue #23243: test_sslproto: Close explicitly transports
vstinner Jan 29, 2015
241c710
Python issue #23243: On Python 3.4 and newer, emit a ResourceWarning …
vstinner Jan 29, 2015
c92da15
Python issue #23347: Refactor creation of subprocess transports
vstinner Jan 29, 2015
2e187bb
Python issue #23347: send_signal(), kill() and terminate() methods of
vstinner Jan 29, 2015
cffe67d
tox.ini: enable ResourceWarning warnings
vstinner Jan 29, 2015
787b494
Fix ResourceWarning in test_subprocess.test_proc_exit()
vstinner Jan 29, 2015
d37a906
Python issue #23347: Make BaseSubprocessTransport.wait() private
vstinner Jan 29, 2015
6c7490e
Python issue #23347: send_signal(), terminate(), kill() don't check i…
vstinner Jan 30, 2015
ab5d83c
Fix a ResourceWarning in the shell example
vstinner Jan 30, 2015
eec5196
Fix subprocess_attach_write_pipe example
vstinner Jan 30, 2015
aeb1824
Workaround CPython bug #23353
vstinner Feb 2, 2015
b9d3799
Tulip issue #221: Fix docstring of QueueEmpty and QueueFull
vstinner Feb 3, 2015
d3dbdf8
BaseSelectorEventLoop uses directly the private _debug attribute
vstinner Feb 4, 2015
0105a8f
Only call _check_resolved_address() in debug mode
vstinner Feb 4, 2015
7b2d8ab
BaseEventLoop: rename _owner to _thread_id
vstinner Feb 4, 2015
d496a7e
BaseSubprocessTransport.close() doesn't try to kill the process if it…
vstinner Feb 10, 2015
10a91fe
BaseSubprocessTransport: repr() mentions when the child process is ru…
vstinner Feb 12, 2015
d9c50eb
Tulip issue #220: Restore JoinableQueue as a deprecated alias for Queue.
ajdavis Feb 14, 2015
716ef6c
Merge branch remove-joinable-queue.
ajdavis Feb 14, 2015
b60bad4
tests: Use os.devnull instead of hardcoded '/dev/null'.
vstinner Feb 17, 2015
c18c4d0
Python issue #23475: Fix test_close_kill_running()
vstinner Feb 17, 2015
e147802
Fix warning in test_close_kill_running()
vstinner Feb 17, 2015
8049625
Python issue #23537: Remove 2 unused private methods of BaseSubproces…
vstinner Feb 27, 2015
22a9854
Added tag 3.4.3 for changeset 122233297cfd
vstinner Mar 10, 2015
f04f680
Set version to 3.4.4
vstinner Mar 10, 2015
e0bf949
Write Tulip 3.4.3 changelog
vstinner Mar 10, 2015
26c6fed
Fix repr(BaseSubprocessTransport) if it didn't start yet
vstinner Mar 10, 2015
16b3121
Python issue #23456: Add missing @coroutine decorators
vstinner Mar 18, 2015
15a569d
Fix _SelectorTransport.__repr__() if the event loop is closed
vstinner Mar 27, 2015
b26e6ae
Python issue #23879: SelectorEventLoop.sock_connect() must not call c…
vstinner Apr 7, 2015
bf4b2ce
Rename README file to have rst render on Github
ludovic-gasc Apr 11, 2015
1888b1d
Switch hgignore and hgeol to git equivalents
asvetlov Apr 11, 2015
3582e11
Merge pull request #224 from Eyepea/readme_improvement
asvetlov Apr 11, 2015
30f4788
add in .gitignore pyvenv and Pycharm files
ludovic-gasc Apr 11, 2015
4f9099e
Merge pull request #225 from Eyepea/add_pycharm_in_gitignore
asvetlov Apr 11, 2015
173ff86
Update README.rst
asvetlov Apr 13, 2015
b08ee40
Fix @coroutine for functions without __name__
vstinner Apr 14, 2015
7718675
#230: Change official URL from tulip to asyncio in README.rst
ludovic-gasc Apr 14, 2015
a943b49
Test LifoQueue's and PriorityQueue's put() and task_done().
ajdavis Apr 20, 2015
e496c7c
Fix LifoQueue's and PriorityQueue's put() and task_done().
ajdavis Apr 20, 2015
bcb7ec4
Merge pull request #236 from ajdavis/queue-join-fix
gvanrossum Apr 20, 2015
70d8856
Fix queue join tests for CPython's test runner.
ajdavis Apr 20, 2015
cd10ff2
Merge pull request #237 from ajdavis/update-queue-join-tests
gvanrossum Apr 20, 2015
b516e80
Merge pull request #231 from haypo/issue_222
gvanrossum Apr 23, 2015
2798fb4
Rename the function arg to run_in_executor() to "func" to avoid confu…
May 5, 2015
71f7c24
Add new loop APIs: set_task_factory() and get_task_factory()
1st1 May 11, 2015
0f50393
Sync script_helper import with CPython
1st1 May 11, 2015
2659599
Make sure that CPython 3.4 and older will import script_helper
1st1 May 11, 2015
1181bc1
Fix script_helper imports for 3.4
1st1 May 11, 2015
53edb85
Deprecate async() function in favour of ensure_future()
1st1 May 11, 2015
6c6a5e4
Use DeprecationWarning for async()
1st1 May 11, 2015
e3216b8
Enable Travis-CI integration
1st1 May 11, 2015
36e7141
Support PEP 492 native coroutines.
1st1 May 12, 2015
f24ba38
Make sure sys.set_coroutine_wrapper is called *only* when loop is run…
1st1 May 12, 2015
6ac55b2
Enable 'async for' for StreamReader, 'async with' for locks in 3.5.
1st1 May 13, 2015
3a09a93
Use collections.abc.Coroutine for asyncio.iscoroutine() when available.
1st1 May 12, 2015
fed8618
tasks: Drop useless code.
1st1 May 28, 2015
755806f
Support Awaitables (pep 492) in @coroutine decorator
1st1 May 31, 2015
7baef9d
coroutines: Fix CoroWrapper to support native coroutines
1st1 Jun 1, 2015
eff4672
Sync with CPython.
1st1 Jun 24, 2015
83ac3b8
Fix CoroWrapper for 'async def' coroutines
1st1 Jun 24, 2015
32a303e
Fix regression in 83ac3b8 (failed unittests in debug mode)
1st1 Jun 24, 2015
e802f17
coroutines: Proxy cr_await and gi_yieldfrom in CoroWrapper
1st1 Jul 3, 2015
728a912
Rerite README
vstinner Jul 6, 2015
1975461
rename asyncio/ directory to trollius/
vstinner Jul 6, 2015
ccafbc0
Replace asyncio with trollius in code and config
vstinner Jul 6, 2015
a01f3f4
Add compatibility files from old trollius project
vstinner Jul 6, 2015
a474950
Port asyncio to Python 2, trollius/ directory
vstinner Jul 7, 2015
6d516e5
Port asyncio to Python 2, tests/ directory
vstinner Jul 7, 2015
d8b296d
Add documentation
vstinner Jul 7, 2015
26a3183
add test_asyncio.py
vstinner Jul 7, 2015
603a58e
Port asyncio to Python 2, examples/ directory
vstinner Jul 7, 2015
22df34e
Add interop_asyncio.py example
vstinner Jul 7, 2015
962dea8
copy files from trollius
vstinner Jul 7, 2015
3d64966
replace update_stdlib with update-tulip
vstinner Jul 7, 2015
f09e57b
Port overlapped.c
vstinner Jul 7, 2015
2fd3bf4
Port remaining files
vstinner Jul 7, 2015
fa09379
Add TODO.rst from Trollius
vstinner Jul 7, 2015
e6e6e0a
use releaser
vstinner Jul 7, 2015
3590610
remove asyncio changelog
vstinner Jul 7, 2015
7104694
Fix Python 3.4 issues
vstinner Jul 8, 2015
14d618e
Python 2.7 fixes
vstinner Jul 8, 2015
352b8ce
Fixes for Python 2.6
vstinner Jul 8, 2015
94fa7e2
tox.ini: fix py2_release
vstinner Jul 9, 2015
03a4d4d
pick README from trollius
vstinner Jul 9, 2015
6f52fbf
README: replace Tulip with asyncio
vstinner Jul 9, 2015
fe673cc
replace Tulip with asyncio
vstinner Jul 9, 2015
c335bfe
queues.py: import coroutine from .coroutines
vstinner Jul 9, 2015
f5ae096
Replace Tulip with asyncio in test comments
vstinner Jul 9, 2015
46c187a
replace tulip with asyncio
vstinner Jul 9, 2015
30f5c84
Merge branch 'master' into trollius
vstinner Jul 9, 2015
67bf1da
update doc for unittest2
vstinner Jul 9, 2015
4c6a4e1
Fix import on windows
vstinner Jul 9, 2015
d15529b
get unittest from trollius.test_utils
vstinner Jul 9, 2015
d735bba
fix import
vstinner Jul 9, 2015
e752c82
getaddrinfo() doesn't support keywords on Python 2
vstinner Jul 9, 2015
170c465
subprocess.Popen doesn't support context manager on Python 2
vstinner Jul 9, 2015
f751a25
Fix PipeHandle.__del__ on Python 2
vstinner Jul 9, 2015
3acc9d0
fix test_events on python 3.4.0 and 3.4.1
vstinner Jul 9, 2015
3b6a64a
Add asyncio.compat module
vstinner Jul 9, 2015
a3bce3b
Merge pull request #254 from haypo/compat
vstinner Jul 10, 2015
1f85dc7
Issue #234: Drop JoinableQueue on Python 3.5+
vstinner Jul 10, 2015
53a8e99
port update-tulip-step1.sh to git+github
vstinner Jul 11, 2015
05e99d6
rename update-tulip...sh scripts to update-asyncio-...sh
vstinner Jul 11, 2015
cfcc3c0
update scripts to git
vstinner Jul 11, 2015
fe8894a
rename compat.py to be able to merge asyncio
vstinner Jul 11, 2015
61199a4
enhance git merge
vstinner Jul 11, 2015
16b46b3
Merge asyncio into trollius
vstinner Jul 11, 2015
53bf283
don't commit in update-asyncio-step3.sh
vstinner Jul 11, 2015
2173eee
fix 2.6 compat
vstinner Jul 11, 2015
e82d8c6
Fix Python 3.2 compat
vstinner Jul 11, 2015
1ade799
Test without ssl or without concurrent
vstinner Jul 11, 2015
b5e33de
Enable warnings to see ResourceWarning on Python 3
vstinner Jul 11, 2015
05ecc3c
update doc
vstinner Jul 11, 2015
b4f24c2
cleanup changelog
vstinner Jul 11, 2015
14bdbc0
changelog: summary
vstinner Jul 13, 2015
242222f
Fix sslproto when ssl is not available
vstinner Jul 13, 2015
4a3cad7
Fix TestCase.tearDown() for skipped tests
vstinner Jul 13, 2015
5d4fcb5
prepare release 2.0
vstinner Jul 13, 2015
5e9854d
update release procedure
vstinner Jul 13, 2015
306b7b2
post-release: set version to 2.0.1
vstinner Jul 13, 2015
9414da1
test_utils.py: remove assertRaisesRegex
vstinner Jul 13, 2015
a0bad46
update TODO list
vstinner Jul 13, 2015
d444158
Use the six module
vstinner Jul 13, 2015
ce3ad81
Return True from StreamReader.eof_received() to fix
Jul 14, 2015
d9d8881
setup.py: don't use bdist_wheel
vstinner Jul 17, 2015
d1630dc
doc: add libraries
vstinner Jul 18, 2015
b13b14a
fix test_utils: add missing "import six"
vstinner Jul 18, 2015
f25cb29
fix windows_utils: add missing "import six"
vstinner Jul 18, 2015
9bb6743
remove unused imports
vstinner Jul 18, 2015
ce41fba
Fix ResourceWarning warnings in test_streams
vstinner Jul 24, 2015
5eac181
Fix ResourceWarning in BaseSubprocessTransport
vstinner Jul 31, 2015
4f45ac7
Use compat.PY34
vstinner Jul 31, 2015
4851618
tasks: Fix code style
1st1 Aug 2, 2015
51a3206
Revert "tasks: Fix code style"
1st1 Aug 2, 2015
27f3499
Use '==' operator instead of 'is'
1st1 Aug 4, 2015
5d71b68
Run asyncio with python nightly builds too on travis
1st1 Aug 5, 2015
1dd213e
Merge PR #256: fix issue23812 of queues loosing items on cancellation
1st1 Aug 5, 2015
f57cfc6
Make sure BaseException is re-raised in SSLProtocol
1st1 Aug 5, 2015
f411181
queues: Fix getter-cancellation with many pending getters code path
1st1 Aug 6, 2015
f3ed6c3
Fix asyncio tests on windows
1st1 Aug 9, 2015
8d79c57
Fix Task.get_stask() for 'async def' coroutines
1st1 Aug 14, 2015
0727ad2
Merge asyncio into trollius
vstinner Sep 8, 2015
f285592
better exception traceback
Nov 13, 2015
5388ec1
Merge pull request #5 from imkin/trollius
vstinner Nov 13, 2015
056a394
fix test on py2 win32
mindw Nov 13, 2015
b335213
ignore inline built extensions
mindw Nov 13, 2015
e22a30b
Fix Future on Python 3.5
vstinner Feb 5, 2016
e1a4ed9
document change on exception
vstinner Feb 5, 2016
a8b8ad4
Drop support of Python 2.6 and 3.2
vstinner Feb 5, 2016
9fb2a3d
Ugly hack to support Python 3.5 with the PEP 479
vstinner Feb 5, 2016
f7a315a
Fix CoroWrapper.throw()
vstinner Feb 5, 2016
985e789
Merge pull request #6 from mindw/fix_win32_test
vstinner Feb 5, 2016
5641f31
document the win32 fix
vstinner Feb 5, 2016
2c7f6ac
set version to 2.1
vstinner Feb 5, 2016
98ba7f8
Deprecate Trollius
vstinner Feb 5, 2016
dc11b97
post-release: set version to 2.2
vstinner Feb 19, 2016
907fac4
From(proc.wait()) instead of form proc.wait()
pavan123k Feb 24, 2016
20544a6
Convert readthedocs link for their .org -> .io migration for hosted p…
Jun 2, 2016
a72d9fe
Merge pull request #9 from pavan123k/patch-1
vstinner Dec 5, 2016
0ce9dcb
Merge pull request #11 from adamchainz/readthedocs.io
vstinner Dec 5, 2016
3d8e1db
Update GitHub URL
vstinner Nov 20, 2017
b4bacc0
trollius.readthedocs.io has been removed
vstinner Nov 22, 2017
c6c8641
Remove aiotest tests
vstinner Mar 9, 2018
97c56f0
Add "No Maintenance Intended" badge
vstinner Mar 9, 2018
fa13a1c
Prepare 2.2 release
vstinner Mar 9, 2018
30d9760
post release: set version to 2.3
vstinner Mar 9, 2018
479788f
README: add deprecation warning
vstinner Mar 9, 2018
6d0a877
Add appveyor.yml from https://github.com/vstinner/trollius/pull/13/files
jamadden Jul 29, 2019
cd16267
Metadata updates.
jamadden Jul 29, 2019
439637d
Copy logic from gevent to install pypy.
jamadden Jul 29, 2019
1a76339
Use right executable for pypy
jamadden Jul 29, 2019
85e055d
No really.
jamadden Jul 29, 2019
6b843ec
Nope, drop PyPy: It does not actually build.
jamadden Jul 29, 2019
a692f5a
Tweaking versions.
jamadden Jul 29, 2019
65e0c60
add missing metadata.
jamadden Jul 29, 2019
44ce7ec
Preparing release 2.2.post1
jamadden Jul 29, 2019
2585726
Back to development: 2.2.post2
jamadden Jul 29, 2019
2aeeb23
Add Development Status :: 7 - Inactive classifier.
jamadden Jul 29, 2019
a74449a
Make socket.error with errno EBADF get raised as OSError.
jamadden Apr 28, 2021
c6af107
Merge pull request #18 from jamadden/issue17
jamadden Apr 28, 2021
e60f33a
Update changelog.
jamadden Apr 28, 2021
284b318
Preparing release 2.2.1
jamadden Apr 28, 2021
007602e
Back to development: 2.2.2
jamadden Apr 28, 2021
41951a2
Merge branch '2.2' into trollius
jamadden Apr 28, 2021
5f541ea
Temporarily playing with tags to get appveyor wheels.
jamadden Apr 28, 2021
2df073c
Revert.
jamadden Apr 28, 2021
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
* text=auto
*.py text diff=python
19 changes: 19 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
*\.py[co]
*~
*\.orig
*\#.*
*@.*
.coverage
htmlcov
.DS_Store
venv
pyvenv
distribute_setup.py
distribute-*.tar.gz
build
dist
*.egg-info
.tox
.idea/
*.iml
trollius/_overlapped.pyd
18 changes: 18 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
language: python

os:
- linux
- osx

python:
- 3.3
- 3.4
- "nightly"

install:
- pip install asyncio
- python setup.py install

script:
- python runtests.py
- PYTHONASYNCIODEBUG=1 python runtests.py
14 changes: 14 additions & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
Trollius authors
================

Ian Wienand <iwienand@redhat.com>
Marc Schlaich <marc.schlaich AT gmail.com>
Victor Stinner <victor.stinner AT gmail.com> - creator of the Trollius project

The photo of Trollis flower was taken by Imartin6 and distributed under the CC
BY-SA 3.0 license. It comes from:
http://commons.wikimedia.org/wiki/File:Trollius_altaicus.jpg

Trollius is a port of the asyncio project on Python 2, see also authors of the
asyncio project (AUTHORS file).

735 changes: 735 additions & 0 deletions CHANGES.rst

Large diffs are not rendered by default.

201 changes: 201 additions & 0 deletions COPYING
Original file line number Diff line number Diff line change
@@ -0,0 +1,201 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/

TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION

1. Definitions.

"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.

"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.

"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.

"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.

"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.

"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.

"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).

"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.

"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."

"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.

2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.

3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.

4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:

(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and

(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and

(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and

(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.

You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.

5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.

6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.

7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.

8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.

9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.

END OF TERMS AND CONDITIONS

APPENDIX: How to apply the Apache License to your work.

To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "[]"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.

Copyright [yyyy] [name of copyright owner]

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
18 changes: 18 additions & 0 deletions MANIFEST.in
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
include AUTHORS COPYING TODO.rst tox.ini
include Makefile
include overlapped.c pypi.bat
include check.py runtests.py release.py
include update-asyncio-*.sh
include .travis.yml
include appveyor.yml
include releaser.conf

include doc/conf.py doc/make.bat doc/Makefile
include doc/*.rst doc/*.jpg

include examples/*.py

include tests/*.crt tests/*.pem tests/*.key
include tests/*.py

include *.rst
63 changes: 60 additions & 3 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,5 +1,62 @@
# Some simple testing tasks (sorry, UNIX only).

PYTHON=python
VERBOSE=$(V)
V= 0
FLAGS=

test:
time python3.3 main.py
$(PYTHON) runtests.py -v $(VERBOSE) $(FLAGS)

vtest:
$(PYTHON) runtests.py -v 1 $(FLAGS)

testloop:
while sleep 1; do $(PYTHON) runtests.py -v $(VERBOSE) $(FLAGS); done

# See runtests.py for coverage installation instructions.
cov coverage:
$(PYTHON) runtests.py --coverage -v $(VERBOSE) $(FLAGS)

check:
$(PYTHON) check.py

# Requires "pip install pep8".
pep8: check
pep8 --ignore E125,E127,E226 tests asyncio

clean:
rm -rf `find . -name __pycache__`
rm -f `find . -type f -name '*.py[co]' `
rm -f `find . -type f -name '*~' `
rm -f `find . -type f -name '.*~' `
rm -f `find . -type f -name '@*' `
rm -f `find . -type f -name '#*#' `
rm -f `find . -type f -name '*.orig' `
rm -f `find . -type f -name '*.rej' `
rm -rf dist
rm -f .coverage
rm -rf htmlcov
rm -rf build
rm -rf asyncio.egg-info
rm -f MANIFEST
rm -rf trollius.egg-info
rm -rf .tox


# For distribution builders only!
# Push a source distribution for Python 3.3 to PyPI.
# You must update the version in setup.py first.
# A PyPI user configuration in ~/.pypirc is required;
# you can create a suitable confifuration using
# python setup.py register
pypi: clean
python3.3 setup.py sdist upload

profile:
python3.3 -m profile -s time main.py
# The corresponding action on Windows is pypi.bat. For that to work,
# you need to install wheel and setuptools. The easiest way is to get
# pip using the get-pip.py script found here:
# https://pip.pypa.io/en/latest/installing.html#install-pip
# That will install setuptools and pip; then you can just do
# \Python33\python.exe -m pip install wheel
# after which the pypi.bat script should work.
11 changes: 11 additions & 0 deletions README.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
========
Trollius
========

.. image:: http://unmaintained.tech/badge.svg
:target: http://unmaintained.tech/
:alt: No Maintenance Intended

.. warning::
The Trollius project is deprecated and unsupported. It is on PyPI
to support existing dependencies only.
25 changes: 25 additions & 0 deletions TODO.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
Unsorted "TODO" tasks:

* Python 3.5: Fix test_task_repr()
* Python 3.4: Fix test_asyncio()
* Drop platform without ssl module?
* streams.py:FIXME: should we support __aiter__ and __anext__ in Trollius?
* replace selectors.py with selectors34:
https://github.com/berkerpeksag/selectors34/pull/2
* check ssl.SSLxxx in update_xxx.sh
* document how to port asyncio to trollius
* use six instead of compat
* Replace logger with warning in monotonic clock and synchronous executor
* Windows: use _overlapped in py33_winapi?
* Fix tests failing with PyPy:

- sys.getrefcount()
- test_queues.test_repr
- test_futures.test_tb_logger_exception_unretrieved

* write unit test for create_connection(ssl=True)
* Fix examples:

- stacks.py: 'exceptions.ZeroDivisionError' object has no attribute '__traceback__'

* Fix all FIXME in the code
Loading