Skip to content

Commit a25014b

Browse files
committed
Update draft release notes to 1.9
Signed-off-by: Junio C Hamano <[email protected]>
1 parent 74ca493 commit a25014b

File tree

1 file changed

+114
-1
lines changed

1 file changed

+114
-1
lines changed

Documentation/RelNotes/1.9.txt

Lines changed: 114 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,10 @@ The meanings of "--tags" option to "git fetch" has changed; the
1919
command fetches tags _in addition to_ what are fetched by the same
2020
command line without the option.
2121

22+
The way "git push $there $what" interprets $what part given on the
23+
command line, when it does not have a colon that explicitly tells us
24+
what ref at the $there repository is to be updated, has been enhanced.
25+
2226
A handful of ancient commands that have long been deprecated are
2327
finally gone (repo-config, tar-tree, lost-found, and peek-remote).
2428

@@ -81,9 +85,50 @@ Foreign interfaces, subsystems and ports.
8185

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

88+
* The build procedure is aware of MirBSD now.
89+
8490

8591
UI, Workflows & Features
8692

93+
* Two-level configuration variable names in "branch.*" and "remote.*"
94+
hierarchies, whose variables are predominantly three-level, were
95+
not completed by hitting a <TAB> in bash and zsh completions.
96+
97+
* Fetching 'frotz' branch with "git fetch", while 'frotz/nitfol'
98+
remote-tracking branch from an earlier fetch was still there, would
99+
error out, primarily because the command was not told that it is
100+
allowed to lose any information on our side. "git fetch --prune"
101+
now can be used to remove 'frotz/nitfol' to make room to fetch and
102+
store 'frotz' remote-tracking branch.
103+
104+
* "diff.orderfile=<file>" configuration variable can be used to
105+
pretend as if the "-O<file>" option were given from the command
106+
line of "git diff", etc.
107+
108+
* The negative pathspec syntax allows "git log -- . ':!dir'" to tell
109+
us "I am interested in everything but 'dir' directory".
110+
111+
* "git difftool" shows how many different paths there are in total,
112+
and how many of them have been shown so far, to indicate progress.
113+
114+
* "git push origin master" used to push our 'master' branch to update
115+
the 'master' branch at the 'origin' repository. This has been
116+
enhanced to use the same ref mapping "git push origin" would use to
117+
determine what ref at the 'origin' to be updated with our 'master'.
118+
For example, with this configuration
119+
120+
[remote "origin"]
121+
push = refs/heads/*:refs/review/*
122+
123+
that would cause "git push origin" to push out our local branches
124+
to corresponding refs under refs/review/ hierarchy at 'origin',
125+
"git push origin master" would update 'refs/review/master' over
126+
there. Alternatively, if push.default is set to 'upstream' and our
127+
'master' is set to integrate with 'topic' from the 'origin' branch,
128+
running "git push origin" while on our 'master' would update their
129+
'topic' branch, and running "git push origin master" while on any
130+
of our branches does the same.
131+
87132
* "gitweb" learned to treat ref hierarchies other than refs/heads as
88133
if they are additional branch namespaces (e.g. refs/changes/ in
89134
Gerrit).
@@ -109,6 +154,16 @@ UI, Workflows & Features
109154

110155
Performance, Internal Implementation, etc.
111156

157+
* The naming convention of the packfiles has been updated; it used to
158+
be based on the enumeration of names of the objects that are
159+
contained in the pack, but now it also depends on how the packed
160+
result is represented---packing the same set of objects using
161+
different settings (or delta order) would produce a pack with
162+
different name.
163+
164+
* "git diff --no-index" mode used to unnecessarily attempt to read
165+
the index when there is one.
166+
112167
* The deprecated parse-options macro OPT_BOOLEAN has been removed;
113168
use OPT_BOOL or OPT_COUNTUP in new code.
114169

@@ -122,7 +177,8 @@ Performance, Internal Implementation, etc.
122177
* "git merge-base" learned the "--fork-point" mode, that implements
123178
the same logic used in "git pull --rebase" to find a suitable fork
124179
point out of the reflog entries for the remote-tracking branch the
125-
work has been based on.
180+
work has been based on. "git rebase" has the same logic that can be
181+
triggered with the "--fork-point" option.
126182

127183
* A third-party "receive-pack" (the responder to "git push") can
128184
advertise the "no-thin" capability to tell "git push" not to use
@@ -141,6 +197,63 @@ Unless otherwise noted, all the fixes since v1.8.5 in the maintenance
141197
track are contained in this release (see the maintenance releases' notes
142198
for details).
143199

200+
* The "--[no-]informative-errors" options to "git daemon" were parsed
201+
a bit too loosely, allowing any other string after these option
202+
names.
203+
(merge 82246b7 nd/daemon-informative-errors-typofix later to maint).
204+
205+
* There is no reason to have a hardcoded upper limit of the number of
206+
parents for an octopus merge, created via the graft mechanism, but
207+
there was.
208+
(merge e228c17 js/lift-parent-count-limit later to maint).
209+
210+
* The basic test used to leave unnecessary trash directories in the
211+
t/ directory.
212+
(merge 738a8be jk/test-framework-updates later to maint).
213+
214+
* "git merge-base --octopus" used to leave cleaning up suboptimal
215+
result to the caller, but now it does the clean-up itself.
216+
(merge 8f29299 bm/merge-base-octopus-dedup later to maint).
217+
218+
* A "gc" process running as a different user should be able to stop a
219+
new "gc" process from starting, but it didn't.
220+
(merge ed7eda8 km/gc-eperm later to maint).
221+
222+
* An earlier "clean-up" introduced an unnecessary memory leak.
223+
(merge e1c1a32 jk/credential-plug-leak later to maint).
224+
225+
* "git add -A" (no other arguments) in a totally empty working tree
226+
used to emit an error.
227+
(merge 64ed07c nd/add-empty-fix later to maint).
228+
229+
* "git log --decorate" did not handle a tag pointed by another tag
230+
nicely.
231+
(merge 5e1361c bc/log-decoration later to maint).
232+
233+
* When we figure out how many file descriptors to allocate for
234+
keeping packfiles open, a system with non-working getrlimit() could
235+
cause us to die(), but because we make this call only to get a
236+
rough estimate of how many is available and we do not even attempt
237+
to use up all file descriptors available ourselves, it is nicer to
238+
fall back to a reasonable low value rather than dying.
239+
(merge 491a8de jh/rlimit-nofile-fallback later to maint).
240+
241+
* read_sha1_file(), that is the workhorse to read the contents given
242+
an object name, honoured object replacements, but there was no
243+
corresponding mechanism to sha1_object_info() that was used to
244+
obtain the metainfo (e.g. type & size) about the object. This led
245+
callers to weird inconsistencies.
246+
(merge 663a856 cc/replace-object-info later to maint).
247+
248+
* "git cat-file --batch=", an admittedly useless command, did not
249+
behave very well.
250+
(merge 6554dfa jk/cat-file-regression-fix later to maint).
251+
252+
* "git rev-parse <revs> -- <paths>" did not implement the usual
253+
disambiguation rules the commands in the "git log" family used in
254+
the same way.
255+
(merge 62f162f jk/rev-parse-double-dashes later to maint).
256+
144257
* "git mv A B/", when B does not exist as a directory, should error
145258
out, but it didn't.
146259
(merge c57f628 mm/mv-file-to-no-such-dir-with-slash later to maint).

0 commit comments

Comments
 (0)