On Wed, Oct 22, 2014 at 11:03:17AM -0500, Susan Spencer wrote:
> AFAIK There isn't a parameter for users to disable extra headers when
> importing code into Github.
> https://porter.github.com/new
It might not be exposing the hg-git settings if it uses hg-git underneat. :-/

> Am I correct in understanding that you added the functionality in Dulwich
> to ignore extra headers so it wouldn't crash when encountering extra
> headers?
> http://git.661346.n2.nabble.com/extra-headers-in-commit-objects-td4508608.html
Yes.

> Could you add this functionality to bzr-git, so that bzr-git would be
> compliant
> with the C git rule to ignore extra headers that aren't recognized, after
> the encoding header?
See my earlier answers. We can't do that, because bzr-git needs to
be able to reproduce the full contents of a git object that it imports. If
it dropped any fields, that would be impossible.

Jelmer

> On Tue, Oct 21, 2014 at 9:21 PM, Jelmer Vernooij <[email protected]
> > wrote:
> 
> > Hi Susan,
> >
> > See this thread, which sprung up on the Git list after I added support
> > for extra commit headers in Dulwich: http://git.661346.n2.nabble.com
> > /extra-headers-in-commit-objects-td4508608.html
> >
> > The consensus among Git developers seems to be that defining new header
> > fields should be left up to the Git developers. What hg-git is doing
> > goes against that.
> >
> > bzr-git doesn't completely adhere to the guidelines in that thread
> > either since it doesn't just drop unknown fields. There are good reasons
> > it can't just ignore headers it doesn't know about though. See my
> > earlier comments for a more thorough explanation:
> >
> > Throwing an error when unknown fields are encountered is intended
> > behaviour. bzr-git can't just drop unknown metadata since that makes it
> > impossible to reserialize the original Git objects later. Reserializing
> > is necessary since the original git objects are used as delta bases.
> >
> > bzr-git could store all unknown headers in an extra metadata field. We
> > don't do this since it means we can't change the mapping of any unknown
> > headers later without breaking all existing bzr-git users. Instead,
> > since git commit header extensions are so rare, we require explicit
> > support for them in bzr-git.
> >
> > Dulwich is used for parsing and creating Git objects in bzr-git; bzr-git
> > doesn't use Dulwich to store data, it uses native Bazaar objects.
> >
> > Is your project itself maintained in Git or in Mercurial? If it is in
> > Mercurial, you could disable the setting of extra headers in hg-git or
> > alternatively run a cronjob somewhere that uses hg-fastexport and bzr-
> > fastimport to create a bzr branch from a mercurial branch.
> >
> > --
> > You received this bug notification because you are subscribed to the bug
> > report.
> > https://bugs.launchpad.net/bugs/1372149
> >
> > Title:
> >   bzr-git does not preserve or ignore unknown extra fields
> >
> > Status in bzr git support plugin:
> >   Confirmed
> > Status in Valentina. Pattern making program.:
> >   New
> > Status in “valentina” package in Ubuntu:
> >   New
> >
> > Bug description:
> >   I can't import source code from git. Here log:
> >   2014-09-21 12:57:19 INFO    Starting job.
> >   2014-09-21 12:57:19 INFO    Getting exising bzr branch from central
> > store.
> >   2014-09-21 12:57:20 INFO    [chan bzr SocketAsChannelAdapter] Opened
> > sftp connection (server version 3)
> >   2014-09-21 12:57:20 INFO    35 bytes transferred
> >   2014-09-21 12:57:29 INFO    [chan bzr SocketAsChannelAdapter] Opened
> > sftp connection (server version 3)
> >   2014-09-21 12:57:30 INFO    Importing branch.
> >   2014-09-21 12:57:32 INFO    Counting objects: 2724, done. 0
> >   2014-09-21 12:57:34 INFO    finding revisions to fetch:generating index
> > 0/2724
> >   2014-09-21 12:57:36 INFO    finding revisions to fetch:generating index
> > 0/2724
> >   2014-09-21 12:57:36 INFO    finding revisions to fetch 1/608
> >   2014-09-21 12:57:36 INFO
> >   Traceback (most recent call last):
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/scripts/code-import-worker.py",
> > line 95, in <module>
> >       sys.exit(script.main())
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/scripts/code-import-worker.py",
> > line 90, in main
> >       return import_worker.run()
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/lib/lp/codehosting/codeimport/worker.py",
> > line 576, in run
> >       return self._doImport()
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/lib/lp/codehosting/codeimport/worker.py",
> > line 730, in _doImport
> >       inter_branch.fetch(limit=revision_limit)
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/branch.py",
> > line 722, in fetch
> >       self.fetch_objects(stop_revision, fetch_tags=fetch_tags, limit=limit)
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/branch.py",
> > line 745, in fetch_objects
> >       determine_wants, self.source.mapping, limit=limit)
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/fetch.py",
> > line 718, in fetch_objects
> >       limit)
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/fetch.py",
> > line 484, in import_git_objects
> >       mapping.revision_id_foreign_to_bzr)
> >     File "/srv/
> > importd.launchpad.net/production/launchpad-rev-17196/bzrplugins/git/mapping.py",
> > line 334, in import_commit
> >       raise UnknownCommitExtra(commit, [item[0] for item in commit.extra])
> >   bzrlib.plugins.git.errors.UnknownCommitExtra: Unknown extra fields in
> > <Commit 56ead206c93f1ed9d6f1d46cbfa2a8e79cdad63c>: ['HG:rename',
> > 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename',
> > 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename',
> > 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename', 'HG:rename'].
> >   Import failed:
> >   Traceback (most recent call last):
> >   Failure: twisted.internet.error.ProcessTerminated: A process has ended
> > with a probable error condition: process ended with exit code 1.
> >
> >   Can anyone help me? Can't understand what's wrong.
> >   This git repository (https://github.com/dismine/Valentina.git) only a
> > mirror and i used hg-git for pushing changes.
> >
> > To manage notifications about this bug go to:
> > https://bugs.launchpad.net/bzr-git/+bug/1372149/+subscriptions
> >
> 
> -- 
> You received this message because you are subscribed to the Google Groups 
> "hg-git" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected].
> To post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/hg-git.
> For more options, visit https://groups.google.com/d/optout.

-- 
You received this bug notification because you are a member of Ubuntu
Bugs, which is subscribed to Ubuntu.
https://bugs.launchpad.net/bugs/1372149

Title:
  bzr-git does not preserve or ignore unknown extra fields

To manage notifications about this bug go to:
https://bugs.launchpad.net/bzr-git/+bug/1372149/+subscriptions

-- 
ubuntu-bugs mailing list
[email protected]
https://lists.ubuntu.com/mailman/listinfo/ubuntu-bugs

Reply via email to