Hello community, here is the log from the commit of package osc checked in at Sat Oct 25 11:10:47 CEST 2008. -------- --- osc/osc.changes 2008-09-30 17:20:43.000000000 +0200 +++ /mounts/work_src_done/STABLE/osc/osc.changes 2008-10-24 17:30:53.000000000 +0200 @@ -1,0 +2,15 @@ +Fri Oct 24 17:28:27 CEST 2008 - poeml@suse.de + +- update to r5425 (version 0.110): + - osc build: no working copy needed anymore when building a local + package [bnc#431434] + - osc checkout: when checking out a project, and a linkerror + occurs for one of the packages, do a checkout in unexpanded + form and continue checking out the rest of the project + [bnc#428303] + - osc deletepac, osc branch: allow slash notation for the + project/package arguments + - fix deprecation warnings on Factory (which uses Python 2.6) + - fix to avoid (internal) stale Package objects [bnc#436932] + +------------------------------------------------------------------- calling whatdependson for head-i586 Old: ---- osc-0.109.tar.gz New: ---- osc-0.110.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ osc.spec ++++++ --- /var/tmp/diff_new_pack.Y31696/_old 2008-10-25 11:10:29.000000000 +0200 +++ /var/tmp/diff_new_pack.Y31696/_new 2008-10-25 11:10:29.000000000 +0200 @@ -1,5 +1,5 @@ # -# spec file for package osc (Version 0.109) +# spec file for package osc (Version 0.110) # # Copyright (c) 2008 SUSE LINUX Products GmbH, Nuernberg, Germany. # @@ -20,13 +20,13 @@ Name: osc BuildRequires: python-devel -Version: 0.109 +Version: 0.110 Release: 1 Group: Development/Tools/Other License: GPL v2 or later BuildRoot: %{_tmppath}/%{name}-%{version}-build Url: https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/p... -# v=0.109; svn export https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/p... osc-$v && tar czf osc-$v.tar.gz osc-$v +# v=0.110; svn export https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/p... osc-$v && tar czf osc-$v.tar.gz osc-$v Source: osc-%{version}.tar.gz Summary: openSUSE (build service) commander Requires: python-urlgrabber @@ -87,6 +87,18 @@ %doc README TODO NEWS %changelog +* Fri Oct 24 2008 poeml@suse.de +- update to r5425 (version 0.110): + - osc build: no working copy needed anymore when building a local + package [bnc#431434] + - osc checkout: when checking out a project, and a linkerror + occurs for one of the packages, do a checkout in unexpanded + form and continue checking out the rest of the project + [bnc#428303] + - osc deletepac, osc branch: allow slash notation for the + project/package arguments + - fix deprecation warnings on Factory (which uses Python 2.6) + - fix to avoid (internal) stale Package objects [bnc#436932] * Tue Sep 30 2008 poeml@suse.de - update to r5219 (version 0.109): With changes from Marcus_H, myself, dmueller, tpatzig: ++++++ debian.changelog ++++++ --- /var/tmp/diff_new_pack.Y31696/_old 2008-10-25 11:10:29.000000000 +0200 +++ /var/tmp/diff_new_pack.Y31696/_new 2008-10-25 11:10:29.000000000 +0200 @@ -1,3 +1,19 @@ +osc (0.110-1) unstable; urgency=high + + - update to r5425 (version 0.110): + - osc build: no working copy needed anymore when building a local + package [bnc#431434] + - osc checkout: when checking out a project, and a linkerror + occurs for one of the packages, do a checkout in unexpanded + form and continue checking out the rest of the project + [bnc#428303] + - osc deletepac, osc branch: allow slash notation for the + project/package arguments + - fix deprecation warnings on Factory (which uses Python 2.6) + - fix to avoid (internal) stale Package objects [bnc#436932] + + -- Peter Poeml <poeml@suse.de> Fri, 24 Oct 2008 12:00:00 +0200 + osc (0.109-1) unstable; urgency=high - update to r5219 (version 0.109): ++++++ osc-0.109.tar.gz -> osc-0.110.tar.gz ++++++ diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/osc-0.109/NEWS new/osc-0.110/NEWS --- old/osc-0.109/NEWS 2008-09-30 17:07:44.000000000 +0200 +++ new/osc-0.110/NEWS 2008-10-24 17:25:43.000000000 +0200 @@ -1,3 +1,14 @@ +0.110: + +- osc build: no working copy needed anymore when building a local package [bnc#431434] +- osc checkout: when checking out a project, and a linkerror occurs for one of + the packages, do a checkout in unexpanded form and continue checking out the + rest of the project [bnc#428303] +- osc deletepac, osc branch: allow slash notation for the project/package arguments +- fix deprecation warnings on Factory (which uses Python 2.6) +- fix to avoid (internal) stale Package objects [bnc#436932] + + 0.109: - osc getbinaries: new command to download binaries directly from the api server diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/osc-0.109/osc/build.py new/osc-0.110/osc/build.py --- old/osc-0.109/osc/build.py 2008-09-24 15:13:33.000000000 +0200 +++ new/osc-0.110/osc/build.py 2008-10-14 12:38:22.000000000 +0200 @@ -15,6 +15,7 @@ from osc.core import get_buildinfo, store_read_apiurl, store_read_project, store_read_package, meta_exists, quote_plus, get_buildconfig import osc.conf import oscerr +import subprocess try: from xml.etree import cElementTree as ET except ImportError: @@ -194,13 +195,16 @@ def get_built_files(pacdir, pactype): if pactype == 'rpm': - b_built = os.popen('find %s -name *.rpm' \ - % os.path.join(pacdir, 'RPMS')).read().strip() - s_built = os.popen('find %s -name *.rpm' \ - % os.path.join(pacdir, 'SRPMS')).read().strip() + b_built = subprocess.Popen('find %s -name *.rpm' \ + % os.path.join(pacdir, 'RPMS'), + stdout=subprocess.PIPE, shell=True).stdout.read().strip() + s_built = subprocess.Popen('find %s -name *.rpm' \ + % os.path.join(pacdir, 'SRPMS'), + stdout=subprocess.PIPE, shell=True).stdout.read().strip() else: - b_built = os.popen('find %s -name *.deb' \ - % os.path.join(pacdir, 'DEBS')).read().strip() + b_built = subprocess.Popen('find %s -name *.deb' \ + % os.path.join(pacdir, 'DEBS'), + stdout=subprocess.PIPE, shell=True).stdout.read().strip() s_built = None return s_built, b_built @@ -218,9 +222,9 @@ continue if path.find('-debuginfo-') > 0: continue - arch, name = os.popen('rpm -qp --nosignature --nodigest --qf "%%{arch} %%{name}\n" %s' \ - % path).read().split() - # instead of this assumption, we should probably rather take the + arch, name = subprocess.Popen('rpm -qp --nosignature --nodigest --qf "%%{arch} %%{name}\n" %s' \ + % path, stdout=subprocess.PIPE, shell=True).stdout.read().split() + # instead of thip assumption, we should probably rather take the # requested arch for this package from buildinfo # also, it will ignore i686 packages, how to handle those? if arch == wanted_arch or arch == 'noarch': @@ -254,13 +258,16 @@ buildargs.append('--debug') buildargs = ' '.join(buildargs) - prj = store_read_project(os.curdir) - pac = store_read_package(os.curdir) if opts.local_package: pac = '_repository' if opts.alternative_project: prj = opts.alternative_project pac = '_repository' + apiurl = config['apiurl'] + else: + prj = store_read_project(os.curdir) + pac = store_read_package(os.curdir) + apiurl = store_read_apiurl(os.curdir) if not os.path.exists(spec): print >>sys.stderr, 'Error: specfile '%s' does not exist.' % spec @@ -288,7 +295,7 @@ print 'Getting buildinfo from server' bi_file = NamedTemporaryFile(suffix='.xml', prefix='buildinfo.', dir = '/tmp') try: - bi_text = ''.join(get_buildinfo(store_read_apiurl(os.curdir), + bi_text = ''.join(get_buildinfo(apiurl, prj, pac, repo, @@ -300,8 +307,8 @@ # check what caused the 404 if meta_exists(metatype='prj', path_args=(quote_plus(prj), ), template_args=None, create_new=False): - if meta_exists(metatype='pkg', path_args=(quote_plus(prj), quote_plus(pac)), - template_args=None, create_new=False) or pac == '_repository': + if pac == '_repository' or meta_exists(metatype='pkg', path_args=(quote_plus(prj), quote_plus(pac)), + template_args=None, create_new=False): print >>sys.stderr, 'wrong repo/arch?' sys.exit(1) else: @@ -317,7 +324,7 @@ bi_file.write(bi_text) bi_file.flush() - bi = Buildinfo(bi_file.name, store_read_apiurl(os.curdir)) + bi = Buildinfo(bi_file.name, apiurl) # real arch of this machine # vs. @@ -383,7 +390,7 @@ print 'Getting buildconfig from server' bc_file = NamedTemporaryFile(prefix='buildconfig.', dir = '/tmp') - bc_file.write(get_buildconfig(store_read_apiurl(os.curdir), prj, pac, repo, arch)) + bc_file.write(get_buildconfig(apiurl, prj, pac, repo, arch)) bc_file.flush() @@ -408,7 +415,7 @@ cmd = change_personality[bi.buildarch] + ' ' + cmd print cmd - rc = os.system(cmd) + rc = subprocess.call(cmd, shell=True) if rc: print print 'The buildroot was:', config['build-root'] diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/osc-0.109/osc/commandline.py new/osc-0.110/osc/commandline.py --- old/osc-0.109/osc/commandline.py 2008-09-30 16:54:08.000000000 +0200 +++ new/osc-0.110/osc/commandline.py 2008-10-16 14:34:41.000000000 +0200 @@ -812,7 +812,7 @@ @cmdln.option('--nodevelproject', action='store_true', help='do not follow a defined devel project ' \ '(primary project where a package is developed)') - def do_branch(self, subcmd, opts, prj, pkg): + def do_branch(self, subcmd, opts, *args): """${cmd_name}: Branch a package [See http://en.opensuse.org/Build_Service/Collaboration for information @@ -829,9 +829,13 @@ ${cmd_option_list} """ - r = branch_pkg(conf.config['apiurl'], prj, pkg, nodevelproject=opts.nodevelproject) + args = slash_split(args) + if len(args) != 2: + raise oscerr.WrongArgs('Wrong number of arguments.') + + r = branch_pkg(conf.config['apiurl'], args[0], args[1], nodevelproject=opts.nodevelproject) - expected = 'home:%s:branches:%s' % (conf.config['user'], prj) + expected = 'home:%s:branches:%s' % (conf.config['user'], args[0]) if r != expected: devloc = r.split('branches:')[1] print '\nNote: The branch has been created of a different project,\n' \ @@ -844,10 +848,10 @@ print 'A working copy of the branched package can be checked out with:\n\n' \ 'osc co %s/%s' \ - % (r, pkg) + % (r, args[1]) - def do_deletepac(self, subcmd, opts, project, *pkgs): + def do_deletepac(self, subcmd, opts, *args): """${cmd_name}: Delete packages on the repository server usage: @@ -855,11 +859,13 @@ ${cmd_option_list} """ + args = slash_split(args) + pkgs = args[1:] if not pkgs: raise oscerr.WrongArgs('Missing argument.') for pkg in pkgs: - delete_package(conf.config['apiurl'], project, pkg) + delete_package(conf.config['apiurl'], args[0], pkg) @cmdln.option('-f', '--force', action='store_true', @@ -1067,8 +1073,15 @@ # all packages for package in meta_get_packagelist(conf.config['apiurl'], project): - checkout_package(conf.config['apiurl'], project, package, - expand_link=expand_link, prj_dir=project) + try: + checkout_package(conf.config['apiurl'], project, package, + expand_link=expand_link, prj_dir=project) + except oscerr.LinkExpandError, e: + print >>sys.stderr, 'Link cannot be expanded:\n', e + # check out in unexpanded form at least + checkout_package(conf.config['apiurl'], project, package, + expand_link=False, prj_dir=project) + else: raise oscerr.WrongArgs('Missing argument.\n\n' \ + self.get_cmd_help('checkout')) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/osc-0.109/osc/core.py new/osc-0.110/osc/core.py --- old/osc-0.109/osc/core.py 2008-09-30 17:07:44.000000000 +0200 +++ new/osc-0.110/osc/core.py 2008-10-24 17:25:43.000000000 +0200 @@ -7,7 +7,7 @@ # and distributed under the terms of the GNU General Public Licence, # either version 2, or (at your option) any later version. -__version__ = '0.109' +__version__ = '0.110' # __store_version__ is to be incremented when the format of the working copy # "store" changes in an incompatible way. Please add any needed migration # functionality to check_store_version(). @@ -22,6 +22,7 @@ import shutil import oscerr import conf +import subprocess try: from xml.etree import cElementTree as ET except ImportError: @@ -768,6 +769,7 @@ self.update_local_filesmeta(revision=show_upstream_xsrcmd5(self.apiurl, self.prjname, self.name)) else: self.update_local_filesmeta() + self.update_datastructs() self.write_deletelist() def write_conflictlist(self): @@ -814,7 +816,7 @@ # diff3 OPTIONS... MINE OLDER YOURS merge_cmd = 'diff3 -m -E %s %s %s > %s' % (myfilename, storefilename, upfilename, filename) # we would rather use the subprocess module, but it is not availablebefore 2.4 - ret = os.system(merge_cmd) / 256 + ret = subprocess.call(merge_cmd, shell=True) / 256 # "An exit status of 0 means `diff3' was successful, 1 means some # conflicts were found, and 2 means trouble." @@ -1760,7 +1762,7 @@ if edit: editor = os.getenv('EDITOR', default='vim') while 1: - os.system('%s %s' % (editor, f.filename)) + subprocess.call('%s %s' % (editor, f.filename), shell=True) if change_is_required == True: try: f.sync() @@ -1886,7 +1888,7 @@ editor = os.getenv('EDITOR', default='vim') while 1: - os.system('%s %s' % (editor, filename)) + subprocess.call('%s %s' % (editor, filename), shell=True) hash = dgst(filename) if hash != hash_orig: @@ -3174,7 +3176,7 @@ else: os.chdir(dir) cmd = 'rpm2cpio %s | cpio -i %s &> /dev/null' % (srpm, ' '.join(files)) - ret = os.system(cmd) + ret = subprocess.call(cmd, shell=True) if ret != 0: print >>sys.stderr, 'error '%s' - cannot extract '%s'' % (ret, srpm) sys.exit(1) diff -urN --exclude=CVS --exclude=.cvsignore --exclude=.svn --exclude=.svnignore old/osc-0.109/osc/fetch.py new/osc-0.110/osc/fetch.py --- old/osc-0.109/osc/fetch.py 2008-08-20 11:45:49.000000000 +0200 +++ new/osc-0.110/osc/fetch.py 2008-10-11 22:26:45.000000000 +0200 @@ -134,26 +134,25 @@ Check all packages in one go, since this takes only 6 seconds on my Athlon 700 instead of 20 when calling 'rpm -K' for each of them. """ - + import subprocess if not pac_list: return - # we can use os.popen4 because we don't care about the return value. - # we check the output anyway, and rpm always writes to stdout. + # don't care about the return value because we check the + # output anyway, and rpm always writes to stdout. # save locale first (we rely on English rpm output here) saved_LC_ALL = os.environ.get('LC_ALL') os.environ['LC_ALL'] = 'en_EN' - (i, o) = os.popen4(['/bin/rpm', '-K'] + pac_list) + o = subprocess.Popen(['/bin/rpm', '-K'] + pac_list, stdout=subprocess.PIPE, + stderr=subprocess.STDOUT, close_fds=True).stdout # restore locale if saved_LC_ALL: os.environ['LC_ALL'] = saved_LC_ALL; else: os.environ.pop('LC_ALL') - i.close() - for line in o.readlines(): if not 'OK' in line: ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Remember to have fun... -- To unsubscribe, e-mail: opensuse-commit+unsubscribe@opensuse.org For additional commands, e-mail: opensuse-commit+help@opensuse.org