What's cooking as of 1.6.5-rc1

Junio C Hamano committed Sep 13, 2009 at 03:07 UTC ecda112d2cad8e2fb67433091ff48c2664491ed8
1 file changed +336
whats/cooking/2009/09/03.txt new
+336
@@ -0,0 +1,336 @@
1 +To: git@vger.kernel.org
2 +Subject: What's cooking in git.git (Sep 2009, #03; Sun, 13)
3 +X-master-at: eaf1c941bbc10f5aa67fcf64e316fb548b910cfe
4 +X-next-at: ad50cbaea8afd009cb843c743b248c53ed6285ee
5 +
6 +What's cooking in git.git (Sep 2009, #03; Sun, 13)
7 +--------------------------------------------------
8 +
9 +Here are the topics that have been cooking. Commits prefixed with '-' are
10 +only in 'pu' while commits prefixed with '+' are in 'next'. The ones
11 +marked with '.' do not appear in any of the integration branches, but I am
12 +still holding onto them.
13 +
14 +In 1.7.0, we plan to correct handful of warts in the interfaces everybody
15 +agrees that they were mistakes. The resulting system may not be strictly
16 +backward compatible. Currently planeed changes are:
17 +
18 + * refuse push to update the checked out branch in a non-bare repo by
19 + default
20 +
21 + Make "git push" into a repository to update the branch that is checked
22 + out fail by default. You can countermand this default by setting a
23 + configuration variable in the receiving repository.
24 +
25 + http://thread.gmane.org/gmane.comp.version-control.git/107758/focus=108007
26 +
27 + * refuse push to delete the current branch by default
28 +
29 + Make "git push $there :$killed" to delete the branch that is pointed at
30 + by its HEAD fail by default. You can countermand this default by
31 + setting a configuration variable in the receiving repository.
32 +
33 + http://thread.gmane.org/gmane.comp.version-control.git/108862/focus=108936
34 +
35 + * git-send-email won't make deep threads by default
36 +
37 + Many people said that by default when sending more than 2 patches the
38 + threading git-send-email makes by default is hard to read, and they
39 + prefer the default be one cover letter and each patch as a direct
40 + follow-up to the cover letter. You can countermand this by setting a
41 + configuration variable.
42 +
43 + http://article.gmane.org/gmane.comp.version-control.git/109790
44 +
45 + * git-status won't be "git-commit --dry-run" anymore
46 +
47 + http://thread.gmane.org/gmane.comp.version-control.git/125989/focus=125993
48 +
49 + * "git-diff -w --exit-code" will exit success if only differences it
50 + found are whitespace changes that are stripped away from the output.
51 +
52 + http://thread.gmane.org/gmane.comp.version-control.git/119731/focus=119751
53 +
54 +During 1.6.5 cycle, 'next' will hold topics meant for 1.6.5 and 1.7.0.
55 +
56 +I tagged and pushed out 1.6.5-rc1. As far as I am concered, all the big
57 +topics eligible for 1.6.5 are now in, except for possibly gfi-options
58 +series from Sverre. Updates to subsystems (svn, gitk, gui, and gitweb)
59 +may still need to be merged in.
60 +
61 +I've been hoping to keep this cycle short, and I'm also hoping to tag the
62 +real 1.6.5 before I vanish for about a week and half later in the
63 +month. so it looks like there may have to be a 1.6.6 to include the
64 +leftover topics.
65 +
66 +--------------------------------------------------
67 +[Graduated to "master"]
68 +
69 +* jc/merge-saner-messages (2009-09-07) 1 commit
70 + + merge-recursive: give less scary messages when merge did not start
71 +
72 +* rc/maint-http-no-head-pack-check (2009-09-09) 1 commit.
73 + + http.c: remove verification of remote packs
74 +
75 +* db/vcs-helper (2009-09-03) 16 commits
76 + + Use a clearer style to issue commands to remote helpers
77 + + Make the "traditionally-supported" URLs a special case
78 + (merged to 'next' on 2009-08-07 at f3533ba)
79 + + Makefile: install hardlinks for git-remote-<scheme> supported by libcurl if possible
80 + + Makefile: do not link three copies of git-remote-* programs
81 + + Makefile: git-http-fetch does not need expat
82 + + http-fetch: Fix Makefile dependancies
83 + + Add transport native helper executables to .gitignore
84 + + git-http-fetch: not a builtin
85 + + Use an external program to implement fetching with curl
86 + + Add support for external programs for handling native fetches
87 +
88 +Up to the part that eject -lcurl from the main "git" binary cleanly are
89 +now in 'master', with a few fix-ups from Jim Mayering.
90 +
91 +* cb/maint-1.6.3-grep-relative-up (2009-09-05) 2 commits.
92 + + grep: accept relative paths outside current working directory
93 + + grep: fix exit status if external_grep() punts
94 +
95 +* jk/unwanted-advices (2009-09-09) 2 commits
96 + + status: make "how to stage" messages optional
97 + + push: make non-fast-forward help message configurable
98 +
99 +* jt/pushinsteadof (2009-09-07) 2 commits
100 + + Add url.<base>.pushInsteadOf: URL rewriting for push only
101 + + Wrap rewrite globals in a struct in preparation for adding another set
102 +
103 +* pk/fast-import-tars (2009-09-03) 1 commit
104 + + import-tars: Allow per-tar author and commit message.
105 +
106 +* pk/fast-import-dirs (2009-09-03) 1 commit
107 + + Add script for importing bits-and-pieces to Git.
108 +
109 +--------------------------------------------------
110 +[New Topics]
111 +
112 +* db/vcs-helper-rest (2009-09-03) 6 commits
113 + - Allow helpers to report in "list" command that the ref is unchanged
114 + - Add support for "import" helper command
115 + - Add a config option for remotes to specify a foreign vcs
116 + - Allow programs to not depend on remotes having urls
117 + - Allow fetch to modify refs
118 + - Use a function to determine whether a remote is valid
119 + (this branch is used by jh/cvs-helper.)
120 +
121 +This is not exactly new. It holds the remainder of the db/vcs-helper
122 +topic.
123 +
124 +--------------------------------------------------
125 +[Stalled]
126 +
127 +* je/send-email-no-subject (2009-08-05) 1 commit
128 + (merged to 'next' on 2009-08-30 at b6455c2)
129 + + send-email: confirm on empty mail subjects
130 +
131 +The existing tests to covers the positive case (i.e. as long as the user
132 +says "yes" to the "do you really want to send this message that lacks
133 +subject", the message is sent) of this feature, but the feature itself
134 +needs its own test to verify the negative case (i.e. does it correctly
135 +stop if the user says "no"?)
136 +
137 +* jh/cvs-helper (2009-08-18) 8 commits
138 + - More fixes to the git-remote-cvs installation procedure
139 + - Fix the Makefile-generated path to the git_remote_cvs package in git-remote-cvs
140 + - Add simple selftests of git-remote-cvs functionality
141 + - git-remote-cvs: Remote helper program for CVS repositories
142 + - 2/2: Add Python support library for CVS remote helper
143 + - 1/2: Add Python support library for CVS remote helper
144 + - Basic build infrastructure for Python scripts
145 + - Allow helpers to request marks for fast-import
146 + (this branch uses db/vcs-helper-rest.)
147 +
148 +Builds on db/vcs-helper. There is a re-roll planned.
149 +
150 +* ne/rev-cache (2009-09-07) 7 commits
151 + . support for commit grafts, slight change to general mechanism
152 + . support for path name caching in rev-cache
153 + . full integration of rev-cache into git, completed test suite
154 + . administrative functions for rev-cache, start of integration into git
155 + . support for non-commit object caching in rev-cache
156 + . basic revision cache system, no integration or features
157 + . man page and technical discussion for rev-cache
158 +
159 +Replaced but I do not think this is ready for 'pu' yet.
160 +
161 +--------------------------------------------------
162 +[Cooking]
163 +
164 +* jh/notes (2009-09-12) 13 commits
165 + - Selftests verifying semantics when loading notes trees with various fanouts
166 + - Teach the notes lookup code to parse notes trees with various fanout schemes
167 + - notes.[ch] fixup: avoid old-style declaration
168 + - Teach notes code to free its internal data structures on request.
169 + - Add '%N'-format for pretty-printing commit notes
170 + - Add flags to get_commit_notes() to control the format of the note string
171 + - t3302-notes-index-expensive: Speed up create_repo()
172 + - fast-import: Add support for importing commit notes
173 + - Teach "-m <msg>" and "-F <file>" to "git notes edit"
174 + - Add an expensive test for git-notes
175 + - Speed up git notes lookup
176 + - Add a script to edit/inspect notes
177 + - Introduce commit notes
178 + (this branch uses sr/gfi-options.)
179 +
180 +Rerolled and queued.
181 +
182 +* jn/gitweb-show-size (2009-09-07) 1 commit
183 + - gitweb: Add 'show-sizes' feature to show blob sizes in tree view
184 +
185 +* lt/maint-traverse-trees-fix (2009-09-06) 1 commit.
186 + - Prepare 'traverse_trees()' for D/F conflict lookahead
187 +
188 +Beginning of the fix to a rather nasty longstanding issue of merging trees
189 +with ("a" "a-b"), ("a/b" "a-b") and just ("a-b"), but my reading of it is
190 +that it is just the first step to demonstrate one-entry lookahead and not
191 +a full solution yet.
192 +
193 +* jc/maint-1.6.0-blank-at-eof (2009-09-05) 10 commits.
194 + (merged to 'next' on 2009-09-07 at 165dc3c)
195 + + core.whitespace: split trailing-space into blank-at-{eol,eof}
196 + + diff --color: color blank-at-eof
197 + + diff --whitespace=warn/error: fix blank-at-eof check
198 + + diff --whitespace=warn/error: obey blank-at-eof
199 + + diff.c: the builtin_diff() deals with only two-file comparison
200 + + apply --whitespace: warn blank but not necessarily empty lines at EOF
201 + + apply --whitespace=warn/error: diagnose blank at EOF
202 + + apply.c: split check_whitespace() into two
203 + + apply --whitespace=fix: detect new blank lines at eof correctly
204 + + apply --whitespace=fix: fix handling of blank lines at the eof
205 +
206 +This started a bit late in the cycle, and I'd rather hold it back during
207 +this feature freeze and push it out after 1.6.5 final.
208 +
209 +* jn/gitweb-blame (2009-09-01) 5 commits
210 + - gitweb: Minify gitweb.js if JSMIN is defined
211 + - gitweb: Create links leading to 'blame_incremental' using JavaScript
212 + (merged to 'next' on 2009-09-07 at 3622199)
213 + + gitweb: Colorize 'blame_incremental' view during processing
214 + + gitweb: Incremental blame (using JavaScript)
215 + + gitweb: Add optional "time to generate page" info in footer
216 +
217 +Ajax-y blame.
218 +
219 +* sr/gfi-options (2009-09-06) 6 commits
220 + (merged to 'next' on 2009-09-07 at 5f6b0ff)
221 + + fast-import: test the new option command
222 + + fast-import: add option command
223 + + fast-import: test the new feature command
224 + + fast-import: add feature command
225 + + fast-import: put marks reading in it's own function
226 + + fast-import: put option parsing code in separate functions
227 + (this branch is used by jh/notes.)
228 +
229 +Perhaps 1.6.5 material but I wasn't sure.
230 +
231 +* nd/sparse (2009-08-20) 19 commits
232 + - sparse checkout: inhibit empty worktree
233 + - Add tests for sparse checkout
234 + - read-tree: add --no-sparse-checkout to disable sparse checkout support
235 + - unpack-trees(): ignore worktree check outside checkout area
236 + - unpack_trees(): apply $GIT_DIR/info/sparse-checkout to the final index
237 + - unpack-trees(): "enable" sparse checkout and load $GIT_DIR/info/sparse-checkout
238 + - unpack-trees.c: generalize verify_* functions
239 + - unpack-trees(): add CE_WT_REMOVE to remove on worktree alone
240 + - Introduce "sparse checkout"
241 + - dir.c: export excluded_1() and add_excludes_from_file_1()
242 + - excluded_1(): support exclude files in index
243 + - unpack-trees(): carry skip-worktree bit over in merged_entry()
244 + - Read .gitignore from index if it is skip-worktree
245 + - Avoid writing to buffer in add_excludes_from_file_1()
246 + - Teach Git to respect skip-worktree bit (writing part)
247 + - Teach Git to respect skip-worktree bit (reading part)
248 + - Introduce "skip-worktree" bit in index, teach Git to get/set this bit
249 + - Add test-index-version
250 + - update-index: refactor mark_valid() in preparation for new options
251 +
252 +--------------------------------------------------
253 +[For 1.7.0]
254 +
255 +* jk/1.7.0-status (2009-09-05) 5 commits
256 + - docs: note that status configuration affects only long format
257 + (merged to 'next' on 2009-09-07 at 8a7c563)
258 + + commit: support alternate status formats
259 + + status: add --porcelain output format
260 + + status: refactor format option parsing
261 + + status: refactor short-mode printing to its own function
262 + (this branch uses jc/1.7.0-status.)
263 +
264 +Gives the --short output format to post 1.7.0 "git commit --dry-run" that
265 +is similar to that of post 1.7.0 "git status".
266 +
267 +* jc/1.7.0-status (2009-09-05) 4 commits
268 + (merged to 'next' on 2009-09-06 at 19d4beb)
269 + + status: typo fix in usage
270 + (merged to 'next' on 2009-08-22 at b3507bb)
271 + + git status: not "commit --dry-run" anymore
272 + + git stat -s: short status output
273 + + git stat: the beginning of "status that is not a dry-run of commit"
274 + (this branch is used by jk/1.7.0-status.)
275 +
276 +With this, "git status" is no longer "git commit --dry-run".
277 +
278 +* jc/1.7.0-send-email-no-thread-default (2009-08-22) 1 commit
279 + (merged to 'next' on 2009-08-22 at 5106de8)
280 + + send-email: make --no-chain-reply-to the default
281 +
282 +* jc/1.7.0-diff-whitespace-only-status (2009-08-30) 4 commits.
283 + (merged to 'next' on 2009-08-30 at 0623572)
284 + + diff.c: fix typoes in comments
285 + (merged to 'next' on 2009-08-27 at 81fb2bd)
286 + + Make test case number unique
287 + (merged to 'next' on 2009-08-02 at 9c08420)
288 + + diff: Rename QUIET internal option to QUICK
289 + + diff: change semantics of "ignore whitespace" options
290 +
291 +This changes exit code from "git diff --ignore-whitespace" and friends
292 +when there is no actual output. It is a backward incompatible change, but
293 +we could argue that it is a bugfix.
294 +
295 +* jc/1.7.0-push-safety (2009-02-09) 2 commits
296 + (merged to 'next' on 2009-08-02 at 38b82fe)
297 + + Refuse deleting the current branch via push
298 + + Refuse updating the current branch in a non-bare repository via push
299 +
300 +--------------------------------------------------
301 +[I have been too busy to purge these]
302 +
303 +* jc/log-tz (2009-03-03) 1 commit.
304 + - Allow --date=local --date=other-format to work as expected
305 +
306 +Maybe some people care about this. I dunno.
307 +
308 +* jc/mailinfo-remove-brackets (2009-07-15) 1 commit.
309 + - mailinfo: -b option keeps [bracketed] strings that is not a [PATCH] marker
310 +
311 +Maybe some people care about this. I dunno.
312 +
313 +* lt/read-directory (2009-05-15) 3 commits.
314 + . Add initial support for pathname conversion to UTF-8
315 + . read_directory(): infrastructure for pathname character set conversion
316 + . Add 'fill_directory()' helper function for directory traversal
317 +
318 +* cc/sequencer-rebase-i (2009-08-28) 15 commits
319 + - rebase -i: use "git sequencer--helper --cherry-pick"
320 + - sequencer: add "--cherry-pick" option to "git sequencer--helper"
321 + - sequencer: add "do_commit()" and related functions working on "next_commit"
322 + - pick: libify "pick_help_msg()"
323 + - revert: libify cherry-pick and revert functionnality
324 + - rebase -i: use "git sequencer--helper --fast-forward"
325 + - sequencer: let "git sequencer--helper" callers set "allow_dirty"
326 + - sequencer: add "--fast-forward" option to "git sequencer--helper"
327 + - sequencer: add "do_fast_forward()" to perform a fast forward
328 + - rebase -i: use "git sequencer--helper --reset-hard"
329 + - sequencer: add "--reset-hard" option to "git sequencer--helper"
330 + - sequencer: add "reset_almost_hard()" and related functions
331 + - rebase -i: use "git sequencer--helper --make-patch"
332 + - sequencer: add "make_patch" function to save a patch
333 + - sequencer: add "builtin-sequencer--helper.c"
334 +
335 +This was to be replaced with multiple bite-sized smaller topics. We've
336 +seen one such topic for "git reset" on the list.