Skip to content

zzzsochi/aiotraversal

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

82 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Traversal based asynchronous web framework

CI

Code coverage

Documentation Status

This is framework, around aiohttp_traversal.

Install

$ pip install aiotraversal

Tests

$ git clone https://github.com/zzzsochi/aiotraversal.git
$ cd aiotraversal
$ pip install pytest pytest-cov
$ py.test --cov ./aiotraversal --cov-report term-missing

Examples

$ git clone https://github.com/zzzsochi/aiotraversal.git
$ cd aiotraversal
$ pip install -e .
$ python3 examples/1-hello.py serve
$ curl http://localhost:8080
Hello World!
$ curl http://localhost:8080/json
{"text": "Hello World!"}

CHANGES

0.9.1 (2016-02-09)

  • Update for new aiohttp;
  • Remove Configure.register_on_finish (fuck b/c!);
  • Add Configure.on_cleanup list for serial cleanup process;
  • Fix bug in Configure.bind_view witn exceptions.

0.9.0 (2016-01-24)

  • Start documentation
  • Add settings;
  • Move Application.start to aiotraversal.serve.start_listening function;
  • Refactoring, refactoring, refactoring, refactoring...

0.8.0 (2016-01-10)

  • Started CHANGES;
  • New configuration process:

    def main():
        loop = asyncio.get_event_loop()
        app = Application()
    
        with app.configure(loop=loop) as config:
            config.include(func)
    
        app.start()
    
    def func(config):
        work_configure()
  • Add Configure.include_deferred;
  • Add modules for command line:

    • aiotraversal.cmd;
    • aiotraversal.logger;
    • aiotraversal.serve;
    import asyncio
    
    from aiotraversal import Application
    from aiotraversal.cmd import run
    
    def main():
        loop = asyncio.get_event_loop()
        app = Application()
    
        with app.configure(loop=loop) as config:
            config.include('aiotraversal.cmd')
            config.include('aiotraversal.logger')
            config.include('aiotraversal.serve')
    
        run(app, loop)
    
    if __name__ == '__main__':
        main()
    $ cmd
    usage: cmd [--loglevel WARNING] {help,serve} ...
    
    positional arguments:
      {help,serve}
        help              Print this help
        serve             Start web server
    
    optional arguments:
      --loglevel WARNING  Set log level
    
    $ cmd --loglevel=DEBUG serve
    INFO:aiotraversal.app:listening - localhost:8080
    ^CDEBUG:aiotraversal.cmd:finishing application
    DEBUG:aiotraversal.cmd:closing loop

About

Web framework for big complicated applications based on aiohttp

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages