* [ANNOUNCE] Git v2.0.0
@ 2014-05-28 22:31 Junio C Hamano
2014-05-28 22:43 ` Junio C Hamano
` (2 more replies)
0 siblings, 3 replies; 15+ messages in thread
From: Junio C Hamano @ 2014-05-28 22:31 UTC (permalink / raw)
To: git; +Cc: Linux Kernel
The latest feature release Git v2.0.0 is now available at the
usual places.
We had to delay the final release by a week or so because we found a
few problems in earlier release candidates (request-pull had a
regression that stopped it from showing the "tags/" prefix in
"Please pull tags/frotz" when the user asked to compose a request
for 'frotz' to be pulled; a code path in git-gui to support ancient
versions of Git incorrectly triggered for Git 2.0), which we had to
fix in an extra unplanned release candidate.
Hopefully the next cycle will become shorter, as topics that have
been cooking on the 'next' branch had extra time to mature, so it
all evens out in the end ;-).
The tarballs are found at:
https://www.kernel.org/pub/software/scm/git/testing/
The following public repositories all have a copy of the 'v2.0.0'
tag and the 'master' branch that the tag points at:
url = https://kernel.googlesource.com/pub/scm/git/git
url = git://repo.or.cz/alt-git.git
url = https://code.google.com/p/git-core/
url = git://git.sourceforge.jp/gitroot/git-core/git.git
url = git://git-core.git.sourceforge.net/gitroot/git-core/git-core
url = https://github.com/gitster/git
Git v2.0 Release Notes
======================
Backward compatibility notes
----------------------------
When "git push [$there]" does not say what to push, we have used the
traditional "matching" semantics so far (all your branches were sent
to the remote as long as there already are branches of the same name
over there). In Git 2.0, the default is now the "simple" semantics,
which pushes:
- only the current branch to the branch with the same name, and only
when the current branch is set to integrate with that remote
branch, if you are pushing to the same remote as you fetch from; or
- only the current branch to the branch with the same name, if you
are pushing to a remote that is not where you usually fetch from.
You can use the configuration variable "push.default" to change
this. If you are an old-timer who wants to keep using the
"matching" semantics, you can set the variable to "matching", for
example. Read the documentation for other possibilities.
When "git add -u" and "git add -A" are run inside a subdirectory
without specifying which paths to add on the command line, they
operate on the entire tree for consistency with "git commit -a" and
other commands (these commands used to operate only on the current
subdirectory). Say "git add -u ." or "git add -A ." if you want to
limit the operation to the current directory.
"git add <path>" is the same as "git add -A <path>" now, so that
"git add dir/" will notice paths you removed from the directory and
record the removal. In older versions of Git, "git add <path>" used
to ignore removals. You can say "git add --ignore-removal <path>" to
add only added or modified paths in <path>, if you really want to.
The "-q" option to "git diff-files", which does *NOT* mean "quiet",
has been removed (it told Git to ignore deletion, which you can do
with "git diff-files --diff-filter=d").
"git request-pull" lost a few "heuristics" that often led to mistakes.
The default prefix for "git svn" has changed in Git 2.0. For a long
time, "git svn" created its remote-tracking branches directly under
refs/remotes, but it now places them under refs/remotes/origin/ unless
it is told otherwise with its "--prefix" option.
Updates since v1.9 series
-------------------------
UI, Workflows & Features
* The "multi-mail" post-receive hook (in contrib/) has been updated
to a more recent version from upstream.
* The "remote-hg/bzr" remote-helper interfaces (used to be in
contrib/) are no more. They are now maintained separately as
third-party plug-ins in their own repositories.
* "git gc --aggressive" learned "--depth" option and
"gc.aggressiveDepth" configuration variable to allow use of a less
insane depth than the built-in default value of 250.
* "git log" learned the "--show-linear-break" option to show where a
single strand-of-pearls is broken in its output.
* The "rev-parse --parseopt" mechanism used by scripted Porcelains to
parse command-line options and to give help text learned to take
the argv-help (the placeholder string for an option parameter,
e.g. "key-id" in "--gpg-sign=<key-id>").
* The pattern to find where the function begins in C/C++ used in
"diff" and "grep -p" has been updated to improve viewing C++
sources.
* "git rebase" learned to interpret a lone "-" as "@{-1}", the
branch that we were previously on.
* "git commit --cleanup=<mode>" learned a new mode, scissors.
* "git tag --list" output can be sorted using "version sort" with
"--sort=version:refname".
* Discard the accumulated "heuristics" to guess from which branch the
result wants to be pulled from and make sure that what the end user
specified is not second-guessed by "git request-pull", to avoid
mistakes. When you pushed out your 'master' branch to your public
repository as 'for-linus', use the new "master:for-linus" syntax to
denote the branch to be pulled.
* "git grep" learned to behave in a way similar to native grep when
"-h" (no header) and "-c" (count) options are given.
* "git push" via transport-helper interface has been updated to
allow forced ref updates in a way similar to the natively
supported transports.
* The "simple" mode is the default for "git push".
* "git add -u" and "git add -A", when run without any pathspec, is a
tree-wide operation even when run inside a subdirectory of a
working tree.
* "git add <path>" is the same as "git add -A <path>" now.
* "core.statinfo" configuration variable, which is a
never-advertised synonym to "core.checkstat", has been removed.
* The "-q" option to "git diff-files", which does *NOT* mean
"quiet", has been removed (it told Git to ignore deletion, which
you can do with "git diff-files --diff-filter=d").
* Server operators can loosen the "tips of refs only" restriction for
the remote archive service with the uploadarchive.allowUnreachable
configuration option.
* The progress indicators from various time-consuming commands have
been marked for i18n/l10n.
* "git notes -C <blob>" diagnoses as an error an attempt to use an
object that is not a blob.
* "git config" learned to read from the standard input when "-" is
given as the value to its "--file" parameter (attempting an
operation to update the configuration in the standard input is
rejected, of course).
* Trailing whitespaces in .gitignore files, unless they are quoted
for fnmatch(3), e.g. "path\ ", are warned and ignored. Strictly
speaking, this is a backward-incompatible change, but very unlikely
to bite any sane user and adjusting should be obvious and easy.
* Many commands that create commits, e.g. "pull" and "rebase",
learned to take the "--gpg-sign" option on the command line.
* "git commit" can be told to always GPG sign the resulting commit
by setting the "commit.gpgsign" configuration variable to "true"
(the command-line option "--no-gpg-sign" should override it).
* "git pull" can be told to only accept fast-forward by setting the
new "pull.ff" configuration variable.
* "git reset" learned the "-N" option, which does not reset the index
fully for paths the index knows about but the tree-ish the command
resets to does not (these paths are kept as intend-to-add entries).
Performance, Internal Implementation, etc.
* The compilation options to port to AIX and to MSVC have been
updated.
* We started using wildmatch() in place of fnmatch(3) a few releases
ago; complete the process and stop using fnmatch(3).
* Uses of curl's "multi" interface and "easy" interface do not mix
well when we attempt to reuse outgoing connections. Teach the RPC
over HTTP code, used in the smart HTTP transport, not to use the
"easy" interface.
* The bitmap-index feature from JGit has been ported, which should
significantly improve performance when serving objects from a
repository that uses it.
* The way "git log --cc" shows a combined diff against multiple
parents has been optimized.
* The prefixcmp() and suffixcmp() functions are gone. Use
starts_with() and ends_with(), and also consider if skip_prefix()
suits your needs better when using the former.
Also contains various documentation updates and code clean-ups. Many
of them came from flurry of activities as GSoC candidate microproject
exercises.
Fixes since v1.9 series
-----------------------
Unless otherwise noted, all the fixes since v1.9 in the maintenance
track are contained in this release (see the maintenance releases'
notes for details).
* "git p4" was broken in 1.9 release to deal with changes in binary
files.
(merge 749b668 cl/p4-use-diff-tree later to maint).
* The shell prompt script (in contrib/), when using the PROMPT_COMMAND
interface, used an unsafe construct when showing the branch name in
$PS1.
(merge 1e4119c8 rh/prompt-pcmode-avoid-eval-on-refname later to maint).
* "git rebase" used a POSIX shell construct FreeBSD's /bin/sh does not
work well with.
(merge 8cd6596 km/avoid-non-function-return-in-rebase later to maint).
* zsh prompt (in contrib/) leaked unnecessary error messages.
* Bash completion (in contrib/) did not complete the refs and remotes
correctly given "git pu<TAB>" when "pu" is aliased to "push".
* Some more Unicode code points, defined in Unicode 6.3 as having zero
width, have been taught to our display column counting logic.
(merge d813ab9 tb/unicode-6.3-zero-width later to maint).
* Some tests used shell constructs that did not work well on FreeBSD
(merge ff7a1c6 km/avoid-bs-in-shell-glob later to maint).
(merge 00764ca km/avoid-cp-a later to maint).
* "git update-ref --stdin" did not fail a request to create a ref
when the ref already existed.
(merge b9d56b5 mh/update-ref-batch-create-fix later to maint).
* "git diff --no-index -Mq a b" fell into an infinite loop.
(merge ad1c3fb jc/fix-diff-no-index-diff-opt-parse later to maint).
* "git fetch --prune", when the right-hand side of multiple fetch
refspecs overlap (e.g. storing "refs/heads/*" to
"refs/remotes/origin/*", while storing "refs/frotz/*" to
"refs/remotes/origin/fr/*"), aggressively thought that lack of
"refs/heads/fr/otz" on the origin site meant we should remove
"refs/remotes/origin/fr/otz" from us, without checking their
"refs/frotz/otz" first.
Note that such a configuration is inherently unsafe (think what
should happen when "refs/heads/fr/otz" does appear on the origin
site), but that is not a reason not to be extra careful.
(merge e6f6371 cn/fetch-prune-overlapping-destination later to maint).
* "git status --porcelain --branch" showed its output with labels
"ahead/behind/gone" translated to the user's locale.
(merge 7a76c28 mm/status-porcelain-format-i18n-fix later to maint).
* A stray environment variable $prefix could have leaked into and
affected the behaviour of the "subtree" script (in contrib/).
* When it is not necessary to edit a commit log message (e.g. "git
commit -m" is given a message without specifying "-e"), we used to
disable the spawning of the editor by overriding GIT_EDITOR, but
this means all the uses of the editor, other than to edit the
commit log message, are also affected.
(merge b549be0 bp/commit-p-editor later to maint).
* "git mv" that moves a submodule forgot to adjust the array that
uses to keep track of which submodules were to be moved to update
its configuration.
(merge fb8a4e8 jk/mv-submodules-fix later to maint).
* Length limit for the pathname used when removing a path in a deep
subdirectory has been removed to avoid buffer overflows.
(merge 2f29e0c mh/remove-subtree-long-pathname-fix later to maint).
* The test helper lib-terminal always run an actual test_expect_*
when included, which screwed up with the use of skil-all that may
have to be done later.
(merge 7e27173 jk/lib-terminal-lazy later to maint).
* "git index-pack" used a wrong variable to name the keep-file in an
error message when the file cannot be written or closed.
(merge de983a0 nd/index-pack-error-message later to maint).
* "rebase -i" produced a broken insn sheet when the title of a commit
happened to contain '\n' (or ended with '\c') due to a careless use
of 'echo'.
(merge cb1aefd us/printf-not-echo later to maint).
* There were a few instances of 'git-foo' remaining in the
documentation that should have been spelled 'git foo'.
(merge 3c3e6f5 rr/doc-merge-strategies later to maint).
* Serving objects from a shallow repository needs to write a
new file to hold the temporary shallow boundaries, but it was not
cleaned when we exit due to die() or a signal.
(merge 7839632 jk/shallow-update-fix later to maint).
* When "git stash pop" stops after failing to apply the stash
(e.g. due to conflicting changes), the stash is not dropped. State
that explicitly in the output to let the users know.
(merge 2d4c993 jc/stash-pop-not-popped later to maint).
* The labels in "git status" output that describe the nature of
conflicts (e.g. "both deleted") were limited to 20 bytes, which was
too short for some l10n (e.g. fr).
(merge c7cb333 jn/wt-status later to maint).
* "git clean -d pathspec" did not use the given pathspec correctly
and ended up cleaning too much.
(merge 1f2e108 jk/clean-d-pathspec later to maint).
* "git difftool" misbehaved when the repository is bound to the
working tree with the ".git file" mechanism, where a textual file
".git" tells us where it is.
(merge fcfec8b da/difftool-git-files later to maint).
* "git push" did not pay attention to "branch.*.pushremote" if it is
defined earlier than "remote.pushdefault"; the order of these two
variables in the configuration file should not matter, but it did
by mistake.
(merge 98b406f jk/remote-pushremote-config-reading later to maint).
* Code paths that parse timestamps in commit objects have been
tightened.
(merge f80d1f9 jk/commit-dates-parsing-fix later to maint).
* "git diff --external-diff" incorrectly fed the submodule directory
in the working tree to the external diff driver when it knew that it
is the same as one of the versions being compared.
(merge aba4727 tr/diff-submodule-no-reuse-worktree later to maint).
* "git reset" needs to refresh the index when working in a working
tree (it can also be used to match the index to the HEAD in an
otherwise bare repository), but it failed to set up the working
tree properly, causing GIT_WORK_TREE to be ignored.
(merge b7756d4 nd/reset-setup-worktree later to maint).
* "git check-attr" when working on a repository with a working tree
did not work well when the working tree was specified via the
"--work-tree" (and obviously with "--git-dir") option.
(merge cdbf623 jc/check-attr-honor-working-tree later to maint).
* "merge-recursive" was broken in 1.7.7 era and stopped working in
an empty (temporary) working tree, when there are renames
involved. This has been corrected.
(merge 6e2068a bk/refresh-missing-ok-in-merge-recursive later to maint.)
* "git rev-parse" was loose in rejecting command-line arguments
that do not make sense, e.g. "--default" without the required
value for that option.
(merge a43219f ds/rev-parse-required-args later to maint.)
* "include.path" variable (or any variable that expects a path that
can use ~username expansion) in the configuration file is not a
boolean, but the code failed to check it.
(merge 67beb60 jk/config-path-include-fix later to maint.)
* Commands that take pathspecs on the command line misbehaved when
the pathspec is given as an absolute pathname (which is a
practice not particularly encouraged) that points at a symbolic
link in the working tree.
(merge 6127ff6 mw/symlinks later to maint.)
* "git diff --quiet -- pathspec1 pathspec2" sometimes did not return
the correct status value.
(merge f34b205 nd/diff-quiet-stat-dirty later to maint.)
* Attempting to deepen a shallow repository by fetching over smart
HTTP transport failed in the protocol exchange, when the no-done
extension was used. The fetching side waited for the list of
shallow boundary commits after the sending side stopped talking to
it.
(merge 0232852 nd/http-fetch-shallow-fix later to maint.)
* Allow "git cmd path/", when the 'path' is where a submodule is
bound to the top-level working tree, to match 'path', despite the
extra and unnecessary trailing slash (such a slash is often
given by command-line completion).
(merge 2e70c01 nd/submodule-pathspec-ending-with-slash later to maint.)
* Documentation and in-code comments had many instances of mistaken
use of "nor", which have been corrected.
(merge 235e8d5 jl/nor-or-nand-and later to maint).
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-28 22:31 [ANNOUNCE] Git v2.0.0 Junio C Hamano
@ 2014-05-28 22:43 ` Junio C Hamano
2014-05-28 23:17 ` Felipe Contreras
2014-06-03 2:08 ` NeilBrown
2 siblings, 0 replies; 15+ messages in thread
From: Junio C Hamano @ 2014-05-28 22:43 UTC (permalink / raw)
To: git; +Cc: Linux Kernel
Junio C Hamano <gitster@pobox.com> writes:
> The tarballs are found at:
>
> https://www.kernel.org/pub/software/scm/git/testing/
Heh, I do not know how this slipped in, but the real release tarball
is not in git/testing/ but found at:
https://www.kernel.org/pub/software/scm/git/
^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [ANNOUNCE] Git v2.0.0
2014-05-28 22:31 [ANNOUNCE] Git v2.0.0 Junio C Hamano
2014-05-28 22:43 ` Junio C Hamano
@ 2014-05-28 23:17 ` Felipe Contreras
2014-05-28 23:42 ` Felipe Contreras
2014-05-29 18:53 ` Jeff King
2014-06-03 2:08 ` NeilBrown
2 siblings, 2 replies; 15+ messages in thread
From: Felipe Contreras @ 2014-05-28 23:17 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git, git-fc, Jeff King
This is the last mail I sent to you, because you ignore them anyway, and
remove them from the mailing list.
I'm am cc'ing the git-fc mailing list so there's a public track record
of this, so you can't claim it didn't happen.
Junio C Hamano wrote:
> * The "remote-hg/bzr" remote-helper interfaces (used to be in
> contrib/) are no more. They are now maintained separately as
> third-party plug-ins in their own repositories.
This is a lie. You are saying they don't exist any more, but they do
exist, they "graduated" according to your same words.
Also, in mail [1] Jeff said:
But that being said, this is Felipe's code. While we have a legal
right to distribute it in v2.0, if he would really prefer it out for
v2.0, I would respect that.
To which you agreed, however, after you fucked up v2.0 and removed an
important patch, I said I changed my wish that I didn't want to disturb
v2.0 in mail [2], a mail you conveniently removed from the tracked
record.
In mail [3] you acknowledged my wish, and you said you were going to put
stubs for v2.0, and you didn't. You also conveniently removed this mail
from the archives.
Your rhetoric to make it appear as if the code is gone, your repeated
failures to accomplish my wish, even you said you would, and your
deliberate removal of the relevant discussion gives me no choice.
I threat all this as deliberate acts of aggression, and I will respond
as I said I would, and bring as much public attention to what you are
doing as possible.
[1] 20140516084126.GB21468@sigill.intra.peff.net
[2] 537bbd6c1daf_a6f166b308b0@nysa.notmuch
[3] xmqqlhtwrufq.fsf@gitster.dls.corp.google.com
For reference, here's the full content of mail [2]:
From: Felipe Contreras <felipe.contreras@gmail.com>
Subject: Re: [PATCH] remote-helpers: point at their upstream repositories
To: Junio C Hamano <gitster@pobox.com>, Felipe Contreras <felipe.contreras@gmail.com>
Cc: Jeff King <peff@peff.net>, git@vger.kernel.org
Date: Tue, 20 May 2014 15:39:08 -0500
--- text/plain ---
Junio C Hamano wrote:
> Felipe Contreras <felipe.contreras@gmail.com> writes:
>
> > Junio C Hamano wrote:
> >
> >> 2. add warning that is given every time the scripts are run and
> >> give the same instruction as in README.
> >>
> >> 3. (optional) cripple the script to make them always fail after
> >> showing the same warning as above.
> >
> > This is what I want, and I already sent the patches for; the scripts
> > will be stubs. At this point you would have effectively removed the
> > code, which what I want.
> >
> >> 4. Keep README and retire everything else.
> >
> > After you've removed the code, I don't care what you do, but I'd say you
> > should remove the stubs after a long period of time.
>
> Let's try this in a different way, as I sense there is a
> misunderstanding somewhere about your "wish".
>
> >> "that" does not refer to "remove them at v2.0 (unconditional)". It
> >> refers to "If Felipe really wants for the removal for v2.0, I would
> >> respect that". And I saw you said you did not want to disrupt v2.0.
> >>
> >> If the options I listed all meant removal at v2.0, then I would
> >> understand your complaints, but that is not the case, so I am not
> >> sure what to make of that.
> >
> > It is a weird choice of semantics then. You said you would "respect" my
> > wish, but your proposals did not "follow" my wish.
>
> I understand you do not want to disrupt v2.0. My assumption of that
> "not disrupting v2.0" has been "there still are git-remote-{hg,bzr}
> that work just like what they had in v1.9.x, perhaps with some
> enhancements and regressions you added in the meantime", and I
> understood Peff's comment "If Felipe wants the removal" to mean that
> kind of "disruption", i.e. "there is no git-remote-{hg,bzr} that
> work.", which would be either step 3 or 4.
>
> But your "After you've removed the code" comment above makes me
> wonder that perhaps your definition of "not disrupting" was
> different from ours (which is not good or bad, just different) and
> you consider that step 3. is "removal but not distupting v2.0"?
>
> If that is what you want in v2.0, then please say so, and I already
> said I am fine with that.
No, I already said I do not want the code removed from v2.0, that's why
I sent patches that simply added a warning, and I specifically said
those were for 2.0.
However, after seeing this commit:
10e1fee (Revert "Merge branch 'fc/transport-helper-sync-error-fix'")
Which is:
1) Inaccurate
2) A lie (*you* broke 2.0, not me)
3) A disservice to users
I therefore change my wish for you to remove all the remote helpers code
and a replace them with stubs (the patches I originally sent for
post-2.0).
It was a mistake from me to believe you would do the sensible thing for
2.0.
So to make it clear, I now request that you do:
1) Remove all the code.
Since my patches were removed from the list, here's an updated patch
that applies on top of 'master'
https://github.com/felipec/git/commits/up/remote/remove
2) Reapply d508e4a (Merge branch 'fc/transport-helper-sync-error-fix')
Since the code in question is no longer part of v2.0, a "possible
regression" that you aren't even sure of cannot be the rationale to
revert this code.
Your commit 10e1fee (Revert "Merge branch
'fc/transport-helper-sync-error-fix'") actively hurts the
out-of-tree tools, so I'll consider a failure to re-revert a hostile
action.
3) Update the release notes to mention these tools have been removed
Additionally, you might want to:
4) Re-add the following release note:
* "git push" via transport-helper interface (e.g. remote-hg) has
been updated to allow forced ref updates in a way similar to the
natively supported transports
I don't know why you removed it in the first place. Clearly you pay
no attention at all to these interfaces.
I expect you to do at the very least 1) and 2).
--
Felipe Contreras
^ permalink raw reply [flat|nested] 15+ messages in thread
* RE: [ANNOUNCE] Git v2.0.0
2014-05-28 23:17 ` Felipe Contreras
@ 2014-05-28 23:42 ` Felipe Contreras
2014-05-29 18:53 ` Jeff King
1 sibling, 0 replies; 15+ messages in thread
From: Felipe Contreras @ 2014-05-28 23:42 UTC (permalink / raw)
To: Felipe Contreras, Junio C Hamano; +Cc: git, git-fc, Jeff King
Felipe Contreras wrote:
> In mail [3] you acknowledged my wish, and you said you were going to put
> stubs for v2.0, and you didn't. You also conveniently removed this mail
> from the archives.
My bad. You actually did it. I missed it because the commit is named
'Revert "Merge branch 'jc/graduate-remote-hg-bzr' (early part)', which
is not at all what it is doing.
So it's just the release notes that are misleading.
--
Felipe Contreras
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-28 23:17 ` Felipe Contreras
2014-05-28 23:42 ` Felipe Contreras
@ 2014-05-29 18:53 ` Jeff King
2014-05-29 19:23 ` David Kastrup
2014-05-30 21:42 ` Felipe Contreras
1 sibling, 2 replies; 15+ messages in thread
From: Jeff King @ 2014-05-29 18:53 UTC (permalink / raw)
To: Felipe Contreras; +Cc: Junio C Hamano, git, git-fc
On Wed, May 28, 2014 at 06:17:25PM -0500, Felipe Contreras wrote:
> This is the last mail I sent to you, because you ignore them anyway, and
> remove them from the mailing list.
> [...]
> [2], a mail you conveniently removed from the tracked record.
> [...]
> You also conveniently removed this mail from the archives.
I see you already noticed the changes in v2.0, but I wanted to address
these points, because I consider silent censorship to be a serious
accusation.
I do not think Junio or anyone else has the technical ability to remove
messages from the archive. There is not one archive, but rather several
that get messages straight from vger.kernel.org and keep their own
database (e.g., gmane, marc, spinics, nabble). E.g., here is the
"deleted" message on nabble:
http://git.661346.n2.nabble.com/PATCH-remote-helpers-point-at-their-upstream-repositories-td7610799i20.html#a7611324
Here it is on gmane:
http://permalink.gmane.org/gmane.comp.version-control.git/249741
However, I had to pull that link from the NNTP interface. If you look at
the non-threaded web interface for gmane here:
http://blog.gmane.org/gmane.comp.version-control.git/day=20140520
and here:
http://blog.gmane.org/gmane.comp.version-control.git/day=20140521
you will see that there is a huge gap in the list coverage from about
midnight on the 20th until the 24th (but these messages are available
via nntp). So this seems much more like a gmane bug than anything else.
I've reported the bug to gmane.discuss (no link yet, as I'm waiting for
the message to go through, but it is not a high traffic group, so it
should be easy to find the thread once it is there).
-Peff
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-29 18:53 ` Jeff King
@ 2014-05-29 19:23 ` David Kastrup
2014-05-29 19:45 ` Jeff King
2014-05-30 21:42 ` Felipe Contreras
1 sibling, 1 reply; 15+ messages in thread
From: David Kastrup @ 2014-05-29 19:23 UTC (permalink / raw)
To: Jeff King; +Cc: Felipe Contreras, Junio C Hamano, git, git-fc
Jeff King <peff@peff.net> writes:
> On Wed, May 28, 2014 at 06:17:25PM -0500, Felipe Contreras wrote:
>
>> This is the last mail I sent to you, because you ignore them anyway, and
>> remove them from the mailing list.
>> [...]
>> [2], a mail you conveniently removed from the tracked record.
>> [...]
>> You also conveniently removed this mail from the archives.
>
> I see you already noticed the changes in v2.0, but I wanted to address
> these points, because I consider silent censorship to be a serious
> accusation.
>
> I do not think Junio or anyone else has the technical ability to remove
> messages from the archive.
You can post self-destructing messages by adding X-no-archive: yes if I
am not mistaken. But that only concerns stuff you post yourself.
> There is not one archive, but rather several that get messages
> straight from vger.kernel.org and keep their own database (e.g.,
> gmane, marc, spinics, nabble).
Frankly, I find it weird that vger.kernel.org does not have an archive
of its own. But yes, that makes it unlikely that silent censorship is
much of a thing. A list moderator may put a particular sender on silent
moderation, where postings will only appear once he has acknowledged
them. However, that is a manual and burdensome process and requires an
up-front decision to do so. Once a message made it to the list, the
various archives will pick it up.
--
David Kastrup
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-29 19:23 ` David Kastrup
@ 2014-05-29 19:45 ` Jeff King
0 siblings, 0 replies; 15+ messages in thread
From: Jeff King @ 2014-05-29 19:45 UTC (permalink / raw)
To: David Kastrup; +Cc: Felipe Contreras, Junio C Hamano, git, git-fc
On Thu, May 29, 2014 at 09:23:06PM +0200, David Kastrup wrote:
> > I do not think Junio or anyone else has the technical ability to remove
> > messages from the archive.
>
> You can post self-destructing messages by adding X-no-archive: yes if I
> am not mistaken. But that only concerns stuff you post yourself.
Right, I was thinking specifically of deleting somebody else's message.
The other obvious choke point is to convince vger to silently drop
messages from somebody, but:
1. That is different than deleting already-posted messages.
2. vger is maintained by kernel.org folks, none of whom is a
regular on the git list. So it would involve some collusion with
those admins.
That is pretty clearly not what happened here (the messages did go out
to the list).
> Frankly, I find it weird that vger.kernel.org does not have an archive
> of its own.
I don't think there is much need, as gmane is pretty featureful (and if
you disagree, there are other competitors, or you can set up your own).
I assume the current situation grew organically (somebody wanted an
archive, so they set it up, and then vger saw no need to compete).
-Peff
PS My gmane bug report posted here:
http://article.gmane.org/gmane.discuss/16175
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-29 18:53 ` Jeff King
2014-05-29 19:23 ` David Kastrup
@ 2014-05-30 21:42 ` Felipe Contreras
2014-05-31 9:52 ` David Kastrup
1 sibling, 1 reply; 15+ messages in thread
From: Felipe Contreras @ 2014-05-30 21:42 UTC (permalink / raw)
To: Jeff King, Felipe Contreras; +Cc: Junio C Hamano, git, git-fc
Jeff King wrote:
> On Wed, May 28, 2014 at 06:17:25PM -0500, Felipe Contreras wrote:
>
> > This is the last mail I sent to you, because you ignore them anyway, and
> > remove them from the mailing list.
> > [...]
> > [2], a mail you conveniently removed from the tracked record.
> > [...]
> > You also conveniently removed this mail from the archives.
>
> I see you already noticed the changes in v2.0, but I wanted to address
> these points, because I consider silent censorship to be a serious
> accusation.
Yes, I also think silent censorship is a very seriours matter, and I was
very dissapointed that this mailing list would engage in that.
> I've reported the bug to gmane.discuss (no link yet, as I'm waiting
> for the message to go through, but it is not a high traffic group, so
> it should be easy to find the thread once it is there).
Thanks. At first I thought that was the reason, but then I noticed it
was always my mails that seemed to get this "bug", so I decided it was
too much of a coincidence.
Hopefully it's indeed a bug.
--
Felipe Contreras
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-30 21:42 ` Felipe Contreras
@ 2014-05-31 9:52 ` David Kastrup
2014-06-02 6:36 ` Jeff King
0 siblings, 1 reply; 15+ messages in thread
From: David Kastrup @ 2014-05-31 9:52 UTC (permalink / raw)
To: Felipe Contreras; +Cc: Jeff King, Junio C Hamano, git, git-fc
Felipe Contreras <felipe.contreras@gmail.com> writes:
> Jeff King wrote:
>> On Wed, May 28, 2014 at 06:17:25PM -0500, Felipe Contreras wrote:
>>
>> > This is the last mail I sent to you, because you ignore them anyway, and
>> > remove them from the mailing list.
>> > [...]
>> > [2], a mail you conveniently removed from the tracked record.
>> > [...]
>> > You also conveniently removed this mail from the archives.
>>
>> I see you already noticed the changes in v2.0, but I wanted to address
>> these points, because I consider silent censorship to be a serious
>> accusation.
>
> Yes, I also think silent censorship is a very seriours matter, and I was
> very dissapointed that this mailing list would engage in that.
>
>> I've reported the bug to gmane.discuss (no link yet, as I'm waiting
>> for the message to go through, but it is not a high traffic group, so
>> it should be easy to find the thread once it is there).
>
> Thanks. At first I thought that was the reason, but then I noticed it
> was always my mails that seemed to get this "bug", so I decided it was
> too much of a coincidence.
Some mailing list filters and/or spam filters flag mails with too many
recipients so that they need to pass through moderation first. The
typical threads on this list are short and have few recipients while
longer threads, due to the list policy of adding every participants to
the Cc, will tend to have more recipients.
So there may a bias against long-running threads with multiple
participants with regard to timely delivery.
And frankly, if I were a list moderator and software asked me through
this sort of coincidence whether a mail should be delivered or not and a
glance at it shows nothing but insults, wild accusations, threats and so
on for the umpteenth time, I'd consider twice clicking "Accept".
Whether or not I ultimately did so, this would likely contribute to the
delay.
--
David Kastrup
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-31 9:52 ` David Kastrup
@ 2014-06-02 6:36 ` Jeff King
2014-06-02 6:57 ` Felipe Contreras
2014-06-02 7:24 ` David Kastrup
0 siblings, 2 replies; 15+ messages in thread
From: Jeff King @ 2014-06-02 6:36 UTC (permalink / raw)
To: David Kastrup; +Cc: Felipe Contreras, Junio C Hamano, git, git-fc
On Sat, May 31, 2014 at 11:52:24AM +0200, David Kastrup wrote:
> Some mailing list filters and/or spam filters flag mails with too many
> recipients so that they need to pass through moderation first. The
> typical threads on this list are short and have few recipients while
> longer threads, due to the list policy of adding every participants to
> the Cc, will tend to have more recipients.
AFAIK, vger does not do anything like this. They block HTML, messages
lacking a message-id, messages over 100K, and certain taboo phrases:
http://vger.kernel.org/majordomo-info.html#taboo
And anyway, I do not think vger is responsible here. The messages were
delivered through the list, and other archives have them. This looks
like a gmane problem.
According to gmane.org, their admins will look manually at messages
flagged as spam, but I find it unlikely that they flagged several days
worth of git traffic (and when they do, I think they cross-post them to
a spam group in NNTP, and the messages do not seem to be marked as
such). So I think this really is just a bug.
> And frankly, if I were a list moderator and software asked me through
> this sort of coincidence whether a mail should be delivered or not and a
> glance at it shows nothing but insults, wild accusations, threats and so
> on for the umpteenth time, I'd consider twice clicking "Accept".
> Whether or not I ultimately did so, this would likely contribute to the
> delay.
I do not disagree, but please let's not rehash all of that again.
-Peff
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-06-02 6:36 ` Jeff King
@ 2014-06-02 6:57 ` Felipe Contreras
2014-06-02 7:24 ` David Kastrup
1 sibling, 0 replies; 15+ messages in thread
From: Felipe Contreras @ 2014-06-02 6:57 UTC (permalink / raw)
To: Jeff King, David Kastrup; +Cc: Felipe Contreras, Junio C Hamano, git, git-fc
Jeff King wrote:
> On Sat, May 31, 2014 at 11:52:24AM +0200, David Kastrup wrote:
> > And frankly, if I were a list moderator and software asked me through
> > this sort of coincidence whether a mail should be delivered or not and a
> > glance at it shows nothing but insults, wild accusations, threats and so
> > on for the umpteenth time, I'd consider twice clicking "Accept".
> > Whether or not I ultimately did so, this would likely contribute to the
> > delay.
>
> I do not disagree, but please let's not rehash all of that again.
FTR. I haven't insulted anybody, I on the other hand have been insulted
plenty of times, included by Junio.
--
Felipe Contreras
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-06-02 6:36 ` Jeff King
2014-06-02 6:57 ` Felipe Contreras
@ 2014-06-02 7:24 ` David Kastrup
1 sibling, 0 replies; 15+ messages in thread
From: David Kastrup @ 2014-06-02 7:24 UTC (permalink / raw)
To: Jeff King; +Cc: Felipe Contreras, Junio C Hamano, git, git-fc
Jeff King <peff@peff.net> writes:
> On Sat, May 31, 2014 at 11:52:24AM +0200, David Kastrup wrote:
>
>> Some mailing list filters and/or spam filters flag mails with too many
>> recipients so that they need to pass through moderation first. The
>> typical threads on this list are short and have few recipients while
>> longer threads, due to the list policy of adding every participants to
>> the Cc, will tend to have more recipients.
>
> AFAIK, vger does not do anything like this. They block HTML, messages
> lacking a message-id, messages over 100K, and certain taboo phrases:
>
> http://vger.kernel.org/majordomo-info.html#taboo
>
> And anyway, I do not think vger is responsible here. The messages were
> delivered through the list, and other archives have them. This looks
> like a gmane problem.
I am reading more than one list through Gmane/nntp, and in the last
years it was not infrequent that delivery paused for even days and/or
spurious old messages from the last day or even more were getting
redelivered.
> According to gmane.org, their admins will look manually at messages
> flagged as spam, but I find it unlikely that they flagged several days
> worth of git traffic (and when they do, I think they cross-post them
> to a spam group in NNTP, and the messages do not seem to be marked as
> such). So I think this really is just a bug.
Quite so. In particular when other mirrors got the messages timely.
--
David Kastrup
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-05-28 22:31 [ANNOUNCE] Git v2.0.0 Junio C Hamano
2014-05-28 22:43 ` Junio C Hamano
2014-05-28 23:17 ` Felipe Contreras
@ 2014-06-03 2:08 ` NeilBrown
2014-06-03 2:59 ` Linus Torvalds
2 siblings, 1 reply; 15+ messages in thread
From: NeilBrown @ 2014-06-03 2:08 UTC (permalink / raw)
To: Junio C Hamano; +Cc: git, Linus Torvalds
[-- Attachment #1: Type: text/plain, Size: 1356 bytes --]
On Wed, 28 May 2014 15:31:13 -0700 Junio C Hamano <gitster@pobox.com> wrote:
> The latest feature release Git v2.0.0 is now available at the
> usual places.
>
> "git request-pull" lost a few "heuristics" that often led to mistakes.
>
I've installed git 2.0.0 and now when I
git request-pull master git://neil.brown.name/md
after tagging the current commit as "md/3.15-fixes" and pushing out the tag,
I get
warn: No match for commit 2ac295a544dcae9299cba13ce250419117ae7fd1 found at git://neil.brown.name/md
warn: Are you sure you pushed 'HEAD' there?
Yet
git ls-remote git://neil.brown.name/md | grep 2ac29
shows
2ac295a544dcae9299cba13ce250419117ae7fd1 refs/tags/md/3.15-fixes^{}
Which seems clear and unambiguous.
Does this mean that the 'end' arg to 'git request-pull' is no longer optional
(i.e. the man page is wrong), or that too many heuristics were removed?
.... Looking through the change log a bit, it seems that if the 'end' arg is
omitted, then the current 'branch' name is used and must match the same name
at the git URL. Could it also check the current 'tag' name? As we are
encouraged to used signed tags, this seems sensible.
In fact, I would suggest checking for a tag first, and only considering the
branch name if there is no tag on the current commit.
Thanks,
NeilBrown
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-06-03 2:08 ` NeilBrown
@ 2014-06-03 2:59 ` Linus Torvalds
2014-06-03 11:46 ` NeilBrown
0 siblings, 1 reply; 15+ messages in thread
From: Linus Torvalds @ 2014-06-03 2:59 UTC (permalink / raw)
To: NeilBrown; +Cc: Junio C Hamano, Git Mailing List
On Mon, Jun 2, 2014 at 7:08 PM, NeilBrown <neilb@suse.de> wrote:
>
> git request-pull master git://neil.brown.name/md
>
> after tagging the current commit as "md/3.15-fixes" and pushing out the tag
You should *tell* "git request-pull" what you're actually requesting to pull.
The old "let's guess based on the commit at the top of your tree" may
have worked for you (because you only ever had one matching thing),
but it did not work in general.
So the new "git request-pull" does not guess. If you want to request a
tag to be pulled, you name it. Because if you don't name it, it now
defaults to HEAD (like all other git log commands) rather than
guessing. So please write it as
git request-pull master git://neil.brown.name/md md/3.15-fixes
I guess the man-page should be made more explicit about this too.
Linus
^ permalink raw reply [flat|nested] 15+ messages in thread
* Re: [ANNOUNCE] Git v2.0.0
2014-06-03 2:59 ` Linus Torvalds
@ 2014-06-03 11:46 ` NeilBrown
0 siblings, 0 replies; 15+ messages in thread
From: NeilBrown @ 2014-06-03 11:46 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Junio C Hamano, Git Mailing List
[-- Attachment #1: Type: text/plain, Size: 1080 bytes --]
On Mon, 2 Jun 2014 19:59:53 -0700 Linus Torvalds
<torvalds@linux-foundation.org> wrote:
> On Mon, Jun 2, 2014 at 7:08 PM, NeilBrown <neilb@suse.de> wrote:
> >
> > git request-pull master git://neil.brown.name/md
> >
> > after tagging the current commit as "md/3.15-fixes" and pushing out the tag
>
> You should *tell* "git request-pull" what you're actually requesting to pull.
>
> The old "let's guess based on the commit at the top of your tree" may
> have worked for you (because you only ever had one matching thing),
> but it did not work in general.
>
> So the new "git request-pull" does not guess. If you want to request a
> tag to be pulled, you name it. Because if you don't name it, it now
> defaults to HEAD (like all other git log commands) rather than
> guessing. So please write it as
>
> git request-pull master git://neil.brown.name/md md/3.15-fixes
>
> I guess the man-page should be made more explicit about this too.
>
> Linus
OK, thanks. I guess I can live with being a bit more explicit.
NeilBrown
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 828 bytes --]
^ permalink raw reply [flat|nested] 15+ messages in thread
end of thread, other threads:[~2014-06-03 11:46 UTC | newest]
Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-05-28 22:31 [ANNOUNCE] Git v2.0.0 Junio C Hamano
2014-05-28 22:43 ` Junio C Hamano
2014-05-28 23:17 ` Felipe Contreras
2014-05-28 23:42 ` Felipe Contreras
2014-05-29 18:53 ` Jeff King
2014-05-29 19:23 ` David Kastrup
2014-05-29 19:45 ` Jeff King
2014-05-30 21:42 ` Felipe Contreras
2014-05-31 9:52 ` David Kastrup
2014-06-02 6:36 ` Jeff King
2014-06-02 6:57 ` Felipe Contreras
2014-06-02 7:24 ` David Kastrup
2014-06-03 2:08 ` NeilBrown
2014-06-03 2:59 ` Linus Torvalds
2014-06-03 11:46 ` NeilBrown
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).