Skip to main content

Mercurial Python asynchronous library

Project description

aiohglib

The aiohglib is an asynchronous variant of hglib, which is library with a fast, convenient interface to Mercurial. It uses Mercurial's command server for communication with hg.

The code itself takes advantage of asyncio library and async/await syntax.

Another difference against standard hglib is suport for timezones and changesets details like p1, p2 and extras.

Basic usage

import asyncio
import aiohglib

async def main():
    async with aiohglib.open(path) as client:
        log = await client.log(revrange="tip")
        print(log)

# Depending on your Python version you need to run one of those:

# Python 3.7 or newer
asyncio.run(main())

# Python 3.6
loop = asyncio.get_event_loop()
loop.run_until_complete(main())
loop.close()

# Python 3.6 on Windows
loop = asyncio.ProactorEventLoop()
loop.run_until_complete(main())
loop.close()

Dependencies

Changelog

1.5

  • Changed string decoding and codec detection to be more safe.

1.4

  • Fixed await syntax in client.py
  • Fixed redundant __bool__ in util.py
  • Optional detection of encoding for changeset's author and description via chardet module
  • Optional safe_template is now not used by default

Licence

MIT

Contact

Michal Šiška michal.515k4@gmail.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

aiohglib-1.5.tar.gz (25.2 kB view hashes)

Uploaded Source

Built Distribution

aiohglib-1.5-py3-none-any.whl (25.9 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page