Carlos Martín Nieto
7b6e1e4cc6
fetch: add test for the other order of overlapping specs
2014-12-14 21:25:08 +01:00
Carlos Martín Nieto
59ff8b6790
fetch: perform prune in separate steps
...
For each remote-tracking branch we want to remove, we need to consider
it against every other refspec in case we have overlapping refspecs,
such as with
refs/heads/*:refs/remotes/origin/*
refs/pull/*/head:refs/remotes/origin/pr/*
as we'd otherwise remove too many refspecs.
Create a list of condidates, which are the references matching the rhs
of any active refspec and then filter that list by removing those
entries for which we find a remove reference with any active
refspec. Those which are left after this are removed.
2014-12-14 21:25:08 +01:00
Carlos Martín Nieto
8c13eaedbb
fetch: prune after updating tips
...
This makes a fetch+prune more similar to a connect+prune and makes it
more likely that we see errors in the decision to prune a reference.
2014-12-14 17:04:02 +01:00
Carlos Martín Nieto
4aa2336966
fetch: assert we don't call update tips when there are no upates
...
This is hiding a bug in the prune code, whereby we prune references we
shouldn't but don't notice it in the code afterwards because
update_tips() recreates them.
This means that we do perform changes to the references (and get rid of
the reflogs) when we shouldn't.
2014-12-14 17:04:02 +01:00
Carlos Martín Nieto
020aab9308
fetch: do set prune when testing
...
We load the remote again, so we need to ask the new remote to prune the
refs, or we're not exercising the code in our tests.
2014-12-14 17:04:02 +01:00
David Calavera
5e0c3d2d1a
Make sure that fetch --prune --tags
doesn't remove tags.
2014-12-14 17:04:02 +01:00
David Calavera
b91194e842
Cleanup repository after prune tests.
2014-12-14 17:04:02 +01:00
David Calavera
93d968fa07
Cleanup after testing remote prune.
2014-12-14 17:04:02 +01:00
David Calavera
82eeba8142
Fix references to git_remote_lookup.
2014-12-14 17:04:01 +01:00
David Calavera
439e19f632
Test that prune overlapping works as expected.
2014-12-14 17:04:01 +01:00
David Calavera
ce4b57c6bc
Fix calls to git_remote_download
and git_remote_fetch
.
2014-12-14 17:04:01 +01:00
Linquize
b8fefcb9ca
Add test for prune refs
2014-12-14 17:04:01 +01:00
Linquize
5f47394753
remote: prune refs when fetching
2014-12-14 17:04:01 +01:00
Carlos Martín Nieto
ed09e04462
Mention the init function in the README
...
This fixes #2731 .
2014-12-14 16:19:08 +01:00
Carlos Martín Nieto
5192bcc52c
Add the OpenSSL changes to the CHANGELOG
...
It seems these were forgotten when initially splitting this up.
2014-12-12 15:46:57 +01:00
Carlos Martín Nieto
263b1d6ed9
Make the OpenSSL locking function warnings more severe
...
Our git_openssl_set_locking() would ideally not exist. Make it clearer
that we provide it as a last resort and you should prefer anything else.
2014-12-12 15:46:57 +01:00
Edward Thomson
09debe1213
clar: wide character comparisons
2014-12-10 18:11:50 -05:00
Edward Thomson
3410084675
tests: use p_ instead of posix func directly
2014-12-10 18:11:50 -05:00
Edward Thomson
4eb97ef3bf
Merge pull request #2756 from libgit2/cmn/push-error-concerns
...
Fold `git_push_unpack_ok()` into `git_push_finish()`
2014-12-10 14:15:15 -05:00
Carlos Martín Nieto
85a6d5f49c
push: reword comment on finish()
...
This should make it clearer what the return value implies.
2014-12-10 18:55:54 +01:00
Carlos Martín Nieto
d524b2d3d1
push: fold unpack_ok() into finish()
...
The push cannot be successful if we sent a bad packfile. We should
return an error in that case instead of storing it elsewhere.
2014-12-10 18:55:54 +01:00
Edward Thomson
cd305c2f56
Merge pull request #2678 from libgit2/cmn/io-stream
...
Introduce stackable IO streams
2014-12-10 11:30:28 -05:00
Carlos Martín Nieto
a2fd56ab18
Fix a couple of compiler warnings
2014-12-10 16:22:50 +01:00
Carlos Martín Nieto
49ae22baac
stream: constify the write buffer
2014-12-10 16:20:52 +01:00
Carlos Martín Nieto
3b6a566867
Merge pull request #2755 from libgit2/ntk/readme_appveyor_build
...
Minor Readme improvments
2014-12-10 14:53:12 +01:00
nulltoken
a7e06cb026
readme: Add AppVeyor build status badge/link
2014-12-10 10:11:37 +01:00
nulltoken
037b2a8b00
readme: Make Travis build status badge reflect the state of master
2014-12-10 10:05:04 +01:00
nulltoken
775d831b33
readme: Trim trailing lines
2014-12-10 10:04:34 +01:00
Carlos Martín Nieto
1b75c29e3e
gitno: remove code which is no longer needed
...
Most of the network-facing facilities have been copied to the socket and
openssl streams. No code now uses these functions directly anymore, so
we can now remove them.
2014-12-10 01:39:09 +01:00
Carlos Martín Nieto
4fd4341fe5
ssh: use socket_stream to perform the connection
...
Having an ssh stream would require extra work for stream capabilities we
don't need anywhere else (oob auth and command execution) so for now
let's move away from the gitno connection to use socket_stream.
We can introduce an ssh stream interface if and as we need it.
2014-12-10 01:39:09 +01:00
Carlos Martín Nieto
b6f5464e28
Port HTTP(S) to the new stream API
2014-12-10 01:39:09 +01:00
Carlos Martín Nieto
02b4c1e2a4
Port the TCP transport to the new stream API
2014-12-10 01:39:09 +01:00
Carlos Martín Nieto
0fae039116
Merge pull request #2753 from ethomson/win32_leaks
...
Win32 leaks
2014-12-10 01:29:07 +01:00
Carlos Martín Nieto
468d7b11f9
Add an OpenSSL IO stream
...
This unfortunately isn't as stackable as could be possible, as it
hard-codes the socket stream. This is because the method of using a
custom openssl BIO is not clear, and we do not need this for now. We can
still bring this in if and as we need it.
2014-12-10 01:17:41 +01:00
Carlos Martín Nieto
dd4ff2c9b5
Introduce stackable IO streams
...
We currently have gitno for talking over TCP, but this needs to know
about both plaintext and OpenSSL connections and the code has gotten
somewhat messy with ifdefs determining which version of the function
should be called.
In order to clean this up and abstract away the details of sending over
the different types of streams, we can instead use an interface and
stack stream implementations.
We may not be able to use the stackability with all streams, but we
are definitely be able to use the abstraction which is currently spread
between different bits of gitno.
2014-12-10 01:17:40 +01:00
Edward Thomson
ad2bf40a9d
winhttp: plug some leaks
2014-12-09 12:04:55 -05:00
Edward Thomson
6b11eb51ee
core::link test: clean up junction point name
2014-12-09 12:04:53 -05:00
Edward Thomson
80b01c8f26
win32: remember to free wide env name/value
2014-12-09 12:04:50 -05:00
Edward Thomson
c251f3bbe7
win32: remember to cleanup our hash_ctx
2014-12-09 12:04:47 -05:00
Edward Thomson
d5087689b5
Merge pull request #2750 from linquize/generate.py
...
Update clar to e3985dd
2014-12-08 23:03:30 -05:00
Edward Thomson
99cfe9b266
Merge pull request #2751 from linquize/broken-test-win
...
Fix broken tests on Windows
2014-12-08 16:27:58 -05:00
Linquize
8e0aa2ebce
Fix broken merge tests due to autocrlf was not false
2014-12-07 23:41:30 +08:00
Linquize
d226fbf1aa
Fix broken test suite on Windows
2014-12-07 22:42:06 +08:00
Linquize
3a1eb9e5ff
Update clar to e3985dd
2014-12-07 22:09:00 +08:00
Edward Thomson
19ae843937
Merge pull request #2746 from libgit2/cmn/neg-ignore-dir
...
Fix negative ignores withing ignored dirs
2014-12-06 20:17:16 -05:00
Edward Thomson
f2e09b8aac
Merge pull request #2748 from libgit2/cmn/doc-all
...
doc: add documentation to all the public structs and enums
2014-12-06 12:26:04 -05:00
Edward Thomson
013924c17c
Merge pull request #2730 from libgit2/cmn/local-push
...
Adjust the local transport for the common refspec parser
2014-12-05 23:44:34 -05:00
Edward Thomson
df86d43cf8
Merge pull request #2747 from libgit2/cmn/notes-consistency
...
Notes API consistency fixes
2014-12-05 23:37:05 -05:00
Carlos Martín Nieto
bfa6cdbf13
notes: fix comments for git_note_next()
...
The iterator is the last argument. There is also no returned notes, just
ids, so the comment about freeing is out of place.
2014-12-06 04:20:10 +01:00
Carlos Martín Nieto
21083a7129
notes: move the notes name argument
...
Make it consistent between git_note_create() and git_note_remote() by
putting it after the repository.
2014-12-06 04:20:09 +01:00