Meta/Make: remove -pedantic cruft and rely more on DEVELOPER settings

Junio C Hamano committed Sep 27, 2017 at 13:21 UTC 3303f6634d0f6e8dd4ba6ccb2b64d63b807bd316
2 files changed +75 -589
Make
+12 -16
@@ -27,8 +27,6 @@ inst_prefix=$(
27
28 LANG=C
29
30 -: ${O=-O2}
31 -
30 for cv in PYTHON_PATH=python TCL_PATH=tclsh TCLTKPATH=wish
31 do
32 cmd=${cv#*=}
@@ -55,13 +53,12 @@ do
53 )
54 done
55
58 -Wall="-Wall -Wvla -Wdeclaration-after-statement -Wno-format-zero-length${Wall+ $Wall}"
56 tests= jobs= skip= oldtest= with_dash= testpen=
57 clean=:
58
59 case `uname` in
60 OpenBSD)
64 - O="-fgnu89-inline"
61 + # O="-fgnu89-inline"
62 skip="t9402"
63 ;;
64 NetBSD)
@@ -74,7 +71,7 @@ FreeBSD)
71 ;;
72 SunOS)
73 NEEDS_CRYPTO_WITH_SSL=YesPlease ; export NEEDS_CRYPTO_WITH_SSL
77 - NO_PEDANTIC=CannotDo Wall=
74 + NO_PEDANTIC=CannotDo
75 ;;
76 esac
77
@@ -103,13 +100,18 @@ then
100 NO_PEDANTIC=YesPlease
101 fi
102
103 +DEVELOPER=
104 case "$NO_PEDANTIC" in
105 ?*) ;;
106 '')
107 + DEVELOPER=1
108 + ;;
109 +'not-used-anymore')
110 # PEDANT="-Wtypedef-redefinition $PEDANT"
111 PEDANT="-Werror -Wold-style-definition $PEDANT"
112 PEDANT="-Wpointer-arith -Woverflow -Wunused $PEDANT"
113 PEDANT="-Wold-style-declaration -Wstrict-prototypes $PEDANT"
114 + PEDANT="-Wstrict-prototypes $PEDANT"
115 ;;
116 esac
117
@@ -129,7 +131,7 @@ do
131 oldtest=t
132 ;;
133 -loose | --loose)
132 - PEDANT= Wall=
134 + DEVELOPER= PEDANT=
135 ;;
136 --memtrash)
137 testpen=testpen.$$
@@ -190,8 +192,6 @@ then
192 export GIT_TEST_OPTS
193 fi
194
193 -O="${PEDANT}${PEDANT:+ }$O"
194 -
195 test -f /bin/dash || with_dash=
196
197 if test -z "$tests" && test -n "$skip"
@@ -265,13 +265,6 @@ then
265 set INSTALL=ginstall "$@"
266 fi
267
268 -CFLAGS="$O $Wall -g"
269 -OK_TO_USE_CFLAGS=Yes
270 -if test -n "${NO_CFLAGS+set}"
271 -then
272 - unset OK_TO_USE_CFLAGS
273 -fi
274 -
268 unset SSH_AGENT_PID SSH_CLIENT SSH_TTY SSH_AUTH_SOCK SSH_CONNECTION \
269 GPG_AGENT_INFO GNOME_KEYRING_CONTROL GNOME_KEYRING_PID \
270 XDG_SESSION_COOKIE XDG_SESSION_PATH XDG_SEAT_PATH XDG_DATA_DIRS \
@@ -280,10 +273,13 @@ unset SSH_AGENT_PID SSH_CLIENT SSH_TTY SSH_AUTH_SOCK SSH_CONNECTION \
273 DBUS_SESSION_BUS_ADDRESS LESSOPEN WINDOW DISPLAY GTK_IM_MODULE \
274 XDG_CURRENT_DESKTOP LESSCLOSE XAUTHORITY
275
276 +# O=-fsanitize=address Meta/Make
277 +
278 ${make-make} \
279 $jobs \
280 ETC_GITCONFIG=$prefix/etc/gitconfig \
286 - ${OK_TO_USE_CFLAGS+"CFLAGS=$CFLAGS"} \
281 + ${DEVELOPER:+"DEVELOPER=YesPlease"} \
282 + ${O:+CFLAGS="-g -Wall $O"} \
283 ${tests:+"T=$tests"} \
284 "$@"
285 status=$?
whats-cooking.txt
+63 -573
@@ -1,10 +1,10 @@
1 To: git@vger.kernel.org
2 Bcc: lwn@lwn.net
3 -Subject: What's cooking in git.git (Sep 2017, #04; Mon, 25)
3 +Subject: What's cooking in git.git (Sep 2017, #05; Tue, 26)
4 X-master-at: 28996cec80690d2322359d3650a57e8de6e01eb6
5 X-next-at: 2c7b836f3ab9b78a2baeee97e329e4c1a1e4c005
6
7 -What's cooking in git.git (Sep 2017, #04; Mon, 25)
7 +What's cooking in git.git (Sep 2017, #05; Tue, 26)
8 --------------------------------------------------
9
10 Here are the topics that have been cooking. Commits prefixed with
@@ -22,531 +22,79 @@ of the repositories listed at
22 http://git-blame.blogspot.com/p/git-public-repositories.html
23
24 --------------------------------------------------
25 -[Graduated to "master"]
26 -
27 -* sb/merge-commit-msg-hook (2017-09-22) 1 commit
28 - (merged to 'next' on 2017-09-25 at 096e0502a8)
29 - + Documentation/githooks: mention merge in commit-msg hook
30 -
31 - As "git commit" to conclude a conflicted "git merge" honors the
32 - commit-msg hook, "git merge" that records a merge commit that
33 - cleanly auto-merges should, but it didn't.
34 -
35 -
36 -* aw/gc-lockfile-fscanf-fix (2017-09-17) 1 commit
37 - (merged to 'next' on 2017-09-24 at 999ccd41aa)
38 - + gc: call fscanf() with %<len>s, not %<len>c, when reading hostname
39 -
40 - "git gc" tries to avoid running two instances at the same time by
41 - reading and writing pid/host from and to a lock file; it used to
42 - use an incorrect fscanf() format when reading, which has been
43 - corrected.
44 -
45 -
46 -* bb/doc-eol-dirty (2017-09-07) 1 commit
47 - (merged to 'next' on 2017-09-14 at 2f0cb688c6)
48 - + Documentation: mention that `eol` can change the dirty status of paths
49 -
50 - Doc update.
51 -
52 -
53 -* bw/git-clang-format (2017-08-14) 2 commits
54 - (merged to 'next' on 2017-09-24 at ae51a4e81c)
55 - + Makefile: add style build rule
56 - + clang-format: outline the git project's coding style
57 -
58 - "make style" runs git-clang-format to help developers by pointing
59 - out coding style issues.
60 -
61 -
62 -* cc/subprocess-handshake-missing-capabilities (2017-09-11) 1 commit
63 - (merged to 'next' on 2017-09-19 at 7d0c272bc8)
64 - + subprocess: loudly die when subprocess asks for an unsupported capability
65 -
66 - Finishing touches to a topic already in 'master'.
67 -
68 -
69 -* dw/diff-highlight-makefile-fix (2017-09-06) 1 commit
70 - (merged to 'next' on 2017-09-10 at 8dfda480ac)
71 - + diff-highlight: add clean target to Makefile
72 -
73 - Build clean-up.
74 -
75 -
76 -* ez/doc-duplicated-words-fix (2017-09-14) 1 commit
77 - (merged to 'next' on 2017-09-19 at 20781bd866)
78 - + doc: fix minor typos (extra/duplicated words)
79 -
80 - Typofix.
81 -
82 -
83 -* hv/mv-nested-submodules-test (2017-09-17) 1 commit
84 - (merged to 'next' on 2017-09-24 at d36650bbca)
85 - + add test for bug in git-mv for recursive submodules
86 -
87 - A test to demonstrate "git mv" failing to adjust nested submodules
88 - has been added.
89 -
90 -
91 -* jh/hashmap-disable-counting (2017-09-07) 1 commit
92 - (merged to 'next' on 2017-09-14 at bbc08f4222)
93 - + hashmap: add API to disable item counting when threaded
94 -
95 - Our hashmap implementation in hashmap.[ch] is not thread-safe when
96 - adding a new item needs to expand the hashtable by rehashing; add
97 - an API to disable the automatic rehashing to work it around.
98 -
99 -
100 -* jk/config-lockfile-leak-fix (2017-09-06) 1 commit
101 - (merged to 'next' on 2017-09-10 at 7b91d71749)
102 - + config: use a static lock_file struct
103 -
104 - A leakfix.
105 -
106 -
107 -* jk/incore-lockfile-removal (2017-09-06) 20 commits
108 - (merged to 'next' on 2017-09-14 at 603dae7fb2)
109 - + stop leaking lock structs in some simple cases
110 - + ref_lock: stop leaking lock_files
111 - + lockfile: update lifetime requirements in documentation
112 - + tempfile: auto-allocate tempfiles on heap
113 - + tempfile: remove deactivated list entries
114 - + tempfile: use list.h for linked list
115 - + tempfile: release deactivated strbufs instead of resetting
116 - + tempfile: robustify cleanup handler
117 - + tempfile: factor out deactivation
118 - + tempfile: factor out activation
119 - + tempfile: replace die("BUG") with BUG()
120 - + tempfile: handle NULL tempfile pointers gracefully
121 - + tempfile: prefer is_tempfile_active to bare access
122 - + lockfile: do not rollback lock on failed close
123 - + tempfile: do not delete tempfile on failed close
124 - + always check return value of close_tempfile
125 - + verify_signed_buffer: prefer close_tempfile() to close()
126 - + setup_temporary_shallow: move tempfile struct into function
127 - + setup_temporary_shallow: avoid using inactive tempfile
128 - + write_index_as_tree: cleanup tempfile on error
129 -
130 - The long-standing rule that an in-core lockfile instance, once it
131 - is used, must not be freed, has been lifted and the lockfile and
132 - tempfile APIs have been updated to reduce the chance of programming
133 - errors.
134 -
135 -
136 -* jk/info-alternates-fix (2017-09-20) 2 commits
137 - (merged to 'next' on 2017-09-24 at d1594d1397)
138 - + read_info_alternates: warn on non-trivial errors
139 - + Merge branch 'jk/info-alternates-fix-2.11' into jk/info-alternates-fix
140 - (this branch uses jk/info-alternates-fix-2.11.)
141 -
142 - A regression fix for 2.11 that made the code to read the list of
143 - alternate object stores overrun the end of the string.
144 -
145 -
146 -* jk/info-alternates-fix-2.11 (2017-09-20) 1 commit
147 - + read_info_alternates: read contents into strbuf
148 - (this branch is used by jk/info-alternates-fix.)
149 -
150 - A regression fix for 2.11 that made the code to read the list of
151 - alternate object stores overrun the end of the string.
152 -
153 -
154 -* jk/leak-checkers (2017-09-08) 11 commits
155 - (merged to 'next' on 2017-09-20 at 5e9ba01461)
156 - + git-compat-util: make UNLEAK less error-prone
157 - (merged to 'next' on 2017-09-14 at 906ed9f590)
158 - + add UNLEAK annotation for reducing leak false positives
159 - + set_git_dir: handle feeding gitdir to itself
160 - + repository: free fields before overwriting them
161 - + reset: free allocated tree buffers
162 - + reset: make tree counting less confusing
163 - + config: plug user_config leak
164 - + update-index: fix cache entry leak in add_one_file()
165 - + add: free leaked pathspec after add_files_to_cache()
166 - + test-lib: set LSAN_OPTIONS to abort by default
167 - + test-lib: --valgrind should not override --verbose-log
168 -
169 - Many of our programs consider that it is OK to release dynamic
170 - storage that is used throughout the life of the program by simply
171 - exiting, but this makes it harder to leak detection tools to avoid
172 - reporting false positives. Plug many existing leaks and introduce
173 - a mechanism for developers to mark that the region of memory
174 - pointed by a pointer is not lost/leaking to help these tools.
175 -
176 -
177 -* jk/revision-remove-cmdline-pathspec (2017-09-21) 2 commits
178 - (merged to 'next' on 2017-09-24 at 2adfb89370)
179 - + pathspec doc: parse_pathspec does not maintain references to args
180 - + revision: replace "struct cmdline_pathspec" with argv_array
181 -
182 - Code clean-up that also plugs memory leaks.
183 -
184 -
185 -* jk/shortlog-ident-cleanup (2017-09-09) 1 commit
186 - (merged to 'next' on 2017-09-14 at 09695b6c39)
187 - + shortlog: skip format/parse roundtrip for internal traversal
188 -
189 - Code clean-up.
190 -
191 -
192 -* jk/system-path-cleanup (2017-09-07) 2 commits
193 - (merged to 'next' on 2017-09-14 at c6faaf8858)
194 - + git_extract_argv0_path: do nothing without RUNTIME_PREFIX
195 - + system_path: move RUNTIME_PREFIX to a sub-function
196 -
197 - Code clean-up.
198 -
199 -
200 -* jk/write-in-full-fix (2017-09-14) 8 commits
201 - (merged to 'next' on 2017-09-19 at 7b26691c07)
202 - + read_pack_header: handle signed/unsigned comparison in read result
203 - + config: flip return value of store_write_*()
204 - + notes-merge: use ssize_t for write_in_full() return value
205 - + pkt-line: check write_in_full() errors against "< 0"
206 - + convert less-trivial versions of "write_in_full() != len"
207 - + avoid "write_in_full(fd, buf, len) != len" pattern
208 - + get-tar-commit-id: check write_in_full() return against 0
209 - + config: avoid "write_in_full(fd, buf, len) < len" pattern
210 -
211 - Many codepaths did not diagnose write failures correctly when disks
212 - go full, due to their misuse of write_in_full() helper function,
213 - which have been corrected.
214 -
215 -
216 -* jn/per-repo-object-store-fixes (2017-09-14) 3 commits
217 - (merged to 'next' on 2017-09-19 at 95aef30d5b)
218 - + replace-objects: evaluate replacement refs without using the object store
219 - + push, fetch: error out for submodule entries not pointing to commits
220 - + pack: make packed_git_mru global a value instead of a pointer
221 -
222 - Step #0 of a planned & larger series to make the in-core object
223 - store per in-core repository object.
224 -
225 -
226 -* jt/packmigrate (2017-09-06) 1 commit
227 - (merged to 'next' on 2017-09-14 at 169e9573a0)
228 - + Remove inadvertently added outgoing/packfile.h
229 -
230 - Remove unneeded file added by a topic already in 'master'.
231 -
232 -
233 -* kd/doc-for-each-ref (2017-09-12) 2 commits
234 - (merged to 'next' on 2017-09-19 at 993a2ae375)
235 - + doc/for-each-ref: explicitly specify option names
236 - + doc/for-each-ref: consistently use '=' to between argument names and values
237 -
238 - Doc update.
239 -
240 -
241 -* ks/commit-do-not-touch-cut-line (2017-09-15) 1 commit
242 - (merged to 'next' on 2017-09-19 at 83891def6b)
243 - + commit-template: change a message to be more intuitive
244 -
245 - The explanation of the cut-line in the commit log editor has been
246 - slightly tweaked.
247 -
248 -
249 -* ks/help-alias-label (2017-09-14) 1 commit
250 - (merged to 'next' on 2017-09-19 at 7737c853e0)
251 - + help: change a message to be more precise
252 -
253 - "git help co" now says "co is aliased to ...", not "git co is".
254 -
255 -
256 -* ks/test-readme-phrasofix (2017-09-19) 1 commit
257 - (merged to 'next' on 2017-09-24 at 3a721d05f5)
258 - + t/README: fix typo and grammatically improve a sentence
259 -
260 - Doc updates.
261 -
262 -
263 -* kw/merge-recursive-cleanup (2017-09-08) 3 commits
264 - (merged to 'next' on 2017-09-14 at 9f20025e6b)
265 - + merge-recursive: change current file dir string_lists to hashmap
266 - + merge-recursive: remove return value from get_files_dirs
267 - + merge-recursive: fix memory leak
268 -
269 - A leakfix and code clean-up.
270 -
271 -
272 -* kw/write-index-reduce-alloc (2017-09-08) 2 commits
273 - (merged to 'next' on 2017-09-19 at d0e32c567a)
274 - + read-cache: fix index corruption with index v4
275 - + Add t/helper/test-write-cache to .gitignore
276 -
277 - A hotfix to a topic already in 'master'.
278 -
279 -
280 -* ls/travis-scriptify (2017-09-22) 4 commits
281 - (merged to 'next' on 2017-09-24 at 6e808f0472)
282 - + travis-ci: fix "skip_branch_tip_with_tag()" string comparison
283 - (merged to 'next' on 2017-09-14 at 8fa685d3b7)
284 - + travis: dedent a few scripts that are indented overly deeply
285 - + travis-ci: skip a branch build if equal tag is present
286 - + travis-ci: move Travis CI code into dedicated scripts
287 -
288 - The scripts to drive TravisCI has been reorganized and then an
289 - optimization to avoid spending cycles on a branch whose tip is
290 - tagged has been implemented.
291 -
292 -
293 -* ma/pkt-line-leakfix (2017-09-06) 1 commit
294 - (merged to 'next' on 2017-09-10 at f0d9994319)
295 - + pkt-line: re-'static'-ify buffer in packet_write_fmt_1()
296 -
297 - A leakfix.
298 -
299 -
300 -* ma/remove-config-maybe-bool (2017-09-07) 1 commit
301 - (merged to 'next' on 2017-09-14 at d0c7fb97a9)
302 - + config: remove git_config_maybe_bool
303 -
304 - Finishing touches to a recent topic.
305 -
306 -
307 -* ma/split-symref-update-fix (2017-09-10) 4 commits
308 - (merged to 'next' on 2017-09-10 at 96c403fca7)
309 - + refs/files-backend: add `refname`, not "HEAD", to list
310 - + refs/files-backend: correct return value in lock_ref_for_update
311 - + refs/files-backend: fix memory leak in lock_ref_for_update
312 - + refs/files-backend: add longer-scoped copy of string to list
25 +[New Topics]
26
314 - A leakfix.
27 +* mr/doc-negative-pathspec (2017-09-25) 1 commit
28 + - docs: improve discoverability of exclude pathspec
29
30 +--------------------------------------------------
31 +[Stalled]
32
317 -* mg/name-rev-tests-with-short-stack (2017-09-08) 4 commits
318 - (merged to 'next' on 2017-09-14 at 1e4a0fe206)
319 - + t6120: test describe and name-rev with deep repos
320 - + t6120: clean up state after breaking repo
321 - + t6120: test name-rev --all and --stdin
322 - + t7004: move limited stack prereq to test-lib
323 - (this branch is used by rj/test-ulimit-on-windows.)
33 +* mk/use-size-t-in-zlib (2017-08-10) 1 commit
34 + . zlib.c: use size_t for size
35
325 - A handful of tests to demonstrates a recursive implementation of
326 - "name-rev" hurts.
36 + The wrapper to call into zlib followed our long tradition to use
37 + "unsigned long" for sizes of regions in memory, which have been
38 + updated to use "size_t".
39
40 + Needs resurrecting by making sure the fix is good and still applies
41 + (or adjusted to today's codebase).
42
329 -* mg/timestamp-t-fix (2017-09-06) 1 commit
330 - (merged to 'next' on 2017-09-10 at a5df4d5b3e)
331 - + name-rev: change ULONG_MAX to TIME_MAX
43
333 - A mismerge fix.
44 +* mg/status-in-progress-info (2017-05-10) 2 commits
45 + - status --short --inprogress: spell it as --in-progress
46 + - status: show in-progress info for short status
47
48 + "git status" learns an option to report various operations
49 + (e.g. "merging") that the user is in the middle of.
50
336 -* mh/for-each-string-list-item-empty-fix (2017-09-20) 1 commit
337 - (merged to 'next' on 2017-09-24 at 7ca1782f86)
338 - + for_each_string_list_item: avoid undefined behavior for empty list
51 + cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
52
340 - Code cmp.std.c nitpick.
53
54 +* nd/worktree-move (2017-04-20) 6 commits
55 + - worktree remove: new command
56 + - worktree move: refuse to move worktrees with submodules
57 + - worktree move: accept destination as directory
58 + - worktree move: new command
59 + - worktree.c: add update_worktree_location()
60 + - worktree.c: add validate_worktree()
61
343 -* mh/notes-cleanup (2017-09-09) 13 commits
344 - (merged to 'next' on 2017-09-10 at cb1d725504)
345 - + load_subtree(): check that `prefix_len` is in the expected range
346 - (merged to 'next' on 2017-08-26 at 2d6df46966)
347 - + load_subtree(): declare some variables to be `size_t`
348 - + hex_to_bytes(): simpler replacement for `get_oid_hex_segment()`
349 - + get_oid_hex_segment(): don't pad the rest of `oid`
350 - + load_subtree(): combine some common code
351 - + get_oid_hex_segment(): return 0 on success
352 - + load_subtree(): only consider blobs to be potential notes
353 - + load_subtree(): check earlier whether an internal node is a tree entry
354 - + load_subtree(): separate logic for internal vs. terminal entries
355 - + load_subtree(): fix incorrect comment
356 - + load_subtree(): reduce the scope of some local variables
357 - + load_subtree(): remove unnecessary conditional
358 - + notes: make GET_NIBBLE macro more robust
62 + "git worktree" learned move and remove subcommands.
63
360 - Code clean-up.
64 + Expecting a reroll.
65 + cf. <20170420101024.7593-1-pclouds@gmail.com>
66 + cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
67 + cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
68
69
363 -* mh/packed-ref-store-prep (2017-09-07) 1 commit
364 - (merged to 'next' on 2017-09-14 at e3ef821847)
365 - + rev-parse: don't trim bisect refnames
366 -
367 - Fix regression to "gitk --bisect" by a recent update.
368 -
369 -
370 -* mh/packed-ref-transactions (2017-09-09) 11 commits
371 - (merged to 'next' on 2017-09-14 at b926200d45)
372 - + files_transaction_finish(): delete reflogs before references
373 - + packed-backend: rip out some now-unused code
374 - + files_ref_store: use a transaction to update packed refs
375 - + t1404: demonstrate two problems with reference transactions
376 - + files_initial_transaction_commit(): use a transaction for packed refs
377 - + prune_refs(): also free the linked list
378 - + files_pack_refs(): use a reference transaction to write packed refs
379 - + packed_delete_refs(): implement method
380 - + packed_ref_store: implement reference transactions
381 - + struct ref_transaction: add a place for backends to store data
382 - + packed-backend: don't adjust the reference count on lock/unlock
383 - (this branch is used by mh/mmap-packed-refs.)
384 -
385 - Implement transactional update to the packed-ref representation of
386 - references.
387 -
388 -
389 -* nd/prune-in-worktree (2017-08-24) 16 commits
390 - (merged to 'next' on 2017-09-14 at 3efe283118)
391 - + refs.c: reindent get_submodule_ref_store()
392 - + refs.c: remove fallback-to-main-store code get_submodule_ref_store()
393 - + rev-list: expose and document --single-worktree
394 - + revision.c: --reflog add HEAD reflog from all worktrees
395 - + files-backend: make reflog iterator go through per-worktree reflog
396 - + revision.c: --all adds HEAD from all worktrees
397 - + refs: remove dead for_each_*_submodule()
398 - + refs.c: move for_each_remote_ref_submodule() to submodule.c
399 - + revision.c: use refs_for_each*() instead of for_each_*_submodule()
400 - + refs: add refs_head_ref()
401 - + refs: move submodule slash stripping code to get_submodule_ref_store
402 - + refs.c: refactor get_submodule_ref_store(), share common free block
403 - + revision.c: --indexed-objects add objects from all worktrees
404 - + revision.c: refactor add_index_objects_to_pending()
405 - + refs.c: use is_dir_sep() in resolve_gitlink_ref()
406 - + revision.h: new flag in struct rev_info wrt. worktree-related refs
407 -
408 - "git gc" and friends when multiple worktrees are used off of a
409 - single repository did not consider the index and per-worktree refs
410 - of other worktrees as the root for reachability traversal, making
411 - objects that are in use only in other worktrees to be subject to
412 - garbage collection.
413 -
414 -
415 -* nm/imap-send-with-curl (2017-09-15) 4 commits
416 - (merged to 'next' on 2017-09-19 at d07debeb6c)
417 - + imap-send: use curl by default when possible
418 - + imap_send: setup_curl: retreive credentials if not set in config file
419 - + imap-send: add wrapper to get server credentials if needed
420 - + imap-send: return with error if curl failed
421 -
422 - "git imap-send" has our own implementation of the protocol and also
423 - can use more recent libCurl with the imap protocol support. Update
424 - the latter so that it can use the credential subsystem, and then
425 - make it the default option to use, so that we can eventually
426 - deprecate and remove the former.
427 -
428 -
429 -* nm/pull-submodule-recurse-config (2017-09-07) 2 commits
430 - (merged to 'next' on 2017-09-14 at 38bf2c88e0)
431 - + pull: honor submodule.recurse config option
432 - + pull: fix cli and config option parsing order
433 -
434 - "git -c submodule.recurse=yes pull" did not work as if the
435 - "--recurse-submodules" option was given from the command line.
436 - This has been corrected.
437 -
438 -
439 -* ow/rev-parse-is-shallow-repo (2017-09-19) 1 commit
440 - (merged to 'next' on 2017-09-24 at 8f1b915908)
441 - + rev-parse: rev-parse: add --is-shallow-repository
442 -
443 - "git rev-parse" learned "--is-shallow-repository", that is to be
444 - used in a way similar to existing "--is-bare-repository" and
445 - friends.
446 -
447 -
448 -* rj/test-ulimit-on-windows (2017-09-19) 3 commits
449 - (merged to 'next' on 2017-09-24 at b01a595c05)
450 - + t9010-*.sh: skip all tests if the PIPE prereq is missing
451 - + test-lib: use more compact expression in PIPE prerequisite
452 - + test-lib: don't use ulimit in test prerequisites on cygwin
453 - (this branch uses mg/name-rev-tests-with-short-stack.)
454 -
455 - On Cygwin, "ulimit -s" does not report failure but it does not work
456 - at all, which causes an unexpected success of some tests that
457 - expect failures under a limited stack situation. This has been
458 - fixed.
70 +* sg/clone-refspec-from-command-line-config (2017-06-16) 2 commits
71 + - Documentation/clone: document ignored configuration variables
72 + - clone: respect additional configured fetch refspecs during initial fetch
73 + (this branch is used by sg/remote-no-string-refspecs.)
74
75 + "git clone -c var=val" is a way to set configuration variables in
76 + the resulting repository, but it is more useful to also make these
77 + variables take effect while the initial clone is happening,
78 + e.g. these configuration variables could be fetch refspecs.
79
461 -* rk/commit-tree-make-F-verbatim (2017-09-10) 1 commit
462 - (merged to 'next' on 2017-09-14 at 3d40c900f3)
463 - + commit-tree: do not complete line in -F input
464 -
465 - Unlike "git commit-tree < file", "git commit-tree -F file" did not
466 - pass the contents of the file verbatim and instead completed an
467 - incomplete line at the end, if exists. The latter has been updated
468 - to match the behaviour of the former.
469 -
470 -
471 -* rs/archive-excluded-directory (2017-09-14) 1 commit
472 - (merged to 'next' on 2017-09-19 at c695db3039)
473 - + archive: don't add empty directories to archives
474 -
475 - "git archive", especially when used with pathspec, stored an empty
476 - directory in its output, even though Git itself never does so.
477 - This has been fixed.
478 -
479 -
480 -* rs/strbuf-leakfix (2017-09-10) 34 commits
481 - (merged to 'next' on 2017-09-14 at bb46952e6a)
482 - + wt-status: release strbuf after use in wt_longstatus_print_tracking()
483 - + wt-status: release strbuf after use in read_rebase_todolist()
484 - + vcs-svn: release strbuf after use in end_revision()
485 - + utf8: release strbuf on error return in strbuf_utf8_replace()
486 - + userdiff: release strbuf after use in userdiff_get_textconv()
487 - + transport-helper: release strbuf after use in process_connect_service()
488 - + sequencer: release strbuf after use in save_head()
489 - + shortlog: release strbuf after use in insert_one_record()
490 - + sha1_file: release strbuf on error return in index_path()
491 - + send-pack: release strbuf on error return in send_pack()
492 - + remote: release strbuf after use in set_url()
493 - + remote: release strbuf after use in migrate_file()
494 - + remote: release strbuf after use in read_remote_branches()
495 - + refs: release strbuf on error return in write_pseudoref()
496 - + notes: release strbuf after use in notes_copy_from_stdin()
497 - + merge: release strbuf after use in write_merge_heads()
498 - + merge: release strbuf after use in save_state()
499 - + mailinfo: release strbuf on error return in handle_boundary()
500 - + mailinfo: release strbuf after use in handle_from()
501 - + help: release strbuf on error return in exec_woman_emacs()
502 - + help: release strbuf on error return in exec_man_man()
503 - + help: release strbuf on error return in exec_man_konqueror()
504 - + diff: release strbuf after use in show_stats()
505 - + diff: release strbuf after use in show_rename_copy()
506 - + diff: release strbuf after use in diff_summary()
507 - + convert: release strbuf on error return in filter_buffer_or_fd()
508 - + connect: release strbuf on error return in git_connect()
509 - + commit: release strbuf on error return in commit_tree_extended()
510 - + clone: release strbuf after use in remove_junk()
511 - + clean: release strbuf after use in remove_dirs()
512 - + check-ref-format: release strbuf after use in check_ref_format_branch()
513 - + am: release strbuf after use in safe_to_abort()
514 - + am: release strbuf on error return in hg_patch_to_mail()
515 - + am: release strbufs after use in detect_patch_format()
516 -
517 - Many leaks of strbuf have been fixed.
518 -
519 -
520 -* tb/test-lint-echo-e (2017-09-21) 1 commit
521 - (merged to 'next' on 2017-09-24 at dfa5caa4ce)
522 - + test-lint: echo -e (or -E) is not portable
523 -
524 - The test linter has been taught that we do not like "echo -e".
525 -
526 -
527 -* tg/refs-allowed-flags (2017-09-14) 1 commit
528 - (merged to 'next' on 2017-09-19 at 407066a925)
529 - + refs: strip out not allowed flags from ref_transaction_update
530 -
531 - API error-proofing which happens to also squelch warnings from GCC.
532 -
533 -
534 -* ti/external-sha1dc (2017-08-16) 2 commits
535 - (merged to 'next' on 2017-08-26 at a0fb4e91a5)
536 - + sha1dc: allow building with the external sha1dc library
537 - + sha1dc: build git plumbing code more explicitly
538 -
539 - Platforms that ship with a separate sha1 with collision detection
540 - library can link to it instead of using the copy we ship as part of
541 - our source tree.
80 + Waiting for a response.
81 + cf. <20170617112228.vugswym4o4owf6wj@sigill.intra.peff.net>
82 + cf. <xmqqmv8zhdap.fsf@gitster.mtv.corp.google.com>
83
84 --------------------------------------------------
544 -[New Topics]
85 +[Cooking]
86
87 * sb/merge-commit-msg-hook (2017-09-22) 1 commit
88 (merged to 'next' on 2017-09-25 at 096e0502a8)
89 + Documentation/githooks: mention merge in commit-msg hook
90
91 + As "git commit" to conclude a conflicted "git merge" honors the
92 + commit-msg hook, "git merge" that records a merge commit that
93 + cleanly auto-merges should, but it didn't.
94 + * sb/merge-commit-msg-hook (2017-09-22) 1 commit
95 + (merged to 'next' on 2017-09-25 at 096e0502a8)
96 + + Documentation/githooks: mention merge in commit-msg hook
97 +
98 Add documentation for a topic that has recently graduated to the
99 'master' branch.
100
@@ -829,62 +377,6 @@ of the repositories listed at
377
378 Will merge to 'next'.
379
832 ---------------------------------------------------
833 -[Stalled]
834 -
835 -* mk/use-size-t-in-zlib (2017-08-10) 1 commit
836 - . zlib.c: use size_t for size
837 -
838 - The wrapper to call into zlib followed our long tradition to use
839 - "unsigned long" for sizes of regions in memory, which have been
840 - updated to use "size_t".
841 -
842 - Needs resurrecting by making sure the fix is good and still applies
843 - (or adjusted to today's codebase).
844 -
845 -
846 -* mg/status-in-progress-info (2017-05-10) 2 commits
847 - - status --short --inprogress: spell it as --in-progress
848 - - status: show in-progress info for short status
849 -
850 - "git status" learns an option to report various operations
851 - (e.g. "merging") that the user is in the middle of.
852 -
853 - cf. <xmqqmvakcdqw.fsf@gitster.mtv.corp.google.com>
854 -
855 -
856 -* nd/worktree-move (2017-04-20) 6 commits
857 - - worktree remove: new command
858 - - worktree move: refuse to move worktrees with submodules
859 - - worktree move: accept destination as directory
860 - - worktree move: new command
861 - - worktree.c: add update_worktree_location()
862 - - worktree.c: add validate_worktree()
863 -
864 - "git worktree" learned move and remove subcommands.
865 -
866 - Expecting a reroll.
867 - cf. <20170420101024.7593-1-pclouds@gmail.com>
868 - cf. <20170421145916.mknekgqzhxffu7di@sigill.intra.peff.net>
869 - cf. <d0e81b1e-5869-299e-f462-4d43dc997bd1@ramsayjones.plus.com>
870 -
871 -
872 -* sg/clone-refspec-from-command-line-config (2017-06-16) 2 commits
873 - - Documentation/clone: document ignored configuration variables
874 - - clone: respect additional configured fetch refspecs during initial fetch
875 - (this branch is used by sg/remote-no-string-refspecs.)
876 -
877 - "git clone -c var=val" is a way to set configuration variables in
878 - the resulting repository, but it is more useful to also make these
879 - variables take effect while the initial clone is happening,
880 - e.g. these configuration variables could be fetch refspecs.
881 -
882 - Waiting for a response.
883 - cf. <20170617112228.vugswym4o4owf6wj@sigill.intra.peff.net>
884 - cf. <xmqqmv8zhdap.fsf@gitster.mtv.corp.google.com>
885 -
886 ---------------------------------------------------
887 -[Cooking]
380
381 * js/rebase-i-final (2017-07-27) 10 commits
382 - rebase -i: rearrange fixup/squash lines using the rebase--helper
@@ -966,8 +458,7 @@ of the repositories listed at
458 cf. <20170922201551.15012-1-jonathantanmy@google.com>
459
460
969 -* mh/mmap-packed-refs (2017-09-24) 22 commits
970 - - SQUASH???
461 +* mh/mmap-packed-refs (2017-09-25) 21 commits
462 - packed-backend.c: rename a bunch of things and update comments
463 - mmapped_ref_iterator: inline into `packed_ref_iterator`
464 - ref_cache: remove support for storing peeled values
@@ -995,9 +486,6 @@ of the repositories listed at
486 pre-parse everything, and an access to a single ref in the
487 packed-refs does not touch majority of irrelevant refs, either.
488
998 - Under review; expecting an eventual reroll.
999 - cf. <b092c424-987a-fe00-43d4-17062000dfc0@alum.mit.edu> etc.
1000 -
489
490 * pc/submodule-helper (2017-09-25) 4 commits
491 - submodule: port submodule subcommand 'status' from shell to C
@@ -1010,15 +498,6 @@ of the repositories listed at
498 Looking good; it appeared to me that 3/4 is totally superfluous, though.
499
500
1013 -* sb/parse-options-blank-line-before-option-list (2017-08-25) 1 commit
1014 - - usage_with_options: omit double new line on empty option list
1015 -
1016 - "git worktree" with no option and no subcommand showed too many
1017 - blank lines in its help text, which has been reduced.
1018 -
1019 - Superseded by bc/rev-parse-parseopt-fix?
1020 -
1021 -
501 * bc/hash-algo (2017-08-20) 5 commits
502 - hash-algo: switch empty tree and blob lookups to use hash abstraction
503 - hash-algo: integrate hash algorithm support with repo setup
@@ -1178,3 +657,14 @@ of the repositories listed at
657 repository we visit.
658
659 Will be rerolled.
660 +
661 +
662 +* sb/parse-options-blank-line-before-option-list (2017-08-25) 1 commit
663 + - usage_with_options: omit double new line on empty option list
664 +
665 + "git worktree" with no option and no subcommand showed too many
666 + blank lines in its help text, which has been reduced.
667 +
668 + Superseded by bc/rev-parse-parseopt-fix.
669 +
670 +