summaryrefslogtreecommitdiff
path: root/remote_test.go
AgeCommit message (Collapse)Author
2021-09-05The big Callback type adjustment of 2020lhchavez
This change makes all callbacks that can fail return an `error`. This makes things a lot more idiomatic.
2021-09-05Add support for managed HTTP/S transports (#810)lhchavez
This change uses the newly-exposed Transport interface to use Go's implementation of http.Client instead of httpclient via libgit2.
2021-09-05Add support for custom smart transports (#806)lhchavez
This change adds support for git smart transports. This will be then used to implement http, https, and ssh transports that don't rely on the libgit2 library.
2021-02-03Support git_remote_create_with_opts (#733)Byoungchan Lee
Closes #645
2020-12-10Ensure that no pointer handles leak during the test (#712)lhchavez
This change makes sure that pointer handles are correctly cleaned up during tests.
2020-12-06Add `NewCredentialSSHKeyFromSigner` (#706)lhchavez
This change adds `NewCredentialSSHKeyFromSigner`, which allows idiomatic use of SSH keys from Go. This also lets us spin off an SSH server in the tests.
2020-12-05Refactor all callbacks (#700)lhchavez
This change is a preparation for another change that makes all callback types return a Go error instead of an error code / an integer. That is going to make make things a lot more idiomatic. The reason this change is split is threefold: a) This change is mostly mechanical and should contain no semantic changes. b) This change is backwards-compatible (in the Go API compatibility sense of the word), and thus can be backported to all other releases. c) It makes the other change a bit smaller and more focused on just one thing. Concretely, this change makes all callbacks populate a Go error when they fail. If the callback is invoked from the same stack as the function to which it was passed (e.g. for `Tree.Walk`), it will preserve the error object directly into a struct that also holds the callback function. Otherwise if the callback is pased to one func and will be invoked when run from another one (e.g. for `Repository.InitRebase`), the error string is saved into the libgit2 thread-local storage and then re-created as a `GitError`.
2020-12-05Mark some symbols to be deprecated #minor (#698)lhchavez
This change introduces the file deprecated.go, which contains any constants, functions, and types that are slated to be deprecated in the next major release. These symbols are deprecated because they refer to old spellings in pre-1.0 libgit2. This also makes the build be done with the `-DDEPRECATE_HARD` flag to avoid regressions. This, together with [gorelease](https://godoc.org/golang.org/x/exp/cmd/gorelease)[1] should make releases safer going forward. 1: More information about how that works at https://go.googlesource.com/exp/+/refs/heads/master/apidiff/README.md
2016-08-27Merge remote-tracking branch 'upstream/master' into nextCarlos Martín Nieto
2016-08-27Run the tests in parallelCarlos Martín Nieto
This saves about 1s, or 1/3 of the test runtime. The linking is still much slower, but this we can control.
2016-04-23Update to 1dc4491Carlos Martín Nieto
2015-10-26Update libgit2 to 821131fCalin Seciu
The API changes are: - `*Remote.Connect` ```go // from: func (o *Remote) Connect(direction ConnectDirection, callbacks *RemoteCallbacks) error // to: func (o *Remote) Connect(direction ConnectDirection, callbacks *RemoteCallbacks, headers []string) error ``` - `*Remote.ConnectFetch` - `headers` was added as above - `*Remote.ConnectPush` - `headers` was added as above
2015-08-31Run go fmtCarlos Martín Nieto
As it seems to be something that many people can't get over, reformat all the files; as we're breaking things, whoever depended on 'next' will have to take many changes into account anyway, so let's include this to reduce the noise of incoming patches.
2015-06-28Create a ReferenceCollection for managing referencesCarlos Martín Nieto
As with the other commits, this clears up the clutter in naming and around the Repository's API.
2015-06-28Create a RemoteCollection for managing remotesCarlos Martín Nieto
Instead of making the 'Remote' part of the function calls, create a collection object which serves to namespace the operations for the remotes.
2015-06-08Update to libgit2 b6011e29Carlos Martín Nieto
2015-06-08Merge remote-tracking branch 'origin/master' into nextCarlos Martín Nieto
2015-04-24tests: always clean up temporary repository dirsPatrick Steinhardt
Some test repositories are not correctly removed after the tests did run. Fix by introducing a function that is to be used for cleaning up temporary test repositories.
2015-03-15Update to libgit2 d675982a153Carlos Martín Nieto
There's been some changes to the checkout strategy, especially the SAFE_CREATE mode, which is now the RECREATE_MISSING flag, though that shouldn't be necessary to use in the general case. The largest changes come from the removal of the signture from ref-modifying functions/methods and the removal of the reflog string in all but those directly related to moving references.
2015-01-05Add prune methods to Remote.David Calavera
2014-10-28Make the constants have typesCarlos Martín Nieto
While Go will assign the correct type to a const block when it auto-creates the values, assigning makes the const be typeless and will only gain it in each particular use. Make each constant in the blocks have an assigned type.
2014-10-27Add connect methods to Remote.David Calavera
2014-10-24Add Remote#Ls.David Calavera
Allow filtering heads by name.
2014-10-15Add support for hostkey certificatesCarlos Martín Nieto
While they're not exactly certificates, they belong in the same category.
2014-10-15Update to libgit2 masterCarlos Martín Nieto
The option to ignore the server's certificate has been removed, replaced witha callback for the user to perform their own checking. Remote.Fetch() now performs opportunistic updates and takes a list of refspecs to use as the active set for a particular fetch.
2014-04-01Remote: The whole point of the anonymous changeCarlos Martín Nieto
Was that it would break and we'd remember that the order changed. Oh well.
2014-04-01rename inmemory to anonymous remoteJesse Ezell
2014-03-20add remote listJesse Ezell
2014-03-20Remote: remove Get prefix from refspecsCarlos Martín Nieto
Idiomatic Go is to omit the Get from the getter methods.
2014-03-19Remote: don't mix allocatorsCarlos Martín Nieto
We cannot ask libgit2 to free the memory we have allocated ourselves, as it cannot know how to do it. Let's free the strarray ourselves.