1
0
mirror of https://github.com/openSUSE/osc.git synced 2024-11-15 08:36:13 +01:00
Commit Graph

1787 Commits

Author SHA1 Message Date
Marcus Hüwe
355b6935db - osc diff: if 2 revisions are specified do a pretty_diff (TODO: BSSrcdiff.pm should generate unified diffs) 2009-01-09 17:09:29 +00:00
Marcus Hüwe
ad11a87f92 - fix #459288 (mkpac: add info how to enable the package tracking feature) 2008-12-17 22:45:58 +00:00
Dr. Peter Poeml
0a0cb27142 important bugfix for osc deletepac: prevent recursive deletion of a whole project, when a package name is given with a trailing slash 2008-12-12 10:02:41 +00:00
Ludwig Nussel
e33b48f5b0 add support for more build options
--icecream
--ccache
--with
--without
2008-12-11 11:36:07 +00:00
Marcus Hüwe
c1b99b041f - fixed importsrcpkg doc
- osc build: if --keep-pkgs is used also save the src.rpm
2008-11-29 13:32:25 +00:00
Marcus Hüwe
b6b4550ae7 osc ls: be able to list a single file (osc ls <project> <package> <file>) (requested by darix) 2008-11-20 12:56:16 +00:00
Dr. Peter Poeml
2bea1ad2df fix osc's ignorance of the revision option (-r) for expanded links
https://bugzilla.novell.com/show_bug.cgi?id=429650
2008-11-19 12:13:18 +00:00
Marcus Hüwe
ccda32cca2 do_branch: allow slash notation for the project/package arguments (as requested by darix) 2008-10-16 12:34:41 +00:00
Dr. Peter Poeml
df8ecce631 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]
2008-10-02 15:46:52 +00:00
Marcus Hüwe
6a44bef9b5 deletepac: allow arguments like "<project>/<package>" (which are separated by a "/") 2008-10-01 15:01:32 +00:00
Dr. Peter Poeml
889ef86af5 - osc getbinaries: new command to download binaries directly from the api server
- core.get_binarylist(): add "verbose" switch that returns instances of class
  File, instead of filenames
- improve core.get_binary_file(): 
   * clean up tempfiles, 
   * set mtime, 
   * set file mask
  Function signature is changed, because I'm not aware of any user than the example
  script I once published on http://en.opensuse.org/Build_Service/osc_plugins
2008-09-30 14:54:08 +00:00
Dr. Peter Poeml
cd406dde98 add link to plugin API to osc help output 2008-09-24 12:23:56 +00:00
Tom Patzig
cc0ce146e2 -added command 'rlog', to show commit logs of remote packages 2008-09-23 13:39:54 +00:00
Marcus Hüwe
a8181f7087 - fixed #419144
- fixed new_conf_template: commented out new 'http_headers' options
2008-08-21 18:17:40 +00:00
Marcus Hüwe
854fe0d97a - addFiles(): added optional prj_obj parameter
- do_addremove():
  * if "do_package_tracking" is enabled scan the project dir for new/disappeared packages
  * added --recursive option (If CWD is a project dir then scan all package dirs as well)
  * minor pathname fix
- fixed argument handling in some methods: don't remove items from a list while looping over it
2008-08-20 19:24:55 +00:00
Susanne Oberhauser
f07da13359 - only reparse the config if it was actually modified. 2008-08-20 09:40:00 +00:00
Marcus Hüwe
b2aceda67a add new --project option to prjresults in order to show the results of a project without having a local wc (patch by Michael Wolf <maw@novell.com>) 2008-08-19 19:37:08 +00:00
Marcus Hüwe
e93678d5a0 - added submitrequest log command to show the history of a given id 2008-08-19 14:18:05 +00:00
Marcus Hüwe
06c5316ba2 changed text for the revoke message (as suggested by darix) 2008-08-17 21:14:59 +00:00
Marcus Hüwe
5140deebff add the id of the new request to the revoke message 2008-08-17 20:12:19 +00:00
Marcus Hüwe
fc0d61bfce - fixes for the last commit (r4684), actually only the change in core.py was intended.
now 'osc submitrequest create' checks if you already submitted requests for this package, if so it'll ask you if the previous submissions should be revoked
2008-08-17 19:10:44 +00:00
Marcus Hüwe
f4e4c91376 - minor fix in get_submit_request_list() 2008-08-17 18:53:54 +00:00
Michal Marek
4df8ffd6ea Make 'metafromspec' and alias to 'updatepacmetafromspec', to make the command
easier to memorize
2008-08-08 15:23:03 +00:00
Michal Marek
d047b30aa8 unbreak osc init 2008-08-08 15:19:54 +00:00
Marcus Hüwe
3359646b02 - fix bug #412918
- added a file attribute to the ConfigError() class
- added new ConfigMissingApiurl() class
2008-08-07 17:14:26 +00:00
Marcus Hüwe
8d055f7990 - added OscConfigParser module:
OscConfigParser() behaves like a normal ConfigParser() object. The
  only differences is that it preserves the order+format of configuration entries
  and that it stores comments.
  In order to keep the order and the format it makes use of the ConfigLineOrder()
  class.
- removed .netrc cruft from the conf module
- other config cleanups
2008-08-07 16:40:55 +00:00
Dirk Mueller
1a3c80423a typo fix 2008-08-04 13:33:40 +00:00
Dirk Mueller
65e9011f00 - add support for listing submitrequests not in state New to
osc submitreq list
2008-08-04 13:20:29 +00:00
Marcus Hüwe
3c5847e054 - init: added support to initialize a project dir 2008-08-01 13:58:49 +00:00
Marcus Hüwe
0020074a8a - fix enhancement request #412157 (Add some guessing to "osc build")
- "osc build" can be called with the following arguments:
  * osc build [OPTS] PLATFORM ARCH BUILD_DESCR
  * osc build [OPTS] PLATFORM (ARCH = hostarch, BUILD_DESCR is detected automatically)
  * osc build [OPTS] ARCH (PLATFORM = build_platform (config option), BUILD_DESCR is detected automatically)
  * osc build [OPTS] BUILD_DESCR (PLATFORM = build_platform (config option), ARCH = hostarch)
  * osc build [OPTS] (PLATFORM = build_platform (config option), ARCH = hostarch, BUILD_DESCR is detected automatically)
2008-07-30 16:45:00 +00:00
Marcus Hüwe
5c062ea121 - fixed bug #412145 (typo) 2008-07-25 10:19:32 +00:00
Dirk Mueller
6792642166 - add "submitrequest" as an alias for "submitreq"
- add "submitrequest revoke" command to be able to
  delete submissions to projects one can't write to
2008-07-25 09:34:29 +00:00
Dirk Mueller
494381866d revert back to throwing the httplib2 error, to be
able to preserve http headers etc
2008-07-23 20:56:20 +00:00
Dirk Mueller
048414088f - implement --no-checks for osc build
- make osc submitreq succeed for submitting new packages
  (previously the develproject check caused it to abort prematurely)
