What's cooking (2016/09 #05)
Junio C Hamano committed
Sep 19, 2016 at 16:30 UTC
a41488d7239ee2944ae8c220485ec60b91dbf807
1 file changed
+500
-541
whats-cooking.txt
+500
-541
@@ -1,10 +1,10 @@
1
To: git@vger.kernel.org
2
Bcc: lwn@lwn.net
3
-Subject: What's cooking in git.git (Sep 2016, #04; Wed, 14)
4
-X-master-at: 35f6318d44379452d8d33e880d8df0267b4a0cd0
5
-X-next-at: 15890ea0079e968c44f020c9f65b29f823b3f4cd
3
+Subject: What's cooking in git.git (Sep 2016, #05; Mon, 19)
4
+X-master-at: f6727b0509ec3417a5183ba6e658143275a734f5
5
+X-next-at: c4ba6ebad2b925f4c6956f7e29e7375f5398848a
6
7
-What's cooking in git.git (Sep 2016, #04; Wed, 14)
7
+What's cooking in git.git (Sep 2016, #05; Mon, 19)
8
--------------------------------------------------
9
10
Here are the topics that have been cooking. Commits prefixed with
@@ -20,320 +20,294 @@ of the repositories listed at
20
--------------------------------------------------
21
[Graduated to "master"]
22
23
-* ep/use-git-trace-curl-in-tests (2016-09-07) 4 commits
24
- (merged to 'next' on 2016-09-08 at 04372de)
25
- + t5551-http-fetch-smart.sh: use the GIT_TRACE_CURL environment var
26
- + t5550-http-fetch-dumb.sh: use the GIT_TRACE_CURL environment var
27
- + test-lib.sh: preserve GIT_TRACE_CURL from the environment
28
- + t5541-http-push-smart.sh: use the GIT_TRACE_CURL environment var
29
-
30
- Update a few tests that used to use GIT_CURL_VERBOSE to use the
31
- newer GIT_TRACE_CURL.
32
-
33
-
34
-* jc/am-read-author-file (2016-08-30) 1 commit
35
- (merged to 'next' on 2016-09-08 at d2db42f)
36
- + am: refactor read_author_script()
37
-
38
- Extract a small helper out of the function that reads the authors
39
- script file "git am" internally uses.
40
- This by itself is not useful until a second caller appears in the
41
- future for "rebase -i" helper.
42
-
23
+* ah/misc-message-fixes (2016-09-08) 5 commits
24
+ (merged to 'next' on 2016-09-12 at a113aea)
25
+ + unpack-trees: do not capitalize "working"
26
+ + git-merge-octopus: do not capitalize "octopus"
27
+ + git-rebase--interactive: fix English grammar
28
+ + cat-file: put spaces around pipes in usage string
29
+ + am: put spaces around pipe in usage string
30
44
-* jc/forbid-symbolic-ref-d-HEAD (2016-09-02) 1 commit
45
- (merged to 'next' on 2016-09-08 at cd8c1b3)
46
- + symbolic-ref -d: do not allow removal of HEAD
31
+ Message cleanup.
32
48
- "git symbolic-ref -d HEAD" happily removes the symbolic ref, but
49
- the resulting repository becomes an invalid one. Teach the command
50
- to forbid removal of HEAD.
33
34
+* bc/object-id (2016-09-07) 20 commits
35
+ (merged to 'next' on 2016-09-15 at 34c6459)
36
+ + builtin/reset: convert to use struct object_id
37
+ + builtin/commit-tree: convert to struct object_id
38
+ + builtin/am: convert to struct object_id
39
+ + refs: add an update_ref_oid function.
40
+ + sha1_name: convert get_sha1_mb to struct object_id
41
+ + builtin/update-index: convert file to struct object_id
42
+ + notes: convert init_notes to use struct object_id
43
+ + builtin/rm: convert to use struct object_id
44
+ + builtin/blame: convert file to use struct object_id
45
+ + Convert read_mmblob to take struct object_id.
46
+ + notes-merge: convert struct notes_merge_pair to struct object_id
47
+ + builtin/checkout: convert some static functions to struct object_id
48
+ + streaming: make stream_blob_to_fd take struct object_id
49
+ + builtin: convert textconv_object to use struct object_id
50
+ + builtin/cat-file: convert some static functions to struct object_id
51
+ + builtin/cat-file: convert struct expand_data to use struct object_id
52
+ + builtin/log: convert some static functions to use struct object_id
53
+ + builtin/blame: convert struct origin to use struct object_id
54
+ + builtin/apply: convert static functions to struct object_id
55
+ + cache: convert struct cache_entry to use struct object_id
56
53
-* jc/submodule-anchor-git-dir (2016-09-01) 1 commit
54
- (merged to 'next' on 2016-09-08 at b6f20cf)
55
- + submodule: avoid auto-discovery in prepare_submodule_repo_env()
57
+ The "unsigned char sha1[20]" to "struct object_id" conversion
58
+ continues. Notable changes in this round includes that ce->sha1,
59
+ i.e. the object name recorded in the cache_entry, turns into an
60
+ object_id.
61
57
- Having a submodule whose ".git" repository is somehow corrupt
58
- caused a few commands that recurse into submodules loop forever.
62
+ It had merge conflicts with a few topics in flight (Christian's
63
+ "apply.c split", Dscho's "cat-file --filters" and Jeff Hostetler's
64
+ "status --porcelain-v2"). Extra sets of eyes double-checking for
65
+ mismerges are highly appreciated.
66
67
61
-* jk/diff-submodule-diff-inline (2016-08-31) 8 commits
62
- (merged to 'next' on 2016-09-02 at 734e42c)
63
- + diff: teach diff to display submodule difference with an inline diff
64
- + submodule: refactor show_submodule_summary with helper function
65
- + submodule: convert show_submodule_summary to use struct object_id *
66
- + allow do_submodule_path to work even if submodule isn't checked out
67
- + diff: prepare for additional submodule formats
68
- + graph: add support for --line-prefix on all graph-aware output
69
- + diff.c: remove output_prefix_length field
70
- + cache: add empty_tree_oid object and helper function
68
+* cc/apply-am (2016-09-07) 41 commits
69
+ (merged to 'next' on 2016-09-12 at 854edde)
70
+ + builtin/am: use apply API in run_apply()
71
+ + apply: learn to use a different index file
72
+ + apply: pass apply state to build_fake_ancestor()
73
+ + apply: refactor `git apply` option parsing
74
+ + apply: change error_routine when silent
75
+ + usage: add get_error_routine() and get_warn_routine()
76
+ + usage: add set_warn_routine()
77
+ + apply: don't print on stdout in verbosity_silent mode
78
+ + apply: make it possible to silently apply
79
+ + apply: use error_errno() where possible
80
+ + apply: make some parsing functions static again
81
+ + apply: move libified code from builtin/apply.c to apply.{c,h}
82
+ + apply: rename and move opt constants to apply.h
83
+ + builtin/apply: rename option parsing functions
84
+ + builtin/apply: make create_one_file() return -1 on error
85
+ + builtin/apply: make try_create_file() return -1 on error
86
+ + builtin/apply: make write_out_results() return -1 on error
87
+ + builtin/apply: make write_out_one_result() return -1 on error
88
+ + builtin/apply: make create_file() return -1 on error
89
+ + builtin/apply: make add_index_file() return -1 on error
90
+ + builtin/apply: make add_conflicted_stages_file() return -1 on error
91
+ + builtin/apply: make remove_file() return -1 on error
92
+ + builtin/apply: make build_fake_ancestor() return -1 on error
93
+ + builtin/apply: change die_on_unsafe_path() to check_unsafe_path()
94
+ + builtin/apply: make gitdiff_*() return -1 on error
95
+ + builtin/apply: make gitdiff_*() return 1 at end of header
96
+ + builtin/apply: make parse_traditional_patch() return -1 on error
97
+ + builtin/apply: make apply_all_patches() return 128 or 1 on error
98
+ + builtin/apply: move check_apply_state() to apply.c
99
+ + builtin/apply: make check_apply_state() return -1 instead of die()ing
100
+ + apply: make init_apply_state() return -1 instead of exit()ing
101
+ + builtin/apply: move init_apply_state() to apply.c
102
+ + builtin/apply: make parse_ignorewhitespace_option() return -1 instead of die()ing
103
+ + builtin/apply: make parse_whitespace_option() return -1 instead of die()ing
104
+ + builtin/apply: make parse_single_patch() return -1 on error
105
+ + builtin/apply: make parse_chunk() return a negative integer on error
106
+ + builtin/apply: make find_header() return -128 instead of die()ing
107
+ + builtin/apply: read_patch_file() return -1 instead of die()ing
108
+ + builtin/apply: make apply_patch() return -1 or -128 instead of die()ing
109
+ + apply: move 'struct apply_state' to apply.h
110
+ + apply: make some names more specific
111
72
- The "git diff --submodule={short,log}" mechanism has been enhanced
73
- to allow "--submodule=diff" to show the patch between the submodule
74
- commits bound to the superproject.
112
+ "git am" has been taught to make an internal call to "git apply"'s
113
+ innards without spawning the latter as a separate process.
114
115
77
-* jk/squelch-false-warning-from-gcc-o3 (2016-08-31) 2 commits
78
- (merged to 'next' on 2016-09-08 at c9a2af6)
79
- + color_parse_mem: initialize "struct color" temporary
80
- + error_errno: use constant return similar to error()
116
+* jk/fix-remote-curl-url-wo-proto (2016-09-08) 1 commit
117
+ (merged to 'next' on 2016-09-12 at 7845867)
118
+ + remote-curl: handle URLs without protocol
119
82
- Compilation fix.
120
+ "git fetch http::/site/path" did not die correctly and segfaulted
121
+ instead.
122
123
85
-* jk/test-lib-drop-pid-from-results (2016-08-30) 1 commit
86
- (merged to 'next' on 2016-09-08 at 0967b0b)
87
- + test-lib: drop PID from test-results/*.count
124
+* jk/pack-tag-of-tag (2016-09-07) 5 commits
125
+ (merged to 'next' on 2016-09-12 at 62c62c0)
126
+ + pack-objects: walk tag chains for --include-tag
127
+ + t5305: simplify packname handling
128
+ + t5305: use "git -C"
129
+ + t5305: drop "dry-run" of unpack-objects
130
+ + t5305: move cleanup into test block
131
89
- The test framework left the number of tests and success/failure
90
- count in the t/test-results directory, keyed by the name of the
91
- test script plus the process ID. The latter however turned out not
92
- to serve any useful purpose. The process ID part of the filename
93
- has been removed.
132
+ "git pack-objects --include-tag" was taught that when we know that
133
+ we are sending an object C, we want a tag B that directly points at
134
+ C but also a tag A that points at the tag B. We used to miss the
135
+ intermediate tag B in some cases.
136
137
96
-* js/t6026-clean-up (2016-09-07) 1 commit
97
- (merged to 'next' on 2016-09-08 at 5ad2fc1)
98
- + t6026-merge-attr: clean up background process at end of test case
138
+* js/git-gui-commit-gpgsign (2016-09-11) 2 commits
139
+ (merged to 'next' on 2016-09-12 at 05350ab)
140
+ + Merge branch 'js/commit-gpgsign' of ../git-gui into js/git-gui-commit-gpgsign
141
+ + git-gui: respect commit.gpgsign again
142
100
- A test spawned a short-lived background process, which sometimes
101
- prevented the test directory from getting removed at the end of the
102
- script on some platforms.
143
+ "git commit-tree" stopped reading commit.gpgsign configuration
144
+ variable that was meant for Porcelain "git commit" in Git 2.9; we
145
+ forgot to update "git gui" to look at the configuration to match
146
+ this change.
147
148
105
-* js/t9903-chaining (2016-09-07) 1 commit
106
- (merged to 'next' on 2016-09-08 at 162a3c9)
107
- + t9903: fix broken && chain
149
+* js/sequencer-wo-die (2016-09-09) 17 commits
150
+ (merged to 'next' on 2016-09-12 at d2154ea)
151
+ + sequencer: ensure to release the lock when we could not read the index
152
+ + sequencer: lib'ify checkout_fast_forward()
153
+ + sequencer: lib'ify fast_forward_to()
154
+ + sequencer: lib'ify save_opts()
155
+ + sequencer: lib'ify save_todo()
156
+ + sequencer: lib'ify save_head()
157
+ + sequencer: lib'ify create_seq_dir()
158
+ + sequencer: lib'ify read_populate_opts()
159
+ + sequencer: lib'ify read_populate_todo()
160
+ + sequencer: lib'ify read_and_refresh_cache()
161
+ + sequencer: lib'ify prepare_revs()
162
+ + sequencer: lib'ify walk_revs_populate_todo()
163
+ + sequencer: lib'ify do_pick_commit()
164
+ + sequencer: lib'ify do_recursive_merge()
165
+ + sequencer: lib'ify write_message()
166
+ + sequencer: do not die() in do_pick_commit()
167
+ + sequencer: lib'ify sequencer_pick_revisions()
168
109
- Test fix.
169
+ Lifts calls to exit(2) and die() higher in the callchain in
170
+ sequencer.c files so that more helper functions in it can be used
171
+ by callers that want to handle error conditions themselves.
172
173
112
-* rs/compat-strdup (2016-09-07) 1 commit
113
- (merged to 'next' on 2016-09-08 at 46acfdf)
114
- + compat: move strdup(3) replacement to its own file
174
+* mh/ref-store (2016-09-09) 38 commits
175
+ (merged to 'next' on 2016-09-12 at 1b0bd3c)
176
+ + refs: implement iteration over only per-worktree refs
177
+ + refs: make lock generic
178
+ + refs: add method to rename refs
179
+ + refs: add methods to init refs db
180
+ + refs: make delete_refs() virtual
181
+ + refs: add method for initial ref transaction commit
182
+ + refs: add methods for reflog
183
+ + refs: add method iterator_begin
184
+ + files_ref_iterator_begin(): take a ref_store argument
185
+ + split_symref_update(): add a files_ref_store argument
186
+ + lock_ref_sha1_basic(): add a files_ref_store argument
187
+ + lock_ref_for_update(): add a files_ref_store argument
188
+ + commit_ref_update(): add a files_ref_store argument
189
+ + lock_raw_ref(): add a files_ref_store argument
190
+ + repack_without_refs(): add a files_ref_store argument
191
+ + refs: make peel_ref() virtual
192
+ + refs: make create_symref() virtual
193
+ + refs: make pack_refs() virtual
194
+ + refs: make verify_refname_available() virtual
195
+ + refs: make read_raw_ref() virtual
196
+ + resolve_gitlink_ref(): rename path parameter to submodule
197
+ + resolve_gitlink_ref(): avoid memory allocation in many cases
198
+ + resolve_gitlink_ref(): implement using resolve_ref_recursively()
199
+ + resolve_ref_recursively(): new function
200
+ + read_raw_ref(): take a (struct ref_store *) argument
201
+ + resolve_gitlink_packed_ref(): remove function
202
+ + resolve_packed_ref(): rename function from resolve_missing_loose_ref()
203
+ + refs: reorder definitions
204
+ + refs: add a transaction_commit() method
205
+ + {lock,commit,rollback}_packed_refs(): add files_ref_store arguments
206
+ + resolve_missing_loose_ref(): add a files_ref_store argument
207
+ + get_packed_ref(): add a files_ref_store argument
208
+ + add_packed_ref(): add a files_ref_store argument
209
+ + refs: create a base class "ref_store" for files_ref_store
210
+ + refs: add a backend method structure
211
+ + refs: rename struct ref_cache to files_ref_store
212
+ + rename_ref_available(): add docstring
213
+ + resolve_gitlink_ref(): eliminate temporary variable
214
116
- Code cleanup.
215
+ The ref-store abstraction was introduced to the refs API so that we
216
+ can plug in different backends to store references.
217
218
119
-* rs/hex2chr (2016-09-07) 1 commit
120
- (merged to 'next' on 2016-09-08 at 7266d5b)
121
- + introduce hex2chr() for converting two hexadecimal digits to a character
219
+* sb/diff-cleanup (2016-09-08) 3 commits
220
+ (merged to 'next' on 2016-09-12 at 5d16b28)
221
+ + diff: remove dead code
222
+ + diff: omit found pointer from emit_callback
223
+ + diff.c: use diff_options directly
224
225
Code cleanup.
226
227
126
-* sb/transport-report-missing-submodule-on-stderr (2016-09-08) 1 commit
127
- (merged to 'next' on 2016-09-08 at 3550831)
128
- + transport: report missing submodule pushes consistently on stderr
129
-
130
- Message cleanup.
131
-
132
-
133
-* sb/xdiff-remove-unused-static-decl (2016-09-07) 1 commit
134
- (merged to 'next' on 2016-09-08 at 39e41dd)
135
- + xdiff: remove unneeded declarations
228
+* sy/git-gui-i18n-ja (2016-09-07) 7 commits
229
+ (merged to 'next' on 2016-09-12 at 4a701c2)
230
+ + Merge branch 'sy/i18n' of git-gui
231
+ + git-gui: update Japanese information
232
+ + git-gui: update Japanese translation
233
+ + git-gui: add Japanese language code
234
+ + git-gui: apply po template to Japanese translation
235
+ + git-gui: consistently use the same word for "blame" in Japanese
236
+ + git-gui: consistently use the same word for "remote" in Japanese
237
137
- Code cleanup.
238
+ Update Japanese translation for "git-gui".
239
240
--------------------------------------------------
241
[New Topics]
242
142
-* et/add-chmod-x (2016-09-12) 1 commit
143
- - add: document the chmod option
144
- (this branch is used by tg/add-chmod+x-fix.)
145
-
146
- "git add --chmod=+x" added recently lacked documentation, which has
147
- been corrected.
148
-
149
- Will merge to 'next'.
150
-
151
-
152
-* js/libify-require-clean-work-tree (2016-09-12) 5 commits
153
- - wt-status: teach has_{unstaged,uncommitted}_changes() about submodules
154
- - Export also the has_un{staged,committed}_changed() functions
155
- - Make the require_clean_work_tree() function truly reusable
156
- - pull: make code more similar to the shell script again
157
- - pull: drop confusing prefix parameter of die_on_unclean_work_tree()
158
-
159
- The require_clean_work_tree() helper was recreated in C when "git
160
- pull" was rewritten from shell; the helper is now made available to
161
- other callers in preparation for upcoming "rebase -i" work.
162
-
163
- Waiting for comments.
164
- Modulo a few minor nits, this looked almost ready.
165
- cf. <xmqqtwdl2bhm.fsf@gitster.mtv.corp.google.com>
166
- cf. <xmqqpoo92bdr.fsf@gitster.mtv.corp.google.com>
167
-
168
-
169
-* ks/perf-build-with-autoconf (2016-09-13) 1 commit
170
- - t/perf/run: Don't forget to copy config.mak.autogen & friends
171
-
172
- Performance tests done via "t/perf" did not use the same set of
173
- build configuration if the user relied on autoconf generated
174
- configuration.
175
-
176
- Will merge to 'next'.
177
-
178
-
179
-* tg/add-chmod+x-fix (2016-09-14) 5 commits
180
- - SQUASH???
181
- - add: modify already added files when --chmod is given
182
- - read-cache: introduce chmod_index_entry
183
- - update-index: add test for chmod flags
184
- - Merge branch 'ib/t3700-add-chmod-x-updates' into tg/add-chmod+x-fix
185
- (this branch uses et/add-chmod-x.)
186
-
187
- "git add --chmod=+x <pathspec>" added recently only toggled the
188
- executable bit for paths that are either new or modified. This has
189
- been corrected to flip the executable bit for all paths that match
190
- the given pathspec.
191
-
192
- Waiting for an ack for SQUASH???
193
-
194
-
195
-* bw/ls-files-recurse-submodules (2016-09-13) 3 commits
196
- - SQUASH??? Undecided
197
- - SQUASH???
198
- - ls-files: adding support for submodules
199
-
200
- "git ls-files" learned "--recurse-submodules" option that can be
201
- used to get a listing of tracked files across submodules (i.e. this
202
- only works with "--cached" option, not for listing untracked or
203
- ignored files). This would be a useful tool to sit on the upstream
204
- side of a pipe that is read with xargs to work on all working tree
205
- files from the top-level superproject.
206
-
207
- Waiting for the discussion to conclude.
243
+* rs/xdiff-merge-overlapping-hunks-for-W-context (2016-09-14) 1 commit
244
+ (merged to 'next' on 2016-09-15 at eaa85ab)
245
+ + xdiff: fix merging of hunks with -W context and -u context
246
247
+ "git diff -W" output needs to extend the context backward to
248
+ include the header line of the current function and also forward to
249
+ include the body of the entire current function up to the header
250
+ line of the next one. This process may have to merge to adjacent
251
+ hunks, but the code forgot to do so in some cases.
252
210
-* bw/pathspec-remove-unused-extern-decl (2016-09-13) 1 commit
211
- - pathspec: remove unnecessary function prototypes
212
-
213
- Code cleanup.
214
-
215
- Will merge to 'next'.
216
-
217
-
218
-* ew/http-do-not-forget-to-call-curl-multi-remove-handle (2016-09-13) 3 commits
219
- - http: always remove curl easy from curlm session on release
220
- - http: consolidate #ifdefs for curl_multi_remove_handle
221
- - http: warn on curl_multi_add_handle failures
222
-
223
- The http transport (with curl-multi option, which is the default
224
- these days) failed to remove curl-easy handle from a curlm session,
225
- which led to unnecessary API failures.
226
-
227
- Will merge to 'next'.
228
-
229
-
230
-* jk/delta-base-cache (2016-09-12) 1 commit
231
- - add_delta_base_cache: use list_for_each_safe
232
-
233
- Recently we updated the code to manage the in-core cache that holds
234
- objects that have recently been used to reconstitute other objects
235
- that are stored as deltas against them, but the update used an
236
- incorrect API function to manage the list of these objects. This
237
- has been fixed.
238
-
239
- Will merge to 'next'.
240
- This is a last-minute fix to a topic that graduated to 'master'
241
- post 2.10 release.
242
-
243
-
244
-* jk/setup-sequence-update (2016-09-13) 16 commits
245
- - t1007: factor out repeated setup
246
- - init: reset cached config when entering new repo
247
- - init: expand comments explaining config trickery
248
- - config: only read .git/config from configured repos
249
- - test-config: setup git directory
250
- - t1302: use "git -C"
251
- - pager: handle early config
252
- - pager: use callbacks instead of configset
253
- - pager: make pager_program a file-local static
254
- - pager: stop loading git_default_config()
255
- - pager: remove obsolete comment
256
- - diff: always try to set up the repository
257
- - diff: handle --no-index prefixes consistently
258
- - diff: skip implicit no-index check when given --no-index
259
- - patch-id: use RUN_SETUP_GENTLY
260
- - hash-object: always try to set up the git repository
261
-
262
- There were numerous corner cases in which the configuration files
263
- are read and used or not read at all depending on the directory a
264
- Git command was run, leading to inconsistent behaviour. The code
265
- to set-up repository access at the beginning of a Git process has
266
- been updated to fix them.
267
-
268
- Will merge to 'next'.
269
-
270
-
271
-* ls/filter-process (2016-09-13) 10 commits
272
- - convert: add filter.<driver>.process option
273
- - convert: make apply_filter() adhere to standard Git error handling
274
- - convert: modernize tests
275
- - convert: quote filter names in error messages
276
- - pkt-line: add functions to read/write flush terminated packet streams
277
- - pkt-line: add packet_write_gently()
278
- - pkt-line: add packet_flush_gently()
279
- - pkt-line: add packet_write_fmt_gently()
280
- - pkt-line: extract set_packet_header()
281
- - pkt-line: rename packet_write() to packet_write_fmt()
282
-
283
- The smudge/clean filter API expect an external process is spawned
284
- to filter the contents for each path that has a filter defined. A
285
- new type of "process" filter API has been added to allow the first
286
- request to run the filter for a path to spawn a single process, and
287
- all filtering need is served by this single process for multiple
288
- paths, reducing the process creation overhead.
289
-
290
- Waiting for the discussion to conclude.
291
- cf. <20160910062919.GB11001@tb-raspi> etc.
253
+ Will merge to 'master'.
254
255
294
-* rs/checkout-some-states-are-const (2016-09-13) 1 commit
295
- - checkout: constify parameters of checkout_stage() and checkout_merged()
256
+* mm/config-color-ui-default-to-auto (2016-09-16) 1 commit
257
+ - Documentation/config: default for color.* is color.ui
258
297
- Code cleanup.
259
+ Documentation for individual configuration variables to control use
260
+ of color (like `color.grep`) said that their default value was
261
+ 'false', instead of saying their default is taken from `color.ui`.
262
+ When we updated the default value for color.ui from 'false' to
263
+ 'auto' quite a while ago, all of them broke. This has been
264
+ corrected.
265
266
Will merge to 'next'.
267
268
302
-* rs/pack-sort-with-llist-mergesort (2016-09-13) 1 commit
303
- - sha1_file: use llist_mergesort() for sorting packs
269
+* rs/c-auto-resets-attributes (2016-09-19) 1 commit
270
+ - pretty: let %C(auto) reset all attributes
271
305
- Code cleanup.
272
+ The pretty-format specifier used by the "log" family of commands
273
+ have "%C(auto)" to turn coloring of the output is taught to also
274
+ issue a color-reset sequence to the output.
275
276
Will merge to 'next'.
277
278
310
-* rs/strbuf-remove-fix (2016-09-13) 1 commit
311
- - strbuf: use valid pointer in strbuf_remove()
279
+* rs/cocci (2016-09-15) 3 commits
280
+ - use strbuf_addstr() for adding constant strings to a strbuf, part 2
281
+ - add coccicheck make target
282
+ - contrib/coccinelle: fix semantic patch for oid_to_hex_r()
283
284
Code cleanup.
285
286
Will merge to 'next'.
287
288
318
-* rs/unpack-trees-reduce-file-scope-global (2016-09-13) 1 commit
319
- - unpack-trees: pass checkout state explicitly to check_updates()
289
+* va/i18n-more (2016-09-19) 6 commits
290
+ - i18n: stash: mark messages for translation
291
+ - i18n: notes-merge: mark die messages for translation
292
+ - i18n: ident: mark hint for translation
293
+ - i18n: diff: mark die errors for translation
294
+ - i18n: connect: mark die messages for translation
295
+ - i18n: commit: mark message for translation
296
+ (this branch uses va/i18n.)
297
321
- Code cleanup.
298
+ Even more i18n.
299
300
Will merge to 'next'.
301
302
326
-* mr/vcs-svn-printf-ulong (2016-09-14) 1 commit
327
- - vcs-svn/fast_export: fix timestamp fmt specifiers
303
+* jt/mailinfo-fold-in-body-headers (2016-09-19) 2 commits
304
+ - mailinfo: make is_scissors_line take plain char *
305
+ - mailinfo: separate in-body header processing
306
329
- Code cleanup.
330
-
331
- Will merge to 'next'.
307
333
-
334
-* hv/submodule-not-yet-pushed-fix (2016-09-14) 2 commits
335
- - serialize collection of refs that contain submodule changes
336
- - serialize collection of changed submodules
308
+* kd/mailinfo-quoted-string (2016-09-19) 2 commits
309
+ - mailinfo: unescape quoted-pair in header fields
310
+ - t5100-mailinfo: replace common path prefix with variable
311
312
--------------------------------------------------
313
[Stalled]
@@ -560,114 +534,272 @@ of the repositories listed at
534
- t5304: test .bitmap garbage files
535
- prepare_packed_git(): find more garbage
536
563
- Follow-on to dk/gc-idx-wo-pack topic, to clean up stale
564
- .bitmap and .keep files.
537
+ Follow-on to dk/gc-idx-wo-pack topic, to clean up stale
538
+ .bitmap and .keep files.
539
+
540
+ Has been waiting for a reroll for too long.
541
+ cf. <xmqq60ypbeng.fsf@gitster.mtv.corp.google.com>
542
+
543
+ Will discard.
544
+
545
+
546
+* jc/diff-b-m (2015-02-23) 5 commits
547
+ . WIPWIP
548
+ . WIP: diff-b-m
549
+ - diffcore-rename: allow easier debugging
550
+ - diffcore-rename.c: add locate_rename_src()
551
+ - diffcore-break: allow debugging
552
+
553
+ "git diff -B -M" produced incorrect patch when the postimage of a
554
+ completely rewritten file is similar to the preimage of a removed
555
+ file; such a resulting file must not be expressed as a rename from
556
+ other place.
557
+
558
+ The fix in this patch is broken, unfortunately.
559
+
560
+ Will discard.
561
+
562
+--------------------------------------------------
563
+[Cooking]
564
+
565
+* et/add-chmod-x (2016-09-12) 1 commit
566
+ (merged to 'next' on 2016-09-15 at c81abae)
567
+ + add: document the chmod option
568
+ (this branch is used by tg/add-chmod+x-fix.)
569
+
570
+ "git add --chmod=+x" added recently lacked documentation, which has
571
+ been corrected.
572
+
573
+ Will merge to 'master'.
574
+
575
+
576
+* js/libify-require-clean-work-tree (2016-09-12) 5 commits
577
+ - wt-status: teach has_{unstaged,uncommitted}_changes() about submodules
578
+ - Export also the has_un{staged,committed}_changed() functions
579
+ - Make the require_clean_work_tree() function truly reusable
580
+ - pull: make code more similar to the shell script again
581
+ - pull: drop confusing prefix parameter of die_on_unclean_work_tree()
582
+
583
+ The require_clean_work_tree() helper was recreated in C when "git
584
+ pull" was rewritten from shell; the helper is now made available to
585
+ other callers in preparation for upcoming "rebase -i" work.
586
+
587
+ Waiting for comments.
588
+ Modulo a few minor nits, this looked almost ready.
589
+ cf. <xmqqtwdl2bhm.fsf@gitster.mtv.corp.google.com>
590
+ cf. <xmqqpoo92bdr.fsf@gitster.mtv.corp.google.com>
591
+
592
+
593
+* ks/perf-build-with-autoconf (2016-09-15) 1 commit
594
+ (merged to 'next' on 2016-09-15 at 261878d)
595
+ + t/perf/run: copy config.mak.autogen & friends to build area
596
+
597
+ Performance tests done via "t/perf" did not use the same set of
598
+ build configuration if the user relied on autoconf generated
599
+ configuration.
600
+
601
+ Will merge to 'master'.
602
+
603
+
604
+* tg/add-chmod+x-fix (2016-09-15) 4 commits
605
+ (merged to 'next' on 2016-09-15 at a97bdfd)
606
+ + add: modify already added files when --chmod is given
607
+ + read-cache: introduce chmod_index_entry
608
+ + update-index: add test for chmod flags
609
+ + Merge branch 'ib/t3700-add-chmod-x-updates' into tg/add-chmod+x-fix
610
+ (this branch uses et/add-chmod-x.)
611
+
612
+ "git add --chmod=+x <pathspec>" added recently only toggled the
613
+ executable bit for paths that are either new or modified. This has
614
+ been corrected to flip the executable bit for all paths that match
615
+ the given pathspec.
616
+
617
+ Will merge to 'master'.
618
+
619
+
620
+* bw/ls-files-recurse-submodules (2016-09-13) 3 commits
621
+ - SQUASH??? Undecided
622
+ - SQUASH???
623
+ - ls-files: adding support for submodules
624
+
625
+ "git ls-files" learned "--recurse-submodules" option that can be
626
+ used to get a listing of tracked files across submodules (i.e. this
627
+ only works with "--cached" option, not for listing untracked or
628
+ ignored files). This would be a useful tool to sit on the upstream
629
+ side of a pipe that is read with xargs to work on all working tree
630
+ files from the top-level superproject.
631
+
632
+ Waiting for the discussion to conclude.
633
+
634
+
635
+* bw/pathspec-remove-unused-extern-decl (2016-09-13) 1 commit
636
+ (merged to 'next' on 2016-09-15 at c5b281b)
637
+ + pathspec: remove unnecessary function prototypes
638
+
639
+ Code cleanup.
640
+
641
+ Will merge to 'master'.
642
+
643
+
644
+* ew/http-do-not-forget-to-call-curl-multi-remove-handle (2016-09-13) 3 commits
645
+ (merged to 'next' on 2016-09-15 at 696acb7)
646
+ + http: always remove curl easy from curlm session on release
647
+ + http: consolidate #ifdefs for curl_multi_remove_handle
648
+ + http: warn on curl_multi_add_handle failures
649
+
650
+ The http transport (with curl-multi option, which is the default
651
+ these days) failed to remove curl-easy handle from a curlm session,
652
+ which led to unnecessary API failures.
653
+
654
+ Will merge to 'master'.
655
+
656
+
657
+* jk/delta-base-cache (2016-09-12) 1 commit
658
+ (merged to 'next' on 2016-09-15 at 1e35f8d)
659
+ + add_delta_base_cache: use list_for_each_safe
660
+
661
+ Recently we updated the code to manage the in-core cache that holds
662
+ objects that have recently been used to reconstitute other objects
663
+ that are stored as deltas against them, but the update used an
664
+ incorrect API function to manage the list of these objects. This
665
+ has been fixed.
666
+
667
+ Will merge to 'master'.
668
+ This is a last-minute fix to a topic that graduated to 'master'
669
+ post 2.10 release.
670
+
671
+
672
+* jk/setup-sequence-update (2016-09-13) 16 commits
673
+ (merged to 'next' on 2016-09-15 at 4df8399)
674
+ + t1007: factor out repeated setup
675
+ + init: reset cached config when entering new repo
676
+ + init: expand comments explaining config trickery
677
+ + config: only read .git/config from configured repos
678
+ + test-config: setup git directory
679
+ + t1302: use "git -C"
680
+ + pager: handle early config
681
+ + pager: use callbacks instead of configset
682
+ + pager: make pager_program a file-local static
683
+ + pager: stop loading git_default_config()
684
+ + pager: remove obsolete comment
685
+ + diff: always try to set up the repository
686
+ + diff: handle --no-index prefixes consistently
687
+ + diff: skip implicit no-index check when given --no-index
688
+ + patch-id: use RUN_SETUP_GENTLY
689
+ + hash-object: always try to set up the git repository
690
+
691
+ There were numerous corner cases in which the configuration files
692
+ are read and used or not read at all depending on the directory a
693
+ Git command was run, leading to inconsistent behaviour. The code
694
+ to set-up repository access at the beginning of a Git process has
695
+ been updated to fix them.
696
+
697
+ Will merge to 'master'.
698
+
699
+
700
+* ls/filter-process (2016-09-13) 10 commits
701
+ - convert: add filter.<driver>.process option
702
+ - convert: make apply_filter() adhere to standard Git error handling
703
+ - convert: modernize tests
704
+ - convert: quote filter names in error messages
705
+ - pkt-line: add functions to read/write flush terminated packet streams
706
+ - pkt-line: add packet_write_gently()
707
+ - pkt-line: add packet_flush_gently()
708
+ - pkt-line: add packet_write_fmt_gently()
709
+ - pkt-line: extract set_packet_header()
710
+ - pkt-line: rename packet_write() to packet_write_fmt()
711
+
712
+ The smudge/clean filter API expect an external process is spawned
713
+ to filter the contents for each path that has a filter defined. A
714
+ new type of "process" filter API has been added to allow the first
715
+ request to run the filter for a path to spawn a single process, and
716
+ all filtering need is served by this single process for multiple
717
+ paths, reducing the process creation overhead.
718
+
719
+ Waiting for the discussion to conclude.
720
+ cf. <20160910062919.GB11001@tb-raspi> etc.
721
+
722
+
723
+* rs/checkout-some-states-are-const (2016-09-13) 1 commit
724
+ (merged to 'next' on 2016-09-15 at 19f219b)
725
+ + checkout: constify parameters of checkout_stage() and checkout_merged()
726
+
727
+ Code cleanup.
728
+
729
+ Will merge to 'master'.
730
+
731
566
- Has been waiting for a reroll for too long.
567
- cf. <xmqq60ypbeng.fsf@gitster.mtv.corp.google.com>
732
+* rs/pack-sort-with-llist-mergesort (2016-09-13) 1 commit
733
+ (merged to 'next' on 2016-09-15 at 45159f5)
734
+ + sha1_file: use llist_mergesort() for sorting packs
735
569
- Will discard.
736
+ Code cleanup.
737
738
+ Will merge to 'master'.
739
572
-* jc/diff-b-m (2015-02-23) 5 commits
573
- . WIPWIP
574
- . WIP: diff-b-m
575
- - diffcore-rename: allow easier debugging
576
- - diffcore-rename.c: add locate_rename_src()
577
- - diffcore-break: allow debugging
740
579
- "git diff -B -M" produced incorrect patch when the postimage of a
580
- completely rewritten file is similar to the preimage of a removed
581
- file; such a resulting file must not be expressed as a rename from
582
- other place.
741
+* rs/strbuf-remove-fix (2016-09-13) 1 commit
742
+ (merged to 'next' on 2016-09-15 at 5f64556)
743
+ + strbuf: use valid pointer in strbuf_remove()
744
584
- The fix in this patch is broken, unfortunately.
745
+ Code cleanup.
746
586
- Will discard.
747
+ Will merge to 'master'.
748
588
---------------------------------------------------
589
-[Cooking]
749
591
-* jk/patch-ids-no-merges (2016-09-12) 2 commits
592
- - patch-ids: refuse to compute patch-id for merge commit
593
- - patch-ids: turn off rename detection
750
+* rs/unpack-trees-reduce-file-scope-global (2016-09-13) 1 commit
751
+ (merged to 'next' on 2016-09-15 at cd16435)
752
+ + unpack-trees: pass checkout state explicitly to check_updates()
753
595
- "git log --cherry-pick" used to include merge commits as candidates
596
- to be matched up with other commits, resulting a lot of wasted time.
597
- The patch-id generation logic has been updated to ignore merges to
598
- avoid the wastage.
754
+ Code cleanup.
755
600
- Will merge to 'next'.
756
+ Will merge to 'master'.
757
758
603
-* js/git-gui-commit-gpgsign (2016-09-11) 2 commits
604
- (merged to 'next' on 2016-09-12 at 05350ab)
605
- + Merge branch 'js/commit-gpgsign' of ../git-gui into js/git-gui-commit-gpgsign
606
- + git-gui: respect commit.gpgsign again
759
+* mr/vcs-svn-printf-ulong (2016-09-14) 1 commit
760
+ (merged to 'next' on 2016-09-15 at cc8ef53)
761
+ + vcs-svn/fast_export: fix timestamp fmt specifiers
762
608
- "git commit-tree" stopped reading commit.gpgsign configuration
609
- variable that was meant for Porcelain "git commit" in Git 2.9; we
610
- forgot to update "git gui" to look at the configuration to match
611
- this change.
763
+ Code cleanup.
764
765
Will merge to 'master'.
766
767
616
-* bc/object-id (2016-09-07) 20 commits
617
- - builtin/reset: convert to use struct object_id
618
- - builtin/commit-tree: convert to struct object_id
619
- - builtin/am: convert to struct object_id
620
- - refs: add an update_ref_oid function.
621
- - sha1_name: convert get_sha1_mb to struct object_id
622
- - builtin/update-index: convert file to struct object_id
623
- - notes: convert init_notes to use struct object_id
624
- - builtin/rm: convert to use struct object_id
625
- - builtin/blame: convert file to use struct object_id
626
- - Convert read_mmblob to take struct object_id.
627
- - notes-merge: convert struct notes_merge_pair to struct object_id
628
- - builtin/checkout: convert some static functions to struct object_id
629
- - streaming: make stream_blob_to_fd take struct object_id
630
- - builtin: convert textconv_object to use struct object_id
631
- - builtin/cat-file: convert some static functions to struct object_id
632
- - builtin/cat-file: convert struct expand_data to use struct object_id
633
- - builtin/log: convert some static functions to use struct object_id
634
- - builtin/blame: convert struct origin to use struct object_id
635
- - builtin/apply: convert static functions to struct object_id
636
- - cache: convert struct cache_entry to use struct object_id
637
-
638
- The "unsigned char sha1[20]" to "struct object_id" conversion
639
- continues. Notable changes in this round includes that ce->sha1,
640
- i.e. the object name recorded in the cache_entry, turns into an
641
- object_id.
768
+* hv/submodule-not-yet-pushed-fix (2016-09-15) 5 commits
769
+ . SQUASH??? -Wdecl-after-stmt
770
+ . use actual start hashes for submodule push check instead of local refs
771
+ . batch check whether submodule needs pushing into one call
772
+ - serialize collection of refs that contain submodule changes
773
+ - serialize collection of changed submodules
774
643
- It had merge conflicts with a few topics in flight (Christian's
644
- "apply.c split", Dscho's "cat-file --filters" and Jeff Hostetler's
645
- "status --porcelain-v2"). Extra sets of eyes double-checking for
646
- mismerges are highly appreciated.
775
+ The code in "git push" to compute if any commit being pushed in the
776
+ superproject binds a commit in a submodule that hasn't been pushed
777
+ out was overly inefficient, making it unusable even for a small
778
+ project that does not have any submodule but have a reasonable
779
+ number of refs. This has been optimized.
780
648
- Will merge to 'next'.
781
+ The last two in the original series seem to break a few tests when
782
+ queued to 'pu'.
783
784
651
-* jk/pack-tag-of-tag (2016-09-07) 5 commits
652
- (merged to 'next' on 2016-09-12 at 62c62c0)
653
- + pack-objects: walk tag chains for --include-tag
654
- + t5305: simplify packname handling
655
- + t5305: use "git -C"
656
- + t5305: drop "dry-run" of unpack-objects
657
- + t5305: move cleanup into test block
785
+* jk/patch-ids-no-merges (2016-09-12) 2 commits
786
+ (merged to 'next' on 2016-09-15 at 14bb3a0)
787
+ + patch-ids: refuse to compute patch-id for merge commit
788
+ + patch-ids: turn off rename detection
789
659
- "git pack-objects --include-tag" was taught that when we know that
660
- we are sending an object C, we want a tag B that directly points at
661
- C but also a tag A that points at the tag B. We used to miss the
662
- intermediate tag B in some cases.
790
+ "git log --cherry-pick" used to include merge commits as candidates
791
+ to be matched up with other commits, resulting a lot of wasted time.
792
+ The patch-id generation logic has been updated to ignore merges to
793
+ avoid the wastage.
794
795
Will merge to 'master'.
796
797
798
* jt/accept-capability-advertisement-when-fetching-from-void (2016-09-09) 3 commits
668
- - connect: advertized capability is not a ref
669
- - connect: tighten check for unexpected early hang up
670
- - tests: move test_lazy_prereq JGIT to test-lib.sh
799
+ (merged to 'next' on 2016-09-15 at 1cd9f9a)
800
+ + connect: advertized capability is not a ref
801
+ + connect: tighten check for unexpected early hang up
802
+ + tests: move test_lazy_prereq JGIT to test-lib.sh
803
804
JGit can show a fake ref "capabilities^{}" to "git fetch" when it
805
does not advertise any refs, but "git fetch" was not prepared to
@@ -678,7 +810,7 @@ of the repositories listed at
810
repository is there. The code to detect this case has also been
811
updated.
812
681
- Will merge to 'next'.
813
+ Will merge to 'master'.
814
815
816
* rt/rebase-i-broken-insn-advise (2016-09-07) 1 commit
@@ -694,54 +826,16 @@ of the repositories listed at
826
queued merely as a reminder.
827
828
697
-* sy/git-gui-i18n-ja (2016-09-07) 7 commits
698
- (merged to 'next' on 2016-09-12 at 4a701c2)
699
- + Merge branch 'sy/i18n' of git-gui
700
- + git-gui: update Japanese information
701
- + git-gui: update Japanese translation
702
- + git-gui: add Japanese language code
703
- + git-gui: apply po template to Japanese translation
704
- + git-gui: consistently use the same word for "blame" in Japanese
705
- + git-gui: consistently use the same word for "remote" in Japanese
706
-
707
- Update Japanese translation for "git-gui".
708
-
709
- Will merge to 'master'.
710
-
711
-
712
-* ah/misc-message-fixes (2016-09-08) 5 commits
713
- (merged to 'next' on 2016-09-12 at a113aea)
714
- + unpack-trees: do not capitalize "working"
715
- + git-merge-octopus: do not capitalize "octopus"
716
- + git-rebase--interactive: fix English grammar
717
- + cat-file: put spaces around pipes in usage string
718
- + am: put spaces around pipe in usage string
719
-
720
- Message cleanup.
721
-
722
- Will merge to 'master'.
723
-
724
-
725
-* jk/fix-remote-curl-url-wo-proto (2016-09-08) 1 commit
726
- (merged to 'next' on 2016-09-12 at 7845867)
727
- + remote-curl: handle URLs without protocol
728
-
729
- "git fetch http::/site/path" did not die correctly and segfaulted
730
- instead.
731
-
732
- Will merge to 'master'.
733
-
734
-
735
-* jt/format-patch-base-info-above-sig (2016-09-14) 2 commits
736
- - SQUASH???
737
- - format-patch: show base info before email signature
829
+* jt/format-patch-base-info-above-sig (2016-09-15) 1 commit
830
+ (merged to 'next' on 2016-09-15 at 3da5c68)
831
+ + format-patch: show base info before email signature
832
833
"git format-patch --base=..." feature that was recently added
834
showed the base commit information after "-- " e-mail signature
835
line, which turned out to be inconvenient. The base information
836
has been moved above the signature line.
837
744
- Waiting for an ack for SQUASH???
838
+ Will merge to 'master'.
839
840
841
* nd/checkout-disambiguation (2016-09-09) 4 commits
@@ -760,17 +854,6 @@ of the repositories listed at
854
Waiting for an Ack for fixup!
855
856
763
-* sb/diff-cleanup (2016-09-08) 3 commits
764
- (merged to 'next' on 2016-09-12 at 5d16b28)
765
- + diff: remove dead code
766
- + diff: omit found pointer from emit_callback
767
- + diff.c: use diff_options directly
768
-
769
- Code cleanup.
770
-
771
- Will merge to 'master'.
772
-
773
-
857
* sg/fix-versioncmp-with-common-suffix (2016-09-08) 5 commits
858
- versioncmp: cope with common leading parts in versionsort.prereleaseSuffix
859
- versioncmp: pass full tagnames to swap_prereleases()
@@ -787,51 +870,23 @@ of the repositories listed at
870
cf. <20160908223727.Horde.jVOOJ278ssZ3qkyjkmyqZD-@webmail.informatik.kit.edu>
871
872
790
-* va/i18n (2016-09-11) 11 commits
791
- - i18n: update-index: mark warning for translation
792
- - i18n: show-branch: mark error messages for translation
793
- - i18n: receive-pack: mark messages for translation
794
- - notes: downcase the first word of error messages
795
- - i18n: notes: mark error messages for translation
796
- - i18n: merge-recursive: mark verbose message for translation
797
- - i18n: merge-recursive: mark error messages for translation
798
- - i18n: config: mark error message for translation
799
- - i18n: branch: mark option description for translation
800
- - SQUASH???
801
- - i18n: blame: mark error messages for translation
873
+* va/i18n (2016-09-15) 11 commits
874
+ (merged to 'next' on 2016-09-15 at 2b3d368)
875
+ + i18n: update-index: mark warnings for translation
876
+ + i18n: show-branch: mark plural strings for translation
877
+ + i18n: show-branch: mark error messages for translation
878
+ + i18n: receive-pack: mark messages for translation
879
+ + notes: spell first word of error messages in lowercase
880
+ + i18n: notes: mark error messages for translation
881
+ + i18n: merge-recursive: mark verbose message for translation
882
+ + i18n: merge-recursive: mark error messages for translation
883
+ + i18n: config: mark error message for translation
884
+ + i18n: branch: mark option description for translation
885
+ + i18n: blame: mark error messages for translation
886
+ (this branch is used by va/i18n-more.)
887
888
More i18n.
889
805
- Waiting for a reroll.
806
- Some of them need to use Q_(); even when they always show numbers
807
- that are greater than 1, some languages have different plural forms.
808
- cf. <17140652.xHVhzLXte8@cayenne> etc.
809
-
810
-
811
-* js/sequencer-wo-die (2016-09-09) 17 commits
812
- (merged to 'next' on 2016-09-12 at d2154ea)
813
- + sequencer: ensure to release the lock when we could not read the index
814
- + sequencer: lib'ify checkout_fast_forward()
815
- + sequencer: lib'ify fast_forward_to()
816
- + sequencer: lib'ify save_opts()
817
- + sequencer: lib'ify save_todo()
818
- + sequencer: lib'ify save_head()
819
- + sequencer: lib'ify create_seq_dir()
820
- + sequencer: lib'ify read_populate_opts()
821
- + sequencer: lib'ify read_populate_todo()
822
- + sequencer: lib'ify read_and_refresh_cache()
823
- + sequencer: lib'ify prepare_revs()
824
- + sequencer: lib'ify walk_revs_populate_todo()
825
- + sequencer: lib'ify do_pick_commit()
826
- + sequencer: lib'ify do_recursive_merge()
827
- + sequencer: lib'ify write_message()
828
- + sequencer: do not die() in do_pick_commit()
829
- + sequencer: lib'ify sequencer_pick_revisions()
830
-
831
- Lifts calls to exit(2) and die() higher in the callchain in
832
- sequencer.c files so that more helper functions in it can be used
833
- by callers that want to handle error conditions themselves.
834
-
890
Will merge to 'master'.
891
892
@@ -846,10 +901,11 @@ of the repositories listed at
901
902
903
* js/cat-file-filters (2016-09-11) 4 commits
849
- - cat-file: support --textconv/--filters in batch mode
850
- - cat-file --textconv/--filters: allow specifying the path separately
851
- - cat-file: introduce the --filters option
852
- - cat-file: fix a grammo in the man page
904
+ (merged to 'next' on 2016-09-15 at a231380)
905
+ + cat-file: support --textconv/--filters in batch mode
906
+ + cat-file --textconv/--filters: allow specifying the path separately
907
+ + cat-file: introduce the --filters option
908
+ + cat-file: fix a grammo in the man page
909
910
Even though "git hash-objects", which is a tool to take an
911
on-filesystem data stream and put it into the Git object store,
@@ -861,7 +917,7 @@ of the repositories listed at
917
lacked an equivalent mechanism to run the "Git-to-outside-world"
918
conversion. The command learned the "--filters" option to do so.
919
864
- Will merge to 'next'.
920
+ Will merge to 'master'.
921
922
923
* sb/push-make-submodule-check-the-default (2016-08-24) 1 commit
@@ -898,18 +954,18 @@ of the repositories listed at
954
955
956
* ks/pack-objects-bitmap (2016-09-12) 2 commits
901
- - pack-objects: use reachability bitmap index when generating non-stdout pack
902
- - pack-objects: respect --local/--honor-pack-keep/--incremental when bitmap is in use
957
+ (merged to 'next' on 2016-09-15 at e0600bd)
958
+ + pack-objects: use reachability bitmap index when generating non-stdout pack
959
+ + pack-objects: respect --local/--honor-pack-keep/--incremental when bitmap is in use
960
961
Some codepaths in "git pack-objects" were not ready to use an
962
existing pack bitmap; now they are and as the result they have
963
become faster.
964
908
- Will merge to 'next'.
965
+ Will merge to 'master'.
966
967
911
-* mh/diff-indent-heuristic (2016-09-07) 9 commits
912
- - SQAUSH???
968
+* mh/diff-indent-heuristic (2016-09-19) 8 commits
969
- blame: honor the diff heuristic options and config
970
- parse-options: add parse_opt_unknown_cb()
971
- diff: improve positioning of add/delete blocks in diffs
@@ -925,57 +981,7 @@ of the repositories listed at
981
are the same. A command line option is added to help with the
982
experiment to find a good heuristics.
983
928
- Waiting for an ack to SQUASH??? Otherwise looked OK.
929
-
930
-
931
-* cc/apply-am (2016-09-07) 41 commits
932
- (merged to 'next' on 2016-09-12 at 854edde)
933
- + builtin/am: use apply API in run_apply()
934
- + apply: learn to use a different index file
935
- + apply: pass apply state to build_fake_ancestor()
936
- + apply: refactor `git apply` option parsing
937
- + apply: change error_routine when silent
938
- + usage: add get_error_routine() and get_warn_routine()
939
- + usage: add set_warn_routine()
940
- + apply: don't print on stdout in verbosity_silent mode
941
- + apply: make it possible to silently apply
942
- + apply: use error_errno() where possible
943
- + apply: make some parsing functions static again
944
- + apply: move libified code from builtin/apply.c to apply.{c,h}
945
- + apply: rename and move opt constants to apply.h
946
- + builtin/apply: rename option parsing functions
947
- + builtin/apply: make create_one_file() return -1 on error
948
- + builtin/apply: make try_create_file() return -1 on error
949
- + builtin/apply: make write_out_results() return -1 on error
950
- + builtin/apply: make write_out_one_result() return -1 on error
951
- + builtin/apply: make create_file() return -1 on error
952
- + builtin/apply: make add_index_file() return -1 on error
953
- + builtin/apply: make add_conflicted_stages_file() return -1 on error
954
- + builtin/apply: make remove_file() return -1 on error
955
- + builtin/apply: make build_fake_ancestor() return -1 on error
956
- + builtin/apply: change die_on_unsafe_path() to check_unsafe_path()
957
- + builtin/apply: make gitdiff_*() return -1 on error
958
- + builtin/apply: make gitdiff_*() return 1 at end of header
959
- + builtin/apply: make parse_traditional_patch() return -1 on error
960
- + builtin/apply: make apply_all_patches() return 128 or 1 on error
961
- + builtin/apply: move check_apply_state() to apply.c
962
- + builtin/apply: make check_apply_state() return -1 instead of die()ing
963
- + apply: make init_apply_state() return -1 instead of exit()ing
964
- + builtin/apply: move init_apply_state() to apply.c
965
- + builtin/apply: make parse_ignorewhitespace_option() return -1 instead of die()ing
966
- + builtin/apply: make parse_whitespace_option() return -1 instead of die()ing
967
- + builtin/apply: make parse_single_patch() return -1 on error
968
- + builtin/apply: make parse_chunk() return a negative integer on error
969
- + builtin/apply: make find_header() return -128 instead of die()ing
970
- + builtin/apply: read_patch_file() return -1 instead of die()ing
971
- + builtin/apply: make apply_patch() return -1 or -128 instead of die()ing
972
- + apply: move 'struct apply_state' to apply.h
973
- + apply: make some names more specific
974
-
975
- "git am" has been taught to make an internal call to "git apply"'s
976
- innards without spawning the latter as a separate process.
977
-
978
- Will merge to 'master'.
984
+ Will merge to 'next'.
985
986
987
* jk/pack-objects-optim-mru (2016-08-11) 4 commits
@@ -1046,53 +1052,6 @@ of the repositories listed at
1052
Will hold to see if people scream.
1053
1054
1049
-* mh/ref-store (2016-09-09) 38 commits
1050
- (merged to 'next' on 2016-09-12 at 1b0bd3c)
1051
- + refs: implement iteration over only per-worktree refs
1052
- + refs: make lock generic
1053
- + refs: add method to rename refs
1054
- + refs: add methods to init refs db
1055
- + refs: make delete_refs() virtual
1056
- + refs: add method for initial ref transaction commit
1057
- + refs: add methods for reflog
1058
- + refs: add method iterator_begin
1059
- + files_ref_iterator_begin(): take a ref_store argument
1060
- + split_symref_update(): add a files_ref_store argument
1061
- + lock_ref_sha1_basic(): add a files_ref_store argument
1062
- + lock_ref_for_update(): add a files_ref_store argument
1063
- + commit_ref_update(): add a files_ref_store argument
1064
- + lock_raw_ref(): add a files_ref_store argument
1065
- + repack_without_refs(): add a files_ref_store argument
1066
- + refs: make peel_ref() virtual
1067
- + refs: make create_symref() virtual
1068
- + refs: make pack_refs() virtual
1069
- + refs: make verify_refname_available() virtual
1070
- + refs: make read_raw_ref() virtual
1071
- + resolve_gitlink_ref(): rename path parameter to submodule
1072
- + resolve_gitlink_ref(): avoid memory allocation in many cases
1073
- + resolve_gitlink_ref(): implement using resolve_ref_recursively()
1074
- + resolve_ref_recursively(): new function
1075
- + read_raw_ref(): take a (struct ref_store *) argument
1076
- + resolve_gitlink_packed_ref(): remove function
1077
- + resolve_packed_ref(): rename function from resolve_missing_loose_ref()
1078
- + refs: reorder definitions
1079
- + refs: add a transaction_commit() method
1080
- + {lock,commit,rollback}_packed_refs(): add files_ref_store arguments
1081
- + resolve_missing_loose_ref(): add a files_ref_store argument
1082
- + get_packed_ref(): add a files_ref_store argument
1083
- + add_packed_ref(): add a files_ref_store argument
1084
- + refs: create a base class "ref_store" for files_ref_store
1085
- + refs: add a backend method structure
1086
- + refs: rename struct ref_cache to files_ref_store
1087
- + rename_ref_available(): add docstring
1088
- + resolve_gitlink_ref(): eliminate temporary variable
1089
-
1090
- The ref-store abstraction was introduced to the refs API so that we
1091
- can plug in different backends to store references.
1092
-
1093
- Will merge to 'master'.
1094
-
1095
-
1055
* nd/shallow-deepen (2016-06-13) 27 commits
1056
- fetch, upload-pack: --deepen=N extends shallow boundary by N commits
1057
- upload-pack: add get_reachable_list()