Commit Graph

28 Commits

Author SHA1 Message Date
Carlos Martín Nieto
fffdb47032 Make Reference call the NIF itself 2014-08-03 02:10:42 +02:00
Carlos Martín Nieto
98b176c925 Add a minimum of config
This lets us revive the reflog test by letting us set
core.logallrefupdates to true.
2014-05-18 12:03:53 +02:00
Carlos Martín Nieto
73af429633 Add geef_reflog:delete() 2014-02-13 18:26:33 +01:00
Carlos Martín Nieto
22ab293910 Basic reflog support
For now it simply includes reading in the reflog as a list of
entries. This does mean that the drop/append functions don't need to be
wrapped, as we can use erlang's list handling.

It however also means that we cannot write this back out, as there is
currently no way to create an empty reflog that we can fill with our own
list.
2014-02-13 17:41:11 +01:00
Carlos Martín Nieto
9501ed2377 Add reference has_log() 2014-02-13 14:53:19 +01:00
Carlos Martín Nieto
ee1d719ef4 Remove some dead code 2013-09-03 20:42:28 +02:00
Carlos Martín Nieto
0d24afb089 Get rid of the tagged OID
This means we no longer accept any iolist in some of the functions,
but we might bring it back later.

There is also a new function, geef_ref:create_symbolic() to create
symbolic references, since we can no longer differentiate between a
name and an OID.
2013-09-03 20:37:00 +02:00
Carlos Martín Nieto
b04809ca59 Shuffle some types
Put types in the modules they belong to instead of including them in
each one from the header.
2013-08-31 14:43:25 +02:00
Carlos Martín Nieto
bb35fce5cc Implement ref iterators 2013-08-09 23:25:55 +02:00
Carlos Martín Nieto
042156d843 Bind ref name dwim 2013-06-07 17:55:16 +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
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
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
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
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
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
d546274f8c Add geef_repo:odb 2013-03-30 15:11:13 +01:00
Carlos Martín Nieto
ad567fbf41 erlang headers should be hrl 2013-01-29 01:46:11 +01:00
Carlos Martín Nieto
78e0693b8a Add typespecs to the functions 2013-01-25 03:33:02 +01:00
Carlos Martín Nieto
3c6b1ddaf5 Use erlang:nif_error to make dialyzer happy
And mark some of the NIF functions
2013-01-25 03:06:29 +01:00
Carlos Martín Nieto
ba92ce777f Even more erlang namespacing 2013-01-23 17:07:22 +01:00
Carlos Martín Nieto
6dea8e6930 Make it more erlang-esque
pmods are going away, use prefixed namespaces.
2013-01-23 16:27:42 +01:00