{"thread":{"id":"20380","subject":"[PATCH 00/13] Native and foreign helpers","startedAt":"2009-08-05T05:01:49Z","lastAt":"2009-08-05T14:57:58Z","messageCount":3,"participants":["Daniel Barkalow","Bert Wesarg"],"isPatch":true,"patchVersion":1,"patchTotal":13},"messages":[{"id":"119560","messageId":"alpine.LNX.2.00.0908050052390.2147@iabervon.org","threadId":"20380","inReplyTo":null,"subject":"[PATCH 00/13] Native and foreign helpers","fromName":"Daniel Barkalow","fromEmail":"barkalow@iabervon.org","sentAt":"2009-08-05T05:01:49Z","receivedAt":"2009-08-05T05:01:49Z","isPatch":true,"sender":{"key":"barkalow@iabervon.org","avatar":"https://avatars.githubusercontent.com/u/55364219?v=4"},"body":"This series has three parts:\n\n 01 - 03: Use an external program to fetch with curl. This improves\n          performance of scripts that call a lot of simple git\n          programs on systems where libcurl has a lot of dependencies\n          substantially, and introduces a standard format for external\n          helpers. Since the push side of http support is still\n          invoked from a custom helper program by the core transport\n          code, http support cannot yet be made a completely separate\n          package, but this is a step in that direction. Since the\n          previous version, this section has a few type fixes and in\n          more consistent about its use of strbufs.\n\n 04 - 10: Allow the external helper to import data from a foreign\n          system. This system may not use URLs at all, or may not use\n          them in a way that distinguishes the usage from git's\n          usage. The core code has to be able to deal with only\n          getting the values of refs after they have been imported,\n          not when they are simply listed, and deciding based on a\n          flag and the name whether to import them. The helper code\n          may (to this point) avoid doing anything to require the\n          local system to be git, rather than any other gfi-supporting\n          system (although there is no support for limiting the\n          generated history to things a particular system can\n          represent). This series has changed substantially since\n          previous versions, centered around sharing code with the\n          native helper methods, supporting code for the cvs and p4\n          helpers as they have evolved, and various fixes. Johan\n          Herland wrote the bulk of the last patch, including\n          specifying the command; I removed some portions of his patch\n          that were made unnecessary by changes to this series (and\n          rebasing it on the previous series).\n\n 11 - 13: Draft external helper for cvs. The first two patches are\n          directly by Johan Herland, and are included unchanged. The\n          final patch is the changes needed for the difference in API\n          between the original \"vcs helper\" series and the current\n          04-10. In order to get this part to work, the \"jh/notes\"\n          branch in pu is required, although the patches apply without\n          it.\n\nAs a separate series, I will be sending a new version of my p4 helper,\nin addition to handling for an \"export\" command which is not yet\nnailed down, since it is only supported by one helper and is not\nagnostic as to the source system (like the import command can be).\n\nDaniel Barkalow (10):\n  Add support for external programs for handling native fetches\n  Use an external program to implement fetching with curl\n  Use a function to determine whether a remote is valid\n  Allow fetch to modify refs\n  Allow programs to not depend on remotes having urls\n  Add a config option for remotes to specify a foreign vcs\n  Add support for \"import\" helper command\n  Allow helpers to report in \"list\" command that the ref is unchanged\n  Changes for new vcs-helper series\n\nJohan Herland (3):\n  Allow helpers to request marks for fast-import\n  First draft of CVS importer using the foreign-scm machinery\n  Add simple test cases of git-vcs-cvs functionality\n\nLinus Torvalds (1):\n  git-http-fetch: not a builtin\n\n Documentation/config.txt             |    4 +\n Documentation/git-remote-helpers.txt |   91 ++++\n Documentation/git-vcs-cvs.txt        |   85 ++++\n Makefile                             |   62 +++-\n builtin-clone.c                      |    6 +-\n builtin-fetch.c                      |   19 +-\n builtin-ls-remote.c                  |    4 +-\n builtin-push.c                       |   54 ++-\n configure.ac                         |    3 +\n git-remote-cvs.py                    |  696 ++++++++++++++++++++++++++\n git.c                                |    3 -\n git_vcs_cvs/.gitignore               |    2 +\n git_vcs_cvs/Makefile                 |   27 +\n git_vcs_cvs/changeset.py             |  114 +++++\n git_vcs_cvs/commit_states.py         |   52 ++\n git_vcs_cvs/cvs.py                   |  884 ++++++++++++++++++++++++++++++++++\n git_vcs_cvs/cvs_revision_map.py      |  367 ++++++++++++++\n git_vcs_cvs/cvs_symbol_cache.py      |  283 +++++++++++\n git_vcs_cvs/git.py                   |  591 +++++++++++++++++++++++\n git_vcs_cvs/setup.py                 |   12 +\n git_vcs_cvs/util.py                  |  147 ++++++\n builtin-http-fetch.c => http-fetch.c |    5 +-\n remote-curl.c                        |  139 ++++++\n remote.c                             |   15 +-\n remote.h                             |    2 +\n t/t9800-foreign-vcs-cvs-basic.sh     |  520 ++++++++++++++++++++\n t/t9801-foreign-vcs-cvs-fetch.sh     |  291 +++++++++++\n t/test-lib.sh                        |    1 +\n transport-helper.c                   |  246 ++++++++++\n transport.c                          |  157 +------\n transport.h                          |   44 ++-\n 31 files changed, 4741 insertions(+), 185 deletions(-)\n create mode 100644 Documentation/git-remote-helpers.txt\n create mode 100644 Documentation/git-vcs-cvs.txt\n create mode 100755 git-remote-cvs.py\n create mode 100644 git_vcs_cvs/.gitignore\n create mode 100644 git_vcs_cvs/Makefile\n create mode 100644 git_vcs_cvs/__init__.py\n create mode 100644 git_vcs_cvs/changeset.py\n create mode 100644 git_vcs_cvs/commit_states.py\n create mode 100644 git_vcs_cvs/cvs.py\n create mode 100644 git_vcs_cvs/cvs_revision_map.py\n create mode 100644 git_vcs_cvs/cvs_symbol_cache.py\n create mode 100644 git_vcs_cvs/git.py\n create mode 100644 git_vcs_cvs/setup.py\n create mode 100644 git_vcs_cvs/util.py\n rename builtin-http-fetch.c => http-fetch.c (95%)\n create mode 100644 remote-curl.c\n create mode 100755 t/t9800-foreign-vcs-cvs-basic.sh\n create mode 100755 t/t9801-foreign-vcs-cvs-fetch.sh\n create mode 100644 transport-helper.c\n"},{"id":"119586","messageId":"36ca99e90908050211j7e0f3030x6cacd866d948ac63@mail.gmail.com","threadId":"20380","inReplyTo":"alpine.LNX.2.00.0908050052390.2147@iabervon.org","subject":"Re: [PATCH 00/13] Native and foreign helpers","fromName":"Bert Wesarg","fromEmail":"bert.wesarg@googlemail.com","sentAt":"2009-08-05T09:11:00Z","receivedAt":"2009-08-05T09:11:00Z","isPatch":true,"sender":{"key":"bert.wesarg@googlemail.com","avatar":"https://avatars.githubusercontent.com/u/111934?v=4"},"body":"On Wed, Aug 5, 2009 at 07:01, Daniel Barkalow<barkalow@iabervon.org> wrote:\n> Johan Herland (3):\n>  First draft of CVS importer using the foreign-scm machinery\nThis patch got never to the mailing list, probably because of size restrictions.\n\nBert\n"},{"id":"119620","messageId":"alpine.LNX.2.00.0908051047460.2147@iabervon.org","threadId":"20380","inReplyTo":"36ca99e90908050211j7e0f3030x6cacd866d948ac63@mail.gmail.com","subject":"Re: [PATCH 00/13] Native and foreign helpers","fromName":"Daniel Barkalow","fromEmail":"barkalow@iabervon.org","sentAt":"2009-08-05T14:57:58Z","receivedAt":"2009-08-05T14:57:58Z","isPatch":true,"sender":{"key":"barkalow@iabervon.org","avatar":"https://avatars.githubusercontent.com/u/55364219?v=4"},"body":"On Wed, 5 Aug 2009, Bert Wesarg wrote:\n\n> On Wed, Aug 5, 2009 at 07:01, Daniel Barkalow<barkalow@iabervon.org> wrote:\n> > Johan Herland (3):\n> >  First draft of CVS importer using the foreign-scm machinery\n> This patch got never to the mailing list, probably because of size restrictions.\n\nAh, true. I guess I had it because I was cc:ed on it originally. It's \navailable in pu currently, as the second-to-newest commit in the \njh/vcs-cvs series, 73303f2 right now. I didn't change anything about it, \naside from applying it to a different base. I'll let Johan work out how it \nshould be posted for review when he gets back.\n\n\t-Daniel\n*This .sig left intentionally blank*"}]}