rethinkdb-python icon indicating copy to clipboard operation
rethinkdb-python copied to clipboard

Asyncheck

Open dpineiden opened this issue 5 years ago • 5 comments

Reason for the change The new versions of Python3 require use 'drain' after write. Some syntaxis corrections. Some better algorithms.

Description Dropped the 'loop' parameter where is deprecated. After write, use 'drain'. A reader in an async loop. Use async/await pair. The modern statements Some better asyncio exception (have some more to consider)

Code examples On documentation: https://docs.python.org/3/library/asyncio-stream.html#asyncio.StreamWriter

Uses on the tests scripts: https://gitlab.com/pineiden/datadbs-rethinkdb/-/tree/master/tests

Save data:

  • load data on table: load_data.py Read data: read_data.py simple_loop_.py scripts simple_test_,py script

Interact with rdb: crea_perfiles.py

Checklist

References

https://docs.python.org/3/library/asyncio-stream.html#asyncio.StreamWriter

Using TaskLoop: https://tasktools.readthedocs.io/en/latest/ Example: https://gitlab.com/pineiden/tasktools/-/tree/master/test

Anything else related to the change e.g. documentations, RFCs, etc.

dpineiden avatar Aug 20 '20 00:08 dpineiden

I uploaded the corrections....I have to do a new PR?

dpineiden avatar Aug 20 '20 17:08 dpineiden

Hm, it is weird that unit test are not reported... I'll need to take a look on it.

BTW, the tests are failing for the change: https://travis-ci.org/github/rethinkdb/rethinkdb-python/builds/721071084

gabor-boros avatar Aug 26 '20 06:08 gabor-boros

Now.

This: this_task = asyncio.current_task()

In py3.8 exists the method 'current_task' for asyncio.

And """ error is for a docstring.

I think is all for now...

dpineiden avatar Aug 26 '20 15:08 dpineiden

I think this last 5 lines must be discussed with more people.

On net.py says 'many arguments', how we replace that? I use **kwargs and inside get the values that I need, but is a tricky way to be more flexible. (lines 612, 753)

On net_asyncio.py, current_task() is a method that exists since python3.8 so...

And the """ is for a docstrings :S

I can change 'db' to 'db_name', is not a problem.

dpineiden avatar Aug 26 '20 21:08 dpineiden

Codacy Here is an overview of what got changed by this pull request:


Issues
======
+ Solved 30
- Added 5
           

Complexity increasing per file
==============================
- rethinkdb/asyncio_net/net_asyncio.py  1
         

Clones removed
==============
+ rethinkdb/net.py  -1
         

See the complete overview on Codacy

gabor-boros avatar Sep 06 '20 19:09 gabor-boros