- add the --meta handling also to list, cat and less commands
[opensuse:osc.git] / NEWS
1
2 0.132.1
3   - backward compatibility fix for OBS 2.1 and before
4   - add --meta option also to "list", "cat" and "less" commands
5
6 0.132
7   - rdelete and undelete command requesting now a comment
8   - add 'requestbugownership' command for setting the bugowner via request
9 #
10 # Features which requires OBS 2.3
11 #
12   - new command "createincident" to create maintenance incidents without a request
13   - support to create hidden project on "branch" and "createincident" commands
14   - osc waits and updates package after checkin when a source service is used
15   - support for the new service file mode for "update" and "checkout" command when
16     downloading server side generated files
17   - integration for local source services, they will replace the source_validator mechanism
18
19 0.131
20   - new command 'develproject' to print the devel project from the package meta.
21   - add blt and rblt commands, aka "buildlogtail" and "remotebuildlogtail" to show
22     just the end of a build log (for getting the fail reason faster).
23     CHANGE: the --start parameter is now called --offset
24   - add "createrequest -a add_group" option to create a group request
25   - add "createrequest -a add_me" shortcut
26   - add "less" command, doing the same as "osc cat" but with pager
27   - fallback to unexpanded diff mode on "osc diff" on merge error.
28   - support viewing the commit history of deleted packages
29   - show review states on "review list"
30   - new source service commands "localrun" and "disabledrun" to generate files without _service: prefix
31   - add "request supersede" and "review supersede" to supersede with existing request
32   - make it possible to run single source services, even when not specified in _service file.
33     (For example for doing a version update without creating a _service file: osc service lr update_source)
34   - protect rebuild and abortbuild commands with required "--all" option to mass failures by accident (similar to wipebinaries)
35   - "review accept/decline" is trying to change all reviews of a requests, if a specific one is not specified by user
36 #
37 # Features which requires OBS 2.3
38 #
39   - "my requests" is doing faster and complete server side lookup now if available
40   - "review" command has been extended to handle reviews by project or by package maintainers
41   - support for new source service modes: disabled, trylocal and localonly
42   - support project wide source services
43   - support for armv7hl architecuture. used to denote armv7 + hardfloat binaries
44   - add force option to accept requests in review state.
45   - add "maintenancerequest" command to request a maintenance incident from maintenance team
46   - add "releaserequest" command run a maintenance update release process (for maintenance team only)
47   - allow to force the storage of project meta data (to ignore depending repositories for example)
48   - "my requests" is showing requests with open reviews also now
49
50 0.130
51   - new "revert" command to restore the original working copy file (without
52     downloading it)
53   - rewrote "diff" logic
54   - added new "--http-full-debug" option, "--http-debug" filters the
55     "Authentication" and "Set-Cookie" header
56   - added new "--disabled-cpio-bulk-download" option: disable downloading
57     packages as cpio archive from api
58   - added new "repairwc" command which tries to repair an inconsistent working
59     copy
60   - workaround for broken urllib2 in python 2.6.5: wrong credentials lead to an
61     infinite recursion
62   - support --interactive-review option when running "osc rq list <project>"
63   - improved "osc rq show <id> --interactive-review"
64   - do_config: added new options --stdin, --prompt, --no-echo:
65     --stdin: read value from stdin
66     --prompt: prompt for a value
67     --no-echo: prompt for a value but don't echo entered characters (for
68                instance to enter a passwd)
69   - added template support for a submitrequest accept/decline message
70   - lots of internal rewrites (new working copy handling etc.)
71   - support added for osc search 'perl(Foo::Bar)' 
72   - New "service" command to run source services locally or trigger a re-run on the server.
73   - setlinkrev is setting now the revision to xsrcmd5 by default to avoid later breakage on indirect links by default.
74
75   NOTE:
76    Due to the rewrite of the working copy handling osc might fail with the
77    following error:
78      Your working copy '.' is in an inconsistent state.
79      Please run 'osc repairwc .' (Note this might _remove_
80      files from the .osc/ dir). Please check the state
81      of the working copy afterwards (via 'osc status .')
82    Simply run "osc repairwc" which might fetch files from the api
83    or delete some files from the storedir (.osc/). It won't touch
84    locally modified files. For more information see section
85    "WORKING COPY INCONSISTENT" in the README.
86
87 #
88 # Feature which requires OBS 2.1
89 #
90   - support reliable diff for an accepted request
91
92 0.129
93   - "dists" command to show the configured default base repos from the server.
94   - "review list" command to list open review requests
95   - "review add" command to add another reviewer for a request (either user or group)
96   - add "buildinfo --prefer-pkgs <dir>" option
97   - add "prjresults --hide-disabled" option to hide packages which are disabled/excluded
98     in all repos and repos which have only disabled/excluded packages
99   - harmonize "api"'s options with curl's options
100   - use builtin signature check by default (instead of verifying the signature with "rpm -K...")
101   - add "status --show-excluded"  to show all files (except the store dir)
102   - new "osc reqmaintainership" command which is a shortcut for
103     "osc creq -a add_role USER maintainer PROJECT PACKAGE"
104 #
105 # Feature which requires OBS 2.1
106 #
107   - add "osc aggregate --nosources" option
108   - add "request clone" command to clone all packages from a given request
109   - fixed references into en.opensuse.org to honor the new Wiki structure
110   - add cross build targets mips and mipsel for QEMU Usermode. needs also build update.
111
112 0.128
113   - better default commands selection for editor/pager
114   - support "osc rq reopen" to set a request in new state again
115   - "osc repos" and "wipebinaries" is checking for local project now
116   - "osc getbinaries" works in project dir now
117   - support added for SPARC builds
118   - support build --oldpackages
119   - introduced the "trusted projects"
120   - Fixes for default editor, api check on deleterequest call, tempfile leaks, getbinaries source package handling, results command
121 #
122 # Feature which require either OBS 2.1 or 2.0.4
123 #
124   - add osc signkey --extend for extending the expiration date of the gpg public key
125
126 0.127
127   - add size limit mode, files can be ignored on checkout or update given a certain size limit.
128   - --csv/--format options for results command - using format user can explicitly specify what he wants print
129   - osc branch reads project/package in package directory
130   - fix creation of package link, when target project has the package via linked project
131   - add "osc rq approvenew $PROJECT" command to show and accept all request in new state. 
132     This makes sense esp. for projects which work with default reviewers before.
133   - support external source validator scripts before commiting
134   - support request creation with multiple actions
135 #
136 # Features which require OBS 2.0
137 #
138   - support "osc add http://...", this uses obs source service for downloading a file and verify it via sha256 verifier service
139   - add support for CBpreinstall/CBinstall
140   - support branch --force to override target
141   - support for "unresolvable" state of OBS 2.0
142   - support undelete of project or package
143   - support for package meta data checkout
144
145 0.126
146  - added VM autosetup to osc. This requires appropriate OBS version and build script version.
147  - enhanced QEMU cross build support with 'armv4l' 'armv5el' 'armv6el' 'armv7el' 'armv8el' 'mips' 'mips64' 'ppc' 'ppc64' 'sh4' arch strings now supported on x86 host
148  - suggest git, svn, ... if indicated, after oscerr.NoWorkingCopy
149  - "osc cat" & "osc ls" now auto-expands through link.
150  - fixed "osc add" after "osc delete".
151  - fix "osc patchinfo" command (crashed before)
152  - fixed SSL proxy support
153  - fixed meta attribute create and set calls
154  - osc remotebuildlog supports a buildlogurl
155  - Allow --prefer-pkgs to parse repodata
156  - new "osc build --no-service" option to skip source service update
157  - fix linktobranch apiurl usage
158  - "maintained package" search is telling relevant projects now
159    * requires OBS 1.7.2 or 2.0
160  - added "osc chroot" command
161  - fixed #547005 ("osc co could show download progress")
162  - added "--interactive" option to "osc request"
163  - store commit message so it doesn't get lost on failure
164  - added "--cpio-bulk-download" and "--download-api-only" options to "osc build"
165  - added "osc localbuildlog" command
166  - added "--build-uid uid:gid|caller" option to "osc build" to specify abuild id in chroot
167  - verify files using rpm bindings and keys supplied by buildservice
168  - added "--exclude-target-project <prj>" option to "osc rq list"
169  - added "--message" option to "osc branch"
170  - added "osc config" command to set/get/delete a config option
171  - added "--binary" and "--baseproject" options to "osc search"
172  - added "-o/--offline" and "-l/--preload" options to osc build
173    * osc build -l standard i586 foo.spec (to cache all dependencies)
174    * osc build -o standard i586 foo.spec (to build without contacting the api)
175
176 0.125
177  - add "osc pull" command to fetch and merge changes in the link target
178  - new proxy support via SSL
179  - when a broken link is encountered automatically switch to last working
180    version. use 'osc pull' to repair the broken link.
181  - osc my request is showing now also requests from other people target to
182    myself
183
184  #
185  # Features which require OBS 1.7
186  #
187  - new config option 'submitrequest_on_accept_action' to specify a default action
188    if a submitrequest has been accepted
189  - add "osc linktobranch" command to convert a classic link to a branch package
190  - show scheduler state for each repo with "results" and "prjresults"
191
192 0.124
193  - added 'osc bugowner' as a more intelligent version of 'osc maintainer -B'
194  - added option '-B' to osc maintainer, prints bugowner OR maintainer.
195  - added 'osc req help' as convenience alias to 'osc help req'.
196  - 'osc in' to be done. Its usage just prints a suggested zypper command line.
197  - give better hint how to use osc vc without network connectivity.
198  - added printing of cache statistices to osc build
199  - support http proxies when using python 2.6 or newer (#551004)
200  - partial fix for checkout problems (bnc#551147)
201  - fixed #477690 ("osc fetching binaries really slow")
202  - osc jobhistory accepts also "prj [pkg] repo arch" now
203  - osc buildinfo accepts now also "prj pkg repo arch [spec/dsc]"
204  - osc buildconfig accepts now also "prj pkg repo arch"
205  - fixed warning messages regarding SSL certificate on some plattforms (Fedora)
206  - support submit requests on project level, osc is checking which packages
207    have changed and submits only the changed after asking back.
208  - show worker/id on jobhistory and make it faster by adding a default limit of 20
209  - add "osc build --root" option to allow to specify build root directory
210  - add "osc build --release" option to allow to specify a package release number
211  - added osc mv command which can rename file and leave them under version control
212  - added new commands "dependson" and "whatdependson" to find out which packages get
213    triggered before checkin/request accept.
214  - add new "osc build --linksource" option, speeds up esp. image building a lot
215  - add "osc triggerreason" command to show detail reason, why a package got triggered for build
216  - Incompatible changes:
217    * osc se now prints Project Package, instead of Package Project
218      for easier copy&paste.
219    * osc se uses exact search by default. Use osc se -s for
220      substring search
221    * osc repourls neither needs nor accepts a path to a package
222      working dir anymore
223    * osc repo neither needs nor accepts a path to a package or
224      project working dir anymore
225  #
226  # Features which require OBS 1.7
227  #
228  - search: allow to limit results via existing attibutes
229  - added "osc meta attribute" for basic attribute creation, deletion, showing and value setting
230  - implement "osc mbranch" call to create projects with multiple source package (instances)
231  - new "osc patchinfo" command: basic patchinfo generation and modification support
232  - add support for _patchinfo package submissions in "osc sr" on project level
233  - support review handling of requests (new "osc review accept/decline $REQUEST_ID" command
234
235 0.123
236  - IMPORTANT: ssl certificate checks are actually performed now to
237    prevent man-in-the-middle-attacks. python-m2crypto is needed to
238    make this work. Certificate checks can be turned off per server
239    via 'sslcertck = 0' in .oscrc.
240  - 'osc list' option -D now only limits non-'new' requests. In state 'new' all are shown.
241  - suggest 'osc list' --bugowner option. Not implemented.
242  - added 'osc rq help' as convenience alias to 'osc help rq'.
243  - 'osc in' to be done. Its usage just prints a suggested zypper command line.
244  - Incompatible change: osc se now prints Project Package, instead of Package Project
245    for easier copy&paste.
246  - fix checkout of packages, which contain not committed files (but uploaded)
247  - add signing key management command (osc signkey)
248    * shows public part of project key
249    * allows (re)creation of a project key
250    * allows deletion of a project key
251  - support 100% offline build when using "osc build --noinit ..."
252    -> buildinfo gets cached in local directory as .buildinfo.xml
253
254 0.122
255  - added missing code for 'osc sr -l [ID]'
256  - allow osc cat with one parameter, if it is a url.
257  - make osc getpac really get the package (instead of branch only)!
258  - expanded several tabs to spaces.
259  - added default project to new getpac and bco subcommand. .oscrc:getpac_default_project = OpenSUSE:Factory
260    (not added to branch subcommand, to not interfere with its syntax.)
261  - add support for generic python-keyring lib, supports KWallet, Gnome keyring, MacOS and Windows.
262  - make buildhist command usable without checked out package
263  - rename old "platform/s" names to "repository/ies" (internal cleanup only)
264  - fixed osc diff -c N, it failed with int and string concatenation
265  - made osc diff and rdiff more similar: added -p, -c to rdiff, removed -u from rdiff.
266    made -u default for both, renamed --pretty to --plain as it is the opposite of -u
267  #
268  # Features which require OBS 1.7
269  #
270  - option to download server side generated _service:* files on update
271  - support for running source services locally. Happens by default on source update
272    and build.
273  - support modification flages on creation of submit request
274    (for auto update or clean up packages or to avoid it, when submit request got accepted)
275  - show request ids from package source logs
276  - added support to require local packages which don't exist in the obs for a local build. This
277    fixes #377021, #481193
278
279 0.121.1
280  - fixed creation of new ~/.oscrc files
281  - fixed "osc my request" command
282
283 0.121
284  - fixed osc rq list -U to not look into the local dir
285  - added osc my ... pkg/prj/req  shorthand commands
286  - add 'osc se' alias for 'osc search -e'
287  - add -b -m -M to 'osc search'
288  - hack for _help_preprocess_cmd_option_list to survive setup.py build
289  - made rresults an alias for results. python decorators are a strange concept...
290  - asserting that ~/.oscrc remains mode 0600
291  - no more plain text passwords in ~/.oscrc, we store now as bz2+base64
292  - added verbosity control -v -q. To be used in guess_proj_pack()
293  - added 'll' and 'ls -l' as shorthand to 'list -v'
294  - started to change to explicit dual license GPLv2 or GPLv3 to conform to Novell policy.
295  - added revision parameter to show_upstream_srcmd5(), so that it can be used in do_cat later.
296  - allowed both integer and srcmd5 revisions in meta_get_filelist()
297  - added 'lL', 'LL': allowed -e and -v together in do_list(). Was an internal error before.
298  - added cat -e, to cat a file through a link.
299    'cat -e -r 3' expands through the third revision of the _link.
300  - added subcmd bco as alias for branch -c
301  - added primitive experimental support for .oscrc:checkout_no_colon = 1
302  - suggest using svn when .svn found.
303  - alias submitpac submitrequest
304  - osc bco now continues to checkout after branch target exists error.
305  - added .oscrc:plaintext_passwd=1 for backwards compatibility
306  - moved core.py:exclude_stuff to .oscrc:exclude_glob and expand it to catch *.orig etc.
307  - added osc rq list -a; a shorthand for enumerating all states
308  - osc rq list -D nnn limit to requests nnn days old.
309  - osc sr --diff option added
310  - improved help texts with repairlink to point to osc resolved.
311  - improved passx code when creating oscrc.
312  - osc metafromspec allows editing before send
313  - allow handling of other roles than "maintainer" with maintainer command
314    (-r role)
315  - fix and improve request list and show output
316  - new osc rremove command for remote source files removal
317  - first part of support to handle _service\* files correctly
318  - osc commit asks if some file has a '?' status (can be skipped by --force option)
319  - fixed request list for multiple states
320  - new option --overlay
321  - new option --rsync-src / --rsync-dest
322
323 0.120:
324  - support "setlinkrev" for whole projects
325  - add "setlinkrev --unset" for removing revision references
326  - add "osc request list -t <type>" to list only submit, delete or develchange requests
327  - add shell completion scripts
328  - fix support of listing requests with multiple actions
329  - "osc maintainer" is following to the development project / package now
330  - "osc maintainer" list maintainer and bugowner roles now
331
332 0.119:
333 - Support new request types
334   - "submitreq" command has a new syntax (incompatible !)
335   - new "deleterequest" command
336   - new "changedevelrequest" command
337   - new "request" command for showing/modifing requests
338   - Multiple actions in one request is not yet supported by osc
339   - The new commands require an OBS 1.7 server, submitreq is still working with
340     older servers.
341 - support of added .changes in commit message template
342 - make submit request listing fast by server side filtering
343 - allow pulling of conflicting changes via "osc repairlink"
344 - delete commands consolidated:
345   * deleteprj and deletepac are obsolete.
346   * delete and rdelete take over
347 - enable package tracking by default
348 - bugfix: templates in edit commit message causes an empty commit logs
349 - osc submitrequest consumes DESTPRJ [DESTPKG] arguments only
350 - osc build now also tested on native arm targets where uname -m reports a string like armv{4l,5el,6l,7el,7l}
351 - osc rlog now works with srcmd5 also
352 - plugins now should be placed in /usr/lib/osc-plugins to match FHS (the /var path is still supported though)
353 - osc now includes automatically generated man page
354 - osc can now store credentials in Gnome keyring if it is available
355 - new support for osc linkpac to specify cicount attribute
356 - new log/rlog output formats (CSV and XML)
357 - new jobhistory/buildhistory/search output format (CSV)
358 - new option to fetch buildlogs starting at given offset
359 - new option for copypac
360   * -r to specify source revision
361   * -m to specify a comment (and send default comment if not specified)
362 - new option to results(r), and rresults:
363   * -r|--repo to specify a repository(repositories)
364   * -a|--arch to specify a architexure(s)
365   * --xml for xml output (makes results_meta obsolete)
366 - request list -M shows open SRs created by the user.
367 - Fixed build support for images, only refered packages from buildinfo get used. (#485047)
368 - "req" command got renamed to "api" to avoid clash with "request" command
369 - osc build has a smarter default platform selection - it checks the
370   availibility config value, 'standard' and 'opensuse_Factory' in platforms list and in case
371   of fail it uses the last entry from that list
372 - new osc linkpac -f to allow to override existing _link files
373 - rename "rebuildpac" to "rebuild", but keep "rebuildpac" as alias
374
375 0.117:
376 - support checkout of single package via "osc co PACKAGE" when local dir is project
377 - allow to specify target project and package on osc branch (requires server version 1.6)
378 - add option to automatic checkout a branched package
379 - support "osc getbinaries" in checkout packages
380 - new vc command for editing the changes files (requires build.rpm 2009.04.17 or newest)
381 - new repairlink command for repairing a broken source link (requires server version 1.6)
382 - '-b|--brief' option for osc submitreq show subcommand
383 - use "latest" commited revision on checkout, not "upload" (#441783)
384 - '-e|--just-open' option for vc command and used /usr/lib/build/vc as an executable
385
386 0.116:
387 - support listings of older revisions with "osc ls -R"
388 - add --current parameter for linkpac to use current revision of source package fixed.
389 - add osc setlinkrev to add or update revision number in links easily
390 - fix streaming of binary files via "cat" (#493325)
391
392 0.115:
393 - optional transfer of devel project during copy_pac and link_pac is fixing
394   opertation with remote build service instance
395 - "osc ci" fails uploading large files to Provo BuildService
396 - fixed support for accessing download repositories (worked only for download.o.o so far)
397
398 0.114:
399 - the .oscrc config handling has been cleaned up:
400    * use "apiurl" for everything now (== <protocol>://<host>)
401    * added aliases support for [apiurl] sections in the ~/.oscrc.
402      Example:
403      [http(s)://foobar]
404      ...
405      aliases = foo, bar
406      => "osc -A foo <cmd>" will do the same as "osc -A http(s)://foobar ls"
407    * "scheme" and "apisrv" are deprecated and will produce a warning
408    * when writing a new ~/.oscrc, store the apiurl in the conffile (bnc#478054)
409    * fixed bug that made osc ask for credentials when -A was used (bnc#478054)
410    * fixed crash upon password entry (first startup) (bnc#478052)
411 - osc build:
412    * make product builds work
413    * speed up by using a cookie when fetching the binaries (bnc#477690)
414    * support for VM (kvm or xen) builds
415    * obsolete the need to configure download server, get it from the build
416      service instance instead.
417    * be a bit more verbose if the linked package isn't expanded (bnc#470948)
418 - osc branch:
419    * --develproject option fixed (the API calls it 'ignoredevel' instead of 'nodevelproject')
420    * --revision option added
421 - osc jobhistory: new command to see build job history of a project or a package
422 - osc results/rresults: option -l, --last-build added (show last build results)
423 - osc linkpac: fix failure when -A<url> is used (bnc#479156)
424 - osc commit: don't scare users if they want to commit a nonexistent file (bnc#469167)
425 - osc diff: bugfix to make --pretty option work
426 - 11.1 added to the osc project template
427
428
429 0.113:
430 - osc diff -rX:Y: the default is to return an unified diff (to get a pretty
431   diff use the --pretty option)
432 - osc rdiff: the default is to return a pretty diff (to get an unified diff use the --unified option)
433 - osc sr show --diff: the default is to return a pretty diff (to get an unified diff use the --unified option)
434 - osc getbinaries: optionally also download source rpms
435 - osc importsrcpkg: set the url in the package meta (bnc#458083)
436 - osc wipebinaries: added --expansion option
437 - added support for format strings like "%(project)s" and "%(package)s" which
438   can be used in the build-root config option.  For example one could use a new
439   chroot for each package.
440 - osc updatepacmetafromspec: fix failure if %description is starting with newline (bnc#462869)
441 - catch OSError exceptions which might be raised by the subprocess module
442 - don't use a hardcoded path for the rpm binary otherwise it fails on
443   distributions like debian
444 - osc meta: be more verbose in case of failure (bnc#459292)
445 - osc mkpac: add info how to enable the package tracking feature (bnc#459288)
446
447 0.112:
448 important bugfix:
449 - osc deletepac: prevent recursive deletion of a whole project [bnc#458535]
450 - osc build: support more options: --icecream, --ccache, --with, --without
451 - osc build: --keep-pkgs also saves the src.rpm now
452 - osc build: small fix in debuginfo handling
453 - osc build: new armv7el arch for all binaries for up to ARMv7 EABI with VFP
454
455
456 0.111:
457 - fix accidental truncation of .oscrc to 0 bytes
458 - fix osc's ignorance of the revision option (-r) for expanded links
459 - osc build: handle kiwi builds (local image build)
460 - osc build: cross build support
461 - osc build: support for ARMv5 EABI little endian arch added
462 - osc build: fixed detection of the build type (rpm or deb), after change in the buildinfo
463 - osc build: build debuginfo packages if enabled in the project/package meta (this partly fixes #421390)
464
465
466 0.110:
467
468 - osc build: no working copy needed anymore when building a local package [bnc#431434]
469 - osc checkout: when checking out a project, and a linkerror occurs for one of
470   the packages, do a checkout in unexpanded form and continue checking out the
471   rest of the project [bnc#428303]
472 - osc deletepac, osc branch: allow slash notation for the project/package arguments
473 - fix deprecation warnings on Factory (which uses Python 2.6)
474 - fix to avoid (internal) stale Package objects [bnc#436932]
475
476
477 0.109:
478
479 - osc getbinaries: new command to download binaries directly from the api server
480 - osc rlog: new command to show commit logs of remote packages
481 - osc build: --debug option to the build script which will take care of creating debuginfo packages
482 - add link to plugin API to osc help output
483 - avoid a hard dependency on the rpm-python bindings.
484 - fixed depracation warnings with Python 2.6 [bnc#426612]
485 - streaming of unfinished logfiles fixed
486 - fixed regression of .oscrc template [bnc#427118]
487 Changes were from Marcus_H, poeml, dmueller, tpatzig.
488
489
490 0.108:
491
492 - osc submitreq: has two aliases now: "osc sr" and "osc submitrequest"
493 - osc sr create: prompt to revoke existing requests
494 - osc sr revoke: new command for to get rid of requests to projects one can't write to
495 - osc sr list: allow showing requests in a state other than "new"
496 - osc sr show: show the current state's comment
497 - osc sr log: new command to show the history of a given id
498 - osc sr: enable requests for submitting new packages
499 - osc build: implement --no-checks
500 - osc build: be less strict on the arguments, and guess what's needed. For instance:
501   * osc build PLATFORM ARCH BUILD_DESCR
502   * osc build PLATFORM (ARCH = hostarch, BUILD_DESCR guessed)
503   * osc build ARCH (PLATFORM = build_platform (config option), BUILD_DESCR guessed)
504   * osc build BUILD_DESCR (PLATFORM = build_platform (config option), ARCH = hostarch)
505   * osc build (PLATFORM = build_platform (config option), ARCH = hostarch, BUILD_DESCR guessed)
506 - osc build: download after the target architecture check
507 - osc addremove: bugfixes, --recursive option
508 - osc init: added support to initialize a project dir
509 - osc metafromspec: new alias for 'updatepacmetafromspec' which is hard to remember
510 - osc updatepacmetafromspec: also update URL
511 - osc buildlog: do not download entire log to memory
512 - new http_headers option to add arbitrary headers to HTTP requests
513 - bugfix to make osc work on Gentoo
514 - enhance/update the package and project template
515 - .netrc heritage from previous commandline client has been removed
516 - osc asks for password now, when used with -A
517
518
519 0.107:
520
521 - osc build: the --extra-pkgs option is now a configurable setting in .oscrc.
522   Default is "extra-pkgs = vim gdb strace"
523 - .oscrc: make tilde expansion work on the packagecachedir setting
524 - osc update / checkout: don't check out a working copy, or update an existing
525   one, when a source link cannot be applied [bnc#409373]
526
527
528 0.106:
529
530 - osc rdiff / osc submitreq show: diff the _expanded_ sources [bnc#408267]
531 - osc submitreq list: show author's name
532 - osc submitreq: shortcut alias 'sr' added
533
534
535 0.105:
536
537 - osc submitreq list:
538    - can now be called without parameters, applying to the working copy then.
539    - calling it in a project directory is also possible now.
540    - output was improved. Newest requests are listed first.
541 - osc submitreq delete: a new action which has been added
542 - osc submitreq list/create: use api URL from the working copy
543 - osc meta: editing returns the API error description instead of a plain HTTP
544   error if available
545 - osc copypac: use the correct userid when copying to another api host
546 - osc importsrcpkg: disable signature check when getting data from a rpm file
547 - osc linkpac: --revision option added.
548 - osc search: added option -i|--involved, to show in which projects/packages
549   a developer is involved
550 - osc build: double check the buildinfo for local builds. Refuse to build for
551   architectures that are not supported by the host
552 - osc buildhist: change the output into a format which better matches actual
553   RPM filenames.
554 - osc commit: give commit message tempfiles a ".diff" suffix, so syntax
555   highlighting automatically works in capable editors
556 - other bug fixes:
557   - don't expand/unexpand if the working copy has local modifications - this is
558     an ugly workaround for #399247 but this way the working copy isn't screwed up
559   - work around a bug which causes packages to be cached locally under the
560     "None" architecture (and therefore causing issues when building for more
561     than one architecture via osc build).
562   - don't create _linkerror files in working copies
563   - better error handling (mostly printing more details) in a number of cases
564   - show error messages from the API also for type 500 errors
565
566
567 0.104:
568 - osc update: after update, reset the revision when updating multiple package.
569   Fixes "404: Not Found" type errors when updating an entire project. [bnc#399177]
570 - more/better error messages in some error scenarios
571 - osc wipebinaries: add missing check for commandline arguments, which could
572   cause a PACKAGE argument to be ignored
573 - fixed make_diff in order to avoid errors when committing a new package
574   (created with mkpac)
575
576
577 0.103:
578
579 - osc submitreq create: simplify by make osc guess needed parameters, if
580   there is a working copy and it is a source link.
581 - osc submitreq create: don't stop on packages that have a devel project
582   defined, if the submit actually comes from that project.
583 - osc checkout: checkout of source links is now done in expanded form per
584   default. The new option --unexpand-link can be used to get the raw link file.
585 - show the API's error message for HTTP 403 (Forbidden) replies.
586
587
588 0.102:
589
590 - osc branch: Show the actually created branch project name, not
591   a guessed one.  Add --nodevelproject.
592 - osc submitreq: look up the develproject of the target, and if
593   there is one, don't create the request, unless forced with
594   --nodevelproject.
595 - make the global -d option work better under certain circumstances
596
597 0.101:
598
599 - add osc branch command, using the branch API call to branch a package to
600   home:poeml:branches:PRJ/PKG
601 - osc commit now opens $EDITOR for commit message
602 - improved error handling, when API returns HTTP status code 400 (bad request)
603 - osc status: implement -q/--quiet switch
604 - osc info: slightly more verbose
605 - osc deletepac: allow deletion of multiple packages at once
606 - make "osc meta prjconf <project> -e" work again (probably caused by r3702)
607
608
609 0.100:
610
611 - improved error handling (babysitter.py wrapper, oscerr.py exception classes)
612   Tracebacks are mostly suppressed now. To enable them, use
613        -t, --traceback    print call trace in case of errors
614   or set traceback=1 in .oscrc.
615 - other new global options for debugging:
616        --debugger         jump into the debugger before executing anything
617        --post-mortem      jump into the debugger in case of errors
618        -d, --debug        print info useful for debugging
619 - make way for more seamless osc version updates (the .osc directory in working copies
620   will have its own versioning in the future)
621 - osc rprjresults and osc rresults: new commands to show remote build results
622 - osc build: added --baselibs and --jobs options
623 - osc copypac: added --keep-maintainers switch
624 - osc maintainer: new -D/--devel-project switch
625 - BUILD_DIST environment variable will be ignored (bnc#359846)
626   The following environment variables can still be used:
627   * OSC_SU_WRAPPER overrides the setting of su-wrapper.
628   * OSC_BUILD_ROOT overrides the setting of build-root.
629   * OSC_PACKAGECACHEDIR overrides the setting of packagecachedir.
630
631
632 0.99+patches (interim releases, including Wed Apr  2 16:36:40 CEST 2008)
633
634 - new command submitreq, to handle "submit requests" (next generation build
635   service feature). See http://en.opensuse.org/openSUSE:Build_Service_Collaboration 
636 - new link handling:
637   add support for handling linked packages in expanded form. They
638   can be checked out, updated (expanding or unexpanding them),
639   and built locally.
640   Newly introduced options are:
641   * osc checkout: --expand-link
642   * osc update: --expand-link and --unexpand-link
643 - new feature: package tracking. It's not enabled by default and
644    needs to be switched on with do_package_tracking=1 in .oscrc.
645    before using. See
646    http://lists.opensuse.org/opensuse-buildservice/2008-03/msg00114.html
647 - prjresults: add --csv option
648 - req: add option -a / --add-header to inject arbitrary request headers
649 - addremove (and others): ignore _all_ dot files (the buildservice doesn't
650   handle them)
651 - copypac: do a (quicker) server-side copy by default, when source and target
652   are on the same buildservice instance.
653 - build:
654   - add --debuginfo
655   - add --no-verify
656   - add --local-package to build a package which doesn't exist on the server
657   - add --alternative-project to specify a project, if the current one doesn't
658     exist on the server
659   - use api url from .osc/_apiurl [#355144]
660 - new command remotebuildlog
661 - diff: fix #347377 (diffing too many files)
662 - checkout: check for project existance beforehand
663 - rdiff: new command for server-side diffs between arbitrary packages
664 - cat: new command to print a file on the standard output
665 - diff: reworked functionality to show newly added files, and behaving more
666   like svn when doing diff against a certain revision
667 - bugfix in {link,aggregate,copy}_pac (<person> elements)
668 - checkout an empty project instead of doing nothing
669 - fix prjresults for newly added packages, where build status is missing
670
671
672 0.99:
673
674 - aggregatepac: new command, similar to linkpac. Patch from Pavol Rusnak.
675 - wipebinaries: added --build-failed and --broken [#335498]
676 - deleteprj: enabled this command, as the backend now supports it
677 - maintainer:
678   - added --verbose option
679   - added functionality to add/remove users from a project/package
680 - print the list of URL to try, when in HTTP debug mode
681 - build: allow to use lbuild, a compatible replacement for build
682 - do not create dirs for non-existing packages during checkout [#259711]
683
684
685 0.98:
686
687 - new maintainer command, to list the maintainers of a project or package
688 - ls: add -b option to list binaries
689 - make osc library simpler to use from external scripts
690 - new importfromsrcpkg command, to import a package src.rpm from file or URL
691 - new req command, to issue arbitrary requests to the API
692 - initial support for commit messages (ci -m/-F)
693 - implementing a log command to review the commit log
694 - renamed previous "log" command to "buildlog" (short: bl)
695 - new meta command, replacing editmeta, editprj, createprj,
696   editpac, createpac, edituser, pattern
697 - added search support
698 - show helpful xml error messages if broken metadata is uploaded
699
700
701 0.97:
702 - added initial revision handling:
703     - extended "osc co prj pac" to checkout a specific revision of pac
704     - extended "osc up" to update to a specific revision
705     - extended "osc diff" to diff the working copy against a
706       specific revision on the server. NOTE: comparing two
707       server-side revisions (osc diff -r 11:12) is currently
708       not supported!
709 - load subcommands from /var/lib/osc-plugins/ or ~/.osc-plugins/
710 - updatepacmetafromspec scans for spec files automatically. Added --specfile option to updatepacmetafromspec.
711 - wipebinaries: allow to wipe all binaries of packages for which the build is disabled
712 - addremove: ignore foo.rXX, foo.mine for files which are in 'C' state
713 - ls: add verbose option to print extra information for packages
714 - for all server-side commands, allow arguments "foo/bar" instead of "foo bar"
715 - new wipebinaries and abortbuild commands, by courtesy of Marcus Huewe
716 - improved metadata error condition handling (thanks to Marcus Huewe)
717 - build: add --userootforbuild option
718 - build: implement -x/--extra-pkgs option (passed to backend and included in buildinfo result)
719 - make filling out of username in templates work again
720 - don't try to delete projects, as long it is not implemented in the backend
721 - use new API route for downloading binaries also in configured URLs
722 - make deletepac work again
723
724
725 0.96:
726 - following suggestions by Christian Boltz and Michal Marek, osc now memorizes
727   where a working copy was checked out from, saving the api server url to
728   .osc/_apiurl.
729 - implement 'info' subcommand
730 - use new api routes in all places
731 - buildhistory works again
732 - copypac: implement package copy from one buildservice instance to another
733   (--to-apiurl option)
734 - the results subcommand now handles multiple <working copy> arguments
735 - build: implement --prefer-pkgs and --keep-pkgs option
736 - applied patch from Michael Marek, fixing all places where error
737   messages were printed to stdout instead of stderr. [#239404]
738 - osc is now easier to work with when using alternative API servers. The
739   configured server can be overriden with -A <url> on the commandline.
740   "apisrv" in the config takes a URL now, so the variable "scheme" which was
741   needed in addition before becomes obsolete. For backward compatibility, a
742   hostname (and scheme variable) are accepted like before. Likewise, the auth
743   sections in the config take a URL now, or a hostname:port to keep old config
744   working. HTTP or HTTPS scheme is determined from the URL. Credentials must be
745   configured in .oscrc.
746 - build: use actual api server in urllist for downloading, instead of hardcoded
747   api.opensuse.org [#265211].
748
749
750 0.95:
751 - rewrite the internal HTTP handling
752   - save and reuse HTTP server cookies, which can speed up HTTP requests up about
753     5 times in an iChain setup
754   - adding http_GET/POST/PUT/DELETE() functions, which dispatch to
755     http_request(), and use them everywhere
756   - removing othermethods.py
757   - keeping urlopen(), in case it is used from externally, but have it print out
758     a "depracated" message
759   - finally, global option -H enables HTTP traffic debugging
760 - implement "rebuild all failed packages", via --failed option in rebuildpac
761   subcommand
762 - status -v shows all files, including unmodified ones
763 - suppress the legend in prjresults by default (show with -l)
764 - --version shows the program version number
765 - fix the commit subcommand's argument handling. The following works correctly
766   now: osc ci ../test/onlyinwc `pwd` fstab ../test/f2
767 - fix the download progress meter to work with small terminals [#266989]
768 - update: when updating multiple packages, print each package name
769 - make 'results' subcommand many times faster, by making only a single request
770 - prjresults: sort package names
771 - build: run with --norootforbuild, thereby defaulting to build as abuild user
772 - build: fix (harmless) errors showing up in the build log during buildsystem
773   setup, by using the new <bdep> preinstall and runscripts attributes
774 - update: when updating, don't delete files with local modifications
775 - let the diff subcommand return 1 if differences were found
776 - fix important bug, which could lead to overwriting local modifications when
777   upstream changes are merged in
778 - if a merge fails, the store copy must be updated neverthelesss
779 - fix testsuite and add testcase for successful merging
780 - sort output of 'status' (unknown files first, filenames alphabetically)
781 - core: added class "metadata" (merge from Susannes /branches/froh/reponator/)
782 - added command alias 'stat' for 'status', like in svn
783 - improved documentation/examples (Lars + Susanne)
784 - print usage info if 'co' is called without arguments
785
786 0.9:
787 - "iChain-ready" (works with API server now using iChain authentication)
788 - add runtime check for build.rpm version, so the rpm package dependency is
789   no longer required
790 - add 'edituser' command for editing the metadata of a user account. It tries
791   to create a user if it doesn't exist yet. A new command 'usermeta' replaces
792   'id' respectively 'userid'.
793 - rewrite configuration handling. Now the API server can be set in .oscrc
794 - ignore '.gitignore', '.pc', '*~' (now using filename matching [#208969]
795 - fix 'status' to work with project directories as arguments
796 - fix 'status <filename>'
797 - 'rebuildpac' now accepts additional repo and arch argument. Note:
798   the syntax has changed.
799 - add 'prjresults' command to display aggregated build status over
800   an entire project
801 - add 'deleteprj' command (the API server doesn't seem to support
802   it yet, though)
803 - change 'buildhistory' to display human-readable text
804 - add 'copypac' subcommand, to copy a complete package to a new package, possibly cross-project
805 - don't die if user tries to 'add' a file which is already versioned
806 - don't die if 'addremove' encounters directories
807 - urlopen(): for server return code 500, print out the reply body
808
809 0.8:
810 - build: use configuration from *local* specfile (e.g. BuildRequires)
811 - build: let envvars OSC_SU_WRAPPER and OSC_BUILD_ROOT override config
812 - build: allow 'dynamical' build-root setting by using %(repo)s and %(arch)s
813 - add 'createpac/editpac' and 'createprj/editprj' subcommands which
814   are similar to 'editmeta' but should be more logical to find
815 - added 'deletepac' subcommand
816 - added 'buildhistory' subcommand (formerly 'history'). This only
817   gives out raw xml at this time
818 - added 'linkpac' subcommand
819 - added ".git" to the excluded files
820 - adapt to API changes
821 - fixed issue with uploading files when an intercepting web proxy was
822   in between osc and the api server
823 - fixed creation of new packages/projects
824
825 0.7:
826 - initial support for local builds (subcommand 'build')
827 - better error handling
828 - new subcommands buildconfig, buildinfo, repos
829 - remove requirement on pyxml package
830 - editmeta: add examples for package/project templates
831 - add support for streaming the build log (thanks to Christoph Thiel)
832 - add 'rebuildpac' subcommand
833 - add 'repourls' subcommand
834 - don't diff binary files
835 - don't try to merge binary files
836 - add a preliminary 'updatepacmetafromspec' subcommand, which takes package
837   metadata from a specfile
838 - fix profiling wrapper
839 - set User-agent
840 - bugfixes:
841   - fix handling of filenames with '+' signs
842   - make 'resolved' more robust
843   - fix merge on 'update' if called from another directory
844   - display reason for build status is 'broken'
845   - handle HTTP error codes != 404 when reading metadata in edit_meta()
846   - handle 'project not found' error in show_project_meta()
847
848
849 0.6:
850 - diff bugfix: sometimes displayed diff against obsolete files
851 - update bugfixes: fix update of working copy when adding a file from upstream
852   which is missing locally; fix update in directory with unmodified files:
853   don't try to merge if upstream file wasn't changed at all
854 - add: make it faster
855
856
857 0.5:
858 - help :-)
859 - add 'editmeta' subcommand: Edit project/package meta information, creating
860   new project or package if it doesn't exist. The user interface is $EDITOR
861 - fix status letter for files merged on update (in analogy to svn , it is
862   either G or U)
863 - if an old _files listing without any metadata is found, don't bother the user
864   with it
865 - make all subcommands properly importable functions
866 - bug in 'resolved' command fixed, which wouldn't clear the conflict state of a file
867
868
869 0.4:
870 - allow 'up' inside a project directory (will automatically pull in all new
871   packages). (For past checkouts, you may need to put the project name into
872   $prjdir/.osc/_project yourself).
873 - checkout: preserve mtimes
874 - add diff3 merge support. Locally modified files are merged with upstream changes
875   if possible, and go into Conflict state if that fails.
876 - add 'resolved' command to be used after manual merging.
877
878
879 0.3:
880 - use the new file metadata, which provides checksum, size and mtime
881 - faster 'status', 'update', 'diff'
882 - improve argument handling, now e.g. 'osc up *' is possible
883 - on first usage, ask for username and password and store them in .oscrc
884   (.netrc can still be used)
885