[poky] [RFC PATCH 00/21] fetcher overhaul - api reorg and git optimization V2
Yu Ke
ke.yu at intel.com
Mon Jan 24 06:32:37 PST 2011
Hi Richard,
This is the V2 patch series for the fetcher overhaul phase 2 - new API reorg, and phase 3 - git optimization.
the changes compared with V1 are:
- fix some typo in api reorg patches, now api reorg patch has pass the test of x86 & arm poky-image-sato with empty DL_DIR
- add "BB_NO_NETWORK" option support
The overall changes are:
- Split go() methods into the following steps:
i) download() - do whatever transfer is necessary to get the sources locally
ii) build_mirror_data() - generate any data that would be needed to construct a source mirror
iii) unpack() - takes a directory as an argument of where to place extracted sources
- Change Poky's fetch task to call a "download" method in the fetcher instead of go().
- Change Poky's unpack to call an unpack method in the fetchers.
- Optimise git fetcher for the new layout so for a git checkout, we clone the repository in download(), then unpack just does a clone with references to the original repo.
- Add a new "BB_NO_NETWORK" option to only perform local fetch
The remaining item for phase 3 are:
- Add multiple branch/srcrev support for git fetcher
Pull URL: git://git.pokylinux.org/poky-contrib.git
Branch: kyu3/fetcher-api-v2
Browse: http://git.pokylinux.org/cgit.cgi/poky-contrib/log/?h=kyu3/fetcher-api-v2
Thanks,
Yu Ke <ke.yu at intel.com>
---
Yu Ke (21):
bitbake/fetch2/git: Add backwards compatibility code for branch name
handling
bb.fetch2: add unpack method in fetcher
bb.fetch2: revise the Fetch.unpack API
bb.fetch: add fetch version to distinguish bb.fetch and bb.fetch2
base.bbclass: use bb.fetch2 unpack API
bb.fetch2: rename "go" with "download" to better reflect its
functionality
bbclasee: rename "go" with "download"
git.py: split download to download() and build_mirror_data()
bb.fetch2: remove the obsolate Fetch.try_mirrors referrence
bb.fetch2: add git unpack
git.py: remove the source tree tar ball
bb.fetch2: add "BB_NO_NETWORK" option
git.py: add no network access check
wget.py: add no network check
svn.py: add no network access check
cvs.py: add no network access check
hg.py: add no network access check
bzr.py: add no network access check
repo.py: add no network access check
osc.py: add no network access check
ssh.py: add no network access check
bitbake/lib/bb/fetch/__init__.py | 2 +
bitbake/lib/bb/fetch2/__init__.py | 105 ++++++++++++++++++++++-
bitbake/lib/bb/fetch2/bzr.py | 6 +-
bitbake/lib/bb/fetch2/cvs.py | 4 +-
bitbake/lib/bb/fetch2/git.py | 165 ++++++++++++++++++++++--------------
bitbake/lib/bb/fetch2/hg.py | 5 +-
bitbake/lib/bb/fetch2/local.py | 2 +-
bitbake/lib/bb/fetch2/osc.py | 4 +-
bitbake/lib/bb/fetch2/perforce.py | 2 +-
bitbake/lib/bb/fetch2/repo.py | 4 +-
bitbake/lib/bb/fetch2/ssh.py | 4 +-
bitbake/lib/bb/fetch2/svk.py | 2 +-
bitbake/lib/bb/fetch2/svn.py | 6 +-
bitbake/lib/bb/fetch2/wget.py | 5 +-
meta/classes/base.bbclass | 13 +++-
meta/classes/sstate.bbclass | 5 +-
16 files changed, 250 insertions(+), 84 deletions(-)
More information about the poky
mailing list