Commit Graph

83 Commits

Author SHA1 Message Date
Carlos Martín Nieto
133c1004ea Rename the object module to geef_obj
This leaves us geef_object as the record to match against.
2013-06-05 21:42:16 +02:00
Carlos Martín Nieto
ac3d2d03fe Rename the ref record to geef_reference
Remove the access hacks for elixir and make :geef_reference an elixir
macro as well.
2013-06-05 21:22:25 +02:00
Carlos Martín Nieto
370acd05ce More correct spec for pkt 2013-06-05 00:33:11 +02:00
Carlos Martín Nieto
8eaad74c3a Avoid going into the NIF for resolving an oid ref 2013-06-05 00:33:11 +02:00
Carlos Martín Nieto
369a2e5151 Add convenience geef_pkt:line([]) -> [] 2013-06-02 00:02:11 +02:00
Carlos Martín Nieto
bd510de1e3 Also parse "done" lines
This works well for now, but if we're going to support
multi_ack_detailed at some point, we need a better way of parsing the
particular pkt.
2013-05-31 14:21:59 +02:00
Carlos Martín Nieto
3ec3c454c8 geef_object:type/1 helper for elixir 2013-05-30 03:50:45 +02:00
Carlos Martín Nieto
0e644be825 Add tag-peeling support 2013-05-30 03:39:51 +02:00
Carlos Martín Nieto
f410083711 Simplify the pkt parsing code 2013-05-28 19:45:37 +02:00
Carlos Martín Nieto
75e3d5416c Better handling of flush, short lines 2013-05-28 17:57:45 +02:00
Carlos Martín Nieto
ecb7cdfc23 Parse protocol requests 2013-05-28 09:21:24 +02:00
Carlos Martín Nieto
03f43d3265 pkt: parse want and have lines 2013-05-27 12:55:04 +02:00
Carlos Martín Nieto
23baf9a8b0 Fix pkt-line length 2013-05-27 12:55:04 +02:00
Carlos Martín Nieto
dacbbbc20e Add a simple protocol helper 2013-05-27 12:55:04 +02:00
Carlos Martín Nieto
2ebfc7b4d3 Complete the definition of the index_entry record
Most of the values are ignored, though
2013-05-27 12:55:04 +02:00
Carlos Martín Nieto
7b1dacffc7 Convert geef_odb to a gen_server 2013-05-23 10:58:11 +02:00
Carlos Martín Nieto
41113f3221 Rename geef_oid:fmt -> hex 2013-05-13 11:49:49 +02:00
Carlos Martín Nieto
604388a76d Keep the reference name as part of the record 2013-05-13 11:46:12 +02:00
Carlos Martín Nieto
4a2f2e8ab2 Namespace the records
This makes it useful for users of the bindings. The naming is the same
as the module to allow elixir to treat the records in much the same
way as its native module/record hybrid.
2013-05-13 11:05:59 +02:00
Carlos Martín Nieto
cc8124a6b9 Accept an iolist in the revwalk 2013-05-12 15:02:54 +02:00
Carlos Martín Nieto
75c591a089 Forgot to move one call to geef_nif 2013-05-12 15:02:31 +02:00
Carlos Martín Nieto
1077a055dc Remove geef_ref:target/1, use the record 2013-05-11 04:01:55 +02:00
Carlos Martín Nieto
fc80d6d836 Rename geef_tree:bypath -> get 2013-05-04 00:25:06 +02:00
Carlos Martín Nieto
3f4d51c0e1 Simple version of index_add 2013-05-03 23:42:49 +02:00
Carlos Martín Nieto
0aa11d8532 Allow creation of refs 2013-05-02 06:24:15 +02:00
Carlos Martín Nieto
9d7139d604 ref: store the target in the record
There's no need to create a new object every time the user asks for
the target, so store it the same way we do for the type.
2013-05-02 03:53:07 +02:00
Carlos Martín Nieto
0127730f6b Add geef_index:read_tree() 2013-04-26 14:34:15 +02:00
Carlos Martín Nieto
0a71085a40 Introduce geef_index 2013-04-26 11:47:40 +02:00
Carlos Martín Nieto
65227fe85b Move nif functions to geef_nif 2013-04-25 11:05:57 +02:00
Carlos Martín Nieto
54d9e8b63a Add lookup/2 to the specific types
They proxy to geef_object:lookup/3 which looks up the object and
asserts the type.
2013-04-22 02:13:24 +02:00
Carlos Martín Nieto
3adfa507c0 Fix geef_ref:lookup/2
Make use of the repo server intead of accepting a handle
2013-04-21 20:35:21 +02:00
Carlos Martín Nieto
353995a2da Properly stop the repo and revwalk servers
Return the 4-tuple when asked to stop instead of the 3-tuple so we do
indicate the stop was normal.
2013-04-10 20:11:07 +02:00
Carlos Martín Nieto
7a1a079a5a Make revwalk a gen_server 2013-04-10 15:20:46 +02:00
Carlos Martín Nieto
4f507b8146 Make the repo a gen_server
This helps us make sure we only have one thread accessing a particular
repo at a time and hopefully help us be more in line with usual erlang
practices.
2013-04-06 18:34:02 +02:00
Carlos Martín Nieto
58aff1e129 Add revwalk support 2013-04-02 17:13:18 +02:00
Carlos Martín Nieto
011068f51c Expose reference_name_to_id 2013-04-02 07:30:02 +02:00
Carlos Martín Nieto
5a3e0e0f34 Remove geef:hex_to_raw 2013-04-01 15:10:02 +02:00
Carlos Martín Nieto
f41ff25a59 Expose git_libgit2_version 2013-04-01 15:08:05 +02:00
Carlos Martín Nieto
c2d1acbbe6 Write a few docs 2013-03-31 23:17:51 +02:00
Carlos Martín Nieto
2d1d1456ec Bind repository discovery 2013-03-31 22:20:35 +02:00
Carlos Martín Nieto
aa1ba5bfa5 Have geef_odb:exists take an oid properly 2013-03-31 21:29:25 +02:00
Carlos Martín Nieto
d546274f8c Add geef_repo:odb 2013-03-30 15:11:13 +01:00
Carlos Martín Nieto
125e132af9 Add geef_odb:write 2013-03-30 15:11:05 +01:00
Carlos Martín Nieto
5ee6b055e9 tree: don't use a record for tree entry
Return the four elements directly
2013-03-28 13:32:20 +01:00
Carlos Martín Nieto
7987f35e58 Add a way to get a blob's size and content 2013-03-02 14:34:16 +01:00
Carlos Martín Nieto
d0bdfecf4b Add a basic blob wrapper 2013-03-02 12:42:47 +01:00
Carlos Martín Nieto
9b2a053848 Add object id lookup 2013-03-02 03:27:40 +01:00
Carlos Martín Nieto
d62511515d Remove unused variable, remember to capitalise variables 2013-03-02 03:12:44 +01:00
Carlos Martín Nieto
361c9ddb27 Let geef_object:lookup also be an iolist 2013-03-02 03:10:42 +01:00
Carlos Martín Nieto
b5b68cce8b Allow getting a tree entry 2013-03-02 02:56:58 +01:00