Size: 1159
Comment:
|
Size: 1927
Comment: Vandalism
|
Deletions are marked like this. | Additions are marked like this. |
Line 11: | Line 11: |
== First plan == | Also you can take a look on c-hglib [[http://swarm.cs.pub.ro/~istana/c-hglib/html|documentation]]. |
Line 13: | Line 13: |
== Plan to build c-hglib == | |
Line 14: | Line 15: |
== Reporting bugs == | The implementation was split in three steps: |
Line 16: | Line 17: |
Bugs can be reported on [[https://bitbucket.org/istana/c-hglib/issues?status=new&status=open|bitbucket-issue list]]. | * level 0 also called row level * pass a raw command string, get unparsed results * level 1 also called command level * function per command, returns results in native C datatypes * level 2 also called "object" level * emulate important Mercurial internal APIs like contexts with a native C paradigm For the moment level 0 is in the accepting phase, I need to get reviews before declared finished. You can see and review level 0 on this [[http://markmail.org/thread/hixvvvcpklfjnqze|patchbomb]]. Meanwhile I started to make a sketch for level 1. You can also see and comment on this sketch over [[http://markmail.org/message/pofplkyodyoxp5mq|here]]. I had made a sketch for level 1 [[http://bpaste.net/show/mLt3zmFSyKvmx0tY0Qpa|log_command]] |
Line 28: | Line 40: |
│ └── level0.h | │ └── level0.c |
Line 40: | Line 52: |
== See also == *[[http://mercurial.selenic.com/wiki/CommandServer|CommandServer]] *[[http://www.selenic.com/repo/python-hglib/file/ca5f8f43e585/|python-hglib]] *[[http://mercurial.selenic.com/wiki/MercurialApi|MercurialApi]] |
== Reporting bugs == Bugs can be reported on [[https://bitbucket.org/istana/c-hglib/issues?status=new&status=open|bitbucket-issue list]]. == See also == * CommandServer * MercurialApi * PythonHglib |
C-Hglib
A C library for interfacing with Mercurial's CommandServer.
Contents
1. Getting the source
You can clone the packeage from its primary repository c-hglib.
Also you can take a look on c-hglib documentation.
2. Plan to build c-hglib
The implementation was split in three steps:
- level 0 also called row level
- pass a raw command string, get unparsed results
- level 1 also called command level
- function per command, returns results in native C datatypes
- level 2 also called "object" level
- emulate important Mercurial internal APIs like contexts with a native C paradigm
For the moment level 0 is in the accepting phase, I need to get reviews before declared finished. You can see and review level 0 on this patchbomb.
Meanwhile I started to make a sketch for level 1. You can also see and comment on this sketch over here.
I had made a sketch for level 1 log_command
3. My starts points will be
4. Directory tree
. ├── examples │ └── level0.c ├── hglib │ ├── main.c │ ├── Makefile │ ├── client.c │ ├── client.h │ ├── utils.c │ └── utils.h ├── README.md └── Makefile
5. Reporting bugs
Bugs can be reported on bitbucket-issue list.