Skip to content

Commit 88880e8

Browse files
committed
CHANGES: Add async support entry (#504)
1 parent 28a43b4 commit 88880e8

File tree

1 file changed

+43
-1
lines changed

1 file changed

+43
-1
lines changed

CHANGES

Lines changed: 43 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,49 @@ $ uv add libvcs --prerelease allow
1818

1919
<!-- Maintainers, insert changes / features for the next release here -->
2020

21-
_Upcoming changes will be written here._
21+
### New features
22+
23+
#### Async support (#504)
24+
25+
Add async equivalents for all synchronous APIs, enabling non-blocking VCS operations:
26+
27+
**Command classes** (`libvcs.cmd._async`):
28+
29+
- {class}`~libvcs.cmd._async.git.AsyncGit` - async git commands
30+
- {class}`~libvcs.cmd._async.hg.AsyncHg` - async mercurial commands
31+
- {class}`~libvcs.cmd._async.svn.AsyncSvn` - async subversion commands
32+
33+
**Sync classes** (`libvcs.sync._async`):
34+
35+
- {class}`~libvcs.sync._async.git.AsyncGitSync` - async git repository management
36+
- {class}`~libvcs.sync._async.hg.AsyncHgSync` - async mercurial repository management
37+
- {class}`~libvcs.sync._async.svn.AsyncSvnSync` - async subversion repository management
38+
39+
**Internal utilities**:
40+
41+
- {func}`~libvcs._internal.async_run.async_run` - async command execution with progress callbacks
42+
- {class}`~libvcs._internal.async_subprocess.AsyncSubprocessCommand` - async subprocess wrapper
43+
44+
Example usage:
45+
46+
```python
47+
import asyncio
48+
from libvcs.sync._async.git import AsyncGitSync
49+
50+
async def main():
51+
repo = AsyncGitSync(url="https://github.com/user/repo", path="/tmp/repo")
52+
await repo.obtain() # Clone
53+
await repo.update_repo() # Pull
54+
55+
asyncio.run(main())
56+
```
57+
58+
### pytest plugin
59+
60+
#### pytest_plugin: Add async fixtures (#504)
61+
62+
- Add `async_git_repo`, `async_hg_repo`, `async_svn_repo` fixtures
63+
- Add `asyncio` to `doctest_namespace` for async doctests
2264

2365
### Development
2466

0 commit comments

Comments
 (0)