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