2008-07-23 20:05:09 +00:00
Dr. Peter Poeml
b37af9ed4f add more information about aggregation of packages, and a link to the wiki page about it. 2008-07-17 17:46:21 +00:00
Dr. Peter Poeml
83862c1040 submitreq: add shortcut 'sr' for Darix 2008-07-09 20:38:49 +00:00
Dr. Peter Poeml
de0bb98200 add submitreq delete action (thanks to Dirk for the patch) 2008-07-09 15:22:18 +00:00
Marcus Hüwe
5b84831d25 don't expand/unexpand if the working copy has local modifications - this is an ugly workaround for #399247 but this way the working copy isn't screwed up 2008-07-04 12:54:02 +00:00
Marcus Hüwe
73fd228c14 - use apiurl from the storedir when running 'osc submitreq list/create' 2008-06-27 17:54:59 +00:00
Dirk Mueller
eb8a8bbc79 - support "submitreq list" also in a project
directory
2008-06-27 17:14:15 +00:00
Dirk Mueller
6d5dab90b4 list submitrequests in a sorted order.. newest first 2008-06-27 16:36:36 +00:00
Marcus Hüwe
5768e35047 - applied slightly modified version of Node's patch which added a --revision option to do_linkpac 2008-06-26 10:47:58 +00:00
Marcus Hüwe
927019a7eb - added initial support for involved projects/packages (the xpath predicate is stolen from the webclient;) ) 2008-06-24 15:07:44 +00:00
Dirk Mueller
3df4edb5bb update usage info 2008-06-24 09:39:39 +00:00
Dirk Mueller
aa0a6976cb guess the parameters of list if inside a working dir 2008-06-24 09:37:49 +00:00
Marcus Hüwe
be934cc16d - fix bug #400431 2008-06-18 14:34:30 +00:00
Dr. Peter Poeml
2bd196d8e3 - osc buildhist: change the output into a format which better matches actual RPM filenames.
- give commit message tempfiles a ".diff" suffix, so syntax highlighting might work in some editors
2008-06-17 06:12:48 +00:00
Dr. Peter Poeml
693987ac49 osc update: after update, reset the revision when updating multiple package.
Fixes "404: Not Found" type errors when updating an entire project. [bnc#399177]
2008-06-11 08:29:27 +00:00
Dr. Peter Poeml
f4228de56b osc wipebinaries: add missing check for commandline arguments, which could
cause a PACKAGE argument to be ignored
2008-06-11 08:01:10 +00:00
Dr. Peter Poeml
86ad9766b2 - make submit request possible without giving commandline arguments, under some
circumstances -- when there is a working copy, and the package is a source
  link, osc will figure out what's needed.
- don't stop submitrequests on packages that have a devel project defined, if
  the submit comes from that project.
- osc checkout: checkout of source links is now done in expanded form per
  default. --unexpand-link can be used to get the raw link file (and patches).
2008-06-06 12:04:34 +00:00
Dr. Peter Poeml
5438e4023a osc submitreq: look up the develproject of the target, and if there is one,
don't create the request, unless forced with --nodevelproject.
2008-06-03 15:01:01 +00:00
Dr. Peter Poeml
7641ed0c8c osc branch: add --nodevelproject 2008-06-03 13:16:55 +00:00
Dr. Peter Poeml
98090f8b09 make 'osc branch' show the actually created branch project name, not a guess one. 2008-06-03 12:43:52 +00:00
Dr. Peter Poeml
3f9b53ca6e osc branch: use --expand-link in the example that shows how to check out the
branched package
2008-05-26 13:12:05 +00:00
Dr. Peter Poeml
ac55bcaa5a make help of osc init clearer 2008-05-21 16:10:20 +00:00
Dr. Peter Poeml
d8245f5f36 - add osc branch command, using the branch API call to branch a package to
home:poeml:branches:PRJ/PKG
2008-05-21 15:49:00 +00:00
Dr. Peter Poeml
7e524fd442 - osc commit: open $EDITOR for commit message
- osc status: implement -q/--quiet switch
- osc deletepac: allow deletion of multiple packages at once
- osc info: slightly more verbose
- core.edit_message() added
- core.getStatus() accepts new "quiet" argument
- oscerr.UserAbort added
2008-05-21 13:44:49 +00:00
Tom Patzig
4476afafd7 -cosmetic changes for rprjresults and rresults
-show Legend for prjresults only, if there are also packages to show
2008-05-20 11:36:16 +00:00
Dr. Peter Poeml
d80c47c0b9 - osc maintainer:
-D devel_project, --devel-project=devel_project
                        define the project where this package is primarily
                        developed
- core: add addDevelProject() method
2008-05-20 08:29:54 +00:00
Tom Patzig
abb97eb595 -new command rprjresults, to show remote project results
-new command rresults, to show remote package results
2008-05-16 12:25:50 +00:00
Tom Patzig
abcb4f8489 - legend in prjresults is default enabled
- added status-filter and name-filter option to prjresults
2008-05-15 18:09:24 +00:00
Marcus Hüwe
34e7822bbb - added --baselibs option to osc build 2008-05-08 12:21:57 +00:00
Pavol Rusnak
afec162189 - added --keep-maintainers switch to copypac
(do not remove original maintainers and replace them with caller)
2008-04-30 12:28:25 +00:00
Dr. Peter Poeml
3018460596 Merged revisions 3774-3775,3779,3781-3782,3787,3789-3793,3798,3802,3805,3817-3822,3827,3829-3830,3837-3839,3841-3842,3848-3850 via svnmerge from
https://forgesvn1.novell.com/svn/opensuse/branches/buildservice/osc-exception-handling

........
  r3774 | poeml | 2008-04-22 17:39:45 +0200 (Tue, 22 Apr 2008) | 3 lines
  
  A first draft on implement systematic exception handling: 
  Add errors.py with some exceptions defined, and babysitter.py to handle them
........
  r3775 | poeml | 2008-04-22 22:34:12 +0200 (Tue, 22 Apr 2008) | 9 lines
  
  - new global options:
       --debugger         jump into the debugger before executing anything
       --post-mortem      jump into the debugger in case of errors
       -t, --traceback    print call trace in case of errors
  - traceback and post_mortem can also be set in .oscrc.
  - catch more errors (HTTPError).
  - make config accessible from outside of the Osc instance, by making it a class
    attribute
........
  r3779 | poeml | 2008-04-23 00:55:49 +0200 (Wed, 23 Apr 2008) | 5 lines
  
  - new global option:
       -d, --debug        print info useful for debugging
  - catch some more errors (HTTPError), with OscHTTPError which isn't very
    advanced yet.
........
  r3781 | Marcus_H | 2008-04-23 01:02:00 +0200 (Wed, 23 Apr 2008) | 2 lines
  
  - added OscConfigError class (just for testing).
  - small change in the signature of the OscBaseError constructor (actually we should get rid of the 'args' tuple because it will be deprecated sooner or later
........
  r3782 | Marcus_H | 2008-04-23 02:02:13 +0200 (Wed, 23 Apr 2008) | 2 lines
  
  - access the prg.conf.config dict in a save way - this way we avoid AttributeErrors if the prg.conf.config dict doesn't exist
  - in case of an configparser error we have to use the prg.options object directly (this was removed in r3781 by accident)
........
  r3787 | poeml | 2008-04-23 09:23:56 +0200 (Wed, 23 Apr 2008) | 4 lines
  
  - remove local exception handling from do_req
  - for HTTPError, print details (headers and response) when in debug mode
  - catch AttributeError
........
  r3789 | poeml | 2008-04-23 16:23:14 +0200 (Wed, 23 Apr 2008) | 4 lines
  
  - errors: add two new classes named OscWrongOptionsError and OscWrongArgsError
  - commandline: raise instances of the new errors in a number of places
  - commandline: add get_cmd_help() to Osc instance which returns the formatted help of a subcommand
........
  r3790 | Marcus_H | 2008-04-23 16:48:28 +0200 (Wed, 23 Apr 2008) | 4 lines
  
  - added 2 new exception classes: OscNoConfigfileError and OscIOError
  - added new method write_config() to the conf.py module: This method writes osc's configuration file
  - minor cleanups in the conf module
........
  r3791 | poeml | 2008-04-23 17:11:07 +0200 (Wed, 23 Apr 2008) | 3 lines
  
  small compatibility fix for r3790: try-except-finally isn't supported in
  python-2.4.2, thus do the same as try-except inside a try-finally.
........
  r3792 | poeml | 2008-04-23 17:37:53 +0200 (Wed, 23 Apr 2008) | 2 lines
  
  fix up the remaining places regarding handling of errors related to commandline parsing
........
  r3793 | poeml | 2008-04-23 17:40:34 +0200 (Wed, 23 Apr 2008) | 3 lines
  
  raise a NoWorkingCopyError in osc.core.store_read_project() in case of an
  IOError
........
  r3798 | Marcus_H | 2008-04-23 23:55:24 +0200 (Wed, 23 Apr 2008) | 1 line
  
  ported -r3797 from trunk
........
  r3802 | Marcus_H | 2008-04-24 11:00:55 +0200 (Thu, 24 Apr 2008) | 1 line
  
  ported -r3801 from trunk
........
  r3805 | poeml | 2008-04-24 12:52:30 +0200 (Thu, 24 Apr 2008) | 2 lines
  
  raise OscHTTPError in show_pattern_meta(), replacing local error handling
........
  r3817 | poeml | 2008-04-24 20:21:32 +0200 (Thu, 24 Apr 2008) | 9 lines
  
  - remove errors.OscHTTPError again.
    it seems simpler to use urllib2.HTTPError instead (and just add a specific
    error text message where appropriate, and re-raise)
  - for 404s, check out _which_ part was not found
    it is very ugly, but may be considered Good for pragmatic reasons
  - removed local exception handling and workaround for returned 500's from
    delete_package() and delete_project(), thereby getting rid of 4 possible exit
    points.
........
  r3818 | Marcus_H | 2008-04-24 22:36:17 +0200 (Thu, 24 Apr 2008) | 1 line
  
  - this check is superfluous because every HTTPError instance has a code attribute
........
  r3819 | poeml | 2008-04-25 00:39:39 +0200 (Fri, 25 Apr 2008) | 1 line
  
  remove a forgotten debug line from core.delete_project()
........
  r3820 | poeml | 2008-04-25 10:07:58 +0200 (Fri, 25 Apr 2008) | 2 lines
  
  - ditch local error handling from wipebinaries(), rebuild(), and abortbuild()
........
  r3821 | poeml | 2008-04-25 10:56:38 +0200 (Fri, 25 Apr 2008) | 2 lines
  
  It is never needed to import the exception module.
........
  r3822 | poeml | 2008-04-25 11:13:39 +0200 (Fri, 25 Apr 2008) | 4 lines
  
  - when going into the debugger with --post-mortem, always print a traceback before
    (thus implying -t)
  - do not jump into the debugger if not on a TTY, or working in interactive mode
........
  r3827 | poeml | 2008-04-25 13:07:46 +0200 (Fri, 25 Apr 2008) | 9 lines
  
  - add errors.OscWorkingCopyOutdated, which takes a tuple with three args:
    path to working copy, current rev, expected rev
  - add handler for urllib2.URLError errors to the babysitter
  - simplify the OscWrongArgsError and OscWrongOptionsError handlers, by removing
    the extra line "Sorry, wrong ..." that was printed before the messages given
    when the error was raised.
  - remove one more errors.OscHTTPError which was still there, and raise
    urllib2.HTTPError instead (show_package_meta())
........
  r3829 | poeml | 2008-04-25 14:19:10 +0200 (Fri, 25 Apr 2008) | 11 lines
  
  - comment some methods in osc.core which are used by nearly all do_* methods in
    osc.commandline
  - improve "is not a package/project dir" error messages, by printing the
    absolute path tried, instead of '.' for the cwd
  - make core.store_read_package() raise a proper NoWorkingCopyError instead of
    terminating
  - give attribution to things in babysitter.py copied from mercurial
  - prefix HTTPError exceptions with 'Server returned an error:'
  - remove obsolete local error handling from do_prjresults(), do_importsrcpkg(),
    do_repos()
........
  r3830 | poeml | 2008-04-25 14:29:35 +0200 (Fri, 25 Apr 2008) | 1 line
  
  catch IOError exceptions in the babysitter
........
  r3837 | poeml | 2008-04-25 17:27:36 +0200 (Fri, 25 Apr 2008) | 5 lines
  
  - do_remotebuildlog: raise errors for wrong arguments, remove exits
  - raise AttributeError in make_meta_url() instead of exiting
  - delete unused method core.delete_server_files()
  - replace exit call inside make_meta_url() with an AttributeError 
........
  r3838 | poeml | 2008-04-25 17:49:18 +0200 (Fri, 25 Apr 2008) | 1 line
  
  simplify the check in do_checkout if a project exists, by using show_project_meta() instead of meta_exists
........
  r3839 | poeml | 2008-04-25 18:31:26 +0200 (Fri, 25 Apr 2008) | 6 lines
  
  - commandline do_checkout(): change the order of the two checks, first do the
    (cheaper) check for existing directory
  - core.core checkout_package(): simplify the check in if the package
    exists, by using show_package_meta() instead of meta_exists
    Let it throw an exception, instead of using sys.exit().
........
  r3841 | Marcus_H | 2008-04-27 15:48:06 +0200 (Sun, 27 Apr 2008) | 5 lines
  
  - added 2 new exception classes: PackageError() and PackageExistsError. The PackageError() class is meant to be the base class for all subsequent package exceptions.
  - get rid of 2 sys.exit(1) calls
  - make the update() method of the Project() class safer: in any case we have to write the _packages file otherwise the package tracking will be screwed up.
  - minor fix in delPackage(): use getTransActPath() when printing out the filename
........
  r3842 | Marcus_H | 2008-04-27 16:52:55 +0200 (Sun, 27 Apr 2008) | 3 lines
  
  - make the commit() method safe: in any case we have to write the _packages file otherwise the package tracking will be screwed up.
  - removed another sys.exit(1): raise an exception if a package is missing when doing a commit. For now we use the PackageExistsError() exception but this might change in the future (updated description of PackageExistsError() according to this change)
........
  r3848 | poeml | 2008-04-28 12:46:45 +0200 (Mon, 28 Apr 2008) | 3 lines
  
  rename several error classes, dropping the "Osc" prefix, and "Error" suffix in
  cases where they don't really make sense.
........
  r3849 | poeml | 2008-04-28 12:57:32 +0200 (Mon, 28 Apr 2008) | 3 lines
  
  - rename osc.errors module to osc.oscerr, to make it easier to import it from
    other programs and have a crystal clear namespace
........
  r3850 | poeml | 2008-04-28 13:26:12 +0200 (Mon, 28 Apr 2008) | 2 lines
  
  split PackageExists exception class into PackageExists and PackageMissing
........
2008-04-28 16:37:44 +00:00
Dr. Peter Poeml
5d7df534ee submitreq show: fix the --diff option; the diff was shown reversed. (bnc#379519) 2008-04-28 09:39:07 +00:00
Marcus Hüwe
2440bed285 - added --job option to the do_build() command. (this option will be passed to build script) 2008-04-24 09:00:23 +00:00
Marcus Hüwe
4c6ce9ae56 - added new method getStatus() which calculates the status of certain packages
- cleaned up do_status() and added support for multiple project dirs (osc st prj_dir1 /path/to/prj_dir2 ...)
2008-04-23 21:51:24 +00:00
Marcus Hüwe
e9176c7513 - fixed bug #378752 (osc fails to delete patterns) 2008-04-10 21:04:17 +00:00
Marcus Hüwe
80ab6bf345 - fixed bug #359846:
the BUILD_DIST environment variable will be ignored by osc
- the following environment variables can still be used:
  # OSC_SU_WRAPPER overrides the setting of su-wrapper. 
  # OSC_BUILD_ROOT overrides the setting of build-root.
  # OSC_PACKAGECACHEDIR overrides the setting of packagecachedir.
  (now they're documented in the helptext)
2008-04-09 18:45:59 +00:00
Marcus Hüwe
a3f948dede - fixed bug #376285:
* make_dir() and checkout_package() got a new optionally 'prj_dir'     parameter. This parameter specifies in which dir we want to create new project/package dirs.
2008-04-02 15:30:44 +00:00
Dr. Peter Poeml
e62dd94cc0 copypac: make the server-side copy the default. But do a client-side copy if source and target are not on the same buildservice instance. 2008-04-02 14:36:23 +00:00
Marcus Hüwe
a20e354d07 - small apiurl fixes 2008-03-27 00:36:17 +00:00
Dr. Peter Poeml
3db9e6449c Link handling:
Add support for handling linked packages in expanded form. They can be checked
out, updated (expanding or unexpanding them), and built locally.
Missing: commit support.

Newly introduced options are:
- osc checkout: --expand-link 
- osc update: --expand-link and --unexpand-link 

Other changes:
- osc core: add show_upstream_xsrcmd5() method which returns the xsrcmd5 (if a
  linkinfo element exists only, of course)
- made updating of expanded sources work with package tracking, too.
2008-03-24 20:24:49 +00:00
Dr. Peter Poeml
64f3d8c55e submitreq show: if the target package doesn't exist, a diff cannot be produced. 2008-03-20 20:11:30 +00:00
Marcus Hüwe
3c3e961f4e - minor fix in createPackageDir
- osc mkpac only works when 'do_package_tracking' is enabled
2008-03-17 23:43:32 +00:00
Marcus Hüwe
3fdf758dbb - do_repos() should work in a project dir too 2008-03-17 23:24:28 +00:00
Dr. Peter Poeml
2493ea555a - copypac: do a server-side copy (via a single api call) when
used with -s / --server-side. 
  This might be the default behaviour later.
  An option to specify the source revision is missing yet.
2008-03-17 21:46:42 +00:00
Dr. Peter Poeml
54c1690309 osc req: add option -a / --add-header to add arbitrary request headers 2008-03-16 20:46:16 +00:00
Marcus Hüwe
5d57d7e299 - added 3 new methods:
* createPackageDir(): create and initialize a new package dir in
    the given project.
  * get_apiurl_usr(): returns the username for a certain apiurl
  * get_configParser(): returns an ConfigParser() object which can be
    used for parsing the ~/.oscrc file
- fixed username issues when creating a new package (the problem was
  that the username for the default host was used and not the one for
  that specific apiurl)
- some small fixes in the do_importsrcpkg() method
2008-03-15 22:51:37 +00:00
Pavol Rusnak
734973a0bd csv exported project results now use ';' as default 2008-03-13 11:13:22 +00:00
Dr. Peter Poeml
2bf92fce75 submitreq:
- when requesting a submit, save the source package's revision id (looking up
   what it currently is)
 - give the user a way to override it, to submit an older revision
 - when using show --diff, take the actual old revision into account. Thus, the
   diff is against the source revision of the time of request creation.
2008-03-12 23:37:35 +00:00
Dr. Peter Poeml
6ab8fb52c7 - remove remove obsolete, commented code (do_editpac(), do_editprj())
- fix a small tabbing issue
2008-03-12 18:26:41 +00:00
Dr. Peter Poeml
241f528dc4 implement a submitreq 'accept' action, resulting in the respective state change 2008-03-12 18:22:11 +00:00
Jürgen Weigert
0334ea4218 add --debuginfo switch to osc build 2008-03-11 15:18:02 +00:00
Dr. Peter Poeml
c0fabfc449 merged the package-tracking branch changes r2404:3491 into the trunk. 2008-03-10 18:04:23 +00:00
Michal Marek
3613893199 better fix: use %(mapping keys)s in templates 2008-03-07 09:13:30 +00:00
Michal Marek
ad2493d496 fixed last change (r3445) 2008-03-07 09:01:13 +00:00
Dr. Peter Poeml
d87de082c2 submitreq:
- rename 'refuse' -> 'decline', which is more polite.
  - show: make the diff optional
  - add RequestState class
  - handle state history
  - implement 'decline' action
2008-03-06 10:25:45 +00:00
Dr. Peter Poeml
d63779a6a4 rename the new merge requests to submit requests 2008-03-05 23:51:48 +00:00
Susanne Oberhauser
b4df120e5b - adjust osc init docstring to new realities (osc meta instead of osc
createpac)
2008-03-05 21:05:17 +00:00
Dr. Peter Poeml
488e14a0d8 typo accepd -> accept 2008-03-04 23:48:34 +00:00
Dr. Peter Poeml
aec7129a9b - add a new subcommand 'mergereq' to handle merge requests. So far, it can
create, list, show requests.
- internally, add a MergeReq class, and do the needed (HTTP) requests.
2008-03-04 23:41:00 +00:00
Michal Marek
6c20c7203f fix importsrcpkg when $projectdir/.osc/_apiurl is an alternative apiurl 2008-03-03 13:51:01 +00:00
Marcus Hüwe
016c80db86 - added optional apiurl parameter to the following methods:
meta_exists, make_meta_url, checkRevision
  if no apiurl parameter is specified the global value (conf.config['apiurl'])
  will be used. This should fix bug #361764
- some small apiurl fixes in the make_diff method (the package_tracking branch already has this fix)
2008-02-18 13:44:20 +00:00
Michal Marek
3dd6ef0f71 added option --csv to 'osc prjresults' to output a CSV table 2008-02-12 12:45:06 +00:00
Dr. Peter Poeml
63e4d8da3c - osc build: add --no-verify, to skip the package signature verification step 2008-01-24 18:06:45 +00:00
Marcus Hüwe
f8b5963c7a - check if a project exists before initializing the project dir 2008-01-18 10:35:57 +00:00
Marcus Hüwe
a8788c2c4e - added revision option to do_cat() 2008-01-15 18:58:58 +00:00
Marcus Hüwe
5306a78503 - added two new options to osc build:
* --local-package: use this option if you're trying to build a
    package which doesn't exist on the server
  * --alternative-project <project>: use this option to specify an
    alternative project if the current project doesn't exist on the
    server, e.g.: osc build [OPTS] --alternative-project openSUSE:10.3 standard i586 BUILD_DESCR
- some other minor cleanups in build.py
- get_repos_of_project() is now a generator function
2008-01-07 14:54:31 +00:00
Marcus Hüwe
53e1640b1e - added new command "remotebuildlog" to show the buildlog of a package
(you don't have to checkout the package to view the buildlog)
- renamed "get_log()" to "get_buildlog" to avoid any confusion with
  "get_commitlog()"
- added new method "print_buildlog()" which prints out the buildlog on the
  standard output
2008-01-03 22:10:16 +00:00
Marcus Hüwe
5242289d3d - do_cat(): do not print a newline (strip the trailing '\n' from string) 2007-12-13 12:00:16 +00:00
Dr. Peter Poeml
6781119d43 - cat: simplify the code a bit; don't print header and footer lines
- unification of the help output of some commands
2007-12-10 14:23:58 +00:00
Dr. Peter Poeml
aca6c6979e cat: fix the test if the file is binary, which swallowed the first 4098 bytes 2007-11-30 10:28:00 +00:00
Dr. Peter Poeml
9aafba838f improve wording in rdiff documentation 2007-11-29 17:32:52 +00:00
Dr. Peter Poeml
620bc2ea68 add rdiff subcommand, to allow server-side diffs between arbitrary packages 2007-11-29 17:22:57 +00:00
Marcus Hüwe
d4bfd42bb4 - copied init_project_dir() method from the osc-package-tracking branch (just removed the do_package_tracking stuff)
- checkout an empty project instead of doing nothing
2007-11-29 12:54:07 +00:00
Marcus Hüwe
7b9f85f97f - reworked the diff functionality:
* some new things like showing newly added files
  * moved the whole code into a new methode (make_diff())
  * behave more like svn when doing a diff against a certain revision
- changed the storedir attribut of the Package() class to an absolute
  filename - normally this shouldn't have any impact on existing methods, functionality etc.
2007-11-26 18:13:51 +00:00
Marcus Hüwe
69e3fd1d4e - added new "cat" command to print a file on the standard output 2007-11-02 18:18:30 +00:00
Dr. Peter Poeml
675901bc5d - aggregatepac: new command, similar to linkpac. Patch from Pavol Rusnak.
- prjresults: for newly added packages, build status may be missing. Cope with that.
2007-10-30 13:45:54 +00:00
Marcus Hüwe
42e128687d - added --build-failed and --broken options to the do_wipebinaries()
method (this also fixes bug/enhancement #335498)
2007-10-27 19:13:24 +00:00
Marcus Hüwe
d0b0b1bdb5 enabled deletion of packages as the backend now supports it. 2007-10-13 23:15:49 +00:00
Marcus Hüwe
69b7e3bfc7 added a bit more functionality to do_maintainers. It is possible to add and delete users from a project/package 2007-09-12 18:01:13 +00:00
Marcus Hüwe
40d2ce205e - added verbose option to do_maintainers:
* it basically lists some more information about
    each maintainer
- replaced get_user_email() with get_user_data()
2007-09-03 16:18:37 +00:00
Dr. Peter Poeml
9ce40d4bab - build: allow to use lbuild, a compatible replacement for build 2007-09-03 14:52:45 +00:00
Dr. Peter Poeml
459651ed60 make osc call build with --changelog option, by default [#298436] 2007-09-03 10:25:18 +00:00
Dr. Peter Poeml
27cee26d4a new command 'maintainer' 2007-09-03 10:17:26 +00:00
Dr. Peter Poeml
70524c88c7 fix typo in error message in do_importsrcpkg() 2007-08-27 18:02:53 +00:00
Dr. Peter Poeml
a3a2667742 - change conf.get_config() to take three optional override values:
get_config(override_conffile = None,
             override_http_debug = None,
             override_apisrv = None)
  Thus, it should be possible to use the osc module with one simple 
  conf.get_config() call. It is no longer required to set up the api url in the
  config dict, and call conf.init_basicauth().
2007-08-22 10:18:25 +00:00
Dr. Peter Poeml
0da80f0fd9 - core: add get_binary_file(), with contribution from James Oakley
- ls command: add -b option to list binaries
- req command: show error response also for 404 responses
2007-08-16 18:15:08 +00:00
Marcus Hüwe
02d77c4bda fixed "osc build" if $BUILD_DIST is set 2007-08-15 19:28:08 +00:00
Dr. Peter Poeml
da6f6c4a8a build: add --changelog option to force update of the package changelog from a changes file 2007-08-14 11:26:13 +00:00
Dr. Peter Poeml
cdf91d7f39 commit: use the documented commit method by default now 2007-08-14 10:30:39 +00:00
Dr. Peter Poeml
5cd1ace719 don't hardcode 'package' query parameter into show_results_meta() 2007-08-11 12:29:38 +00:00
Dr. Peter Poeml
6298267101 meta: remove notion of non-implemented --create switch. give example for meta pkg usage 2007-08-09 16:15:13 +00:00
Dr. Peter Poeml
929fe9b12c search: add --repos-baseurl option 2007-08-09 11:35:08 +00:00
Marcus Hüwe
d75d98da50 fixed possible "UnboundLocalError". Thanks to judas_iscariote for spotting this issue! 2007-08-08 19:48:38 +00:00
Marcus Hüwe
003c3dad5b fixed two small typos 2007-08-08 15:44:14 +00:00
Marcus Hüwe
9921478c37 changed default behaviour of importsrcpkg(). The files will not be committed by default. To commit them use the --commit switch. 2007-07-30 18:11:52 +00:00
Marcus Hüwe
d6bdc3712f - some more work on importsrcpkg():
* by default the new files will be comitted
    (if it is a new package or if there are no
    source files on the server)
  * added --disable-commit option switch to
    import the package only locally
  * added --delete-old-files option switch to
    delete old files from the server.
- some changes in the Package class:
  * extended existing commit() method to do
    all the commit work (before it was done
    in the do_commit() method).
  * moved stuff from the constructor into a
    new method (update_datastructs()).
2007-07-30 11:12:42 +00:00
Marcus Hüwe
155d60cfa0 use rpm-python to detect the "Name:", "Summary:", "%description" of a (s)rpm.
This change speeds up some things
2007-07-29 15:27:27 +00:00
Dr. Peter Poeml
8316936fa5 allow to import source rpms by specifying an URL 2007-07-25 12:21:46 +00:00
Dr. Peter Poeml
633fd2c10f simplify do_importsrcpkg() 2007-07-25 12:14:32 +00:00
Dr. Peter Poeml
8fe9ac2ed1 add req command to issue arbitrary requests to the API 2007-07-25 10:56:04 +00:00
Dr. Peter Poeml
31953fbbe4 append missing newline if do_commits=False [#293672] 2007-07-24 10:35:08 +00:00
Marcus Hüwe
f36e3133c7 - added new importfromsrcpkg command:
* now a package can be imported from a
    src.rpm
  * thanks to Peter for his is_rpm() and is_srcrpm()
    methods
- split out some methods into smaller ones (so they
  can be reused for other tasks)
- added some new methods for unpacking a src.rpm
- changed read_meta_from_spec() method to be more
  flexible (it is possible to specify the tags and
  sections).
2007-07-23 16:03:30 +00:00
Dr. Peter Poeml
de9faebefe - meta: add --delete switch to delete pattern files
- complete last fix (don't implicitely add .xml to pattern files) -- forgot to
  commit the part in osc/core.py.
2007-07-19 12:23:42 +00:00
Dr. Peter Poeml
1945a7a683 - fix indentation (enforceming pattern file argument)
- don't implicitely add .xml to pattern files -- it will probably cause
  confusion.
2007-07-19 11:54:13 +00:00
Dr. Peter Poeml
a9dbc4bb1d fix error message which osc issues if build package is too old 2007-07-19 10:49:30 +00:00
Dr. Peter Poeml
ad9517cb81 meta: extend usage info for 'meta pattern' 2007-07-19 10:14:10 +00:00
Dr. Peter Poeml
04bd877a59 - meta: allow for editing patterns
# list patterns:
  osc meta pattern <prj>

  # show pattern foo:
  osc meta pattern <prj> foo

  # edit pattern foo:
  osc meta pattern <prj> foo -e
2007-07-19 10:08:42 +00:00
Dr. Peter Poeml
d260050dc0 - commit (using the currently documented way): do DELETEs _before_ generating
an "upload" revision with PUTs. The DELETEs would be invalidated by the
  commit.
2007-07-18 13:20:59 +00:00
Dr. Peter Poeml
5c0b0d64b6 commit: flush stdout, so that the progress dots are seen directly when being written 2007-07-18 13:05:13 +00:00
Dr. Peter Poeml
05b47f7f98 - commit: switch to new commit mode also if the -F switch is used
- update NEWS file
2007-07-16 17:30:48 +00:00
Dr. Peter Poeml
b5e1dec8ad - api now sends HTTP/1.1 400 Bad Request for invalid xml. Thus, show the reply
body because it contains helpful info.
- repair linkpac for the new metadata editing facilities. copypac still seems
  to work.
2007-07-16 17:06:06 +00:00
Dr. Peter Poeml
5284a9b783 - meta: implement -F|--file switch. Can read from stdin to ease scripting.
- rework editmeta class, because it was programmed to pull content from the
  server first
- add a catch-all for the depracated commands which refers to the new meta command
2007-07-16 16:20:09 +00:00
Dr. Peter Poeml
4944828bf1 - improve usage info on meta command
- if PUT on metadata fails with a 500, and http_debug is True, print out the
  body of the server reply
- rename update_pacmeta() to update_local_pacmeta() for clarity
- rename update_filesmeta() to update_local_filesmeta() for clarity
2007-07-16 13:40:58 +00:00
Dr. Peter Poeml
3aa108d32a usage info for the meta command 2007-07-16 10:58:11 +00:00
Dr. Peter Poeml
9921fcac8e Switch from software.opensuse.org to download.opensuse.org as default
download URL
2007-07-16 09:45:17 +00:00
Marcus Hüwe
cf3727b70c - added initial search support (some ideas are taken from the webclient):
* when searching a package/project it
     is also possible to search for the search term
     in the <title /> and <description /> elements of
     a package/project.
   * show only exact matches
   * etc.
- please tell me if the usability is too "complex"
  or if the output of the results is too weird.
2007-07-15 13:49:13 +00:00
Dr. Peter Poeml
5a4f1e4d42 - new meta command, replacing editmeta, editprj, createprj, editpac, createpac,
edituser. TODO: 
    - write usage info
    - implement -c|--create
    - implement -F|--file
    - check whether I broke usage of metadata copying/creation from withing
      linkpac or copypac
    - re-implement createpac and friends as aliasses to the new meta command -- I
      just commented them out for now
- fix metadata change detection, which no longer relies on the timestamp of the
  temporary file
- add close() in dgst(), which seemed to miss (I can't see a reason why it
  should not be there0
2007-07-13 16:01:02 +00:00
Dr. Peter Poeml
9d2863b257 - log: convert commit messages to preferred output locale
- commit: new option -F/--file to read commit message from file
- commit: print committed revision number
- Package.commit(): return the new revision number
2007-07-13 10:02:35 +00:00
Marcus Hüwe
fd199c66e9 - added revision support for "osc log"
- some other minor fixes (a bit exception handling (some other methods should be improved too!) etc.)
2007-07-12 00:48:52 +00:00
Dr. Peter Poeml
7e98ecb0cb - renamed log command to buildlog (short: bl)
- implementing a provisionary log command for the commit log
- commit: implemented -m option for the commit message
- commit files together, if (and only if) do_commits = 1 is set in the 
  [general] section of .oscrc
2007-07-11 23:24:26 +00:00
Marcus Hüwe
44b1f5621c small fix for do_checkout() 2007-07-07 17:13:37 +00:00
Marcus Hüwe
644f8695de added checkRevision() method to verify a revision 2007-07-06 11:54:34 +00:00
Dr. Peter Poeml
eaa08653e0 addremove: ignore foo.rXX, foo.mine for files which are in 'C' state 2007-07-06 11:20:30 +00:00
Dr. Peter Poeml
9ee07fcd5a wipebinaries: allow to wipe all binaries of packages for which the build is disabled 2007-07-04 14:57:19 +00:00
Marcus Hüwe
a0f8f15190 updatepacmetafromspec scans for spec files automatically.
requested/suggested (or whatever) by darix
2007-07-04 13:48:24 +00:00
Marcus Hüwe
85e66362af added initial revision handling:
- extended "osc co prj pac" to checkout a specific revision of pac
    - extended "osc up" to update to a specific revision
    - extended "osc diff" to diff the working copy against a
      specific revision on the server. NOTE: comparing two
      server-side revisions (osc diff -r 11:12) is currently
      not supported!
2007-07-04 12:55:26 +00:00
Marcus Hüwe
adf9e633f9 added --specfile option to updatepacmetafromspec. Now the name of the spec can differ from the package name. 2007-06-30 15:39:47 +00:00
Dr. Peter Poeml
5f2e9ac766 - load subcommands from /var/lib/osc-plugins/ or ~/.osc-plugins/ 2007-06-29 18:26:30 +00:00
Dr. Peter Poeml
f54d26e61e rm: don't allow to mark files as deleted which are not under version control 2007-06-29 12:02:35 +00:00
Dr. Peter Poeml
d5ba95193b log: fail gracefully if logfile can't be found 2007-06-26 14:22:23 +00:00
Dr. Peter Poeml
a7158af067 - ls: add verbose option to print extra information for packages
- for ls, co, meta, editmeta, linkpac, copypac, rebuildpac, and wipebinaries
  (basically all the server-side commands), allow arguments "foo/bar" instead
  of "foo bar"
- add show_project_conf()
2007-06-26 13:17:38 +00:00
Dr. Peter Poeml
751bc409ac init: make usage (and usage info) info more precise 2007-06-21 09:40:47 +00:00
Dr. Peter Poeml
0cf26d0f06 - with small changes, apply a patch from Marcus Huewe:
- added wipebinaries command
  - added abortbuild command
  - improve handling of metadata editing if the server doesn't accept it
- rebuildpac: rename internal command for consistency reasons
- update NEWS file
2007-06-14 14:30:36 +00:00
Dr. Peter Poeml
48349f67b9 adjust for change in build.rpm, where /usr/lib/build/debsort was removed. Look
for debtransform program instead in order to determine if build.rpm is new
enough.
2007-06-14 08:34:02 +00:00
Dr. Peter Poeml
fc6eaf68da - update cmdln.py to planned 1.0 version. The main changes are
related to points that were raised during employment in osc:

  # v0.8.3
  - Fix a bug where errors with passing an incorrect number of args to
    functions in do_foo() implementations would be masked.
  
  # v1.0.0
  - [backward incompat] `Cmdln.main()` no longer takes an `optparser`
    argument. Top-level option parsing has been changed so that top-level
    options for a `Cmdln` subclass can more naturally be defined and
    handled on the class definition. Changes:
    - `Cmdln.main()` calls `self.get_optparser` to get an option handler.
      Subclasses should overload this method for custom top-level options.
    - After option parsing, but before sub-command handling, the
      `self.postoptparse()` hook is called.
  - Add a `version` attribute on `Cmdln` subclasses. If set, the default
    top-level option parser will have a `--version` attribute.
  - [backward incompat] Simplify the StopProcessing/opts.stop handling for
    option handling in subcommands. The "opts" argument to "do_*"
    sub-command functions will no longer have a "stop" value.
    StopProcessing is now called StopOptionProcessing. This shouldn't
    affect simple usage of cmdln.py.
  
- adjust osc.commandline for these changes.
2007-05-16 10:55:05 +00:00
Dr. Peter Poeml
036a8780e2 results: remove obsolete code handling commandline arguments 2007-05-15 21:13:39 +00:00
Dr. Peter Poeml
c895de414e osc build: add --userootforbuild option 2007-05-14 08:29:50 +00:00
Dr. Peter Poeml
0d9278229c - don't need config['pass'] anymore
- but set config['user'], which was unset since the recent changes in auth handling
2007-05-10 14:29:04 +00:00
Dr. Peter Poeml
cb61461fb4 - build & buildinfo:
- implement --extra-pkgs option
  - pass the list of extra packages to the backend, as "add=pkg" query parameters
  - use osc.core.get_buildinfo(), instead of os.system('osc buildinfo ...')
- implement adding query parameters to constructed URLs in a more generic way
2007-05-09 09:36:55 +00:00
Dr. Peter Poeml
a21f5c1891 don't try to delete projects, as long it is not implemented in the backend 2007-05-08 08:59:10 +00:00
Dr. Peter Poeml
2c5e637693 make deletepac work again 2007-05-07 18:32:51 +00:00
Dr. Peter Poeml
0ab5e73ed9 use apiurl, not apisrv, in deleteprj and deletepac commands 2007-05-07 17:52:04 +00:00
Dr. Peter Poeml
90ca587cd0 - 0.96
- save api server url to .osc/_apiurl. This requires changing makeurl() and all
  calls to it.
- implement 'info' subcommand, essential for debugging these changes.
- use new api routes in all places
- buildhistory works again
- copypac: implement package copy from one buildservice instance to another
  (--to-apiurl option)
- the results subcommand handles <working copy> arguments now
2007-05-04 21:51:54 +00:00
Dr. Peter Poeml
4a2c675e6e - build:
- rename --prefer-pacs option to --prefer-pkgs
  - implement --keep-pkgs option
2007-05-03 15:54:40 +00:00
Dr. Peter Poeml
877f8b5ad7 - build:
- implement --prefer-pacs option
  - finished the help text that I started last time
  - rename buildconf -> rpmlist for the sake of consistency
2007-05-02 13:49:57 +00:00
Dr. Peter Poeml
60bc70dc7a applied patch from Michael Marek, fixing all places where error messages were
printed to stdout instead of stderr. [#239404]
2007-04-25 21:10:49 +00:00
Dr. Peter Poeml
354c01be55 - build: fix passing of commandline options and arguments to build.main(),
which was still using sys.argv
- build: use own api server as upstream URL in urllist. So far,
  api.opensuse.org was hardcoded in the download URL [#265211].
2007-04-25 11:22:40 +00:00
Dr. Peter Poeml
b58b6e5a3f - fully implement accessing multiple API servers. "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 still accepted. Likewise, the auth sections in the config take
  a URL now, and a hostname:port to keep old config working.
  Furthermore, apisrv can be overridden by -A on the commandline. HTTP or HTTPS
  scheme is determined from the URL. Credentials must be configured in .oscrc.
2007-04-25 10:24:51 +00:00
Dr. Peter Poeml
2f5b52e92c Complete rewrite of the internal commandline handling, using cmdln.py.
Bump version to 0.95.

New features:
- implement "rebuild all failed packages", via --failed option in rebuildpac
  subcommand (new api route)
- status -v shows all files, including unmodified ones
- suppress the legend in prjresults by default (show with -l)
- add global options to override config
- can use arbitrary api server via global -A option
- -H enables HTTP traffic debugging
- --version

Bugfixes:
- fix typo in delete_project() (the line building up the URL got lost)
- fix the commit subcommand's arguments. This works correctly now: 
    osc ci ../test/onlyinwc `pwd` fstab ../test/f2 
- fix buildinfo subcommand, if no specfile is posted. Broke with the recent URL
  handling rewrite, but didn't seem to bother because the build subcommand
  always sends the specfile.
- try to fix buildhistory route, but it might be gone actually (need to pursue)
- add --clean/--noinit to osc build help output
2007-04-24 23:00:12 +00:00
Dr. Peter Poeml
162b52cc4d update: when updating multiple packages, print each package name 2007-03-29 21:53:38 +00:00
Dr. Peter Poeml
5f4640848e - when updating, don't delete files with local modifications
- add testcase
2007-03-19 13:30:59 +00:00
Dr. Peter Poeml
0b47b21719 - make 'results' subcommand many times faster, by making only a single request
on _result?view=status&package=%s (new api)
2007-03-12 23:21:34 +00:00
Dr. Peter Poeml
03b1db05fb - let the diff subcommand return 1 if differences were found 2007-03-12 15:46:15 +00:00
Dr. Peter Poeml
9a944edfeb - sort output of 'status' (unknown files first, filenames alphabetically)
- fix the unit tests for the above change, and for api changes
2007-01-23 00:32:45 +00:00
Dr. Peter Poeml
6274cf512b fix typo (Thanks Susanne) 2007-01-12 03:52:46 +00:00
David Mayr
885464d7a5 added commandline shortcut 'stat' for 'status', like in svn 2007-01-07 00:59:34 +00:00
Lars Vogdt
813125a8f6 - added links to the wiki pages for more details 2006-12-12 02:01:39 +00:00
Dr. Peter Poeml
cf852ae5db print usage info if 'co' is called without arguments 2006-10-18 22:30:53 +00:00
Dr. Peter Poeml
baafea955b - 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'.
- add preliminary support for doing uploads with a subsequent "commit" request
  (not switched on now, since I want to do more testing on this, and there is
  no way to pass on a commit message yet anyway.)
- add runtime check for build.rpm version, so the rpm package dependencies is
  no longer required
- fix typo introduced last time in the editmeta, deletepac, deleteprj commands
- rewrite the PUT and DELETE request methods to 
  - transparently handle HTTPS 
  - handle path parameters (for commits)
  - send user agent
- rename get_user_id() function to get_user_meta()
- change copyright notice from Peter Poeml to Peter Poeml / Novell Inc.
- fix testsuite
- add CREDITS file
2006-10-12 13:22:56 +00:00
Dr. Peter Poeml
39779ec9bc - rewrite configuration handling
- move all configuration code into module osc/conf.py
  - now, the API server can be configured in .oscrc with
    apisrv = ...
  - also, 'scheme' (http/https) is no longer a module variable but can be
    configured
  - all config is in DEFAULT
- ignore vim swap files
- use urllib() convenience wrapper in some functions that used
  urllib2.urlopen() and had their own error handling. Instead, it seems to make
  sense -- in the future-- to create our own errors and propagate them up, in
  cases where the error handling of urlopen() is too generic
- rename get_slash_source() to meta_get_project_list() for consistency
- show local time in get_buildhistory(), not UTC
- rewrite help text of 'rebuildpac' command
- allow to run commandline.py from the commandline (without the wrapper)
- don't send a space when doing a POST request without body
2006-10-10 14:04:34 +00:00
Dr. Peter Poeml
5f8fc4e340 - fix 'status <filename>'
- use filename matching to exclude files [#208969]
- add '.gitignore', '.pc', '*~' to ignore list
- add testcase
2006-09-29 14:34:18 +00:00
Dr. Peter Poeml
2b4a5ae46a - fix 'status' to work with project directories as arguments, and print proper relative pathnames
- fix testsuite, and add test for relative directories with 'status'
- add is_package_dir() method
- add pathjoin() method, similar to os.path.join but it removes a leading ./
2006-09-29 13:15:41 +00:00
Dr. Peter Poeml
03413a9e32 update NEWS and TODO 2006-09-29 10:37:53 +00:00
Dr. Peter Poeml
2321509096 - change 'buildhistory' to display human-readable text
- add 'deleteprj' command and delete_project() method. Note: the API server
  doesn't seem to support it yet.
- add 'prjresults' command to display aggregated build status over the entire
  project
- 'rebuildpac': accept additional repo and arch argument. Note: the syntax has
  changed.
- 'log': print usage info if called with missing arguments
2006-09-25 15:11:03 +00:00
Dr. Peter Poeml
c6d1d3917e - 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
2006-09-21 14:33:24 +00:00
Dr. Peter Poeml
755a4e7626 be fair, and also mention dsc files 2006-09-18 16:45:59 +00:00
Dr. Peter Poeml
aa248dde9f - implement POSTing of local specfile to get real buildinfo
- extend urlopen() so it takes data for optional POST
  - extend get_buildinfo() to take optional specfile argument
  - osc.build.main: send specfile to server
  - buildinfo(): accept specfile as third argument, and document it
2006-09-15 11:47:34 +00:00
Dr. Peter Poeml
7a8c7664da add subcommands createpac/editpac and createprj/editprj, which wrap around editmeta but are more logical to find; fix help message of editmeta subcommand 2006-09-15 10:53:44 +00:00
Dr. Peter Poeml
768dcb9b4a implement 'deletepac' subcommand 2006-08-11 10:37:29 +00:00
Dr. Peter Poeml
36cc55b6fd - rename subcommand 'history' (which was not implemented yet) to
'buildhistory', and make it work. It still gives out raw xml, which might be
  changed
- add some help text to the linkpac documentation
- add '.git' to exclude_stuff
2006-08-10 16:39:13 +00:00
Dr. Peter Poeml
db81a4b07b - new subcommand: linkpac, to create a linked package
- extend edit_meta() with two arguments: template=new_package_templ, change_is_required=True
- increase BLOCKSIZE in othermethods.putfile() (1024 seemed a little small)
- extend othermethods.putfile() to serve a string buffer instead of a real file 
- for filelists, don't read _meta file any longer (depracated). Read directly
  from /source/<project>/
2006-08-07 10:08:54 +00:00
Dr. Peter Poeml
12b0c4bb99 - fix creation of packages, which did no longer work since the latest changes
in error handling (since editmeta needs to see the 404 to know that a package
  is to be created)
- insert a newline after 'missing argument' messages
2006-07-20 14:23:10 +00:00
Dr. Peter Poeml
686eb637c8 build: when called without arguments, show only architectures that can be built on the local machine 2006-07-17 13:38:37 +00:00
Dr. Peter Poeml
b69ae796cc add info about build subcommand to README 2006-07-17 13:15:42 +00:00
Dr. Peter Poeml
d6f6a80d09 hacky support to allow setting <platform> <arch> by the environment variable BUILD_DIST, where BUILD_DIST equals <platform>-<arch> 2006-07-14 18:39:44 +00:00
Dr. Peter Poeml
e19ded6f70 add build opts to usage info 2006-07-14 17:45:44 +00:00
Dr. Peter Poeml
20a13e7b3b - bump version (0.7)
- initial support for local builds (subcommand 'build')
2006-07-14 17:39:46 +00:00
Dr. Peter Poeml
9e10eb40c6 add a wrapper function for urllib2.urlopen which handles errors; give better usage info for buildconfig/buildinfo 2006-07-12 14:14:50 +00:00
Dr. Peter Poeml
5d86b595b9 add new subcommands buildconfig, buildinfo, repos 2006-07-05 10:25:31 +00:00
Dr. Peter Poeml
1145aa0d3e - rewrite command and command alias handling so it is all defined in one place 2006-07-03 10:00:20 +00:00
Dr. Peter Poeml
d159226078 catch ctrl-c during log following 2006-06-29 23:41:10 +00:00
Dr. Peter Poeml
3eec9cfefc remove forgotten debugging code from last commit 2006-06-26 15:12:40 +00:00
Dr. Peter Poeml
6366ffb72f - remove dead code
- remove requirement on pyxml package
- use list comprehensions in some places
- fix 'rebuildpac' command to not show raw xml
- fix updatepacmetafromspec to cope with subpackages during parsing
2006-06-26 15:11:22 +00:00
Dr. Peter Poeml
0e4348e8fc - fix typo in package meta template: DESCIPTION -> DESCRIPTION
- unify all help texts
2006-06-22 11:26:01 +00:00
Dr. Peter Poeml
29fa2b0810 - add support for streaming build log, while it is being written (patch
by Christoph Thiel)
2006-06-16 12:40:26 +00:00
Dr. Peter Poeml
3e412a67a5 - don't diff binary files, using diff's heuristic
- 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
- escape '+' signs in filenames in GET requests as well (adds to [#153725,
  181593])
- don't fail on 'resolve' when the working copy is in a newer rev already
2006-06-08 10:30:29 +00:00
Dr. Peter Poeml
24a49bbfd6 - 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'
- use os.path.abspath() in Project and Package classes
2006-06-06 10:50:40 +00:00
Dr. Peter Poeml
749a1f76c9 - make 'resolved' more robust
- add 'repourls' subcommand
2006-06-02 14:00:58 +00:00
Dr. Peter Poeml
b9f53cbfb7 - add a tentative 'updatepacmetafromspec' subcommand, which takes package
metadata from a specfile
- handle HTTP error codes != 404 when reading metadata in edit_meta()
2006-05-31 12:13:26 +00:00
Dr. Peter Poeml
9557d10177 - it is not necessary to compute the digest when adding files -- saves time
- checkin: update local copy in store (fixes diff using obsolete old version)
- use shutil.copy2 instead of home-grown copy_file
- make put_source_file() and delete_source_file() methods of the Package class;
  rename delfile method to delete_localfile
2006-05-30 10:07:16 +00:00
Dr. Peter Poeml
2e8d12af7e fix update of working copy when adding file from upstream which is missing locally 2006-05-29 21:04:14 +00:00
Dr. Peter Poeml
1f764554a0 - fix update in directory with unmodified files: don't try to merge if upstream
file wasn't changed at all
- use given project name in new_project_templ
2006-05-23 16:16:14 +00:00
Dr. Peter Poeml
17de02b604 - add 'editmeta' subcommand: Edit project/package meta information, creating
new project or package if it doesn't exist. The user interface is $EDITOR
- gracedully handle unknown subcommands
2006-05-23 15:27:43 +00:00
Dr. Peter Poeml
e54577ceba remove a debug print statement 2006-05-23 14:05:07 +00:00
Dr. Peter Poeml
aa36c25505 - add 'help' subcommand (and add help :-)
- make all subcommands functions -- so they can be used from outside (they
  still print directly their output; they could become iterators later)
- deprecate 'init' subcommand
- 0.5
2006-05-23 13:48:58 +00:00
Dr. Peter Poeml
4ec0b4fbe7 fix status letter for files merged on update (in analogy to svn , it is either G or U) 2006-05-23 09:59:22 +00:00
Dr. Peter Poeml
8548d163f6 escape spaces in username 2006-05-22 14:57:11 +00:00
Dr. Peter Poeml
211b197b26 - 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.
2006-05-22 14:12:06 +00:00
Dr. Peter Poeml
2c37f7287d - allow 'up' of a project directory (will automatically pull in all new
packages)
- add NEWS file
2006-05-22 10:50:37 +00:00
Dr. Peter Poeml
4b83218cf6 0.3
status: 
- use new file metadata which provides checksum, size and mtime 
- don't list unmodified files
- fix some conditions where status was too stupid so far
update: 
- much faster now, since only new or changed files are downloaded
- print revision number
checkout:
- mark project directory as such (to be used later)
diff:
- faster, since 'status' is faster
- work against local copy
checkin: 
- update package metadata from specfile 
- fix argument handling 
add: 
- ignore .osc and other files
other changes:
- sanitize argument handling, so most commands can work with
  arbitrary files/directories as arguments (work is always done per package)
- add history command (doesn't seem to be working yet)
- on first usage, ask for username password on first usage, 
  and store them in .oscrc (.netrc can still be used)
2006-05-19 20:13:29 +00:00
Dr. Peter Poeml
f5a2f3089b 'status': don't print unmodified files 2006-05-11 11:26:53 +00:00
Dr. Peter Poeml
03ca18dbb8 - make 'results' output less noisy
- add parseargs() to simplify argument handling
- clean up some unused code
2006-05-11 07:27:50 +00:00
Dr. Peter Poeml
c0c271a8ec fix import of the rest of the module from commandline.py 2006-05-10 14:34:59 +00:00
Dr. Peter Poeml
aaa41561be - reorganize source to build a python module
- add setup.py
- add osc-wrapper.py as a wrapper script, so the module can be used when
  installed in the system as well as in the uninstalled source directory
2006-05-10 14:21:51 +00:00