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