# # spec file for package osc (Version 0.95) # # Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany. # This file and all modifications and additions to the pristine # package are under the same license as the package itself. # # Please submit bugfixes or comments via http://bugs.opensuse.org/ # # norootforbuild Name: osc BuildRequires: python-devel Version: 0.95 Release: 1 Group: Development/Tools/Other License: GNU General Public License (GPL) BuildRoot: %{_tmppath}/%{name}-%{version}-build URL: https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/python/osc/ # v=0.95; svn export https://forgesvn1.novell.com/svn/opensuse/trunk/buildservice/src/clientlib/python/osc osc-$v; tar czf osc-$v.tar.gz osc-$v Source: osc-%{version}.tar.gz Summary: openSUSE (build service) commander %if %{?suse_version:%suse_version}%{?!suse_version:1} < 1020 Requires: python-elementtree %else Requires: python-xml %endif Requires: python-urlgrabber %{!?python_sitelib: %define python_sitelib %(python -c "from distutils.sysconfig import get_python_lib; print get_python_lib()")} %description Commandline client for the openSUSE build service. See http://en.opensuse.org/Build_Service/CLI , as well as http://en.opensuse.org/Build_Service_Tutorial for a general introduction. Authors: -------- Peter Poeml %prep %setup -q -n osc-%{version} %build CFLAGS="%{optflags}" \ %{__python} setup.py build %install %{__python} setup.py install --prefix=%{_prefix} --root %{buildroot} ln -s osc-wrapper.py %{buildroot}/%{_bindir}/osc %clean %{__rm} -rf %{buildroot} %files %defattr(-,root,root) %{_bindir}/osc* %{python_sitelib}/* %doc README TODO NEWS %changelog * Wed Apr 25 2007 - poeml@suse.de - update to r1608: - version 0.95 - osc is now easier to work with when using alternative API servers. The configured server can be overriden with -A on the commandline. "apisrv" in the config takes a URL now, so the variable "scheme" which was needed in addition before becomes obsolete. For backward compatibility, a hostname (and scheme variable) are accepted like before. Likewise, the auth sections in the config take a URL now, or a hostname:port to keep old config working. HTTP or HTTPS scheme is determined from the URL. Credentials must be configured in .oscrc. - build: use actual api server in urllist for downloading, instead of hardcoded api.opensuse.org [#265211]. - finally, global option -H enables HTTP traffic debugging - implement "rebuild all failed packages", via --failed option in rebuildpac subcommand - status -v shows all files, including unmodified ones - suppress the legend in prjresults by default (show with -l) - --version shows the program version number - fix the commit subcommand's argument handling. The following works correctly now: osc ci ../test/onlyinwc `pwd` fstab ../test/f2 - fix the download progress meter to work with small terminals [#266989] * Fri Apr 20 2007 - poeml@suse.de - update to r1594: - save and reuse HTTP server cookies, speeding HTTP requests up about 5 times (in our iChain setup anyway...) - rewrite the HTTP handling - adding http_GET/POST/PUT/DELETE() functions, which dispatch to http_request(), and use them everywhere - removing othermethods.py - keeping urlopen(), in case it is used from externally, but have it print out a "depracated" message - finally, implementing a global HTTP debug mode - if data to be sent is large, mmap it instead of reading at once - build: remove debug print of tempfile name - README: add info about dependencies of osc python module - further the osc buildroot configuration example * Fri Mar 30 2007 - poeml@suse.de - update to r1551: - update: when updating multiple packages, print each package name - build: - use preinstall attribute instead of obsolete element - use runscripts attribute and hand it over to build in the buildinfo - results: quote parameter in the new URL - prjresults: sort package names - run build with --norootforbuild, thereby defaulting to build as abuild user - when updating, don't delete files with local modifications - add testcase - update osc tests for small api changes - use new api ['build', prj, '_result'] for prjresults subcommand * Tue Mar 13 2007 - poeml@suse.de - update to r1427: - apply fix from Christoph Thiel to use cElementTree from Python 2.5 - let the diff subcommand return 1 if differences were found - make 'results' subcommand many times faster, by making only a single request on _result?view=status&package=%%s (new api) * Fri Mar 09 2007 - poeml@suse.de - build the debian package in the new way * Tue Jan 23 2007 - poeml@suse.de - update to r1093: - fix important bug, which could lead to overwriting local modifications when upstream changes are merged in - if a merge fails, the store copy must be updated neverthelesss - sort output of 'status' (unknown files first, filenames alphabetically) * Tue Jan 23 2007 - poeml@suse.de - remove unused (and possibly disturbing, because unfunctional) rpm define of py_sitedir * Fri Jan 12 2007 - poeml@suse.de - update to r1047: - core: added class "metadata" (merge from Susannes /branches/froh/reponator/) - added command alias 'stat' for 'status', like in svn - improved documentation/examples (Lars + Susanne) - print usage info if 'co' is called without arguments * Fri Oct 13 2006 - poeml@suse.de - set scheme=https in the default configuration, to work around issue with new server * Thu Oct 12 2006 - poeml@suse.de - update to 0.9 (r761): - "iChain-ready" (works with API server now using iChain authentication) - add runtime check for build.rpm version, so the rpm package dependency is no longer required - add 'edituser' command for editing the metadata of a user account. It tries to create a user if it doesn't exist yet. A new command 'usermeta' replaces 'id' respectively 'userid'. - rewrite configuration handling. Now the API server can be set in .oscrc - ignore '.gitignore', '.pc', '*~' (now using filename matching [#208969] - fix 'status' to work with project directories as arguments - fix 'status ' * Fri Sep 29 2006 - poeml@suse.de - update to r753: - 'rebuildpac' now accepts additional repo and arch argument. Note: the syntax has changed. - add 'prjresults' command to display aggregated build status over an entire project - add 'deleteprj' command (the API server doesn't seem to support it yet, though) - change 'buildhistory' to display human-readable text - 'log': print usage info if called with missing arguments - 'ci': handle upload errors - fix filelist for python >= 2.5 * Thu Sep 21 2006 - poeml@suse.de - update to r744: - add 'copypac' subcommand, to copy a complete package to a new package, possibly cross-project - don't die if user tries to 'add' a file which is already versioned - don't die if 'addremove' encounters directories - urlopen(): for server return code 500, print out the reply body - be fair, and also mention dsc files in some help texts * Fri Sep 15 2006 - poeml@suse.de - update to r735: - build: use configuration from *local* specfile (e.g. BuildRequires) - build: let envvars OSC_SU_WRAPPER and OSC_BUILD_ROOT override config - build: allow 'dynamical' build-root setting by using %%(repo)s and %%(arch)s - add 'createpac/editpac' and 'createprj/editprj' subcommands which are similar to 'editmeta' but should be more logical to find - added 'deletepac' subcommand - added 'buildhistory' subcommand (formerly 'history'). This only gives out raw xml at this time - added ".git" to the excluded files * Mon Aug 07 2006 - poeml@suse.de - update to svn r635: - added 'linkpac' subcommand - adapt to API changes * Thu Jul 20 2006 - poeml@suse.de - fixed issue with uploading files when an intercepting web proxy was in between osc and the api server - fixed creation of new packages/projects * Mon Jul 17 2006 - poeml@suse.de - update to 0.7 (r599) - initial support for local builds (subcommand 'build') - new subcommands buildconfig, buildinfo, repos - better error handling * Mon Jun 26 2006 - poeml@suse.de - update to svn r534 - fix 'rebuildpac' command to not show raw xml - editmeta: - add examples for tags to the package template - add examples for build targets to the project template - fix updatepacmetafromspec to cope with subpackages during parsing - code cleanup - remove requirement on pyxml package * Thu Jun 22 2006 - poeml@suse.de - update to svn r528: - add support for streaming build log (thanks to Christoph Thiel) - don't try to merge binary files - set mtime on files that have been fetched during merge * Thu Jun 08 2006 - poeml@suse.de - update to svn r481: - fix handling of filenames with '+' signs [#153725, #181593] - before committing, make sure that the working copy is up to date - don't diff binary files - add 'rebuildpac' command, which triggers a rebuild for all repositories/architectures of the package - fix merge on 'update', if osc is called from another directory - don't fail on 'resolve' when the working copy is in a newer rev already - add 'commit' as command alias for 'ci/checkin' * Tue Jun 06 2006 - poeml@suse.de - update to svn r469: - work around ruby on rails issue, which swallows '+' signs in filenames in PUT requests [#153725, 181593] - before committing, make sure that the working copy is up to date (added show_rev() function) - add 'commit' as subcommand alias for 'ci/checkin' * Sat Jun 03 2006 - poeml@suse.de - update to svn r466: - add 'repourls' subcommand - display reason for new build status is 'broken' - add a tentative 'updatepacmetafromspec' subcommand, which takes package metadata from a specfile - handle some error conditions - fix the profiling wrapper script - make 'resolved' more robust - set a User-agent * Tue May 30 2006 - poeml@suse.de - update to 0.6: - diff bugfix: sometimes displayed diff against obsolete files - update bugfixes: fix update of working copy when adding a file from upstream which is missing locally; fix update in directory with unmodified files: don't try to merge if upstream file wasn't changed at all - add: make it faster * Tue May 23 2006 - poeml@suse.de - update to 0.5: - help :-) - fix status letter for files merged on update (in analogy to svn , it is either G or U) - if an old _files listing without any metadata is found, don't bother the user with it - make all subcommands properly importable functions - bug in 'resolved' command fixed, which wouldn't clear the conflict state of a file - fix update in directory with unmodified files: don't try to merge if upstream file wasn't changed at all * Mon May 22 2006 - poeml@suse.de - don't fail on undeleting non-existing _to_be_deleted file - update to 0.4: - allow 'up' inside a project directory (will automatically pull in all new packages). (For past checkouts, you may need to put the project name into $prjdir/.osc/_project yourself). - checkout: preserve mtimes - add diff3 merge support. Locally modified files are merged with upstream changes if possible, and go into Conflict state if that fails. - add 'resolved' command to be used after manual merging. * Fri May 19 2006 - poeml@suse.de - update to 0.3: - use the new file metadata, which provides checksum, size and mtime - faster 'status', 'update', 'diff' - improve argument handling, now e.g. 'osc up *' is possible - on first usage, ask for username and password and store them in .oscrc (.netrc can still be used) * Mon May 15 2006 - poeml@suse.de - this package is not noarch * Fri May 12 2006 - poeml@suse.de - don't use --record-rpm option on setup.py, only SUSE has it - define py_sitelib macro * Wed May 10 2006 - poeml@suse.de - created package (version 0.2)