# CVS log for pkgsrc/devel/git-base/Makefile

Up to [cvs.NetBSD.org] / pkgsrc / devel / git-base

Default branch: MAIN

Revision 1.62 / (download) - annotate - [select for diffs], Sun Dec 16 12:05:26 2018 UTC (24 hours, 8 minutes ago) by adam
Branch: MAIN
Changes since 1.61: +1 -2 lines
Diff to previous 1.61 (colored)

git: updated to 2.20.1

Git v2.20.1:

This release is primarily to fix brown-paper-bag breakages in the
2.20.0 release.

Fixes since v2.20

* A few newly added tests were not portable and caused minority
platforms to report false breakages, which have been fixed.

* Portability fix for a recent update to parse-options API.

* "git help -a" did not work well when an overly long alias is
defined, which has been corrected.

* A recent update accidentally squelched an error message when the
run_command API failed to run a missing command, which has been
corrected.


Revision 1.61 / (download) - annotate - [select for diffs], Thu Dec 13 19:51:47 2018 UTC (3 days, 16 hours ago) by adam
Branch: MAIN
Changes since 1.60: +2 -1 lines
Diff to previous 1.60 (colored)

revbump for boost 1.69.0


Revision 1.60 / (download) - annotate - [select for diffs], Thu Sep 13 10:56:42 2018 UTC (3 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q3-base, pkgsrc-2018Q3
Changes since 1.59: +1 -2 lines
Diff to previous 1.59 (colored)

git: updated to 2.19.0

Git 2.19 Release Notes

-------------------

UI, Workflows & Features

* "git diff" compares the index and the working tree.  For paths
of them as added, but the paths themselves were not marked as new
files.  They are now shown as new by default.

"git apply" learned the "--intent-to-add" option so that an
otherwise working-tree-only application of a patch will add new
paths to the index marked with the "intent-to-add" bit.

* "git grep" learned the "--column" option that gives not just the
line number but the column number of the hit.

* The "-l" option in "git branch -l" is an unfortunate short-hand for
"--create-reflog", but many users, both old and new, somehow expect
it to be something else, perhaps "--list".  This step warns when "-l"
is used as a short-hand for "--create-reflog" and warns about the
future repurposing of the it when it is used.

* The userdiff pattern for .php has been updated.

* The content-transfer-encoding of the message "git send-email" sends
out by default was 8bit, which can cause trouble when there is an
overlong line to bust RFC 5322/2822 limit.  A new option 'auto' to
automatically switch to quoted-printable when there is such a line

* "git checkout" and "git worktree add" learned to honor
checkout.defaultRemote when auto-vivifying a local branch out of a
remote tracking branch in a repository with multiple remotes that
have tracking branches that share the same names.
(merge 8d7b558bae ab/checkout-default-remote later to maint).

* "git grep" learned the "--only-matching" option.

* "git rebase --rebase-merges" mode now handles octopus merges as
well.

* Add a server-side knob to skip commits in exponential/fibbonacci
stride in an attempt to cover wider swath of history with a smaller
number of iterations, potentially accepting a larger packfile
transfer, instead of going back one commit a time during common
ancestor discovery during the "git fetch" transaction.
(merge 42cc7485a2 jt/fetch-negotiator-skipping later to maint).

* A new configuration variable core.usereplacerefs has been added,
primarily to help server installations that want to ignore the
replace mechanism altogether.

* Teach "git tag -s" etc. a few configuration variables (gpg.format
that can be set to "openpgp" or "x509", and gpg.<format>.program
that is used to specify what program to use to deal with the format)
to allow x.509 certs with CMS via "gpgsm" to be used instead of
openpgp via "gnupg".

* Many more strings are prepared for l10n.

* "git p4 submit" learns to ask its own pre-submit hook if it should
continue with submitting.

* The test performed at the receiving end of "git push" to prevent
bad objects from entering repository can be customized via
receive.fsck.* configuration variables; we now have gained a
counterpart to do the same on the "git fetch" side, with
fetch.fsck.* configuration variables.

* "git pull --rebase=interactive" learned "i" as a short-hand for
"interactive".

* "git instaweb" has been adjusted to run better with newer Apache on
RedHat based distros.

* "git range-diff" is a reimplementation of "git tbdiff" that lets us
compare individual patches in two iterations of a topic.

* The sideband code learned to optionally paint selected keywords at
the beginning of incoming lines on the receiving end.

* "git branch --list" learned to take the default sort order from the
'branch.sort' configuration variable, just like "git tag --list"
pays attention to 'tag.sort'.

* "git worktree" command learned "--quiet" option to make it less
verbose.

Performance, Internal Implementation, Development Support etc.

* The bulk of "git submodule foreach" has been rewritten in C.

* The in-core "commit" object had an all-purpose "void *util" field,
which was tricky to use especially in library-ish part of the
code.  All of the existing uses of the field has been migrated to a
more dedicated "commit-slab" mechanism and the field is eliminated.

* A less often used command "git show-index" has been modernized.
(merge fb3010c31f jk/show-index later to maint).

* The conversion to pass "the_repository" and then "a_repository"
throughout the object access API continues.

* Continuing with the idea to programatically enumerate various
pieces of data required for command line completion, teach the
codebase to report the list of configuration variables
subcommands care about to help complete them.

* Separate "rebase -p" codepath out of "rebase -i" implementation to
slim down the latter and make it easier to manage.

* Make refspec parsing codepath more robust.

* Some flaky tests have been fixed.

* Continuing with the idea to programmatically enumerate various
pieces of data required for command line completion, the codebase
has been taught to enumerate options prefixed with "--no-" to
negate them.

* Build and test procedure for netrc credential helper (in contrib/)
has been updated.

* Remove unused function definitions and declarations from ewah
bitmap subsystem.

* Code preparation to make "git p4" closer to be usable with Python 3.

* Tighten the API to make it harder to misuse in-tree .gitmodules
file, even though it shares the same syntax with configuration
files, to read random configuration items from it.

* "git fast-import" has been updated to avoid attempting to create
delta against a zero-byte-long string, which is pointless.

* The codebase has been updated to compile cleanly with -pedantic
option.
(merge 2b647a05d7 bb/pedantic later to maint).

* The character display width table has been updated to match the
latest Unicode standard.
(merge 570951eea2 bb/unicode-11-width later to maint).

* test-lint now looks for broken use of "VAR=VAL shell_func" in test
scripts.

* Conversion from uchar[40] to struct object_id continues.

* Recent "security fix" to pay attention to contents of ".gitmodules"
while accepting "git push" was a bit overly strict than necessary,

* "git fsck" learns to make sure the optional commit-graph file is in
a sane state.

* "git diff --color-moved" feature has further been tweaked.

* Code restructuring and a small fix to transport protocol v2 during
fetching.

* Parsing of -L[<N>][,[<M>]] parameters "git blame" and "git log"
take has been tweaked.

* lookup_commit_reference() and friends have been updated to find
in-core object for a specific in-core repository instance.

* Various glitches in the heuristics of merge-recursive strategy have
been documented in new tests.

* "git fetch" learned a new option "--negotiation-tip" to limit the
set of commits it tells the other end as "have", to reduce wasted
bandwidth and cycles, which would be helpful when the receiving
repository has a lot of refs that have little to do with the
history at the remote it is fetching from.

* For a large tree, the index needs to hold many cache entries
allocated on heap.  These cache entries are now allocated out of a
dedicated memory pool to amortize malloc(3) overhead.

* Tests to cover various conflicting cases have been added for
merge-recursive.

* Tests to cover conflict cases that involve submodules have been

* Look for broken "&&" chains that are hidden in subshell, many of
which have been found and corrected.

* The singleton commit-graph in-core instance is made per in-core
repository instance.

* "make DEVELOPER=1 DEVOPTS=pedantic" allows developers to compile
with -pedantic option, which may catch more problematic program
constructs and potential bugs.

* Preparatory code to later add json output for telemetry data has

* Update the way we use Coccinelle to find out-of-style code that
need to be modernised.

* It is too easy to misuse system API functions such as strcat();
these selected functions are now forbidden in this codebase and
will cause a compilation failure.

* Add a script (in contrib/) to help users of VSCode work better with
our codebase.

* The Travis CI scripts were taught to ship back the test data from
failed tests.
(merge aea8879a6a sg/travis-retrieve-trash-upon-failure later to maint).

* The parse-options machinery learned to refrain from enclosing
placeholder string inside a "<bra" and "ket>" pair automatically
without PARSE_OPT_LITERAL_ARGHELP.  Existing help text for option
arguments that are not formatted correctly have been identified and
fixed.
(merge 5f0df44cd7 rs/parse-opt-lithelp later to maint).

* Noiseword "extern" has been removed from function decls in the

* A few atoms like %(objecttype) and %(objectsize) in the format
specifier of "for-each-ref --format=<format>" can be filled without
getting the full contents of the object, but just with the object
header.  These cases have been optimized by calling

* The end result of documentation update has been made to be
inspected more easily to help developers.

* The API to iterate over all objects learned to optionally list
objects in the order they appear in packfiles, which helps locality
of access if the caller accesses these objects while as objects are
enumerated.

* Improve built-in facility to catch broken &&-chain in the tests.

* The more library-ish parts of the codebase learned to work on the
in-core index-state instance that is passed in by their callers,
instead of always working on the singleton "the_index" instance.

* A test prerequisite defined by various test scripts with slightly
different semantics has been consolidated into a single copy and
made into a lazily defined one.
(merge 6ec633059a wc/make-funnynames-shared-lazy-prereq later to maint).

* After a partial clone, repeated fetches from promisor remote would
have accumulated many packfiles marked with .promisor bit without
getting them coalesced into fewer packfiles, hurting performance.
"git repack" now learned to repack them.

* Partially revert the support for multiple hash functions to regain
hash comparison performance; we'd think of a way to do this better
in the next cycle.

* "git help --config" (which is used in command line completion)
missed the configuration variables not described in the main
config.txt file but are described in another file that is included
by it, which has been corrected.

* The test linter code has learned that the end of here-doc mark
"EOF" can be quoted in a double-quote pair, not just in a
single-quote pair.


Revision 1.59 / (download) - annotate - [select for diffs], Wed Aug 22 09:43:30 2018 UTC (3 months, 3 weeks ago) by wiz
Branch: MAIN
Changes since 1.58: +2 -2 lines
Diff to previous 1.58 (colored)

Recursive bump for perl5-5.28.0


Revision 1.58 / (download) - annotate - [select for diffs], Thu Aug 16 18:54:40 2018 UTC (4 months ago) by adam
Branch: MAIN
Changes since 1.57: +2 -1 lines
Diff to previous 1.57 (colored)

revbump after boost-libs update


Revision 1.57 / (download) - annotate - [select for diffs], Wed May 30 06:40:43 2018 UTC (6 months, 2 weeks ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q2-base, pkgsrc-2018Q2
Changes since 1.56: +1 -2 lines
Diff to previous 1.56 (colored)

git: updated to 2.17.1

Git v2.17.1:

Fixes:

* This release contains the same fixes made in the v2.13.7 version of
Git, covering CVE-2018-11233 and 11235, and forward-ported to
v2.14.4, v2.15.2 and v2.16.4 releases.  See release notes to
v2.13.7 for details.

* In addition to the above fixes, this release has support on the
server side to reject pushes to repositories that attempt to create
such problematic .gitmodules file etc. as tracked contents, to help
hosting sites protect their customers by preventing malicious


Revision 1.56 / (download) - annotate - [select for diffs], Sun Apr 29 21:31:32 2018 UTC (7 months, 2 weeks ago) by adam
Branch: MAIN
Changes since 1.55: +2 -2 lines
Diff to previous 1.55 (colored)

revbump for boost-libs update


Revision 1.55 / (download) - annotate - [select for diffs], Sat Apr 14 06:26:04 2018 UTC (8 months ago) by wiz
Branch: MAIN
Changes since 1.54: +2 -1 lines
Diff to previous 1.54 (colored)

git-base: bump PKGREVISION for more installed files.


Revision 1.54 / (download) - annotate - [select for diffs], Sat Apr 14 06:18:24 2018 UTC (8 months ago) by adam
Branch: MAIN
Changes since 1.53: +4 -11 lines
Diff to previous 1.53 (colored)

git-base: fixed PERLLIBDIR; removed unused SUBST


Revision 1.53 / (download) - annotate - [select for diffs], Sat Apr 14 05:42:36 2018 UTC (8 months ago) by wiz
Branch: MAIN
Changes since 1.52: +4 -4 lines
Diff to previous 1.52 (colored)

git-base: compute PERLLIBDIR in a less noisy way.


Revision 1.52 / (download) - annotate - [select for diffs], Wed Apr 11 19:39:34 2018 UTC (8 months ago) by adam
Branch: MAIN
Changes since 1.51: +6 -8 lines
Diff to previous 1.51 (colored)

git: updated to 2.17.0

Git 2.17:

UI, Workflows & Features
* "diff" family of commands learned "--find-object=<object-id>" option
to limit the findings to changes that involve the named object.
* "git format-patch" learned to give 72-cols to diffstat, which is
consistent with other line length limits the subcommand uses for
its output meant for e-mails.
* The log from "git daemon" can be redirected with a new option; one
relevant use case is to send the log to standard error (instead of
syslog) when running it from inetd.
* "git rebase" learned to take "--allow-empty-message" option.
* "git am" has learned the "--quit" option, in addition to the
existing "--abort" option; having the pair mirrors a few other
commands like "rebase" and "cherry-pick".
* "git worktree add" learned to run the post-checkout hook, just like
"git clone" runs it upon the initial checkout.
* "git tag" learned an explicit "--edit" option that allows the
message given via "-m" and "-F" to be further edited.
* "git fetch --prune-tags" may be used as a handy short-hand for
getting rid of stale tags that are locally held.
* The new "--show-current-patch" option gives an end-user facing way
to get the diff being applied when "git rebase" (and "git am")
stops with a conflict.
* "git add -p" used to offer "/" (look for a matching hunk) as a
choice, even there was only one hunk, which has been corrected.
Also the single-key help is now given only for keys that are
enabled (e.g. help for '/' won't be shown when there is only one
hunk).
* Since Git 1.7.9, "git merge" defaulted to --no-ff (i.e. even when
the side branch being merged is a descendant of the current commit,
create a merge commit instead of fast-forwarding) when merging a
tag object.  This was appropriate default for integrators who pull
signed tags from their downstream contributors, but caused an
unnecessary merges when used by downstream contributors who
habitually "catch up" their topic branches with tagged releases
from the upstream.  Update "git merge" to default to --no-ff only
when merging a tag object that does *not* sit at its usual place in
refs/tags/ hierarchy, and allow fast-forwarding otherwise, to
mitigate the problem.
* "git status" can spend a lot of cycles to compute the relation
between the current branch and its upstream, which can now be
* "git diff" and friends learned funcname patterns for Go language
source files.
* Funcname pattern used for C# now recognizes "async" keyword.
* In a way similar to how "git tag" learned to honor the pager
setting only in the list mode, "git config" learned to ignore the
pager setting when it is used for setting values (i.e. when the
purpose of the operation is not to "show").

Performance, Internal Implementation, Development Support etc.
* More perf tests for threaded grep
* "perf" test output can be sent to codespeed server.
* The build procedure for perl/ part has been greatly simplified by
weaning ourselves off of MakeMaker.
* Perl 5.8 or greater has been required since Git 1.7.4 released in
2010, but we continued to assume some core modules may not exist and
used a conditional "eval { require <<module>> }"; we no longer do
this.  Some platforms (Fedora/RedHat/CentOS, for example) ship Perl
without all core modules by default (e.g. Digest::MD5, File::Temp,
File::Spec, Net::Domain, Net::SMTP).  Users on such platforms may
need to install these additional modules.
* As a convenience, we install copies of Perl modules we require which
are not part of the core Perl distribution (e.g. Error and
Mail::Address).  Users and packagers whose operating system provides
these modules can set NO_PERL_CPAN_FALLBACKS to avoid installing the
bundled modules.
* In preparation for implementing narrow/partial clone, the machinery
for checking object connectivity used by gc and fsck has been
taught that a missing object is OK when it is referenced by a
packfile specially marked as coming from trusted repository that
promises to make them available on-demand and lazily.
* The machinery to clone & fetch, which in turn involves packing and
unpacking objects, has been told how to omit certain objects using
the filtering mechanism introduced by another topic.  It now knows
to mark the resulting pack as a promisor pack to tolerate missing
objects, laying foundation for "narrow" clones.
* The first step to getting rid of mru API and using the
* Retire mru API as it does not give enough abstraction over
underlying list API to be worth it.
* Rewrite two more "git submodule" subcommands in C.
* The tracing machinery learned to report tweaking of environment
variables as well.
* Update Coccinelle rules to catch and optimize strbuf_addf(&buf, "%s", str)
* Prevent "clang-format" from breaking line after function return type.
* The sequencer infrastructure is shared across "git cherry-pick",
"git rebase -i", etc., and has always spawned "git commit" when it
needs to create a commit.  It has been taught to do so internally,
when able, by reusing the codepath "git commit" itself uses, which
gives performance boost for a few tens of percents in some sample
scenarios.
* Push the submodule version of collision-detecting SHA-1 hash
implementation a bit harder on builders.
* Avoid mmapping small files while using packed refs (especially ones
with zero size, which would cause later munmap() to fail).
* Conversion from uchar[20] to struct object_id continues.
* More tests for wildmatch functions.
* The code to binary search starting from a fan-out table (which is
how the packfile is indexed with object names) has been refactored
into a reusable helper.
* We now avoid using identifiers that clash with C++ keywords.  Even
though it is not a goal to compile Git with C++ compilers, changes
like this help use of code analysis tools that targets C++ on our
codebase.
* The executable is now built in 'script' phase in Travis CI integration,
to follow the established practice, rather than during 'before_script'
phase.  This allows the CI categorize the failures better ('failed'
is project's fault, 'errored' is build environment's).
* Writing out the index file when the only thing that changed in it
is the untracked cache information is often wasteful, and this has
been optimized out.
* Various pieces of Perl code we have have been cleaned up.
* Internal API clean-up to allow write_locked_index() optionally skip
writing the in-core index when it is not modified.


Revision 1.51 / (download) - annotate - [select for diffs], Tue Feb 20 09:26:56 2018 UTC (9 months, 3 weeks ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2018Q1-base, pkgsrc-2018Q1
Changes since 1.50: +1 -2 lines
Diff to previous 1.50 (colored)

git: updated to 2.16.2

Git v2.16.2 Release Notes

Fixes since v2.16.1

* An old regression in "git describe --all $annotated_tag^0" has been fixed. * "git svn dcommit" did not take into account the fact that a svn+ssh:// URL with a username@ (typically used for pushing) refers to the same SVN repository without the username@ and failed when svn.pushmergeinfo option is set. * "git merge -Xours/-Xtheirs" learned to use our/their version when resolving a conflicting updates to a symbolic link. * "git clone$there $here" is allowed even when here directory exists as long as it is an empty directory, but the command incorrectly removed it upon a failure of the operation. * "git stash -- <pathspec>" incorrectly blew away untracked files in the directory that matched the pathspec, which has been corrected. * "git add -p" was taught to ignore local changes to submodules as they do not interfere with the partial addition of regular changes anyway.  Revision 1.50 / (download) - annotate - [select for diffs], Thu Feb 8 11:28:46 2018 UTC (10 months, 1 week ago) by jperkin Branch: MAIN Changes since 1.49: +6 -1 lines Diff to previous 1.49 (colored) git-base: Install symlinks. Bump PKGREVISION.  Revision 1.49 / (download) - annotate - [select for diffs], Mon Jan 22 14:17:24 2018 UTC (10 months, 3 weeks ago) by adam Branch: MAIN Changes since 1.48: +1 -2 lines Diff to previous 1.48 (colored) git: updated to 2.16.0 Git 2.16 Release Notes Backward compatibility notes and other notable changes. * Use of an empty string as a pathspec element that is used for 'everything matches' is now an error. Updates since v2.15 UI, Workflows & Features * An empty string as a pathspec element that means "everything" i.e. 'git add ""', is now illegal. We started this by first deprecating and warning a pathspec that has such an element in 2.11 (Nov 2016). * A hook script that is set unexecutable is simply ignored. Git notifies when such a file is ignored, unless the message is squelched via advice.ignoredHook configuration. * "git pull" has been taught to accept "--[no-]signoff" option and pass it down to "git merge". * The "--push-option=<string>" option to "git push" now defaults to a list of strings configured via push.pushOption variable. * "gitweb" checks if a directory is searchable with Perl's "-x" operator, which can be enhanced by using "filetest 'access'" pragma, which now we do. * "git stash save" has been deprecated in favour of "git stash push". * The set of paths output from "git status --ignored" was tied closely with its "--untracked=<mode>" option, but now it can be controlled more flexibly. Most notably, a directory that is ignored because it is listed to be ignored in the ignore/exclude mechanism can be handled differently from a directory that ends up to be ignored only because all files in it are ignored. * The remote-helper for talking to MediaWiki has been updated to truncate an overlong pagename so that ".mw" suffix can still be added. * The remote-helper for talking to MediaWiki has been updated to work with mediawiki namespaces. * The "--format=..." option "git for-each-ref" takes learned to show the name of the 'remote' repository and the ref at the remote side that is affected for 'upstream' and 'push' via "%(push:remotename)" and friends. * Doc and message updates to teach users "bisect view" is a synonym for "bisect visualize". * "git bisect run" that did not specify any command to run used to go ahead and treated all commits to be tested as 'good'. This has been corrected by making the command error out. * The SubmittingPatches document has been converted to produce an HTML version via AsciiDoc/Asciidoctor. * We learned to optionally talk to a file system monitor via new fsmonitor extension to speed up "git status" and other operations that need to see which paths have been modified. Currently we only support "watchman". See File System Monitor section of git-update-index(1) for more detail. * The "diff" family of commands learned to ignore differences in carriage return at the end of line. * Places that know about "sendemail.to", like documentation and shell completion (in contrib/) have been taught about "sendemail.tocmd", too. * "git add --renormalize ." is a new and safer way to record the fact that you are correcting the end-of-line convention and other "convert_to_git()" glitches in the in-repository data. * "git branch" and "git checkout -b" are now forbidden from creating a branch whose name is "HEAD". * "git branch --list" learned to show its output through the pager by default when the output is going to a terminal, which is controlled by the pager.branch configuration variable. This is similar to a recent change to "git tag --list". * "git grep -W", "git diff -W" and their friends learned a heuristic to extend a pre-context beyond the line that matches the "function pattern" (aka "diff.*.xfuncname") to include a comment block, if exists, that immediately precedes it. * "git config --expiry-date gc.reflogexpire" can read "2.weeks" from the configuration and report it as a timestamp, just like "--int" would read "1k" and report 1024, to help consumption by scripts. * The shell completion (in contrib/) learned that "git pull" can take the "--autostash" option. * The tagnames "git log --decorate" uses to annotate the commits can now be limited to subset of available refs with the two additional options, --decorate-refs[-exclude]=<pattern>. * "git grep" compiled with libpcre2 sometimes triggered a segfault, which is being fixed. * "git send-email" tries to see if the sendmail program is available in /usr/lib and /usr/sbin; extend the list of locations to be checked to also include directories on$PATH.

* "git diff" learned, "--anchored", a variant of the "--patience"
algorithm, to which the user can specify which 'unique' line to be
used as anchoring points.

* The way "git worktree add" determines what branch to create from
where and checkout in the new worktree has been updated a bit.

* Ancient part of codebase still shows dots after an abbreviated
object name just to show that it is not a full object name, but
these ellipses are confusing to people who newly discovered Git
who are used to seeing abbreviated object names and find them
confusing with the range syntax.

* With a configuration variable rebase.abbreviateCommands set,
"git rebase -i" produces the todo list with a single-letter
command names.

* "git worktree add" learned to run the post-checkout hook, just like
"git checkout" does, after the initial checkout.

* "git svn" has been updated to strip CRs in the commit messages, as

* "git imap-send" did not correctly quote the folder name when
making a request to the server, which has been corrected.

* Error messages from "git rebase" have been somewhat cleaned up.

* Git has been taught to support an https:// URL used for http.proxy

* "git merge" learned to pay attention to merge.verifySignatures
configuration variable and pretend as if '--verify-signatures'
option was given from the command line.

* "git describe" was taught to dig trees deeper to find a
<commit-ish>:<path> that refers to a given blob object.


Revision 1.48 / (download) - annotate - [select for diffs], Mon Jan 1 21:18:20 2018 UTC (11 months, 2 weeks ago) by adam
Branch: MAIN
Changes since 1.47: +2 -1 lines
Diff to previous 1.47 (colored)

Revbump after boost update


Revision 1.47 / (download) - annotate - [select for diffs], Sun Dec 31 17:16:43 2017 UTC (11 months, 2 weeks ago) by gdt
Branch: MAIN
Changes since 1.46: +3 -1 lines
Diff to previous 1.46 (colored)

git-base: Add TEST_TARGET

(Tests do not currently pass, but they have in the past.0


Revision 1.45.4.1 / (download) - annotate - [select for diffs], Sat Nov 25 08:49:05 2017 UTC (12 months, 3 weeks ago) by bsiegert
Branch: pkgsrc-2017Q3
Changes since 1.45: +1 -2 lines
Diff to previous 1.45 (colored) next main 1.46 (colored)

Pullup ticket #5646 - requested by he
devel/git-base: security fix

Revisions pulled up:
- devel/git-base/Makefile                                       1.46
- devel/git-base/distinfo                                       1.71-1.72
- devel/git/Makefile.version                                    1.62-1.63

---
Module Name:	pkgsrc
Date:		Wed Sep 27 06:37:47 UTC 2017

Modified Files:
pkgsrc/devel/git: Makefile.version
pkgsrc/devel/git-base: Makefile distinfo

Log Message:
git: update to 2.14.2

Fixes since v2.14.1

* Because recent Git for Windows do come with a real msgfmt, the
build procedure for git-gui has been updated to use it instead of a
hand-rolled substitute.

* "%C(color name)" in the pretty print format always produced ANSI
color escape codes, which was an early design mistake.  They now
honor the configuration (e.g. "color.ui = never") and also tty-ness
of the output medium.

* The http.{sslkey,sslCert} configuration variables are to be
interpreted as a pathname that honors "~[username]/" prefix, but
weren't, which has been fixed.

* Numerous bugs in walking of reflogs via "log -g" and friends have
been fixed.

* "git commit" when seeing an totally empty message said "you did not
edit the message", which is clearly wrong.  The message has been
corrected.

* When a directory is not readable, "gitweb" fails to build the
project list.  Work this around by skipping such a directory.

* A recently added test for the "credential-cache" helper revealed
that EOF detection done around the time the connection to the cache
daemon is torn down were flaky.  This was fixed by reacting to
ECONNRESET and behaving as if we got an EOF.

* Some versions of GnuPG fail to kill gpg-agent it auto-spawned
and such a left-over agent can interfere with a test.  Work it
around by attempting to kill one before starting a new test.

* "git log --tag=no-such-tag" showed log starting from HEAD, which
has been fixed---it now shows nothing.

* The "tag.pager" configuration variable was useless for those who
actually create tag objects, as it interfered with the use of an
editor.  A new mechanism has been introduced for commands to enable
pager depending on what operation is being carried out to fix this,
and then "git tag -l" is made to run pager by default.

* "git push --recurse-submodules $there HEAD:$target" was not
propagated down to the submodules, but now it is.

* Commands like "git rebase" accepted the --rerere-autoupdate option
from the command line, but did not always use it.  This has been
fixed.

* "git clone --recurse-submodules --quiet" did not pass the quiet
option down to submodules.

* "git am -s" has been taught that some input may end with a trailer
block that is not Signed-off-by: and it should refrain from adding
an extra blank line before adding a new sign-off in such a case.

* "git svn" used with "--localtime" option did not compute the tz
offset for the timestamp in question and instead always used the
current time, which has been corrected.

* Memory leaks in a few error codepaths have been plugged.

* bash 4.4 or newer gave a warning on NUL byte in command
substitution done in "git stash"; this has been squelched.

* "git grep -L" and "git grep --quiet -L" reported different exit
codes; this has been corrected.

* When handshake with a subprocess filter notices that the process
asked for an unknown capability, Git did not report what program
the offending subprocess was running.  This has been corrected.

* "git apply" that is used as a better "patch -p1" failed to apply a
taken from a file with CRLF line endings to a file with CRLF line
endings.  The root cause was because it misused convert_to_git()
that tried to do "safe-crlf" processing by looking at the index
entry at the same path, which is a nonsense---in that mode, "apply"
is not working on the data in (or derived from) the index at all.
This has been fixed.

* Killing "git merge --edit" before the editor returns control left
the repository in a state with MERGE_MSG but without MERGE_HEAD,
which incorrectly tells the subsequent "git commit" that there was
a squash merge in progress.  This has been fixed.

* "git archive" did not work well with pathspecs and the
export-ignore attribute.

* "git cvsserver" no longer is invoked by "git daemon" by default,
as it is old and largely unmaintained.

* Various Perl scripts did not use safe_pipe_capture() instead of
backticks, leaving them susceptible to end-user input.  They have
been corrected.

---
Module Name:	pkgsrc
Date:		Tue Oct 24 06:43:24 UTC 2017

Modified Files:
pkgsrc/devel/git: Makefile.version
pkgsrc/devel/git-base: distinfo

Log Message:
git: updated to 2.14.3

Git v2.14.3 Release Notes

Fixes since v2.14.2

* A helper function to read a single whole line into strbuf
mistakenly triggered OOM error at EOF under certain conditions,
which has been fixed.

* In addition to "cc: <a@dd.re.ss> # cruft", "cc: a@dd.re.ss # cruft"
was taught to "git send-email" as a valid way to tell it that it
needs to also send a carbon copy to <a@dd.re.ss> in the trailer
section.

* Fix regression to "gitk --bisect" by a recent update.

* Unlike "git commit-tree < file", "git commit-tree -F file" did not
pass the contents of the file verbatim and instead completed an
incomplete line at the end, if exists.  The latter has been updated
to match the behaviour of the former.

* "git archive", especially when used with pathspec, stored an empty
directory in its output, even though Git itself never does so.
This has been fixed.

* API error-proofing which happens to also squelch warnings from GCC.

* "git gc" tries to avoid running two instances at the same time by
reading and writing pid/host from and to a lock file; it used to
use an incorrect fscanf() format when reading, which has been
corrected.

* The test linter has been taught that we do not like "echo -e".

* Code cmp.std.c nitpick.

* "git describe --match" learned to take multiple patterns in v2.13
series, but the feature ignored the patterns after the first one
and did not work at all.  This has been fixed.

* "git cat-file --textconv" started segfaulting recently, which
has been corrected.

* The built-in pattern to detect the "function header" for HTML did
not match <H1>..<H6> elements without any attributes, which has
been fixed.

* "git mailinfo" was loose in decoding quoted printable and produced
garbage when the two letters after the equal sign are not

* The documentation for '-X<option>' for merges was misleadingly
written to suggest that "-s theirs" exists, which is not the case.

* Spell the name of our system as "Git" in the output from
request-pull script.

* Fixes for a handful memory access issues identified by valgrind.

* Backports a moral equivalent of 2015 fix to the poll emulation from
the upstream gnulib to fix occasional breakages on HPE NonStop.

* In the "--format=..." option of the "git for-each-ref" command (and
its friends, i.e. the listing mode of "git branch/tag"), "%(atom:)"
(e.g. "%(refname:)", "%(body:)" used to error out.  Instead, treat
them as if the colon and an empty string that follows it were not
there.

* Users with "color.ui = always" in their configuration were broken
by a recent change that made plumbing commands to pay attention to
them as the patch created internally by "git add -p" were colored
(heh) and made unusable.  This has been fixed.

* "git branch -M a b" while on a branch that is completely unrelated
to either branch a or branch b misbehaved when multiple worktree
was in use.  This has been fixed.

* "git fast-export" with -M/-C option issued "copy" instruction on a
path that is simultaneously modified, which was incorrect.

* The checkpoint command "git fast-import" did not flush updates to
refs and marks unless at least one object was created since the
last checkpoint, which has been corrected, as these things can
happen without any new object getting created.

* The scripts to drive TravisCI has been reorganized and then an
optimization to avoid spending cycles on a branch whose tip is
tagged has been implemented.

* "git fetch <there> <src>:<dst>" allows an object name on the <src>
side when the other side accepts such a request since Git v2.5, but
the documentation was left stale.

* A regression in 2.11 that made the code to read the list of
alternate object stores overrun the end of the string has been
fixed.

Also contains various documentation updates and code clean-ups.


Revision 1.46 / (download) - annotate - [select for diffs], Wed Sep 27 06:37:47 2017 UTC (14 months, 2 weeks ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2017Q4-base, pkgsrc-2017Q4
Changes since 1.45: +1 -2 lines
Diff to previous 1.45 (colored)

git: update to 2.14.2

Fixes since v2.14.1

* Because recent Git for Windows do come with a real msgfmt, the
build procedure for git-gui has been updated to use it instead of a
hand-rolled substitute.

* "%C(color name)" in the pretty print format always produced ANSI
color escape codes, which was an early design mistake.  They now
honor the configuration (e.g. "color.ui = never") and also tty-ness
of the output medium.

* The http.{sslkey,sslCert} configuration variables are to be
interpreted as a pathname that honors "~[username]/" prefix, but
weren't, which has been fixed.

* Numerous bugs in walking of reflogs via "log -g" and friends have
been fixed.

* "git commit" when seeing an totally empty message said "you did not
edit the message", which is clearly wrong.  The message has been
corrected.

* When a directory is not readable, "gitweb" fails to build the
project list.  Work this around by skipping such a directory.

* A recently added test for the "credential-cache" helper revealed
that EOF detection done around the time the connection to the cache
daemon is torn down were flaky.  This was fixed by reacting to
ECONNRESET and behaving as if we got an EOF.

* Some versions of GnuPG fail to kill gpg-agent it auto-spawned
and such a left-over agent can interfere with a test.  Work it
around by attempting to kill one before starting a new test.

* "git log --tag=no-such-tag" showed log starting from HEAD, which
has been fixed---it now shows nothing.

* The "tag.pager" configuration variable was useless for those who
actually create tag objects, as it interfered with the use of an
editor.  A new mechanism has been introduced for commands to enable
pager depending on what operation is being carried out to fix this,
and then "git tag -l" is made to run pager by default.

* "git push --recurse-submodules $there HEAD:$target" was not
propagated down to the submodules, but now it is.

* Commands like "git rebase" accepted the --rerere-autoupdate option
from the command line, but did not always use it.  This has been
fixed.

* "git clone --recurse-submodules --quiet" did not pass the quiet
option down to submodules.

* "git am -s" has been taught that some input may end with a trailer
block that is not Signed-off-by: and it should refrain from adding
an extra blank line before adding a new sign-off in such a case.

* "git svn" used with "--localtime" option did not compute the tz
offset for the timestamp in question and instead always used the
current time, which has been corrected.

* Memory leaks in a few error codepaths have been plugged.

* bash 4.4 or newer gave a warning on NUL byte in command
substitution done in "git stash"; this has been squelched.

* "git grep -L" and "git grep --quiet -L" reported different exit
codes; this has been corrected.

* When handshake with a subprocess filter notices that the process
asked for an unknown capability, Git did not report what program
the offending subprocess was running.  This has been corrected.

* "git apply" that is used as a better "patch -p1" failed to apply a
taken from a file with CRLF line endings to a file with CRLF line
endings.  The root cause was because it misused convert_to_git()
that tried to do "safe-crlf" processing by looking at the index
entry at the same path, which is a nonsense---in that mode, "apply"
is not working on the data in (or derived from) the index at all.
This has been fixed.

* Killing "git merge --edit" before the editor returns control left
the repository in a state with MERGE_MSG but without MERGE_HEAD,
which incorrectly tells the subsequent "git commit" that there was
a squash merge in progress.  This has been fixed.

* "git archive" did not work well with pathspecs and the
export-ignore attribute.

* "git cvsserver" no longer is invoked by "git daemon" by default,
as it is old and largely unmaintained.

* Various Perl scripts did not use safe_pipe_capture() instead of
backticks, leaving them susceptible to end-user input.  They have
been corrected.


Revision 1.41.2.1 / (download) - annotate - [select for diffs], Wed Sep 13 17:58:54 2017 UTC (15 months ago) by spz
Branch: pkgsrc-2017Q2
Changes since 1.41: +3 -1 lines
Diff to previous 1.41 (colored) next main 1.42 (colored)

Pullup ticket #5542 - requested by taca
devel/git: security update
devel/git-base: security update
devel/git-docs: security update

Revisions pulled up:
- devel/git-base/Makefile                                       1.42
- devel/git-base/distinfo                                       1.67-1.70
- devel/git-docs/PLIST                                          1.7
- devel/git/Makefile.version                                    1.58-1.61

-------------------------------------------------------------------
Module Name:	pkgsrc
Date:		Thu Jul 13 06:55:19 UTC 2017

Modified Files:
pkgsrc/devel/git: Makefile.version
pkgsrc/devel/git-base: distinfo

Log Message:
Git v2.13.3:

* The "collision detecting" SHA-1 implementation shipped with 2.13.2
was still broken on some platforms.  Update to the upstream code
again to take their fix.

* The 'diff-highlight' program (in contrib/) has been restructured
for easier reuse by an external project 'diff-so-fancy'.

* "git mergetool" learned to work around a wrapper MacOS X adds
around underlying meld.

* An example in documentation that does not work in multi worktree
configuration has been corrected.

* The pretty-format specifiers like '%h', '%t', etc. had an
optimization that no longer works correctly.  In preparation/hope
of getting it correctly implemented, first discard the optimization
that is broken.

* The code to pick up and execute command alias definition from the
configuration used to switch to the top of the working tree and
then come back when the expanded alias was executed, which was
unnecessarilyl complex.  Attempt to simplify the logic by using the
early-config mechanism that does not chdir around.

* "git add -p" were updated in 2.12 timeframe to cope with custom
core.commentchar but the implementation was buggy and a
metacharacter like and * did not work. * Fix a recent regression to "git rebase -i" and add tests that would have caught it and others. * An unaligned 32-bit access in pack-bitmap code ahs been corrected. * Tighten error checks for invalid "git apply" input. * The split index code did not honor core.sharedrepository setting correctly. * The Makefile rule in contrib/subtree for building documentation learned to honour USE_ASCIIDOCTOR just like the main documentation set does. * A few tests that tried to verify the contents of push certificates did not use 'git rev-parse' to formulate the line to look for in the certificate correctly. * After "git branch --move" of the currently checked out branch, the code to walk the reflog of HEAD via "log -g" and friends incorrectly stopped at the reflog entry that records the renaming of the branch. * The rewrite of "git branch --list" using for-each-ref's internals that happened in v2.13 regressed its handling of color.branch.local; this has been fixed. To generate a diff of this commit: cvs rdiff -u -r1.57 -r1.58 pkgsrc/devel/git/Makefile.version cvs rdiff -u -r1.66 -r1.67 pkgsrc/devel/git-base/distinfo ------------------------------------------------------------------- Module Name: pkgsrc Committed By: adam Date: Thu Aug 3 07:45:18 UTC 2017 Modified Files: pkgsrc/devel/git: Makefile.version pkgsrc/devel/git-base: distinfo Log Message: Git v2.13.4: * Update the character width tables. * A recent update broke an alias that contained an uppercase letter, which has been fixed. * On Cygwin, similar to Windows, "git push //server/share/repository" ought to mean a repository on a network share that can be accessed locally, but this did not work correctly due to stripping the double slashes at the beginning. * The progress meter did not give a useful output when we haven't had 0.5 seconds to measure the throughput during the interval. Instead show the overall throughput rate at the end, which is a much more useful number. * We run an early part of "git gc" that deals with refs before daemonising (and not under lock) even when running a background auto-gc, which caused multiple gc processes attempting to run the early part at the same time. This is now prevented by running the early part also under the GC lock. To generate a diff of this commit: cvs rdiff -u -r1.58 -r1.59 pkgsrc/devel/git/Makefile.version cvs rdiff -u -r1.67 -r1.68 pkgsrc/devel/git-base/distinfo ------------------------------------------------------------------- Module Name: pkgsrc Committed By: adam Date: Mon Aug 7 17:56:14 UTC 2017 Modified Files: pkgsrc/devel/git: Makefile.version pkgsrc/devel/git-base: Makefile distinfo pkgsrc/devel/git-docs: PLIST Log Message: Git 2.14 Release Notes =========== Backward compatibility notes and other notable changes. * Use of an empty string as a pathspec element that is used for 'everything matches' is still warned and Git asks users to use a more explicit '.' for that instead. The hope is that existing users will not mind this change, and eventually the warning can be turned into a hard error, upgrading the deprecation into removal of this (mis)feature. That is not scheduled to happen in the upcoming release (yet). * Git now avoids blindly falling back to ".git" when the setup sequence said we are _not_ in Git repository. A corner case that happens to work right now may be broken by a call to die("BUG"). We've tried hard to locate such cases and fixed them, but there might still be cases that need to be addressed--bug reports are greatly appreciated. * The experiment to improve the hunk-boundary selection of textual diff output has finished, and the "indent heuristics" has now become the default. * Git can now be built with PCRE v2 instead of v1 of the PCRE library. Replace USE_LIBPCRE=YesPlease with USE_LIBPCRE2=YesPlease in existing build scripts to build against the new version. As the upstream PCRE maintainer has abandoned v1 maintenance for all but the most critical bug fixes, use of v2 is recommended. Updates since v2.13 ------------------- UI, Workflows & Features * The colors in which "git status --short --branch" showed the names of the current branch and its remote-tracking branch are now configurable. * "git clone" learned the "--no-tags" option not to fetch all tags initially, and also set up the tagopt not to follow any tags in subsequent fetches. * "git archive --format=zip" learned to use zip64 extension when necessary to go beyond the 4GB limit. * "git reset" learned "--recurse-submodules" option. * "git diff --submodule=diff" now recurses into nested submodules. * "git repack" learned to accept the --threads=<n> option and pass it to pack-objects. * "git send-email" learned to run sendemail-validate hook to inspect and reject a message before sending it out. * There is no good reason why "git fetchthere $sha1" should fail when the$sha1 names an object at the tip of an advertised ref,
even when the other side hasn't enabled allowTipSHA1InWant.

* The "[includeIf "gitdir:$dir"] path=..." mechanism introduced in 2.13.0 would canonicalize the path of the gitdir being matched, and did not match e.g. "gitdir:~/work/*" against a repo in "~/work/main" if "~/work" was a symlink to "/mnt/storage/work". Now we match both the resolved canonical path and what "pwd" would show. The include will happen if either one matches. * The "indent" heuristics is now the default in "diff". The diff.indentHeuristic configuration variable can be set to "false" for those who do not want it. * Many commands learned to pay attention to submodule.recurse configuration. * The convention for a command line is to follow "git cmdname --options" with revisions followed by an optional "--" disambiguator and then finally pathspecs. When "--" is not there, we make sure early ones are all interpretable as revs (and do not look like paths) and later ones are the other way around. A pathspec with "magic" (e.g. ":/p/a/t/h" that matches p/a/t/h from the top-level of the working tree, no matter what subdirectory you are working from) are conservatively judged as "not a path", which required disambiguation more often. The command line parser learned to say "it's a pathspec" a bit more often when the syntax looks like so. * Update "perl-compatible regular expression" support to enable JIT and also allow linking with the newer PCRE v2 library. * "filter-branch" learned a pseudo filter "--setup" that can be used to define common functions/variables that can be used by other filters. * Using "git add d/i/r" when d/i/r is the top of the working tree of a separate repository would create a gitlink in the index, which would appear as a not-quite-initialized submodule to others. We learned to give warnings when this happens. * "git status" learned to optionally give how many stash entries there are in its output. * "git status" has long shown essentially the same message as "git commit"; the message it gives while preparing for the root commit, i.e. "Initial commit", was hard to understand for some new users. Now it says "No commits yet" to stress more on the current status (rather than the commit the user is preparing for, which is more in line with the focus of "git commit"). * "git send-email" now has --batch-size and --relogin-delay options which can be used to overcome limitations on SMTP servers that restrict on how many of e-mails can be sent in a single session. * An old message shown in the commit log template was removed, as it has outlived its usefulness. * "git pull --rebase --recurse-submodules" learns to rebase the branch in the submodules to an updated base. * "git log" learned -P as a synonym for --perl-regexp, "git grep" already had such a synonym. * "git log" didn't understand --regexp-ignore-case when combined with --perl-regexp. This has been fixed. Performance, Internal Implementation, Development Support etc. * The default packed-git limit value has been raised on larger platforms to save "git fetch" from a (recoverable) failure while "gc" is running in parallel. * Code to update the cache-tree has been tightened so that we won't accidentally write out any 0{40} entry in the tree object. * Attempt to allow us notice "fishy" situation where we fail to remove the temporary directory used during the test. * Travis CI gained a task to format the documentation with both AsciiDoc and AsciiDoctor. * Some platforms have ulong that is smaller than time_t, and our historical use of ulong for timestamp would mean they cannot represent some timestamp that the platform allows. Invent a separate and dedicated timestamp_t (so that we can distingiuish timestamps and a vanilla ulongs, which along is already a good move), and then declare uintmax_t is the type to be used as the timestamp_t. * We can trigger Windows auto-build tester (credits: Dscho & Microsoft) from our existing Travis CI tester now. * Conversion from uchar[20] to struct object_id continues. * Simplify parse_pathspec() codepath and stop it from looking at the default in-core index. * Add perf-test for wildmatch. * Code from "conversion using external process" codepath has been extracted to a separate sub-process.[ch] module. * When "git checkout", "git merge", etc. manipulates the in-core index, various pieces of information in the index extensions are discarded from the original state, as it is usually not the case that they are kept up-to-date and in-sync with the operation on the main index. The untracked cache extension is copied across these operations now, which would speed up "git status" (as long as the cache is properly invalidated). * The internal implementation of "git grep" has seen some clean-up. * Update the C style recommendation for notes for translators, as recent versions of gettext tools can work with our style of multi-line comments. * The implementation of "ref" API around the "packed refs" have been cleaned up, in preparation for further changes. * The internal logic used in "git blame" has been libified to make it easier to use by cgit. * Our code often opens a path to an optional file, to work on its contents when we can successfully open it. We can ignore a failure to open if such an optional file does not exist, but we do want to report a failure in opening for other reasons (e.g. we got an I/O error, or the file is there, but we lack the permission to open). The exact errors we need to ignore are ENOENT (obviously) and ENOTDIR (less obvious). Instead of repeating comparison of errno with these two constants, introduce a helper function to do so. * We often try to open a file for reading whose existence is optional, and silently ignore errors from open/fopen; report such errors if they are not due to missing files. * When an existing repository is used for t/perf testing, we first create bit-for-bit copy of it, which may grab a transient state of the repository and freeze it into the repository used for testing, which then may cause Git operations to fail. Single out "the index being locked" case and forcibly drop the lock from the copy. * Three instances of the same helper function have been consolidated to one. * "fast-import" uses a default pack chain depth that is consistent with other parts of the system. * A new test to show the interaction between the pattern [^a-z] (which matches '/') and a slash in a path has been added. The pattern should not match the slash with "pathmatch", but should with "wildmatch". * The 'diff-highlight' program (in contrib/) has been restructured for easier reuse by an external project 'diff-so-fancy'. * A common pattern to free a piece of memory and assign NULL to the pointer that used to point at it has been replaced with a new FREE_AND_NULL() macro. * Traditionally, the default die() routine had a code to prevent it from getting called multiple times, which interacted badly when a threaded program used it (one downside is that the real error may be hidden and instead the only error message given to the user may end up being "die recursion detected", which is not very useful). * Introduce a "repository" object to eventually make it easier to work in multiple repositories (the primary focus is to work with the superproject and its submodules) in a single process. * Optimize "what are the object names already taken in an alternate object database?" query that is used to derive the length of prefix an object name is uniquely abbreviated to. * The hashmap API has been updated so that data to customize the behaviour of the comparison function can be specified at the time a hashmap is initialized. * The "collision detecting" SHA-1 implementation shipped with 2.13 is now integrated into git.git as a submodule (the first submodule to ship with git.git). Clone git.git with --recurse-submodules to get it. For now a non-submodule copy of the same code is also shipped as part of the tree. * A recent update made it easier to use "-fsanitize=" option while compiling but supported only one sanitize option. Allow more than one to be combined, joined with a comma, like "make SANITIZE=foo,bar". * Use "p4 -G" to make "p4 changes" output more Python-friendly to parse. * We started using "%" PRItime, imitating "%" PRIuMAX and friends, as a way to format the internal timestamp value, but this does not play well with gettext(1) i18n framework, and causes "make pot" that is run by the l10n coordinator to create a broken po/git.pot file. This is a possible workaround for that problem. * It turns out that Cygwin also needs the fopen() wrapper that returns failure when a directory is opened for reading. To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 pkgsrc/devel/git/Makefile.version cvs rdiff -u -r1.41 -r1.42 pkgsrc/devel/git-base/Makefile cvs rdiff -u -r1.68 -r1.69 pkgsrc/devel/git-base/distinfo cvs rdiff -u -r1.6 -r1.7 pkgsrc/devel/git-docs/PLIST ------------------------------------------------------------------- Module Name: pkgsrc Committed By: adam Date: Sat Aug 12 22:05:15 UTC 2017 Modified Files: pkgsrc/devel/git: Makefile.version pkgsrc/devel/git-base: distinfo Log Message: Git v2.14.1: This release forward-ports the fix for "ssh://..." URL from Git v2.7.6 To generate a diff of this commit: cvs rdiff -u -r1.60 -r1.61 pkgsrc/devel/git/Makefile.version cvs rdiff -u -r1.69 -r1.70 pkgsrc/devel/git-base/distinfo  Revision 1.45 / (download) - annotate - [select for diffs], Thu Aug 24 20:03:10 2017 UTC (15 months, 3 weeks ago) by adam Branch: MAIN CVS Tags: pkgsrc-2017Q3-base, pkgsrc- Branch point for: pkgsrc-2017Q3 Changes since 1.44: +2 -2 lines Diff to previous 1.44 (colored) Revbump for boost update  Revision 1.44 / (download) - annotate - [select for diffs], Thu Aug 17 21:18:31 2017 UTC (15 months, 4 weeks ago) by adam Branch: MAIN Changes since 1.43: +2 -1 lines Diff to previous 1.43 (colored) Added devel/gettext-lib/buildlink3.mk  Revision 1.43 / (download) - annotate - [select for diffs], Thu Aug 17 20:12:16 2017 UTC (16 months ago) by nros Branch: MAIN Changes since 1.42: +2 -1 lines Diff to previous 1.42 (colored) revbump because of pcre2 update to version 10.30.  Revision 1.42 / (download) - annotate - [select for diffs], Mon Aug 7 17:56:14 2017 UTC (16 months, 1 week ago) by adam Branch: MAIN Changes since 1.41: +3 -1 lines Diff to previous 1.41 (colored) Git 2.14 Release Notes ====================== Backward compatibility notes and other notable changes. * Use of an empty string as a pathspec element that is used for 'everything matches' is still warned and Git asks users to use a more explicit '.' for that instead. The hope is that existing users will not mind this change, and eventually the warning can be turned into a hard error, upgrading the deprecation into removal of this (mis)feature. That is not scheduled to happen in the upcoming release (yet). * Git now avoids blindly falling back to ".git" when the setup sequence said we are _not_ in Git repository. A corner case that happens to work right now may be broken by a call to die("BUG"). We've tried hard to locate such cases and fixed them, but there might still be cases that need to be addressed--bug reports are greatly appreciated. * The experiment to improve the hunk-boundary selection of textual diff output has finished, and the "indent heuristics" has now become the default. * Git can now be built with PCRE v2 instead of v1 of the PCRE library. Replace USE_LIBPCRE=YesPlease with USE_LIBPCRE2=YesPlease in existing build scripts to build against the new version. As the upstream PCRE maintainer has abandoned v1 maintenance for all but the most critical bug fixes, use of v2 is recommended. Updates since v2.13 ------------------- UI, Workflows & Features * The colors in which "git status --short --branch" showed the names of the current branch and its remote-tracking branch are now configurable. * "git clone" learned the "--no-tags" option not to fetch all tags initially, and also set up the tagopt not to follow any tags in subsequent fetches. * "git archive --format=zip" learned to use zip64 extension when necessary to go beyond the 4GB limit. * "git reset" learned "--recurse-submodules" option. * "git diff --submodule=diff" now recurses into nested submodules. * "git repack" learned to accept the --threads=<n> option and pass it to pack-objects. * "git send-email" learned to run sendemail-validate hook to inspect and reject a message before sending it out. * There is no good reason why "git fetch$there $sha1" should fail when the$sha1 names an object at the tip of an advertised ref,
even when the other side hasn't enabled allowTipSHA1InWant.

* The "[includeIf "gitdir:dir"] path=..." mechanism introduced in 2.13.0 would canonicalize the path of the gitdir being matched, and did not match e.g. "gitdir:~/work/*" against a repo in "~/work/main" if "~/work" was a symlink to "/mnt/storage/work". Now we match both the resolved canonical path and what "pwd" would show. The include will happen if either one matches. * The "indent" heuristics is now the default in "diff". The diff.indentHeuristic configuration variable can be set to "false" for those who do not want it. * Many commands learned to pay attention to submodule.recurse configuration. * The convention for a command line is to follow "git cmdname --options" with revisions followed by an optional "--" disambiguator and then finally pathspecs. When "--" is not there, we make sure early ones are all interpretable as revs (and do not look like paths) and later ones are the other way around. A pathspec with "magic" (e.g. ":/p/a/t/h" that matches p/a/t/h from the top-level of the working tree, no matter what subdirectory you are working from) are conservatively judged as "not a path", which required disambiguation more often. The command line parser learned to say "it's a pathspec" a bit more often when the syntax looks like so. * Update "perl-compatible regular expression" support to enable JIT and also allow linking with the newer PCRE v2 library. * "filter-branch" learned a pseudo filter "--setup" that can be used to define common functions/variables that can be used by other filters. * Using "git add d/i/r" when d/i/r is the top of the working tree of a separate repository would create a gitlink in the index, which would appear as a not-quite-initialized submodule to others. We learned to give warnings when this happens. * "git status" learned to optionally give how many stash entries there are in its output. * "git status" has long shown essentially the same message as "git commit"; the message it gives while preparing for the root commit, i.e. "Initial commit", was hard to understand for some new users. Now it says "No commits yet" to stress more on the current status (rather than the commit the user is preparing for, which is more in line with the focus of "git commit"). * "git send-email" now has --batch-size and --relogin-delay options which can be used to overcome limitations on SMTP servers that restrict on how many of e-mails can be sent in a single session. * An old message shown in the commit log template was removed, as it has outlived its usefulness. * "git pull --rebase --recurse-submodules" learns to rebase the branch in the submodules to an updated base. * "git log" learned -P as a synonym for --perl-regexp, "git grep" already had such a synonym. * "git log" didn't understand --regexp-ignore-case when combined with --perl-regexp. This has been fixed. Performance, Internal Implementation, Development Support etc. * The default packed-git limit value has been raised on larger platforms to save "git fetch" from a (recoverable) failure while "gc" is running in parallel. * Code to update the cache-tree has been tightened so that we won't accidentally write out any 0{40} entry in the tree object. * Attempt to allow us notice "fishy" situation where we fail to remove the temporary directory used during the test. * Travis CI gained a task to format the documentation with both AsciiDoc and AsciiDoctor. * Some platforms have ulong that is smaller than time_t, and our historical use of ulong for timestamp would mean they cannot represent some timestamp that the platform allows. Invent a separate and dedicated timestamp_t (so that we can distingiuish timestamps and a vanilla ulongs, which along is already a good move), and then declare uintmax_t is the type to be used as the timestamp_t. * We can trigger Windows auto-build tester (credits: Dscho & Microsoft) from our existing Travis CI tester now. * Conversion from uchar[20] to struct object_id continues. * Simplify parse_pathspec() codepath and stop it from looking at the default in-core index. * Add perf-test for wildmatch. * Code from "conversion using external process" codepath has been extracted to a separate sub-process.[ch] module. * When "git checkout", "git merge", etc. manipulates the in-core index, various pieces of information in the index extensions are discarded from the original state, as it is usually not the case that they are kept up-to-date and in-sync with the operation on the main index. The untracked cache extension is copied across these operations now, which would speed up "git status" (as long as the cache is properly invalidated). * The internal implementation of "git grep" has seen some clean-up. * Update the C style recommendation for notes for translators, as recent versions of gettext tools can work with our style of multi-line comments. * The implementation of "ref" API around the "packed refs" have been cleaned up, in preparation for further changes. * The internal logic used in "git blame" has been libified to make it easier to use by cgit. * Our code often opens a path to an optional file, to work on its contents when we can successfully open it. We can ignore a failure to open if such an optional file does not exist, but we do want to report a failure in opening for other reasons (e.g. we got an I/O error, or the file is there, but we lack the permission to open). The exact errors we need to ignore are ENOENT (obviously) and ENOTDIR (less obvious). Instead of repeating comparison of errno with these two constants, introduce a helper function to do so. * We often try to open a file for reading whose existence is optional, and silently ignore errors from open/fopen; report such errors if they are not due to missing files. * When an existing repository is used for t/perf testing, we first create bit-for-bit copy of it, which may grab a transient state of the repository and freeze it into the repository used for testing, which then may cause Git operations to fail. Single out "the index being locked" case and forcibly drop the lock from the copy. * Three instances of the same helper function have been consolidated to one. * "fast-import" uses a default pack chain depth that is consistent with other parts of the system. * A new test to show the interaction between the pattern [^a-z] (which matches '/') and a slash in a path has been added. The pattern should not match the slash with "pathmatch", but should with "wildmatch". * The 'diff-highlight' program (in contrib/) has been restructured for easier reuse by an external project 'diff-so-fancy'. * A common pattern to free a piece of memory and assign NULL to the pointer that used to point at it has been replaced with a new FREE_AND_NULL() macro. * Traditionally, the default die() routine had a code to prevent it from getting called multiple times, which interacted badly when a threaded program used it (one downside is that the real error may be hidden and instead the only error message given to the user may end up being "die recursion detected", which is not very useful). * Introduce a "repository" object to eventually make it easier to work in multiple repositories (the primary focus is to work with the superproject and its submodules) in a single process. * Optimize "what are the object names already taken in an alternate object database?" query that is used to derive the length of prefix an object name is uniquely abbreviated to. * The hashmap API has been updated so that data to customize the behaviour of the comparison function can be specified at the time a hashmap is initialized. * The "collision detecting" SHA-1 implementation shipped with 2.13 is now integrated into git.git as a submodule (the first submodule to ship with git.git). Clone git.git with --recurse-submodules to get it. For now a non-submodule copy of the same code is also shipped as part of the tree. * A recent update made it easier to use "-fsanitize=" option while compiling but supported only one sanitize option. Allow more than one to be combined, joined with a comma, like "make SANITIZE=foo,bar". * Use "p4 -G" to make "p4 changes" output more Python-friendly to parse. * We started using "%" PRItime, imitating "%" PRIuMAX and friends, as a way to format the internal timestamp value, but this does not play well with gettext(1) i18n framework, and causes "make pot" that is run by the l10n coordinator to create a broken po/git.pot file. This is a possible workaround for that problem. * It turns out that Cygwin also needs the fopen() wrapper that returns failure when a directory is opened for reading.  Revision 1.41 / (download) - annotate - [select for diffs], Sun Jun 25 03:09:45 2017 UTC (17 months, 3 weeks ago) by mef Branch: MAIN CVS Tags: pkgsrc-2017Q2-base Branch point for: pkgsrc-2017Q2 Changes since 1.40: +1 -2 lines Diff to previous 1.40 (colored) Remove PKGREVISION for preparing update 2.13.1 to 2.13.2  Revision 1.40 / (download) - annotate - [select for diffs], Thu Jun 8 09:08:51 2017 UTC (18 months, 1 week ago) by wiz Branch: MAIN Changes since 1.39: +2 -1 lines Diff to previous 1.39 (colored) Fix endianness issue using upstream commit https://github.com/git/git/commit/6b851e536b05e0c8c61f77b9e4c3e7cedea39ff8 Bump PKGREVISION.  Revision 1.39 / (download) - annotate - [select for diffs], Mon Jun 5 10:11:39 2017 UTC (18 months, 1 week ago) by adam Branch: MAIN Changes since 1.38: +1 -2 lines Diff to previous 1.38 (colored) Git v2.13.1 Release Notes ========================= Fixes since v2.13 ----------------- * The Web interface to gmane news archive is long gone, even though the articles are still accessible via NTTP. Replace the links with ones to public-inbox.org. Because their message identification is based on the actual message-id, it is likely that it will be easier to migrate away from it if/when necessary. * Update tests to pass under GETTEXT_POISON (a mechanism to ensure that output strings that should not be translated are not translated by mistake), and tell TravisCI to run them. * Setting "log.decorate=false" in the configuration file did not take effect in v2.13, which has been corrected. * An earlier update to test 7400 needed to be skipped on CYGWIN. * Git sometimes gives an advice in a rhetorical question that does not require an answer, which can confuse new users and non native speakers. Attempt to rephrase them. * "git read-tree -m" (no tree-ish) gave a nonsense suggestion "use --empty if you want to clear the index". With "-m", such a request will still fail anyway, as you'd need to name at least one tree-ish to be merged. * The codepath in "git am" that is used when running "git rebase" leaked memory held for the log message of the commits being rebased. * "pack-objects" can stream a slice of an existing packfile out when the pack bitmap can tell that the reachable objects are all needed in the output, without inspecting individual objects. This strategy however would not work well when "--local" and other options are in use, and need to be disabled. * Clarify documentation for include.path and includeIf.<condition>.path configuration variables. * Tag objects, which are not reachable from any ref, that point at missing objects were mishandled by "git gc" and friends (they should silently be ignored instead) * A few http:// links that are redirected to https:// in the documentation have been updated to https:// links. * Make sure our tests would pass when the sources are checked out with "platform native" line ending convention by default on Windows. Some "text" files out tests use and the test scripts themselves that are meant to be run with /bin/sh, ought to be checked out with eol=LF even on Windows. * Fix memory leaks pointed out by Coverity (and people). * The receive-pack program now makes sure that the push certificate records the same set of push options used for pushing. * "git cherry-pick" and other uses of the sequencer machinery mishandled a trailer block whose last line is an incomplete line. This has been fixed so that an additional sign-off etc. are added after completing the existing incomplete line. * The shell completion script (in contrib/) learned "git stash" has a new "push" subcommand. * Travis CI gained a task to format the documentation with both AsciiDoc and AsciiDoctor. * Update the C style recommendation for notes for translators, as recent versions of gettext tools can work with our style of multi-line comments. * "git clone --config var=val" is a way to populate the per-repository configuration file of the new repository, but it did not work well when val is an empty string. This has been fixed. * A few codepaths in "checkout" and "am" working on an unborn branch tried to access an uninitialized piece of memory. * "git for-each-ref --format=..." with %(HEAD) in the format used to resolve the HEAD symref as many times as it had processed refs, which was wasteful, and "git branch" shared the same problem. * "git interpret-trailers", when used as GIT_EDITOR for "git commit -v", looked for and appended to a trailer block at the very end, i.e. at the end of the "diff" output. The command has been corrected to pay attention to the cut-mark line "commit -v" adds to the buffer---the real trailer block should appear just before it. * A test allowed both "git push" and "git receive-pack" on the other end write their traces into the same file. This is OK on platforms that allows atomically appending to a file opened with O_APPEND, but on other platforms led to a mangled output, causing intermittent test failures. This has been fixed by disabling traces from "receive-pack" in the test. * "foo\bar\baz" in "git fetch foo\bar\baz", even though there is no slashes in it, cannot be a nickname for a remote on Windows, as that is likely to be a pathname on a local filesystem. * The "collision detecting" SHA-1 implementation shipped with 2.13 was quite broken on some big-endian platforms and/or platforms that do not like unaligned fetches. Update to the upstream code which has already fixed these issues. * "git am -h" triggered a BUG(). * The interaction of "url.*.insteadOf" and custom URL scheme's whitelisting is now documented better.  Revision 1.38 / (download) - annotate - [select for diffs], Thu May 25 03:04:05 2017 UTC (18 months, 3 weeks ago) by soda Branch: MAIN Changes since 1.37: +2 -2 lines Diff to previous 1.37 (colored) git-base-2.13.0nb1 broke all little endian platforms on *BSD. (NOTE: _BIG_ENDIAN is always defined even on litte endian platforms) from nonaka@  Revision 1.37 / (download) - annotate - [select for diffs], Wed May 24 12:59:01 2017 UTC (18 months, 3 weeks ago) by martin Branch: MAIN Changes since 1.36: +2 -1 lines Diff to previous 1.36 (colored) Make it work on platforms requiring strict alignement again. Patch from upstream, pointed out by maya@.  Revision 1.36 / (download) - annotate - [select for diffs], Wed May 10 18:09:25 2017 UTC (19 months, 1 week ago) by adam Branch: MAIN Changes since 1.35: +1 -2 lines Diff to previous 1.35 (colored) Git 2.13 Release Notes ====================== Backward compatibility notes. * Use of an empty string as a pathspec element that is used for 'everything matches' is still warned and Git asks users to use a more explicit '.' for that instead. The hope is that existing users will not mind this change, and eventually the warning can be turned into a hard error, upgrading the deprecation into removal of this (mis)feature. That is not scheduled to happen in the upcoming release (yet). * The historical argument order "git merge <msg> HEAD <commit>..." has been deprecated for quite some time, and is now removed. * The default location "~/.git-credential-cache/socket" for the socket used to communicate with the credential-cache daemon has been moved to "~/.cache/git/credential/socket". * Git now avoids blindly falling back to ".git" when the setup sequence said we are _not_ in Git repository. A corner case that happens to work right now may be broken by a call to die("BUG"). We've tried hard to locate such cases and fixed them, but there might still be cases that need to be addressed--bug reports are greatly appreciated. Updates since v2.12 ------------------- UI, Workflows & Features * "git describe" and "git name-rev" have been taught to take more than one refname patterns to restrict the set of refs to base their naming output on, and also learned to take negative patterns to name refs not to be used for naming via their "--exclude" option. * Deletion of a branch "foo/bar" could remove .git/refs/heads/foo once there no longer is any other branch whose name begins with "foo/", but we didn't do so so far. Now we do. * When "git merge" detects a path that is renamed in one history while the other history deleted (or modified) it, it now reports both paths to help the user understand what is going on in the two histories being merged. * The <url> part in "http.<url>.<variable>" configuration variable can now be spelled with '*' that serves as wildcard. E.g. "http.https://*.example.com.proxy" can be used to specify the proxy used for https://a.example.com, https://b.example.com, etc., i.e. any host in the example.com domain. * "git tag" did not leave useful message when adding a new entry to reflog; this was left unnoticed for a long time because refs/tags/* doesn't keep reflog by default. * The "negative" pathspec feature was somewhat more cumbersome to use than necessary in that its short-hand used "!" which needed to be escaped from shells, and it required "exclude from what?" specified. * The command line options for ssh invocation needs to be tweaked for some implementations of SSH (e.g. PuTTY plink wants "-P <port>" while OpenSSH wants "-p <port>" to specify port to connect to), and the variant was guessed when GIT_SSH environment variable is used to specify it. The logic to guess now applies to the command specified by the newer GIT_SSH_COMMAND and also core.sshcommand configuration variable, and comes with an escape hatch for users to deal with misdetected cases. More...  Revision 1.35 / (download) - annotate - [select for diffs], Sun Apr 30 01:21:32 2017 UTC (19 months, 2 weeks ago) by ryoon Branch: MAIN Changes since 1.34: +2 -1 lines Diff to previous 1.34 (colored) Recursive revbump from boost update  Revision 1.34 / (download) - annotate - [select for diffs], Sat Feb 4 11:14:47 2017 UTC (22 months, 1 week ago) by adam Branch: MAIN CVS Tags: pkgsrc-2017Q1-base, pkgsrc-2017Q1 Changes since 1.33: +1 -2 lines Diff to previous 1.33 (colored) Git v2.11.1 Release Notes ========================= Fixes since v2.11 ----------------- * The default Travis-CI configuration specifies newer P4 and GitLFS. * The character width table has been updated to match Unicode 9.0 * Update the isatty() emulation for Windows by updating the previous hack that depended on internals of (older) MSVC runtime. * "git rev-parse --symbolic" failed with a more recent notation like "HEAD^-1" and "HEAD^!". * An empty directory in a working tree that can simply be nuked used to interfere while merging or cherry-picking a change to create a submodule directory there, which has been fixed.. * The code in "git push" to compute if any commit being pushed in the superproject binds a commit in a submodule that hasn't been pushed out was overly inefficient, making it unusable even for a small project that does not have any submodule but have a reasonable number of refs. * "git push --dry-run --recurse-submodule=on-demand" wasn't "--dry-run" in the submodules. * The output from "git worktree list" was made in readdir() order, and was unstable. * mergetool.<tool>.trustExitCode configuration variable did not apply to built-in tools, but now it does. * "git p4" LFS support was broken when LFS stores an empty blob. * Fix a corner case in merge-recursive regression that crept in during 2.10 development cycle. * Update the error messages from the dumb-http client when it fails to obtain loose objects; we used to give sensible error message only upon 404 but we now forbid unexpected redirects that needs to be reported with something sensible. * When diff.renames configuration is on (and with Git 2.9 and later, it is enabled by default, which made it worse), "git stash" misbehaved if a file is removed and another file with a very similar content is added. * "git diff --no-index" did not take "--no-abbrev" option. * "git difftool --dir-diff" had a minor regression when started from a subdirectory, which has been fixed. * "git commit --allow-empty --only" (no pathspec) with dirty index ought to be an acceptable way to create a new commit that does not change any paths, but it was forbidden, perhaps because nobody needed it so far. * A pathname that begins with "//" or "\\" on Windows is special but path normalization logic was unaware of it. * "git pull --rebase", when there is no new commits on our side since we forked from the upstream, should be able to fast-forward without invoking "git rebase", but it didn't. * The way to specify hotkeys to "xxdiff" that is used by "git mergetool" has been modernized to match recent versions of xxdiff. * Unlike "git am --abort", "git cherry-pick --abort" moved HEAD back to where cherry-pick started while picking multiple changes, when the cherry-pick stopped to ask for help from the user, and the user did "git reset --hard" to a different commit in order to re-attempt the operation. * Code cleanup in shallow boundary computation. * A recent update to receive-pack to make it easier to drop garbage objects made it clear that GIT_ALTERNATE_OBJECT_DIRECTORIES cannot have a pathname with a colon in it (no surprise!), and this in turn made it impossible to push into a repository at such a path. This has been fixed by introducing a quoting mechanism used when appending such a path to the colon-separated list. * The function usage_msg_opt() has been updated to say "fatal:" before the custom message programs give, when they want to die with a message about wrong command line options followed by the standard usage string. * "git index-pack --stdin" needs an access to an existing repository, but "git index-pack file.pack" to generate an .idx file that corresponds to a packfile does not. * Fix for NDEBUG builds. * A lazy "git push" without refspec did not internally use a fully specified refspec to perform 'current', 'simple', or 'upstream' push, causing unnecessary "ambiguous ref" errors. * "git p4" misbehaved when swapping a directory and a symbolic link. * Even though an fix was attempted in Git 2.9.3 days, but running "git difftool --dir-diff" from a subdirectory never worked. This has been fixed. * "git p4" that tracks multile p4 paths imported a single changelist that touches files in these multiple paths as one commit, followed by many empty commits. This has been fixed. * A potential but unlikely buffer overflow in Windows port has been fixed. * When the http server gives an incomplete response to a smart-http rpc call, it could lead to client waiting for a full response that will never come. Teach the client side to notice this condition and abort the transfer. * Some platforms no longer understand "latin-1" that is still seen in the wild in e-mail headers; replace them with "iso-8859-1" that is more widely known when conversion fails from/to it. * Update the procedure to generate "tags" for developer support. * Update the definition of the MacOSX test environment used by TravisCI. * A few git-svn updates. * Compression setting for producing packfiles were spread across three codepaths, one of which did not honor any configuration. Unify these so that all of them honor core.compression and pack.compression variables the same way. * "git fast-import" sometimes mishandled while rebalancing notes tree, which has been fixed. * Recent update to the default abbreviation length that auto-scales lacked documentation update, which has been corrected. * Leakage of lockfiles in the config subsystem has been fixed. * It is natural that "git gc --auto" may not attempt to pack everything into a single pack, and there is no point in warning when the user has configured the system to use the pack bitmap, leading to disabling further "gc". * "git archive" did not read the standard configuration files, and failed to notice a file that is marked as binary via the userdiff driver configuration. * "git blame --porcelain" misidentified the "previous" <commit, path> pair (aka "source") when contents came from two or more files. * "git rebase -i" with a recent update started showing an incorrect count when squashing more than 10 commits. * "git <cmd> @{push}" on a detached HEAD used to segfault; it has been corrected to error out with a message. * Tighten a test to avoid mistaking an extended ERE regexp engine as a PRE regexp engine. * Typing ^C to pager, which usually does not kill it, killed Git and took the pager down as a collateral damage in certain process-tree structure. This has been fixed.  Revision 1.33 / (download) - annotate - [select for diffs], Sun Jan 1 16:06:08 2017 UTC (23 months, 2 weeks ago) by adam Branch: MAIN Changes since 1.32: +2 -1 lines Diff to previous 1.32 (colored) Revbump after boost update  Revision 1.32 / (download) - annotate - [select for diffs], Sun Oct 30 11:43:03 2016 UTC (2 years, 1 month ago) by adam Branch: MAIN CVS Tags: pkgsrc-2016Q4-base, pkgsrc-2016Q4 Changes since 1.31: +1 -2 lines Diff to previous 1.31 (colored) Git v2.10.2 Release Notes ========================= Fixes since v2.10.1 ------------------- * The code that parses the format parameter of for-each-ref command has seen a micro-optimization. * The "graph" API used in "git log --graph" miscounted the number of output columns consumed so far when drawing a padding line, which has been fixed; this did not affect any existing code as nobody tried to write anything after the padding on such a line, though. * Almost everybody uses DEFAULT_ABBREV to refer to the default setting for the abbreviation, but "git blame" peeked into underlying variable bypassing the macro for no good reason. * Doc update to clarify what "log -3 --reverse" does. * An author name, that spelled a backslash-quoted double quote in the human readable part "My \"double quoted\" name", was not unquoted correctly while applying a patch from a piece of e-mail. * The original command line syntax for "git merge", which was "git merge <msg> HEAD <parent>...", has been deprecated for quite some time, and "git gui" was the last in-tree user of the syntax. This is finally fixed, so that we can move forward with the deprecation. * Codepaths that read from an on-disk loose object were too loose in validating what they are reading is a proper object file and sometimes read past the data they read from the disk, which has been corrected. H/t to Gustavo Grieco for reporting. * "git worktree", even though it used the default_abbrev setting that ought to be affected by core.abbrev configuration variable, ignored the variable setting. The command has been taught to read the default set of configuration variables to correct this. * A low-level function verify_packfile() was meant to show errors that were detected without dying itself, but under some conditions it didn't and died instead, which has been fixed. * When "git fetch" tries to find where the history of the repository it runs in has diverged from what the other side has, it has a mechanism to avoid digging too deep into irrelevant side branches. This however did not work well over the "smart-http" transport due to a design bug, which has been fixed. * When we started cURL to talk to imap server when a new enough version of cURL library is available, we forgot to explicitly add imap(s):// before the destination. To some folks, that didn't work and the library tried to make HTTP(s) requests instead. * The ./configure script generated from configure.ac was taught how to detect support of SSL by libcurl better. * http.emptyauth configuration is a way to allow an empty username to pass when attempting to authenticate using mechanisms like Kerberos. We took an unspecified (NULL) username and sent ":" (i.e. no username, no password) to CURLOPT_USERPWD, but did not do the same when the username is explicitly set to an empty string. * "git clone" of a local repository can be done at the filesystem level, but the codepath did not check errors while copying and adjusting the file that lists alternate object stores. * Documentation for "git commit" was updated to clarify that "commit -p <paths>" adds to the current contents of the index to come up with what to commit. * A stray symbolic link inGIT_DIR/refs/ directory could make name
resolution loop forever, which has been corrected.

* The "submodule.<name>.path" stored in .gitmodules is never copied
to .git/config and such a key in .git/config has no meaning, but
the documentation described it and submodule.<name>.url next to
each other as if both belong to .git/config.  This has been fixed.

* Recent git allows submodule.<name>.branch to use a special token
"." instead of the branch name; the documentation has been updated
to describe it.

* In a worktree connected to a repository elsewhere, created via "git
worktree", "git checkout" attempts to protect users from confusion
by refusing to check out a branch that is already checked out in
another worktree.  However, this also prevented checking out a
branch, which is designated as the primary branch of a bare
reopsitory, in a worktree that is connected to the bare
repository.  The check has been corrected to allow it.

* "git rebase" immediately after "git clone" failed to find the fork
point from the upstream.

* When fetching from a remote that has many tags that are irrelevant
to branches we are following, we used to waste way too many cycles
when checking if the object pointed at by a tag (that we are not
going to fetch!) exists in our repository too carefully.

* The Travis CI configuration we ship ran the tests with --verbose
option but this risks non-TAP output that happens to be "ok" to be
misinterpreted as TAP signalling a test that passed.  This resulted
in unnecessary failure.  This has been corrected by introducing a
new mode to run our tests in the test harness to send the verbose
output separately to the log file.

* Some AsciiDoc formatter mishandles a displayed illustration with
tabs in it.  Adjust a few of them in merge-base documentation to
work around them.

Also contains minor documentation updates and code clean-ups.


Revision 1.31 / (download) - annotate - [select for diffs], Fri Oct 7 18:25:42 2016 UTC (2 years, 2 months ago) by adam
Branch: MAIN
Changes since 1.30: +2 -1 lines
Diff to previous 1.30 (colored)

Revbump post boost update


Revision 1.30 / (download) - annotate - [select for diffs], Thu Jul 21 13:12:25 2016 UTC (2 years, 4 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2016Q3-base, pkgsrc-2016Q3
Changes since 1.29: +1 -2 lines
Diff to previous 1.29 (colored)

Update git to 2.9.2.

Fixes since v2.9.1
------------------

* A fix merged to v2.9.1 had a few tests that are not meant to be
run on platforms without 64-bit long, which caused unnecessary
test failures on them because we didn't detect the platform and
skip them.  These tests are now skipped on platforms that they
are not applicable to.

Fixes since v2.9
----------------

* When "git daemon" is run without --[init-]timeout specified, a
connection from a client that silently goes offline can hang around
for a long time, wasting resources.  The socket-level KEEPALIVE has
been enabled to allow the OS to notice such failed connections.

* The commands in git log family take %C(auto) in a custom format
string.  This unconditionally turned the color on, ignoring
--no-color or with --color=auto when the output is not connected to
a tty; this was corrected to make the format truly behave as
"auto".

* "git rev-list --count" whose walk-length is limited with "-n"
option did not work well with the counting optimized to look at the
bitmap index.

* "git show -W" (extend hunks to cover the entire function, delimited
by lines that match the "funcname" pattern) used to show the entire
file when a change added an entire function at the end of the file,
which has been fixed.

* The documentation set has been updated so that literal commands,
configuration variables and environment variables are consistently
typeset in fixed-width font and bold in manpages.

* "git svn propset" subcommand that was added in 2.3 days is
documented now.

* The documentation tries to consistently spell "GPG"; when
referring to the specific program name, "gpg" is used.

* "git reflog" stopped upon seeing an entry that denotes a branch
creation event (aka "unborn"), which made it appear as if the
reflog was truncated.

* The git-prompt scriptlet (in contrib/) was not friendly with those
who uses "set -u", which has been fixed.

* A codepath that used alloca(3) to place an unbounded amount of data
on the stack has been updated to avoid doing so.

* "git update-index --add --chmod=+x file" may be usable as an escape
hatch, but not a friendly thing to force for people who do need to

* Build improvements for gnome-keyring (in contrib/)

* "git status" used to say "working directory" when it meant "working
tree".

the version number (9.x and before are broken, newer ones are OK).

* "git cherry-pick A" worked on an unborn branch, but "git
cherry-pick A..B" didn't.

* "git add -i/-p" learned to honor diff.compactionHeuristic
experimental knob, so that the user can work on the same hunk split
as "git diff" output.

* "log --graph --format=" learned that "%>|(N)" specifies the width
relative to the terminal's left edge, not relative to the area to
draw text that is to the right of the ancestry-graph section.  It
also now accepts negative N that means the column limit is relative
to the right border.

* The ownership rule for the piece of memory that hold references to
be fetched in "git fetch" was screwy, which has been cleaned up.

* "git bisect" makes an internal call to "git diff-tree" when
bisection finds the culprit, but this call did not initialize the
data structure to pass to the diff-tree API correctly.

* Formats of the various data (and how to validate them) where we use
GPG signature have been documented.

* Fix an unintended regression in v2.9 that breaks "clone --depth"
that recurses down to submodules by forcing the submodules to also
be cloned shallowly, which many server instances that host upstream
of the submodules are not prepared for.

* Fix unnecessarily waste in the idiomatic use of ': \${VAR=default}'
to set the default value, without enclosing it in double quotes.

* Some platform-specific code had non-ANSI strict declarations of C
functions that do not take any parameters, which has been
corrected.

* The internal code used to show local timezone offset is not
prepared to handle timestamps beyond year 2100, and gave a
bogus offset value to the caller.  Use a more benign looking
+0000 instead and let "git log" going in such a case, instead
of aborting.

* One among four invocations of readlink(1) in our test suite has
been rewritten so that the test can run on systems without the
command (others are in valgrind test framework and t9802).

* t/perf needs /usr/bin/time with GNU extension; the invocation of it
is updated to "gtime" on Darwin.

* A bug, which caused "git p4" while running under verbose mode to
report paths that are omitted due to branch prefix incorrectly, has
been fixed; the command said "Ignoring file outside of prefix" for
paths that are _inside_.

* The top level documentation "git help git" still pointed at the
documentation set hosted at now-defunct google-code repository.
Update it to point to https://git.github.io/htmldocs/git.html

Also contains minor documentation updates and code clean-ups.


Revision 1.29 / (download) - annotate - [select for diffs], Sat Jul 9 06:38:07 2016 UTC (2 years, 5 months ago) by wiz
Branch: MAIN
Changes since 1.28: +2 -1 lines
Diff to previous 1.28 (colored)

Bump PKGREVISION for perl-5.24.0 for everything mentioning perl.


Revision 1.28 / (download) - annotate - [select for diffs], Sun Jun 12 20:07:16 2016 UTC (2 years, 6 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2016Q2-base, pkgsrc-2016Q2
Changes since 1.27: +1 -2 lines
Diff to previous 1.27 (colored)

Reset PKGREVISION after update.


Revision 1.27 / (download) - annotate - [select for diffs], Thu May 26 15:41:06 2016 UTC (2 years, 6 months ago) by khorben
Branch: MAIN
Changes since 1.26: +2 -4 lines
Diff to previous 1.26 (colored)

Move dependency on devel/cvsps to the new git-cvs package

As suggested by wiz@

Bumps PKGREVISION


Revision 1.26 / (download) - annotate - [select for diffs], Thu May 26 14:08:22 2016 UTC (2 years, 6 months ago) by khorben
Branch: MAIN
Changes since 1.25: +2 -1 lines
Diff to previous 1.25 (colored)

Bump PKGREVISION

As required for the new dependency on cvsps.


Revision 1.25 / (download) - annotate - [select for diffs], Thu May 26 14:04:04 2016 UTC (2 years, 6 months ago) by khorben
Branch: MAIN
Changes since 1.24: +3 -1 lines
Diff to previous 1.24 (colored)

Register dependency on devel/cvsps for git-cvsimport(1)


Revision 1.24 / (download) - annotate - [select for diffs], Thu Apr 7 13:26:37 2016 UTC (2 years, 8 months ago) by adam
Branch: MAIN
Changes since 1.23: +1 -2 lines
Diff to previous 1.23 (colored)

Changes 2.8.1:
* "make rpmbuild" target was broken as its input, git.spec.in, was
not updated to match a file it describes that has been renamed
recently.  This has been fixed.


Revision 1.23 / (download) - annotate - [select for diffs], Wed Mar 16 19:38:52 2016 UTC (2 years, 9 months ago) by sevan
Branch: MAIN
CVS Tags: pkgsrc-2016Q1-base, pkgsrc-2016Q1
Changes since 1.22: +2 -1 lines
Diff to previous 1.22 (colored)

Patch for CVE-2016-2324
Obtained via Debian Security Tracker
https://security-tracker.debian.org/tracker/CVE-2016-2324
https://github.com/git/git/commit/9831e92bfa833ee9c0ce464bbc2f941ae6c2698d
Bump pkgrev


Revision 1.22 / (download) - annotate - [select for diffs], Sat Mar 12 11:33:32 2016 UTC (2 years, 9 months ago) by adam
Branch: MAIN
Changes since 1.21: +1 -2 lines
Diff to previous 1.21 (colored)

Changes 2.7.3:

* Traditionally, the tests that try commands that work on the
contents in the working tree were named with "worktree" in their
filenames, but with the recent addition of "git worktree"
subcommand, whose tests are also named similarly, it has become
harder to tell them apart.  The traditional tests have been renamed
to use "work-tree" instead in an attempt to differentiate them.

* Many codepaths forget to check return value from git_config_set();
the function is made to die() to make sure we do not proceed when
setting a configuration variable failed.

* Handling of errors while writing into our internal asynchronous
process has been made more robust, which reduces flakiness in our
tests.

* "git show 'HEAD:Foo[BAR]Baz'" did not interpret the argument as a
rev, i.e. the object named by the the pathname with wildcard
characters in a tree object.

* "git rev-parse --git-common-dir" used in the worktree feature
misbehaved when run from a subdirectory.

* The "v(iew)" subcommand of the interactive "git am -i" command was
broken in 2.6.0 timeframe when the command was rewritten in C.

* "git merge-tree" used to mishandle "both sides added" conflict with
its own "create a fake ancestor file that has the common parts of
what both sides have added and do a 3-way merge" logic; this has
been updated to use the usual "3-way merge with an empty blob as
the fake common ancestor file" approach used in the rest of the
system.

* The memory ownership rule of fill_textconv() API, which was a bit
tricky, has been documented a bit better.

* The documentation did not clearly state that the 'simple' mode is
now the default for "git push" when push.default configuration is
not set.

* Recent versions of GNU grep are pickier when their input contains
arbitrary binary data, which some of our tests uses.  Rewrite the
tests to sidestep the problem.

* A helper function "git submodule" uses since v2.7.0 to list the
modules that match the pathspec argument given to its subcommands
(e.g. "submodule add <repo> <path>") has been fixed.

* "git config section.var value" to set a value in per-repository
configuration file failed when it was run outside any repository,
but didn't say the reason correctly.

* The code to read the pack data using the offsets stored in the pack
idx file has been made more carefully check the validity of the
data in the idx.


Revision 1.21 / (download) - annotate - [select for diffs], Sat Mar 5 11:28:21 2016 UTC (2 years, 9 months ago) by jperkin
Branch: MAIN
Changes since 1.20: +2 -1 lines
Diff to previous 1.20 (colored)

Bump PKGREVISION for security/openssl ABI bump.


Revision 1.20 / (download) - annotate - [select for diffs], Sun Jul 12 18:56:09 2015 UTC (3 years, 5 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2015Q4-base, pkgsrc-2015Q4, pkgsrc-2015Q3-base, pkgsrc-2015Q3
Changes since 1.19: +2 -2 lines
Diff to previous 1.19 (colored)

Comment out dependencies of the style
{perl>=5.16.6,p5-ExtUtils-ParseXS>=3.15}:../../devel/p5-ExtUtils-ParseXS
since pkgsrc enforces the newest perl version anyway, so they
should always pick perl, but sometimes (pkg_add) don't due to the
design of the {,} syntax.

No effective change for the above reason.

Ok joerg


Revision 1.19 / (download) - annotate - [select for diffs], Sat Jul 4 05:56:29 2015 UTC (3 years, 5 months ago) by ryoon
Branch: MAIN
Changes since 1.18: +1 -2 lines
Diff to previous 1.18 (colored)

Update to 2.4.5

Changelog:
Git v2.4.5 Release Notes
========================

Fixes since v2.4.4
------------------

* The setup code used to die when core.bare and core.worktree are set
inconsistently, even for commands that do not need working tree.

* There was a dead code that used to handle "git pull --tags" and
show special-cased error message, which was made irrelevant when
the semantics of the option changed back in Git 1.9 days.

* "color.diff.plain" was a misnomer; give it 'color.diff.context' as
a more logical synonym.

* The configuration reader/writer uses mmap(2) interface to access
the files; when we find a directory, it barfed with "Out of memory?".

* Recent "git prune" traverses young unreachable objects to safekeep
old objects in the reachability chain from them, which sometimes
showed unnecessary error messages that are alarming.

* "git rebase -i" fired post-rewrite hook when it shouldn't (namely,
when it was told to stop sequencing with 'exec' insn).

Also contains typofixes, documentation updates and trivial code
clean-ups.

Git v2.4.4 Release Notes
========================

Fixes since v2.4.3
------------------

* An earlier leakfix to bitmap testing code was incomplete.

* "git clean pathspec..." tried to lstat(2) and complain even for
paths outside the given pathspec.

* Communication between the HTTP server and http_backend process can
Diagnose the situation better, and mitigate it by reading such a
request first into core (to a reasonable limit).

* The clean/smudge interface did not work well when filtering an
empty contents (failed and then passed the empty input through).
It can be argued that a filter that produces anything but empty for
an empty input is nonsense, but if the user wants to do strange
things, then why not?

* Make "git stash something --help" error out, so that users can
safely say "git stash drop --help".

* Clarify that "log --raw" and "log --format=raw" are unrelated
concepts.

* Catch a programmer mistake to feed a pointer not an array to
ARRAY_SIZE() macro, by using a couple of GCC extensions.

Also contains typofixes, documentation updates and trivial code
clean-ups.


Revision 1.18 / (download) - annotate - [select for diffs], Fri Jun 12 10:48:49 2015 UTC (3 years, 6 months ago) by wiz
Branch: MAIN
CVS Tags: pkgsrc-2015Q2-base, pkgsrc-2015Q2
Changes since 1.17: +2 -1 lines
Diff to previous 1.17 (colored)

Recursive PKGREVISION bump for all packages mentioning 'perl',
having a PKGNAME of p5-*, or depending such a package,
for perl-5.22.0.


Revision 1.17 / (download) - annotate - [select for diffs], Mon Aug 25 07:49:08 2014 UTC (4 years, 3 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2015Q1-base, pkgsrc-2015Q1, pkgsrc-2014Q4-base, pkgsrc-2014Q4, pkgsrc-2014Q3-base, pkgsrc-2014Q3
Changes since 1.16: +1 -2 lines
Diff to previous 1.16 (colored)

Changes 2.1.0:

Backward compatibility notes


Revision 1.16 / (download) - annotate - [select for diffs], Fri Aug 1 19:18:39 2014 UTC (4 years, 4 months ago) by schmonz
Branch: MAIN
Changes since 1.15: +2 -3 lines
Diff to previous 1.15 (colored)

Even though we specify OpenSSL, on sufficiently new Mac OS X, Git
"apple-common-crypto" option that explicitly avoids CommonCrypto
when it's off. Turn it off by default, and set PKG_FAIL_REASON if
it's enabled on an unsuitable system.

While here, regenerate fuzzy patches.



Revision 1.15 / (download) - annotate - [select for diffs], Mon Jun 2 16:32:36 2014 UTC (4 years, 6 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2014Q2-base, pkgsrc-2014Q2
Changes since 1.14: +1 -2 lines
Diff to previous 1.14 (colored)

Fixes since v1.9.3
------------------

* Commands that take pathspecs on the command line misbehaved when
the pathspec is given as an absolute pathname (which is a
practice not particularly encouraged) that points at a symbolic

* An earlier fix to the shell prompt script (in contrib/) for using
the PROMPT_COMMAND interface did not correctly check if the extra
code path needs to trigger, causing the branch name not to appear
when 'promptvars' option is disabled in bash or PROMPT_SUBST is
unset in zsh.


Revision 1.14 / (download) - annotate - [select for diffs], Thu May 29 23:35:35 2014 UTC (4 years, 6 months ago) by wiz
Branch: MAIN
Changes since 1.13: +2 -1 lines
Diff to previous 1.13 (colored)

Bump for perl-5.20.0.
Do it for all packages that
* mention perl, or
* have a directory name starting with p5-*, or
* depend on a package starting with p5-
like last time, for 5.18, where this didn't lead to complaints.
Let me know if you have any this time.


Revision 1.13 / (download) - annotate - [select for diffs], Wed May 28 12:49:25 2014 UTC (4 years, 6 months ago) by obache
Branch: MAIN
Changes since 1.12: +1 -2 lines
Diff to previous 1.12 (colored)

PERL5_PACKLIST is already defined above.


Revision 1.12 / (download) - annotate - [select for diffs], Wed May 28 12:08:53 2014 UTC (4 years, 6 months ago) by obache
Branch: MAIN
Changes since 1.11: +2 -1 lines
Diff to previous 1.11 (colored)

Maintain perl related PLIST with packlist.


Revision 1.11 / (download) - annotate - [select for diffs], Sun Feb 23 10:00:27 2014 UTC (4 years, 9 months ago) by adam
Branch: MAIN
CVS Tags: pkgsrc-2014Q1-base, pkgsrc-2014Q1
Changes since 1.10: +1 -2 lines
Diff to previous 1.10 (colored)

Changes 1.8.5:

Foreign interfaces, subsystems and ports.

* The HTTP transport, when talking GSS-Negotiate, uses "100
Continue" response to avoid having to rewind and resend a large
payload, which may not be always doable.

* Various bugfixes to remote-bzr and remote-hg (in contrib/).

* The build procedure is aware of MirBSD now.

* Various "git p4", "git svn" and "gitk" updates.

UI, Workflows & Features

* Fetching from a shallowly-cloned repository used to be forbidden,
primarily because the codepaths involved were not carefully vetted
and we did not bother supporting such usage. This release attempts
to allow object transfer out of a shallowly-cloned repository in a
more controlled way (i.e. the receiver becomes a shallow repository
with a truncated history).

* Just like we give a reasonable default for "less" via the LESS
environment variable, we now specify a reasonable default for "lv"
via the "LV" environment variable when spawning the pager.

* Two-level configuration variable names in "branch.*" and "remote.*"
hierarchies, whose variables are predominantly three-level, were
not completed by hitting a <TAB> in bash and zsh completions.

* Fetching a 'frotz' branch with "git fetch", while a 'frotz/nitfol'
remote-tracking branch from an earlier fetch was still there, would
error out, primarily because the command was not told that it is
allowed to lose any information on our side.  "git fetch --prune"
now can be used to remove 'frotz/nitfol' to make room for fetching and
storing the 'frotz' remote-tracking branch.

* "diff.orderfile=<file>" configuration variable can be used to
pretend as if the "-O<file>" option were given from the command
line of "git diff", etc.

* The negative pathspec syntax allows "git log -- . ':!dir'" to tell
us "I am interested in everything but 'dir' directory".

* "git difftool" shows how many different paths there are in total,
and how many of them have been shown so far, to indicate progress.

* "git push origin master" used to push our 'master' branch to update
the 'master' branch at the 'origin' repository.  This has been
enhanced to use the same ref mapping "git push origin" would use to
determine what ref at the 'origin' to be updated with our 'master'.
For example, with this configuration

[remote "origin"]

that would cause "git push origin" to push out our local branches
to corresponding refs under refs/review/ hierarchy at 'origin',
"git push origin master" would update 'refs/review/master' over
there.  Alternatively, if push.default is set to 'upstream' and our
'master' is set to integrate with 'topic' from the 'origin' branch,
running "git push origin" while on our 'master' would update their
'topic' branch, and running "git push origin master" while on any
of our branches does the same.

* "gitweb" learned to treat ref hierarchies other than refs/heads as
if they are additional branch namespaces (e.g. refs/changes/ in
Gerrit).

* "git for-each-ref --format=..." learned a few formatting directives;

* The command string given to "git submodule foreach" is passed
directly to the shell, without being eval'ed.  This is a backward
incompatible change that may break existing users.

* "git log" and friends learned the "--exclude=<glob>" option, to
allow people to say "list history of all branches except those that
match this pattern" with "git log --exclude='*/*' --branches".

* "git rev-parse --parseopt" learned a new "--stuck-long" option to
help scripts parse options with an optional parameter.

* The "--tags" option to "git fetch" no longer tells the command to
what are fetched by the same command line without the option.


Revision 1.10 / (download) - annotate - [select for diffs], Wed Feb 12 23:17:46 2014 UTC (4 years, 10 months ago) by tron
Branch: MAIN
Changes since 1.9: +2 -1 lines
Diff to previous 1.9 (colored)

Recursive PKGREVISION bump for OpenSSL API version bump.


Revision 1.9 / (download) - annotate - [select for diffs], Fri Jan 17 09:51:35 2014 UTC (4 years, 11 months ago) by adam
Branch: MAIN
Changes since 1.8: +1 -2 lines
Diff to previous 1.8 (colored)

Quickly removed PKGREVISION, so no one will notice! :-)


Revision 1.8 / (download) - annotate - [select for diffs], Tue Jan 14 18:49:55 2014 UTC (4 years, 11 months ago) by wiz
Branch: MAIN
Changes since 1.7: +2 -2 lines
Diff to previous 1.7 (colored)

Add a patch from the git mailing list fixing a problem with 'git svn':

git-svn: workaround for a bug in svn serf backend

Subversion serf backend in versions 1.8.5 and below has a bug that the
function creating the descriptor of a file change -- add_file() --
doesn't make a copy of its 3d argument when storing it on the returned
descriptor.  As a result, by the time this field is used (in
transactions of file copying or renaming) it may well be released.

This patch works around this bug, by storing the value to be passed as
the 3d argument to add_file() in a local variable with the same scope as
the file change descriptor, making sure their lifetime is the same.

Cc: Benjamin Pabst <benjamin.pabst85 <at> gmail.com>
Cc: Eric Wong <normalperson <at> yhbt.net>
Signed-off-by: Roman Kagan <rkagan <at> mail.ru>
---
perl/Git/SVN/Editor.pm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)



Revision 1.7 / (download) - annotate - [select for diffs], Mon Dec 9 14:17:42 2013 UTC (5 years ago) by obache
Branch: MAIN
CVS Tags: pkgsrc-2013Q4-base, pkgsrc-2013Q4
Changes since 1.6: +3 -2 lines
Diff to previous 1.6 (colored)

Fix/Update DEPENDS paterns for perl CORE modules, with some trivial fixes.

Bump PKGREVISION for runtime dependency pattern changed packages.


Revision 1.6 / (download) - annotate - [select for diffs], Fri Oct 25 21:46:27 2013 UTC (5 years, 1 month ago) by joerg
Branch: MAIN
Changes since 1.5: +7 -1 lines
Diff to previous 1.5 (colored)

Override the test for clang -R support as it gets broken by the
wrappers.


Revision 1.5 / (download) - annotate - [select for diffs], Fri Oct 18 19:48:48 2013 UTC (5 years, 1 month ago) by adam
Branch: MAIN
Changes since 1.4: +1 -2 lines
Diff to previous 1.4 (colored)

Changes 1.8.4.1:

* Some old versions of bash do not grok some constructs like
'printf -v varname' which the prompt and completion code started
to use recently.  The completion and prompt scripts have been
adjusted to work better with these old versions of bash.

* In FreeBSD's and NetBSD's "sh", a return in a dot script in a
function returns from the function, not only in the dot script,
breaking "git rebase" on these platforms (regression introduced
in 1.8.4-rc1).

* "git rebase -i" and other scripted commands were feeding a
random, data dependant error message to 'echo' and expecting it
to come out literally.

* Setting the "submodule.<name>.path" variable to the empty
"true" caused the configuration parser to segfault.

* Output from "git log --full-diff -- <pathspec>" looked strange
because comparison was done with the previous ancestor that
touched the specified <pathspec>, causing the patches for paths
changed.

* The auto-tag-following code in "git fetch" tries to reuse the
same transport twice when the serving end does not cooperate and
does not give tags that point to commits that are asked for as
part of the primary transfer.  Unfortunately, Git-aware transport
helper interface is not designed to be used more than once, hence
this did not work over smart-http transfer.  Fixed.

* Send a large request to read(2)/write(2) as a smaller but still
reasonably large chunks, which would improve the latency when the
operation needs to be killed and incidentally works around broken
64-bit systems that cannot take a 2GB write or read in one go.

* A ".mailmap" file that ends with an incomplete line, when read
from a blob, was not handled properly.

* The recent "short-cut clone connectivity check" topic broke a
shallow repository when a fetch operation tries to auto-follow
tags.

* When send-email comes up with an error message to die with upon
failure to start an SSL session, it tried to read the error
string from a wrong place.

* A call to xread() was used without a loop to cope with short
read in the codepath to stream large blobs to a pack.

* On platforms with fgetc() and friends defined as macros, the
configuration parser did not compile.

* New versions of MediaWiki introduced a new API for returning
more than 500 results in response to a query, which would cause
the MediaWiki remote helper to go into an infinite loop.

* Subversion's serf access method (the only one available in
Subversion 1.8) for http and https URLs in skelta mode tells its
caller to open multiple files at a time, which made "git svn
fetch" complain that "Temp file with moniker 'svn_delta' already

Also contains a handful of trivial code clean-ups, documentation


Revision 1.4 / (download) - annotate - [select for diffs], Mon Sep 16 10:48:04 2013 UTC (5 years, 3 months ago) by prlw1
Branch: MAIN
CVS Tags: pkgsrc-2013Q3-base, pkgsrc-2013Q3
Changes since 1.3: +2 -1 lines
Diff to previous 1.3 (colored)

Apply fix for rebase from Matthieu Moy in
https://github.com/git/git/commit/99855dd
Reported Sergey Svishchev.


Revision 1.3 / (download) - annotate - [select for diffs], Wed Sep 11 01:26:00 2013 UTC (5 years, 3 months ago) by obache
Branch: MAIN
Changes since 1.2: +2 -1 lines
Diff to previous 1.2 (colored)

marked to supersede the previous package name.


Revision 1.2 / (download) - annotate - [select for diffs], Tue Sep 10 08:17:38 2013 UTC (5 years, 3 months ago) by wiz
Branch: MAIN
Changes since 1.1: +1 -2 lines
Diff to previous 1.1 (colored)

Remove old conflicts line that breaks git meta package.


Revision 1.1 / (download) - annotate - [select for diffs], Mon Sep 9 13:54:44 2013 UTC (5 years, 3 months ago) by wiz
Branch: MAIN

Reimport scmgit-base as git-base-1.8.4 in devel/git-base.

Git is a free and open source distributed version control system
designed to handle everything from small to very large projects with
speed and efficiency.

Git is easy to learn and has a tiny footprint with lightning fast
performance. It outclasses SCM tools like Subversion, CVS, Perforce,
and ClearCase with features like cheap local branching, convenient
staging areas, and multiple workflows.

This package contains only the git program (and subcommands).  It does
not contain man pages or the tk-based repository browser.


 Diffs between Use Text Field pkgsrc-2018Q3-base pkgsrc-2018Q3 pkgsrc-2018Q2-base pkgsrc-2018Q2 pkgsrc-2018Q1-base pkgsrc-2018Q1 pkgsrc-2017Q4-base pkgsrc-2017Q4 pkgsrc-2017Q3-base pkgsrc-2017Q3 pkgsrc-2017Q2-base pkgsrc-2017Q2 pkgsrc-2017Q1-base pkgsrc-2017Q1 pkgsrc-2016Q4-base pkgsrc-2016Q4 pkgsrc-2016Q3-base pkgsrc-2016Q3 pkgsrc-2016Q2-base pkgsrc-2016Q2 pkgsrc-2016Q1-base pkgsrc-2016Q1 pkgsrc-2015Q4-base pkgsrc-2015Q4 pkgsrc-2015Q3-base pkgsrc-2015Q3 pkgsrc-2015Q2-base pkgsrc-2015Q2 pkgsrc-2015Q1-base pkgsrc-2015Q1 pkgsrc-2014Q4-base pkgsrc-2014Q4 pkgsrc-2014Q3-base pkgsrc-2014Q3 pkgsrc-2014Q2-base pkgsrc-2014Q2 pkgsrc-2014Q1-base pkgsrc-2014Q1 pkgsrc-2013Q4-base pkgsrc-2013Q4 pkgsrc-2013Q3-base pkgsrc-2013Q3 pkgsrc- MAIN HEAD and Use Text Field pkgsrc-2018Q3-base pkgsrc-2018Q3 pkgsrc-2018Q2-base pkgsrc-2018Q2 pkgsrc-2018Q1-base pkgsrc-2018Q1 pkgsrc-2017Q4-base pkgsrc-2017Q4 pkgsrc-2017Q3-base pkgsrc-2017Q3 pkgsrc-2017Q2-base pkgsrc-2017Q2 pkgsrc-2017Q1-base pkgsrc-2017Q1 pkgsrc-2016Q4-base pkgsrc-2016Q4 pkgsrc-2016Q3-base pkgsrc-2016Q3 pkgsrc-2016Q2-base pkgsrc-2016Q2 pkgsrc-2016Q1-base pkgsrc-2016Q1 pkgsrc-2015Q4-base pkgsrc-2015Q4 pkgsrc-2015Q3-base pkgsrc-2015Q3 pkgsrc-2015Q2-base pkgsrc-2015Q2 pkgsrc-2015Q1-base pkgsrc-2015Q1 pkgsrc-2014Q4-base pkgsrc-2014Q4 pkgsrc-2014Q3-base pkgsrc-2014Q3 pkgsrc-2014Q2-base pkgsrc-2014Q2 pkgsrc-2014Q1-base pkgsrc-2014Q1 pkgsrc-2013Q4-base pkgsrc-2013Q4 pkgsrc-2013Q3-base pkgsrc-2013Q3 pkgsrc- MAIN HEAD

 Preferred Diff type: Colored Long colored Unified Context Side by side View only Branch: Show all branches pkgsrc-2018Q3 pkgsrc-2018Q2 pkgsrc-2018Q1 pkgsrc-2017Q4 pkgsrc-2017Q3 pkgsrc-2017Q2 pkgsrc-2017Q1 pkgsrc-2016Q4 pkgsrc-2016Q3 pkgsrc-2016Q2 pkgsrc-2016Q1 pkgsrc-2015Q4 pkgsrc-2015Q3 pkgsrc-2015Q2 pkgsrc-2015Q1 pkgsrc-2014Q4 pkgsrc-2014Q3 pkgsrc-2014Q2 pkgsrc-2014Q1 pkgsrc-2013Q4 pkgsrc-2013Q3 pkgsrc- MAIN Sort log by: Not sorted Commit date Revision

CVSweb <webmaster@jp.NetBSD.org>