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