This repository has been archived by the owner on Oct 8, 2020. It is now read-only.
Releases: elixir-git/xgit
Releases · elixir-git/xgit
v0.8.0
- Implement
Xgit.Config
module. This is roughly analogous to thegit config
command. (#314, #315) - [API BREAKING] Add configuration APIs to
Xgit.Repository.Storage
behaviour. (#284) - [API BREAKING]
Xgit.ConfigFile
APIs are very unlikely to return POSIX errors. (#312) - Bump credo from 1.2.2 to 1.3.2 (#309, #316)
- Bump excoveralls from 0.12.2 to 0.12.3 (#311)
- Bump dialyxir from 1.0.0-rc.7 to 1.0.0 (#310)
OnDiskRepoTestCase
: Fix up a few minor issues. (#306)- Match
git init
behavior of more recent comamnd-line git versions. (#305) - [API BREAKING] Replace
Xgit.ConfigFile.add_entries/3
withXgit.ConfigFile.update/3
. (#303) - Add an option to OnDiskRepoTestCase.repo!/1 to override initial config file content. (#301, #302)
v0.7.3
- Implement
Xgit.ConfigFile
, which reads and writes git-style config files. (#283, #287, #289, #294, #295, #296, #297) - Implement
Xgit.ConfigEntry
, which represents a single entry in a config file. (#283) - Add Elixir 1.10 to test matrix. (#293)
- Bump credo from 1.1.5 to 1.2.2. (#290, #298)
- Bump ex_doc from 0.21.2 to 0.21.3. (#291)
- Bump excoveralls from 0.12.1 to 0.12.2. (#288)
- Remove
Xgit.Util.FileSnapshot
. (#286) - Implement
Xgit.Util.ObservedFile
. (#285) - Adapt some of git's tests for
git init
. (#282)
v0.7.2
- Implement
Xgit.Repository.tag/4
. This is an API equivalent to the creation case ofgit tag
. (#278) - Transfer responsibility for enforcing tag target type to
Xgit.Repository.Plumbing
. (#279) - Implement
Xgit.Tag.valid_name?/1
. (#277) - Implement
Xgit.Tag.to_object/1
. (#276) - Remove
Xgit.GitInitTestCase
. (#275)
v0.7.1
- Implement
Xgit.Repository.Plumbing.cat_file_tag/2
. (#272) This is an API equivalent togit cat_file -p
when the target object is of typetag
. - Implement
Xgit.Tag.from_object/1
. (#270, #271) - Implement
Xgit.ObjectType.from_bytelist/1
. (#269) - Back to 100% code coverage. (#268)
- Define
Xgit.Tag
, which describes atag
object in memory. (#267)
v0.7.0
- Implement
Xgit.Repository.Plumbing.delete_symbolic_ref/2
. (#263) This is an API analogue forgit symbolic-ref --delete (ref_name)
. - Parse, don't validate. Redefine Storage type to be
{:xgit_repo, pid}
and optimize for the case where the PID has been remembered. (#265) - [API BREAKING] Replace
{:error, :invalid_repository}
response with error. (#264) - [API BREAKING] Rework
Xgit.Repository.Plumbing.delete_ref/3
to trace (or not) symbolic links. (#262) - Implement
Xgit.Repository.Plumbing.get_symbolic_ref/2
. (#261)
v0.6.0
This is a significant refactoring release aimed at making Xgit's APIs easier to understand.
- Documentation tweak: Put
Xgit.Repository.WorkingTree
in repository group. (#259) - [API BREAKING] Move index file format parsing into
Xgit.DirCache
module. (#258) - [API BREAKING] Rename
Xgit.Core.*
modules toXgit.*
. (#257) - Introduce new
Xgit.Repository
module. (#256) - Merge all the plumbing commands together into a single module. (#255)
- Rename
Xgit.Repository
toXgit.Repository.Storage
. (#254)
v0.5.0
- Implement
Xgit.Plumbing.SymbolicRef.Put
. (#252) This is an API analogue to the 2-argument form ofgit symbolic-ref
. - [API BREAKING]
Xgit.Repository.put_ref/4
: Add:follow_link?
option. (#250) Xgit.Repository.put_ref/4
: Should not fail if creating a sym ref to a non-existent ref. (#247)- Share the code for ref-related tests in
Xgit.Repository
implementations. (#246) Xgit.Repository.InMemory
: Remove a line of code that is unreachable. (#245)
v0.4.0
- Implement
Xgit.Plumbing.UpdateRef
. (#242) This is an API equivalent togit update-ref
. - [API BREAKING] Add reference operations to
Xgit.Repository
interface. (#222, #230, #231, #233, #236, #238, #239) - Run
mix credo
andmix format --check-formatted
separately. (#221) - Avoid the
mix deps.get
andmix deps.compile
steps via cache. (#220) - Start using GitHub actions to build PRs. (#215, #218)
- Switch from Coveralls to CodeCov. (#216)
TrailingHashDevice
test frequently times out. Give it more time. (#217)- Move all the implementation details for
Xgit.Repository.OnDisk
into a single file. (#214) - Implement
Xgit.Util.FileUtils.recursive_files!/1
. (#213) - Implement
Xgit.Core.Ref
. (#211, #212, #229, #232, #235, #237, #240) - Bump excoveralls from 0.11.2 to 0.12.1 (#210, #234)
v0.3.0
- Implement
Xgit.Plumbing.CatFile.Commit
. This is an API equivalent togit cat-file -p
when the target object is of typecommit
. (#207) - Implement
Xgit.Core.Commit.from_object/1
. (#204, #205, #206) - [API BREAKING] Make
Xgit.Util.*
modules private. (#201) - [API BREAKING] Remove
Xgit.Util.RawParseUtils
. (#195, #198, #199, #200) - Move
parse_timzeone_offset
intoXgit.Core.PersonIdent
. (#197) - Implement
Xgit.Util.ParseCharlist.decode_ambiguous_charlist/1
. (#196) - Bump credo from 1.1.4 to 1.1.5 (#194)
v0.2.5
- Implement
Xgit.Plumbing.CommitTree
. (#191) - Introduce
Xgit.Core.Commit
struct. (#182) - [BUG FIX]: Unable to decode certain
tree
structures. (#183) - Implement
Xgit.Core.Commit.to_object/1
. (#184) - Fix broken
coveralls-ignore
comments. (#186) - Refactor the basics of how tests are set up. (#187)
- Clean up issues flagged by ElixirLS. (#188)
OnDiskRepoTestCase
: Make it possible to override the temporary directory for testing purposes. (#189, #190)