diff --git a/NEWS b/NEWS index b37c05f8..7d9a8848 100644 --- a/NEWS +++ b/NEWS @@ -1,1671 +1,73 @@ -1.0.0b5 - - rq list: Fix a traceback when --type is not specified - - core.checkout_package(): Use pathlib.Path - - connection: Retry all, not just default allowed methods - - connection: Wait between retries - -1.0.0b4 - - Fix regressions to osc 0.x: - - mv: Fix traceback due to missing target file name - - rm: Fix creating a Package object by providing multiple files on the command line - - copypac: Fix downgrading a package to an old revision - - buildhist: Fix running from a package checkout - - rebuild: Fix running from a package checkout - - rdiff: Fix traceback when new project is not specified - - rq list: Fix passing values of the --type option - - build: Fix reading extra-pkgs from oscrc - - Support withfullhistory in osc.core.get_request_list again - - Fix osc.get_request_list ignoring the req_type parameter - - Revert "Do not list declined requests by default" - - connection: Mute the "Converted retries value" debug message - - connection: Fix traceback on loading an invalid cookiejar file - - connection: Save cookiejar only when there's a Set-Cookie header in the response - - Add oscerr.ProjectError class needed by core.delete_project() - - Fix all errors reported by pylint - -1.0.0b3 - - add create-pbuild-config (cpc) command which allows to create a working - config for pbuild tool based on OBS server side data - - branch: Add --disable-build option - - linkpac: Add --disable-build option - - linkpac: Fix linking a locked package by not copying the lock to the target package - - sr: Do not error out on using an alias to apiurl - - rq: Fix the -M/--mine option to show only requests created by the user - - rq list: Avoid conflict between --all and --state options - - rq list: Fix traceback when there's no search criteria - - rq list -i: Enable forwarding requests to the parent projects - - rq show: Improve output - - sr accept: Enable forwarding requests to the parent projects - - setlinkrev: Write a log message on setting a revision - - buildhistory: Produce proper output using build_table() and a CSV writer - - buildinfo: Bring the -d/--debug option back - - build: Bring the --verbose' option back as --verbose-mode=MODE to avoid conflicts with global --verbose - - service: Add verbose option for running local services - - service: Fix manual run of source service - - conf: Avoid crash when deleting a password - - connection: Fix the '9 - review the server certificate' option in cert trust prompt - - Handle uncompressed Debian packages - - Fix osc add for github /archive/ URLs - - Handle empty EDITOR=/PAGER= env variable properly - - Mute ssl/tls deprecation warnings - - Add "--extra-pkgs-from" ("-X") option to osc build. - - Fix a scenario when OBS sends unexpected md5s - - Replace core.findpacs() with Package.from_paths() and Package.from_paths_nofail() - - Always list requests with 'new,review' states by default - - Change get_request_collection() not to list declined requests by default - - Add information about osc vc using the EDITOR envar to the help output - - Improve argument handling in many commands - - Implement Store class handling '.osc' dirs, migrate some code to it - - Code cleanups - - Deprecated: - - core.get_request_list() function - - core.store_write_apiurl() function - - core.store_read_scmurl() function - - core.store_read_apiurl() function - -1.0.0b2 - - Support ssh-agent forwarding - - ssh auth: Avoid password prompt when using TransientCredentialsManager - - Properly handle missing ssh-keygen and ssh-add - - Add ssh-keygen as a recommends for ssh MFA authentication - - Print user and apiurl when prompting for a password - - Pass apiurl to all auth handlers - - Do not list declined requests by default - - Fix 'osc up' on project level for scm packages - - Lock cookiejar to prevent unnecessary signature auth - - Process input with configurable project separators - - Add project_separator to config file - - Fix race condition in using .old directory in Serviceinfo.execute() - - Send HTTP header Accept: application/xml - - Print URLs and xpaths in debug rather than verbose mode - - Inject no-op print() into http.client when http debugging is off - - Reset "file current position" on errors in HTTP requests - - Create ~/.config/osc/trusted-certs if not exists - - conf: Convert defaults to their expected types - - Document `build` repo selection logic - - Add debug print for REPO (and desc just in case) - - Shortened `build` help and add debug prints - - Replace unmaintained cmdln.py with a custom code - - Allow intermixing positional and optional args - - Add global options to subcommands so they can be specified in any place - - Remove the '-A' option from the 'maintainer' command - - Replace the '-q/--hide-legend' option in 'prjresults' command with global '-q/--quiet' option - - Remove duplicated --debug and --verbose options - - Add version command to print the used version - - Remove deprecated 'plaintext_passwd' config option - - Remove deprecated 'GnomeKeyringCredentialsManager' and related code - - Remove deprecated '--skip-validation' option from the 'commit' command - - Remove deprecated '--oldpkg', '--oldprj' options from the 'rdiff' command - - Remove deprecated subcommands 'create', 'list', 'log', 'show', 'decline', 'accept', 'delete', 'revoke' from the 'submitrequest' command - - Remove deprecated '--seperate-requests' option from the 'submitrequest' command - - Remove deprecated '--raw' option from the 'develproject' command - - Remove deprecated '--maintained' option from the 'search' command - - Remove deprecated 'rlog' command - - Remove deprecated 'rprjresults' command - - Remove deprecated 'rresults' command - - Remove deprecated 'results_meta' command - - Remove deprecated 'deleteprj' command - - Remove deprecated 'deletepac' command - - Remove deprecated 'editmeta' command - - Remove deprecated Request.get_creator() - - Remove PROJ_PACK.txt file, move its content to GitHub issue #1099 - - Remove TODO file, move its content to GitHub issue #1098 - - Remove fuse support - - Remove unused run_bandit.sh - - Remove obsolete osc_expand_link.pl - - Remove unused icons - - Replace imp with importlib - - Move files from dist/ to contrib/ - - Move osc.fish under contrib/ - - Move python package metadata from setup.py to setup.cfg - - Move __version__ from osc.core to osc - - Fix resource warnings (unclosed files) - -1.0.0b1 - - drop Python 2 support - - switch http_request() to urllib3 and cryptography (drop M2Crypto dependency) - - warn when using HTTP connection, Make HTTPS the default - - add XDG compatible location for osc plugins - - replace osc-wrapper.py with entry_points. - - core: add functions for glob matching of multibuild flavors - - fix multibuild packages in all osc commands where applicable - - do not ask for login for -h,--help - - move format_table() to util.helper - - code cleanups - -0.181.0 - - fix crash when 'pass' is not set in the config file - - add missing attributes to Package when scm_url is set - - fix failure to create config in current dir - - update list of considered file names for ssh key autodetection - - allow users to prefer ssh key over password auth - - ssh: recognize gpg keys (yubikey usage) - - fix operating on _project meta - - revert "interpretation of string literals in messages" that broke unicode handling - - fix product build rpm caching - - enable md5 revisions in osc log - - parseRevisionOption(): raise an exception on invalid revisions - -0.180.0 - - warn when trying to commit a prj/pac managed in scm - - fix crash on "osc up" for git based package/projects - - don't traceback on invalid credentials manager - - improve README, rename it to README.md - - declare OscHTTPSignatureAuthHandler as a new-style class - - remove illegal character in comment - -0.179.0 - - signature (ssh key) authetication fixes (RSA key support, skip binary files) - - commandline: handle calls without arguments gracefully - - use percent-quoted url for download url generation - - osc co/up: highlight pending requests' header - - get_results(): fix check for empty details - - another exception for github URLs for "osc add" - - update Sphinx configuration, documentation fixes - - support flavors in aggregatepac - - check if repos provided to aggregatepac command exist - - several coding style fixes - -0.178.0 - - EXPERIMENTAL: git repository handling - * init command is working inside of a git repository - * downloadassets command fetches references assets from build description - * checkout is cloning from git - - EXPERIMENTAL: signature (ssh key) authetication - * allow to configure 'sshkey' option in the config - * try to guess ssh key from the keys added to ssh-agent - * rename OscHTTPBasicAuthHandler to OscHTTPAuthHandler - * simplify bad auth retry workaround needed for old python versions - - add support for building preinstall images - - add support for building Helm charts - - show the md5s that are failing to validate after fetching a package - - add missing space to copypac completion - - never require login in the help command - - linkdiff: raise an exception when an added file is missing - - run tests via calling 'setup.py test' - - several coding style fixes - -0.177.0 - - switch to python3 in osc-wrapper and make python3 explicit - - allow formatting of the sccache uri - - show repository state and details - - a few minor fixes and improvements in credentials handling - - order credential managers by priority - - kernel keyring is now supported as credential manager - - support regex based name filtering in core.get_prj_results() - - revision parsing parseRevisionOption(): cleanup and make logic consistent - - use sr_ids[0] for superseding (fixes issues with superseding requests - containing many packages - - download logs and metadata in subdirs named by packages when osc getbinaries - is issued on project level or in multibuild case - -0.176.0 - - add -F option to osc submitreq - - add --verbose option to build command - - fix getbinaries command to fetch also multibuild packages - - fix getbinaries -M/--multibuild-package option usage - - skip fetching metadata and logs in the getbinaries command - - do not download a bdep with a hdrmd5 from the api by default - - re-download file from API when hdrmd5 doesn't match - - honor --download-api-only option - - remove Windows from the supported operating systems - - fix license in setup.py - - add py3.10 and py3.11 to the classifiers in setup.py - - use the latest version of COPYING file from gnu.org - - fix crash on terminal resize during download - - do not fail with a traceback in case of a config error - - preserve oscrc symlink when writing conf file - - escape % character in binary download URLs - - fix printing paths to built debian packages - -0.175.0 - - do not crash when running "osc search --binary --verbose foo" - - don't run source services when building outside of an OSC package working copy - - fix XDG_CONFIG_HOME - - offer a force ("f") choice in metafile.edit's error handling code path - - fix XPath used in search requests - - add support for creating a workflow token via "osc token" - - handle missing os.sysconf more gracefully - - detachbranch: remove _link when link target got removed - - improve error message in case of an URLError - - fix downloading from mirrors - - avoid sending entire projects on "osc mr" - - fix hdmrd5 check of local cached files - - improve logic for conffile mode handling - -0.174.0 - - fix password deletion via "osc config -d pass" - - support changing the password store via "osc config - --select-password-store") - - support slash syntax in osc browse ("osc browse prj/pkg" is equivalent to - "osc browse prj pkg") - - fix the commit of a frozen package wc - - fix local product builds using obsrepositories:/ directives - - print a meaningful message when trying to a commit a non-existent package - -0.173.0 - - add showlinked command to show all references of packages linking to a given one - - add build --shell-after-build flag. It can also be set via .oscrc. - - add build --stage flag. Useful for example for fixing file lists and just - running the install section to see the result of it (use --stage=i=). - Check the help for more details. - - allow to run build script as non-root, by setting su-wrapper empty - => osc is not guessing anymore if user builds are wanted - - add support for cross arch local build using a sysroot - - support slash notation in "osc creq -a args" - - add "--force" option to the "osc add" command (can be used to override - the exclude_glob config option) - - support the commit of arbitrary sized files - - add support for sccache - -0.172.0 - - support --lastsucceeded/--last-succeeded in "osc buildlog", "osc - remotebuildlog" + friends (perform the corresponding operation on - the build log of the last successful build) - - fix pypi deployment via Travis CI - - several fixes in request related code paths (no double html_escape - of a request's description etc.) - - support local builds in a systemd-nspawn container - - fix potential TypeErrors+UnicodeEncodeErrors in the util.cpio and - util.ar modules - - support local flatpak builds (requires a recent build version) - - "osc init " works for a non-existent (server-side) project - - .old dir support for source services so that some services have access - to the results of a previous service run - -0.171.0 - - maintainer search: lookup via package name by default and binary as fallback - - fix crash on console resize when downloading files during build - - add proper repourls to osc reporuls - - new command osc releaserequest: This command is used to transfer sources and - binaries without rebuilding them. - It requires defined release targets set to trigger="manual". - - some improvements on output of help and error messages - -0.170 - - fix code for python3.8 and python3.9 - - remove dead code - - fix tests - - don't use chardet to guess encoding. utf-8 or latin-1 is now assumed - This will speed up decoding (bsc#1173926) - - escape sequences are interpreted correctly on -m - osc sr -m "1st line\n2nd line" - results in - 1st line - 2nd line - - add status filter to osc results - - add --brief to osc prjresults - Gives: - build openSUSE_Leap_15.1 x86_64 succeeded - build openSUSE_Leap_15.0 x86_64 succeeded - build openSUSE_Leap_15.0 armv7l unresolvable - build openSUSE_Factory_ARM armv7l succeeded - build openSUSE_Factory_ARM aarch64 succeeded - - osc prjresults -s : status can now be the long text like "succeeded", "failed" - - improve error message if osc service is not run in working directory - - web links are now also printed for osc mr when print_web_links=1 is set - -0.169.1 - - add --ccache option to osc getbinaries - -0.169.0 - - improve speed and usability of osc bash completion - - switch packagequery.py to return only bytes - - improved some error messages - - osc add: support git@ (private github) or git:// URLs correctly - - split dependson and whatdependson commands - - support for osc build --shell-cmd - - Fix kiwi build with --prefer-pkgs - - add pkg-ccache support for osc build - - fix security issue (bsc#1122675) do not allow '/' in filename - -0.168.2 - - Use html.escape instead removed cgi.escape (boo#1166537) - enables python3.8 compatibility - -0.168.0 - - MR creation honors orev now (bsc#1160446) - - allow "osc r --vertical" for projects - - several typo fixes - - cleanup old functions and remove python2.6 compat code - - support zstd arch linux files in local build - - fix deleterequest for repositories - - append --norootforbuild as default to build command - - fix decoding in interactive request mode - - use signdummy for product builds - - print release project when creating MR - - improve SSLError message for TLSv1 validation - - osc maintained --version prints the version of each maintained package - - print web url links after creating requests (New general bool option 'print_web_links' must be set in oscrc) - - fix checkout_no_colon on project level - - handle empty release number of rpm packages in build.py - - handle bytes vs. str error when parsing meta - - custom exception if importing m2crypto fails - - fix missing oscerr import in util.helper - - several fixes for keyring handling - - fix arch zst magic in util.packagequery - -0.167.2 - - fix regression in osc chroot - - fix broken importsrcpkg - -0.167.1 - - fix cpio fetch error handling - - support local build using RedHat rpm-md modules - - fix local build outside of the working copy of a package. - (fixes boo#1136584) - - Use the distro module for linux platform detection - -0.167.0 - - Added --lastsucceeded option for logfile display (requires OBS 2.11) - - osc shell/chroot/wipe is now handled via build script (working for chroot and KVM only atm) - - osc build/shell features: - * --vm-type=qemu support for cross architecture builds - * additional debug packages are read from build config now - (extra-pkgs definition is therefore by default empty now) - * --vm-disk-size= switch supported (has only an effect on clean builds) - * repository, architecture and vm_type from last build is automatically - reused if not specified otherwise. - * support building for kiwi products using obsrepositories:/ - * support local building using RedHat rpm-md modules - - fix decoding for osc aggregatepac - -0.166.2 - - Don't enforce password reuse (boo#1156501) - - Config option check_for_requests_on_action is now - activated by default. - Use check_for_request_on_action = 0 in oscrc to - disable it - - osc vc --file=foo bar.changes now writes the content - from foo into bar.changes instead of creating a new file - (boo#1155953) - - fix output for missing pubkey when using http_debug=1 on - osc build - - fix crash of osc linkpac when there is already a _link - -0.166.1 - - emergency fix for credentials handling: - * in case of an old passx entry in oscrc - osc did not work at all. Now we check in - the compat code if we have an passx entry. - -0.166.0 - - New password handling backend. Supported password stores: - * Plaintext password - * Obfuscated password - * python-keyring (kwallet, secret store) - * gnome-keyring - * no store at all (ask for the password every time - - Refactor initial setup of osc (to select password store) - - fix decoding on osc lbl (boo#1137477) - - fix breakage of submitting complete branches back as an - submit request that contain packages without a change. - - fix error with plugins and osc -h - - various decoding improvements - - Transfer the name of the input file to vc instead of the content - (obs-build/vc will do the rest and open the file). - - support appimage builds - - new command browse. (opens a browser opening the project or package) - - new option --incoming for osc rq and osc review to only show only - incoming reqeusts for a project. - -0.165.4 - - allow optional fork when creating a maintenance request - - fix RPMError fallback - - fix local caching for all package formats - - fix appname for trusted cert store - - osc -h does not break anymore when using plugins - -0.165.3 - - switch to difflib.diff_bytes and sys.stdout.buffer.write for diffing. - This will fix all decoding issues with osc diff, osc ci and osc rq -d - - fix osc ls -lb handling empty size and mtime - - removed decoding on osc api command. - - fixed broken TLS certificate handling (boo#1142518, CVE-2019-3685) - -0.165.2 - - support different token operations (runservice, release and rebuild) (requires OBS 2.10) - - fix osc token decode error - - offline build mode is now really offline and does not try to download the buildconfig - - osc build -define now works with python3 - - some spelling fixes - - properly parse the error message on osc meta -e - - osc maintainer -s now works with python3 - - simplified and fixed osc meta -e - - osc lbl now works with non utf8 encoding - - add simpleimage as local build type - -0.165.1 - - fix oscssl "urldefrag is not defined error" - - osc release command now python3 compatible - - add more decode logic in get_commitlog - - osc add in compressed mode now works with python3 - - osc getbinaries now prints the output instead of - using the quiet mode as a default - -0.165.0 - - full python3 compatibility - -0.164.2 - - deleterequest for entire projects needs the --all option as additional protection - - rewrite packagequery to support python3 - - rewrite oscerr module to support python3 - - rewrite archqeury and debquery to support python3 - - Export vc env vars when running a source service - -0.164.1 - - rewrite cpio handling to support python3 - - rewrite ar module to support python3 - - enable fetch module to support python3 - - rework progressbar hanlding (if module is not present) - - improve os_path_samefile in core.py - -0.164 - - add support for approved requests (requires OBS 2.10) - - fix various multibuild problems - - improved and fixed various help texts - - check constraints without local checkout - - check out deleted sources (osc co -D) - - replace urlgrabber module with own module - - use progressbar module instead of urlgrabber to draw - progress bars - - show buildinfo for alternative projects (--alternative-project) - - run release job immediately (osc release --no-delay) - - build results on project level can now be watched (osc prjresults --watch) - -0.163 - - add sendsysrq command (requires OBS 2.10) - - add addcontainers command (requires OBS 2.10) - - enable statistics for local builds - - add new options to diff command: - --unexpand for local diffs only (bsc#1089025) - --meta for diffing meta files - - add support for podman/buildag engine (docker variation) - - support realname in .changes files - - fix DISTURL checkout for package containers using a multibuild flavor - - Disable ssl session resumption - -0.162.1 - - Send sha256 hashes for tracked files if the wc is pulled/linkrepair - -0.162 - - Additional file content check with SHA256 when using OBS 2.9 - - support deb format with control.tar.xz - -0.161.1 - - Fix python 2.6 SyntaxError (multiple context expressions) - -0.161 - - show lintlogs in interactive request review mode - - fix potential shell injections - - allow multiple --repo and --arch options in prjresults - - cleanup babysitter.by - - supersede existing requests if --yes is passed to osc sr - - prepend request summary to diff in interactive mode - - show issues(bugs) in interactive diff mode - -0.160 - - support fissile build type - - Container support for the package cache - - Remove all untracked files during "osc clean" - - Support the commit of a deleted, but non-existent package - - triggerreason --multibuild-package option - - improved status display - - improved request listing filters - -0.159 - - "osc buildhistory": show build duration - - Support builds using native Docker build descriptions - - Support usage of pre-build containers for Docker and KIWI builds - - "osc build -M ..": fixed behaviour of falvoured builds - - added switch to show only issues in rdiff - - show build duration in build history - - allow to cat/less files from deleted packages (using -D option) - - Allow to override man-page date - -0.158 - - cat/less/blame command: default to expand to stay in sync with checkout - - add support for highly experimental native appimage.yml support - - show package status when repository configuration is broken - - add '--blame' option to osc meta command - - try to autodetect local package when running 'osc build' - - comment requests in interactive mode - - fix github issue #236 (--no-cleanup not working) - - fix wipebinaries to prevent wiping of complete repository - - add '--build-opt' to osc build command - - fix requests codebase to fit old obs versions - -0.157.2 - - add compat code for older apis that do not support multibuild - - fix ssl.connection instantiation in case of old M2Crypto - - highly experimental support for appimage - - fix local service run for non-existent (server-side) package - -0.157 - - add unpublish command (requires OBS 2.8) - - add blame command (requires OBS 2.9) - - results: show multibuild results by default - - getbinaries: make .AppImage files executable - - support operation in checked out package for cat/less/blame - - add comment command - - improved build recipe selection - - added multibuild (-M) to commands: - buildlog, remotebuildlog, buildinfo, build, buildhistory, jobhistory, - rebuild, restartbuild/abortbuild, wipebinaries, getbinaries - - add checkconstraints command - - add workerinfo command - - fix local build of kiwi images using obsrepositories:// - -0.156 - - highlight scheduled jobs with dispatch problems (due to constraints) - - allow to specify a log message in lock command - - Add '--wipe' option to osc chroot for deleting buildroots - - Add '--vm-memory' option to osc build - - add --multibuild to results command for showing all packages - of a multibuild config - - add --multibuild-package option to results command for showing - only one package of the multibuild config - -0.155 - - osc service runall: runs all service local, independend of the mode - This allows to create local files even when disabled or - just created at buildtime - - support snapcraft.yaml build descriptions - - "osc add" of a directory offers to create an archive for uploading it - - support usage or preinstall images in local builds - - revision control options for "meta prj" - - bugfixes and documentation updates - -0.154 - - switch to new obs_scm service when adding git URL's - - set OSC_VERSION environment for source services - (allows to work in local git checkouts when using obs_scm) - -0.153 - - "my sr" is using the server side request collection to get right results - - maintenance request offers to supersede old, but still open requests - - add build --vm-telnet option for getting debug shell in KVM builds - - add buildhistory --limit option - OBS 2.7 only: - - add "addchannels" and "enablechannel" commands - - support new package instances on branching when using -N parameter - - add --linkrev option to branch command - - add --add-repository-block option to branch command - - add --add-repository-rebuild option to branch command - - add service merge command - - add service wait command - -0.152 - - add support searching for groups via "group:" prefix - - show possible used incident projects on "maintained" command - OBS 2.7 only: - - support buildtime source services - - support maintenance_incident requests with acceptinfo data - - support maintenance_release requests with acceptinfo data - -0.151 - - fixed shell command injection via crafted _service files (CVE-2015-0778) - - fix times when data comes from OBS backend - - support updateing the link in target package for submit requests - - various minor bugfixes - -0.150 - - support local builds using builenv (for same build environment as a former build) - - add "osc api --edit" option to be able to edit some meta files directly - - follow the request order of the api (sorting according to priorization) - - add mr --release-project option for kgraft updates - - add support for makeoriginolder in request - -0.149 - - removed "--diff" option from the "createrequest" command - - introduced new "vc-cmd" config option, which is used to specify the path - to the vc script - - various bugfixes - -0.148 - - support new history including review history of OBS 2.6 - - display request priorities, if important or critical - - add "osc rq priorize" command to re-priorize existing requests - - allow also "osc rq ls" shortcut - - fish shell completion support - -0.147 - - support groups in maintainership requests - - fixing listing of review requests - - support expanded package listing (when using project links) - - fixing "osc add git://" behaviour - - using xz as default compression - - support local debian live (image) build format - - handle ppc64le for debian as well - - fix buildlog --strip-time - - some more minor bugfixes - - speedup update of a project working copy (in some cases) - -0.146 - - support maintenance release request with acceptinfo data (OBS 2.6) - - setlinkrev can be used to update frozen links to current revisions again - - report errors in case request accept fails - - support epoch number handling for local builds - - support bugowner request handling for groups - - support usage of fedoras mock to build packages - - support build --prefer-pkgs for Arch linux - - support bash-completion for .kiwi files - -0.145 - - allow to use the set-release option when running a manual release - - added support for "osc requestmaintainership PROJECT" - - various bugfixes: - - print_buildlog: do not strip tabs - - fixed "osc -H ..." in combination with a proxy - - fixed creation of ~/.osc_cookiejar - - Package.commit: create _meta for newly added packages - - fixed behavior of set_link_rev #72 - -0.144 - - allow commiting to package sources from linked projects. osc will ask to branch it first. - - group support in bugowner and maintainer command - -0.143 - - add option to add a auto-accept in future for delete requests (handy for admins) - - many bugfixes: - - plugin loading - - bugowner handling - - download of server side generated source "up -S" - - wipebinaries command - -0.142 - - ppc64p7 build support - - request --no-devel to disable request forwarding -# -# Features which requires OBS 2.5 -# - - authentification token support - -0.141 - - crash fixes - - support for kiwi appliance builds using obsrepositories:/ directive - - support for manual release of sources and binaries - - add --last parameter for build logs to show last finished log file, if currently building - - add signkey --sslcert option to fetch the optional create ssl certificate instead of gpg key - -0.140 - - support python 2.7 and python 3 in parallel now - - reworked plugin loading mechanism in order to avoid the (mass) breakage of existing - plugins due to the python 3 support. Nonetheless if a plugin uses the "@cmdln.option(...)" - decorator it has to import the cmdln module first via "from osc import cmdln". - - allow specifying directories as mv targets - - drop the support for deprecated cbinstall and cbpreinstall directives - - allow to set maintainer or bugowner ship for a binary package initially, but ask back if - this is the right place. - - support listing of deleted source files "ls -D $PROJECT $PACKAGE" - - build results do show that a succeeded is not yet published - - improved bash completions - - default build root includes repository and architecture name now - - --request-accept-or-revoke option, useful to handle mass approval of requests - - multiple minor bugfixes - -0.139 - - various bugfixes for owner search - - support generic emulator virtualization - - added "--host" argument to "osc build" (used to perform the build on a remote host) - - "search --maintained" is obsolete. Abort on usage. - - "maintainer --user" support to search for all official maintained instance for given user or group - - added support to abort a commit after displaying a default commit message in $EDITOR. As a result - other commands like "submitrequest" will also ask if the user wants to proceed if the default - comment/message wasn't changed. - -0.138 - - add support to remove repositories recursively (mostly only usefull for admins) - - submitrequest: old not anymore used maintenance code got removed. It is possible now - to create one request to submit all changed packages of an project in - one request. Just run "osc sr" in the checked out project directory. - - disable keyring usage by default. print warning about misconfigured keyrings. - - prdiff: new command to diff entire projects - -0.137 - - support single binary download via getbinaries command - - support to set the bugowner -# -# Features which requires OBS 2.4 -# - - offer to send set_bugowner request if target is not writeable - - support delete requests for repositories. - - support default maintainer/bugowner search based on binary package names - - support to lookup --all definitions of maintainers of bugowners. Either - for showing or setting them. - - buildinfo --debug option for verbose output of dependency calculation - -0.136 - - prefer TLS v1.1 or v1.2 if available - - declined is considered to be an open state (that is "osc rq list" also shows declined requests) - - added support to move files across packages via "osc mv" (fixes issue #10) - - various bugfixes: - * show source package name when running "osc se --binary ..." - * fixed encoding detection - * fixed build result listing for arch packages (affects "osc build") - * "osc ci --noservice" works also for "external"/flat packages - -0.135.1 - - do not forward requests to packages which do link anyway to original request target - -0.135 - - request accept is offering now to forward submit request if it is a devel area like webui does - - support archlinux builds (requires OBS 2.4) - - support maintenancerequest from local checkout - - bugfixes for review handling, result watching, gnome-keyring - -0.134 - - patchinfo call can work without checked out copy now - - use qemu as fallback for building not directly supported architectures - - "results --watch" option to watch build results until they finished building - - setlinkrev and linkpac ---current is setting vrev. this requires OBS 2.1.17 or 2.3 - - security fix for buildlog function, terminal control characters are limited now. -# -# Features which requires OBS 2.3 -# - - support dryrun of branching to preview the expected result. "osc sm" is doing this now by default. - - maintenance requests accept package lists as source and target incidents to be merged in - - add "setincident" command to "request" to re-direct a maintenance request - - ask user to create "maintenance incident" request when submit request is failing at release project - - "osc my patchinfos" is showing patchinfos where any open bug is assigned to user - - "osc my" or "osc my work" is including assigned patchinfos - - "osc branch --maintenance" is creating setups for maintenance - - "osc unlock" command to unlock packages or projects - -0.133 - - add --meta option also to "list", "cat" and "less" commands - - project checkout is skipping packages linking to project local packages by default - - add --keep-link option to copypac command - - source validators are not called by default anymore: - * They can get used via source services now - * Allows different validations based on the code streams -# -# Features which requires OBS 2.3 -# - - support source services using OBS project or package name - - support updateing _patchinfo file with new issues just by calling "osc patchinfo" again - - branch --add-repositories can be used to add repos from source project to target project - - branch --extend-package-names can be used to do mbranch like branch of a single package - - branch --new-package can be used to do branch from a not yet existing package (to define later submit target) - - show declined requests which created by user - -0.132 - - rdelete and undelete command requesting now a comment - - add 'requestbugownership' command for setting the bugowner via request -# -# Features which requires OBS 2.3 -# - - new command "createincident" to create maintenance incidents without a request - - support to create hidden project on "branch" and "createincident" commands - - osc waits and updates package after checkin when a source service is used - - support for the new service file mode for "update" and "checkout" command when - downloading server side generated files - - integration for local source services, they will replace the source_validator mechanism - -0.131 - - new command 'develproject' to print the devel project from the package meta. - - add blt and rblt commands, aka "buildlogtail" and "remotebuildlogtail" to show - just the end of a build log (for getting the fail reason faster). - CHANGE: the --start parameter is now called --offset - - add "createrequest -a add_group" option to create a group request - - add "createrequest -a add_me" shortcut - - add "less" command, doing the same as "osc cat" but with pager - - fallback to unexpanded diff mode on "osc diff" on merge error. - - support viewing the commit history of deleted packages - - show review states on "review list" - - new source service commands "localrun" and "disabledrun" to generate files without _service: prefix - - add "request supersede" and "review supersede" to supersede with existing request - - make it possible to run single source services, even when not specified in _service file. - (For example for doing a version update without creating a _service file: osc service lr update_source) - - protect rebuild and abortbuild commands with required "--all" option to mass failures by accident (similar to wipebinaries) - - "review accept/decline" is trying to change all reviews of a requests, if a specific one is not specified by user -# -# Features which requires OBS 2.3 -# - - "my requests" is doing faster and complete server side lookup now if available - - "review" command has been extended to handle reviews by project or by package maintainers - - support for new source service modes: disabled, trylocal and localonly - - support project wide source services - - support for armv7hl architecuture. used to denote armv7 + hardfloat binaries - - add force option to accept requests in review state. - - add "maintenancerequest" command to request a maintenance incident from maintenance team - - add "releaserequest" command run a maintenance update release process (for maintenance team only) - - allow to force the storage of project meta data (to ignore depending repositories for example) - - "my requests" is showing requests with open reviews also now - -0.130 - - new "revert" command to restore the original working copy file (without - downloading it) - - rewrote "diff" logic - - added new "--http-full-debug" option, "--http-debug" filters the - "Authentication" and "Set-Cookie" header - - added new "--disabled-cpio-bulk-download" option: disable downloading - packages as cpio archive from api - - added new "repairwc" command which tries to repair an inconsistent working - copy - - workaround for broken urllib2 in python 2.6.5: wrong credentials lead to an - infinite recursion - - support --interactive-review option when running "osc rq list " - - improved "osc rq show --interactive-review" - - do_config: added new options --stdin, --prompt, --no-echo: - --stdin: read value from stdin - --prompt: prompt for a value - --no-echo: prompt for a value but don't echo entered characters (for - instance to enter a passwd) - - added template support for a submitrequest accept/decline message - - lots of internal rewrites (new working copy handling etc.) - - support added for osc search 'perl(Foo::Bar)' - - New "service" command to run source services locally or trigger a re-run on the server. - - setlinkrev is setting now the revision to xsrcmd5 by default to avoid later breakage on indirect links by default. - - NOTE: - Due to the rewrite of the working copy handling osc might fail with the - following error: - Your working copy '.' is in an inconsistent state. - Please run 'osc repairwc .' (Note this might _remove_ - files from the .osc/ dir). Please check the state - of the working copy afterwards (via 'osc status .') - Simply run "osc repairwc" which might fetch files from the api - or delete some files from the storedir (.osc/). It won't touch - locally modified files. For more information see section - "WORKING COPY INCONSISTENT" in the README. - -# -# Feature which requires OBS 2.1 -# - - support reliable diff for an accepted request - -0.129 - - "dists" command to show the configured default base repos from the server. - - "review list" command to list open review requests - - "review add" command to add another reviewer for a request (either user or group) - - add "buildinfo --prefer-pkgs " option - - add "prjresults --hide-disabled" option to hide packages which are disabled/excluded - in all repos and repos which have only disabled/excluded packages - - harmonize "api"'s options with curl's options - - use builtin signature check by default (instead of verifying the signature with "rpm -K...") - - add "status --show-excluded" to show all files (except the store dir) - - new "osc reqmaintainership" command which is a shortcut for - "osc creq -a add_role USER maintainer PROJECT PACKAGE" -# -# Feature which requires OBS 2.1 -# - - add "osc aggregate --nosources" option - - add "request clone" command to clone all packages from a given request - - fixed references into en.opensuse.org to honor the new Wiki structure - - add cross build targets mips and mipsel for QEMU Usermode. needs also build update. - -0.128 - - better default commands selection for editor/pager - - support "osc rq reopen" to set a request in new state again - - "osc repos" and "wipebinaries" is checking for local project now - - "osc getbinaries" works in project dir now - - support added for SPARC builds - - support build --oldpackages - - introduced the "trusted projects" - - Fixes for default editor, api check on deleterequest call, tempfile leaks, getbinaries source package handling, results command -# -# Feature which require either OBS 2.1 or 2.0.4 -# - - add osc signkey --extend for extending the expiration date of the gpg public key - -0.127 - - add size limit mode, files can be ignored on checkout or update given a certain size limit. - - --csv/--format options for results command - using format user can explicitly specify what he wants print - - osc branch reads project/package in package directory - - fix creation of package link, when target project has the package via linked project - - add "osc rq approvenew $PROJECT" command to show and accept all request in new state. - This makes sense esp. for projects which work with default reviewers before. - - support external source validator scripts before commiting - - support request creation with multiple actions -# -# Features which require OBS 2.0 -# - - support "osc add http://...", this uses obs source service for downloading a file and verify it via sha256 verifier service - - add support for CBpreinstall/CBinstall - - support branch --force to override target - - support for "unresolvable" state of OBS 2.0 - - support undelete of project or package - - support for package meta data checkout - -0.126 - - added VM autosetup to osc. This requires appropriate OBS version and build script version. - - enhanced QEMU cross build support with 'armv4l' 'armv5el' 'armv6el' 'armv7el' 'armv8el' 'mips' 'mips64' 'ppc' 'ppc64' 'sh4' arch strings now supported on x86 host - - suggest git, svn, ... if indicated, after oscerr.NoWorkingCopy - - "osc cat" & "osc ls" now auto-expands through link. - - fixed "osc add" after "osc delete". - - fix "osc patchinfo" command (crashed before) - - fixed SSL proxy support - - fixed meta attribute create and set calls - - osc remotebuildlog supports a buildlogurl - - Allow --prefer-pkgs to parse repodata - - new "osc build --no-service" option to skip source service update - - fix linktobranch apiurl usage - - "maintained package" search is telling relevant projects now - * requires OBS 1.7.2 or 2.0 - - added "osc chroot" command - - fixed #547005 ("osc co could show download progress") - - added "--interactive" option to "osc request" - - store commit message so it doesn't get lost on failure - - added "--cpio-bulk-download" and "--download-api-only" options to "osc build" - - added "osc localbuildlog" command - - added "--build-uid uid:gid|caller" option to "osc build" to specify abuild id in chroot - - verify files using rpm bindings and keys supplied by buildservice - - added "--exclude-target-project " option to "osc rq list" - - added "--message" option to "osc branch" - - added "osc config" command to set/get/delete a config option - - added "--binary" and "--baseproject" options to "osc search" - - added "-o/--offline" and "-l/--preload" options to osc build - * osc build -l standard i586 foo.spec (to cache all dependencies) - * osc build -o standard i586 foo.spec (to build without contacting the api) - -0.125 - - add "osc pull" command to fetch and merge changes in the link target - - new proxy support via SSL - - when a broken link is encountered automatically switch to last working - version. use 'osc pull' to repair the broken link. - - osc my request is showing now also requests from other people target to - myself - - # - # Features which require OBS 1.7 - # - - new config option 'submitrequest_on_accept_action' to specify a default action - if a submitrequest has been accepted - - add "osc linktobranch" command to convert a classic link to a branch package - - show scheduler state for each repo with "results" and "prjresults" - -0.124 - - added 'osc bugowner' as a more intelligent version of 'osc maintainer -B' - - added option '-B' to osc maintainer, prints bugowner OR maintainer. - - added 'osc req help' as convenience alias to 'osc help req'. - - 'osc in' to be done. Its usage just prints a suggested zypper command line. - - give better hint how to use osc vc without network connectivity. - - added printing of cache statistices to osc build - - support http proxies when using python 2.6 or newer (#551004) - - partial fix for checkout problems (bnc#551147) - - fixed #477690 ("osc fetching binaries really slow") - - osc jobhistory accepts also "prj [pkg] repo arch" now - - osc buildinfo accepts now also "prj pkg repo arch [spec/dsc]" - - osc buildconfig accepts now also "prj pkg repo arch" - - fixed warning messages regarding SSL certificate on some plattforms (Fedora) - - support submit requests on project level, osc is checking which packages - have changed and submits only the changed after asking back. - - show worker/id on jobhistory and make it faster by adding a default limit of 20 - - add "osc build --root" option to allow to specify build root directory - - add "osc build --release" option to allow to specify a package release number - - added osc mv command which can rename file and leave them under version control - - added new commands "dependson" and "whatdependson" to find out which packages get - triggered before checkin/request accept. - - add new "osc build --linksource" option, speeds up esp. image building a lot - - add "osc triggerreason" command to show detail reason, why a package got triggered for build - - Incompatible changes: - * osc se now prints Project Package, instead of Package Project - for easier copy&paste. - * osc se uses exact search by default. Use osc se -s for - substring search - * osc repourls neither needs nor accepts a path to a package - working dir anymore - * osc repo neither needs nor accepts a path to a package or - project working dir anymore - # - # Features which require OBS 1.7 - # - - search: allow to limit results via existing attibutes - - added "osc meta attribute" for basic attribute creation, deletion, showing and value setting - - implement "osc mbranch" call to create projects with multiple source package (instances) - - new "osc patchinfo" command: basic patchinfo generation and modification support - - add support for _patchinfo package submissions in "osc sr" on project level - - support review handling of requests (new "osc review accept/decline $REQUEST_ID" command - -0.123 - - IMPORTANT: ssl certificate checks are actually performed now to - prevent man-in-the-middle-attacks. python-m2crypto is needed to - make this work. Certificate checks can be turned off per server - via 'sslcertck = 0' in .oscrc. - - 'osc list' option -D now only limits non-'new' requests. In state 'new' all are shown. - - suggest 'osc list' --bugowner option. Not implemented. - - added 'osc rq help' as convenience alias to 'osc help rq'. - - 'osc in' to be done. Its usage just prints a suggested zypper command line. - - Incompatible change: osc se now prints Project Package, instead of Package Project - for easier copy&paste. - - fix checkout of packages, which contain not committed files (but uploaded) - - add signing key management command (osc signkey) - * shows public part of project key - * allows (re)creation of a project key - * allows deletion of a project key - - support 100% offline build when using "osc build --noinit ..." - -> buildinfo gets cached in local directory as .buildinfo.xml - -0.122 - - added missing code for 'osc sr -l [ID]' - - allow osc cat with one parameter, if it is a url. - - make osc getpac really get the package (instead of branch only)! - - expanded several tabs to spaces. - - added default project to new getpac and bco subcommand. .oscrc:getpac_default_project = OpenSUSE:Factory - (not added to branch subcommand, to not interfere with its syntax.) - - add support for generic python-keyring lib, supports KWallet, Gnome keyring, MacOS and Windows. - - make buildhist command usable without checked out package - - rename old "platform/s" names to "repository/ies" (internal cleanup only) - - fixed osc diff -c N, it failed with int and string concatenation - - made osc diff and rdiff more similar: added -p, -c to rdiff, removed -u from rdiff. - made -u default for both, renamed --pretty to --plain as it is the opposite of -u - # - # Features which require OBS 1.7 - # - - option to download server side generated _service:* files on update - - support for running source services locally. Happens by default on source update - and build. - - support modification flages on creation of submit request - (for auto update or clean up packages or to avoid it, when submit request got accepted) - - show request ids from package source logs - - added support to require local packages which don't exist in the obs for a local build. This - fixes #377021, #481193 - -0.121.1 - - fixed creation of new ~/.oscrc files - - fixed "osc my request" command - -0.121 - - fixed osc rq list -U to not look into the local dir - - added osc my ... pkg/prj/req shorthand commands - - add 'osc se' alias for 'osc search -e' - - add -b -m -M to 'osc search' - - hack for _help_preprocess_cmd_option_list to survive setup.py build - - made rresults an alias for results. python decorators are a strange concept... - - asserting that ~/.oscrc remains mode 0600 - - no more plain text passwords in ~/.oscrc, we store now as bz2+base64 - - added verbosity control -v -q. To be used in guess_proj_pack() - - added 'll' and 'ls -l' as shorthand to 'list -v' - - started to change to explicit dual license GPLv2 or GPLv3 to conform to Novell policy. - - added revision parameter to show_upstream_srcmd5(), so that it can be used in do_cat later. - - allowed both integer and srcmd5 revisions in meta_get_filelist() - - added 'lL', 'LL': allowed -e and -v together in do_list(). Was an internal error before. - - added cat -e, to cat a file through a link. - 'cat -e -r 3' expands through the third revision of the _link. - - added subcmd bco as alias for branch -c - - added primitive experimental support for .oscrc:checkout_no_colon = 1 - - suggest using svn when .svn found. - - alias submitpac submitrequest - - osc bco now continues to checkout after branch target exists error. - - added .oscrc:plaintext_passwd=1 for backwards compatibility - - moved core.py:exclude_stuff to .oscrc:exclude_glob and expand it to catch *.orig etc. - - added osc rq list -a; a shorthand for enumerating all states - - osc rq list -D nnn limit to requests nnn days old. - - osc sr --diff option added - - improved help texts with repairlink to point to osc resolved. - - improved passx code when creating oscrc. - - osc metafromspec allows editing before send - - allow handling of other roles than "maintainer" with maintainer command - (-r role) - - fix and improve request list and show output - - new osc rremove command for remote source files removal - - first part of support to handle _service\* files correctly - - osc commit asks if some file has a '?' status (can be skipped by --force option) - - fixed request list for multiple states - - new option --overlay - - new option --rsync-src / --rsync-dest - -0.120: - - support "setlinkrev" for whole projects - - add "setlinkrev --unset" for removing revision references - - add "osc request list -t " to list only submit, delete or develchange requests - - add shell completion scripts - - fix support of listing requests with multiple actions - - "osc maintainer" is following to the development project / package now - - "osc maintainer" list maintainer and bugowner roles now - -0.119: -- Support new request types - - "submitreq" command has a new syntax (incompatible !) - - new "deleterequest" command - - new "changedevelrequest" command - - new "request" command for showing/modifing requests - - Multiple actions in one request is not yet supported by osc - - The new commands require an OBS 1.7 server, submitreq is still working with - older servers. -- support of added .changes in commit message template -- make submit request listing fast by server side filtering -- allow pulling of conflicting changes via "osc repairlink" -- delete commands consolidated: - * deleteprj and deletepac are obsolete. - * delete and rdelete take over -- enable package tracking by default -- bugfix: templates in edit commit message causes an empty commit logs -- osc submitrequest consumes DESTPRJ [DESTPKG] arguments only -- osc build now also tested on native arm targets where uname -m reports a string like armv{4l,5el,6l,7el,7l} -- osc rlog now works with srcmd5 also -- plugins now should be placed in /usr/lib/osc-plugins to match FHS (the /var path is still supported though) -- osc now includes automatically generated man page -- osc can now store credentials in Gnome keyring if it is available -- new support for osc linkpac to specify cicount attribute -- new log/rlog output formats (CSV and XML) -- new jobhistory/buildhistory/search output format (CSV) -- new option to fetch buildlogs starting at given offset -- new option for copypac - * -r to specify source revision - * -m to specify a comment (and send default comment if not specified) -- new option to results(r), and rresults: - * -r|--repo to specify a repository(repositories) - * -a|--arch to specify a architexure(s) - * --xml for xml output (makes results_meta obsolete) -- request list -M shows open SRs created by the user. -- Fixed build support for images, only refered packages from buildinfo get used. (#485047) -- "req" command got renamed to "api" to avoid clash with "request" command -- osc build has a smarter default platform selection - it checks the - availibility config value, 'standard' and 'opensuse_Factory' in platforms list and in case - of fail it uses the last entry from that list -- new osc linkpac -f to allow to override existing _link files -- rename "rebuildpac" to "rebuild", but keep "rebuildpac" as alias - -0.117: -- support checkout of single package via "osc co PACKAGE" when local dir is project -- allow to specify target project and package on osc branch (requires server version 1.6) -- add option to automatic checkout a branched package -- support "osc getbinaries" in checkout packages -- new vc command for editing the changes files (requires build.rpm 2009.04.17 or newest) -- new repairlink command for repairing a broken source link (requires server version 1.6) -- '-b|--brief' option for osc submitreq show subcommand -- use "latest" commited revision on checkout, not "upload" (#441783) -- '-e|--just-open' option for vc command and used /usr/lib/build/vc as an executable - -0.116: -- support listings of older revisions with "osc ls -R" -- add --current parameter for linkpac to use current revision of source package fixed. -- add osc setlinkrev to add or update revision number in links easily -- fix streaming of binary files via "cat" (#493325) - -0.115: -- optional transfer of devel project during copy_pac and link_pac is fixing - opertation with remote build service instance -- "osc ci" fails uploading large files to Provo BuildService -- fixed support for accessing download repositories (worked only for download.o.o so far) - -0.114: -- the .oscrc config handling has been cleaned up: - * use "apiurl" for everything now (== ://) - * added aliases support for [apiurl] sections in the ~/.oscrc. - Example: - [http(s)://foobar] - ... - aliases = foo, bar - => "osc -A foo " will do the same as "osc -A http(s)://foobar ls" - * "scheme" and "apisrv" are deprecated and will produce a warning - * when writing a new ~/.oscrc, store the apiurl in the conffile (bnc#478054) - * fixed bug that made osc ask for credentials when -A was used (bnc#478054) - * fixed crash upon password entry (first startup) (bnc#478052) -- osc build: - * make product builds work - * speed up by using a cookie when fetching the binaries (bnc#477690) - * support for VM (kvm or xen) builds - * obsolete the need to configure download server, get it from the build - service instance instead. - * be a bit more verbose if the linked package isn't expanded (bnc#470948) -- osc branch: - * --develproject option fixed (the API calls it 'ignoredevel' instead of 'nodevelproject') - * --revision option added -- osc jobhistory: new command to see build job history of a project or a package -- osc results/rresults: option -l, --last-build added (show last build results) -- osc linkpac: fix failure when -A is used (bnc#479156) -- osc commit: don't scare users if they want to commit a nonexistent file (bnc#469167) -- osc diff: bugfix to make --pretty option work -- 11.1 added to the osc project template - - -0.113: -- osc diff -rX:Y: the default is to return an unified diff (to get a pretty - diff use the --pretty option) -- osc rdiff: the default is to return a pretty diff (to get an unified diff use the --unified option) -- osc sr show --diff: the default is to return a pretty diff (to get an unified diff use the --unified option) -- osc getbinaries: optionally also download source rpms -- osc importsrcpkg: set the url in the package meta (bnc#458083) -- osc wipebinaries: added --expansion option -- added support for format strings like "%(project)s" and "%(package)s" which - can be used in the build-root config option. For example one could use a new - chroot for each package. -- osc updatepacmetafromspec: fix failure if %description is starting with newline (bnc#462869) -- catch OSError exceptions which might be raised by the subprocess module -- don't use a hardcoded path for the rpm binary otherwise it fails on - distributions like debian -- osc meta: be more verbose in case of failure (bnc#459292) -- osc mkpac: add info how to enable the package tracking feature (bnc#459288) - -0.112: -important bugfix: -- osc deletepac: prevent recursive deletion of a whole project [bnc#458535] -- osc build: support more options: --icecream, --ccache, --with, --without -- osc build: --keep-pkgs also saves the src.rpm now -- osc build: small fix in debuginfo handling -- osc build: new armv7el arch for all binaries for up to ARMv7 EABI with VFP - - -0.111: -- fix accidental truncation of .oscrc to 0 bytes -- fix osc's ignorance of the revision option (-r) for expanded links -- osc build: handle kiwi builds (local image build) -- osc build: cross build support -- osc build: support for ARMv5 EABI little endian arch added -- osc build: fixed detection of the build type (rpm or deb), after change in the buildinfo -- osc build: build debuginfo packages if enabled in the project/package meta (this partly fixes #421390) - - -0.110: - -- osc build: no working copy needed anymore when building a local package [bnc#431434] -- osc checkout: when checking out a project, and a linkerror occurs for one of - the packages, do a checkout in unexpanded form and continue checking out the - rest of the project [bnc#428303] -- osc deletepac, osc branch: allow slash notation for the project/package arguments -- fix deprecation warnings on Factory (which uses Python 2.6) -- fix to avoid (internal) stale Package objects [bnc#436932] - - -0.109: - -- osc getbinaries: new command to download binaries directly from the api server -- osc rlog: new command to show commit logs of remote packages -- osc build: --debug option to the build script which will take care of creating debuginfo packages -- add link to plugin API to osc help output -- avoid a hard dependency on the rpm-python bindings. -- fixed depracation warnings with Python 2.6 [bnc#426612] -- streaming of unfinished logfiles fixed -- fixed regression of .oscrc template [bnc#427118] -Changes were from Marcus_H, poeml, dmueller, tpatzig. - - -0.108: - -- osc submitreq: has two aliases now: "osc sr" and "osc submitrequest" -- osc sr create: prompt to revoke existing requests -- osc sr revoke: new command for to get rid of requests to projects one can't write to -- osc sr list: allow showing requests in a state other than "new" -- osc sr show: show the current state's comment -- osc sr log: new command to show the history of a given id -- osc sr: enable requests for submitting new packages -- osc build: implement --no-checks -- osc build: be less strict on the arguments, and guess what's needed. For instance: - * osc build PLATFORM ARCH BUILD_DESCR - * osc build PLATFORM (ARCH = hostarch, BUILD_DESCR guessed) - * osc build ARCH (PLATFORM = build_platform (config option), BUILD_DESCR guessed) - * osc build BUILD_DESCR (PLATFORM = build_platform (config option), ARCH = hostarch) - * osc build (PLATFORM = build_platform (config option), ARCH = hostarch, BUILD_DESCR guessed) -- osc build: download after the target architecture check -- osc addremove: bugfixes, --recursive option -- osc init: added support to initialize a project dir -- osc metafromspec: new alias for 'updatepacmetafromspec' which is hard to remember -- osc updatepacmetafromspec: also update URL -- osc buildlog: do not download entire log to memory -- new http_headers option to add arbitrary headers to HTTP requests -- bugfix to make osc work on Gentoo -- enhance/update the package and project template -- .netrc heritage from previous commandline client has been removed -- osc asks for password now, when used with -A - - -0.107: - -- osc build: the --extra-pkgs option is now a configurable setting in .oscrc. - Default is "extra-pkgs = vim gdb strace" -- .oscrc: make tilde expansion work on the packagecachedir setting -- osc update / checkout: don't check out a working copy, or update an existing - one, when a source link cannot be applied [bnc#409373] - - -0.106: - -- osc rdiff / osc submitreq show: diff the _expanded_ sources [bnc#408267] -- osc submitreq list: show author's name -- osc submitreq: shortcut alias 'sr' added - - -0.105: - -- osc submitreq list: - - can now be called without parameters, applying to the working copy then. - - calling it in a project directory is also possible now. - - output was improved. Newest requests are listed first. -- osc submitreq delete: a new action which has been added -- osc submitreq list/create: use api URL from the working copy -- osc meta: editing returns the API error description instead of a plain HTTP - error if available -- osc copypac: use the correct userid when copying to another api host -- osc importsrcpkg: disable signature check when getting data from a rpm file -- osc linkpac: --revision option added. -- osc search: added option -i|--involved, to show in which projects/packages - a developer is involved -- osc build: double check the buildinfo for local builds. Refuse to build for - architectures that are not supported by the host -- osc buildhist: change the output into a format which better matches actual - RPM filenames. -- osc commit: give commit message tempfiles a ".diff" suffix, so syntax - highlighting automatically works in capable editors -- other bug fixes: - - don't expand/unexpand if the working copy has local modifications - this is - an ugly workaround for #399247 but this way the working copy isn't screwed up - - work around a bug which causes packages to be cached locally under the - "None" architecture (and therefore causing issues when building for more - than one architecture via osc build). - - don't create _linkerror files in working copies - - better error handling (mostly printing more details) in a number of cases - - show error messages from the API also for type 500 errors - - -0.104: -- osc update: after update, reset the revision when updating multiple package. - Fixes "404: Not Found" type errors when updating an entire project. [bnc#399177] -- more/better error messages in some error scenarios -- osc wipebinaries: add missing check for commandline arguments, which could - cause a PACKAGE argument to be ignored -- fixed make_diff in order to avoid errors when committing a new package - (created with mkpac) - - -0.103: - -- osc submitreq create: simplify by make osc guess needed parameters, if - there is a working copy and it is a source link. -- osc submitreq create: don't stop on packages that have a devel project - defined, if the submit actually comes from that project. -- osc checkout: checkout of source links is now done in expanded form per - default. The new option --unexpand-link can be used to get the raw link file. -- show the API's error message for HTTP 403 (Forbidden) replies. - - -0.102: - -- osc branch: Show the actually created branch project name, not - a guessed one. Add --nodevelproject. -- osc submitreq: look up the develproject of the target, and if - there is one, don't create the request, unless forced with - --nodevelproject. -- make the global -d option work better under certain circumstances - -0.101: - -- add osc branch command, using the branch API call to branch a package to - home:poeml:branches:PRJ/PKG -- osc commit now opens $EDITOR for commit message -- improved error handling, when API returns HTTP status code 400 (bad request) -- osc status: implement -q/--quiet switch -- osc info: slightly more verbose -- osc deletepac: allow deletion of multiple packages at once -- make "osc meta prjconf -e" work again (probably caused by r3702) - - -0.100: - -- improved error handling (babysitter.py wrapper, oscerr.py exception classes) - Tracebacks are mostly suppressed now. To enable them, use - -t, --traceback print call trace in case of errors - or set traceback=1 in .oscrc. -- other new global options for debugging: - --debugger jump into the debugger before executing anything - --post-mortem jump into the debugger in case of errors - -d, --debug print info useful for debugging -- make way for more seamless osc version updates (the .osc directory in working copies - will have its own versioning in the future) -- osc rprjresults and osc rresults: new commands to show remote build results -- osc build: added --baselibs and --jobs options -- osc copypac: added --keep-maintainers switch -- osc maintainer: new -D/--devel-project switch -- BUILD_DIST environment variable will be ignored (bnc#359846) - The following environment variables can still be used: - * OSC_SU_WRAPPER overrides the setting of su-wrapper. - * OSC_BUILD_ROOT overrides the setting of build-root. - * OSC_PACKAGECACHEDIR overrides the setting of packagecachedir. - - -0.99+patches (interim releases, including Wed Apr 2 16:36:40 CEST 2008) - -- new command submitreq, to handle "submit requests" (next generation build - service feature). See http://en.opensuse.org/openSUSE:Build_Service_Collaboration -- new link handling: - add support for handling linked packages in expanded form. They - can be checked out, updated (expanding or unexpanding them), - and built locally. - Newly introduced options are: - * osc checkout: --expand-link - * osc update: --expand-link and --unexpand-link -- new feature: package tracking. It's not enabled by default and - needs to be switched on with do_package_tracking=1 in .oscrc. - before using. See - http://lists.opensuse.org/opensuse-buildservice/2008-03/msg00114.html -- prjresults: add --csv option -- req: add option -a / --add-header to inject arbitrary request headers -- addremove (and others): ignore _all_ dot files (the buildservice doesn't - handle them) -- copypac: do a (quicker) server-side copy by default, when source and target - are on the same buildservice instance. -- build: - - add --debuginfo - - add --no-verify - - add --local-package to build a package which doesn't exist on the server - - add --alternative-project to specify a project, if the current one doesn't - exist on the server - - use api url from .osc/_apiurl [#355144] -- new command remotebuildlog -- diff: fix #347377 (diffing too many files) -- checkout: check for project existance beforehand -- rdiff: new command for server-side diffs between arbitrary packages -- cat: new command to print a file on the standard output -- diff: reworked functionality to show newly added files, and behaving more - like svn when doing diff against a certain revision -- bugfix in {link,aggregate,copy}_pac ( elements) -- checkout an empty project instead of doing nothing -- fix prjresults for newly added packages, where build status is missing - - -0.99: - -- aggregatepac: new command, similar to linkpac. Patch from Pavol Rusnak. -- wipebinaries: added --build-failed and --broken [#335498] -- deleteprj: enabled this command, as the backend now supports it -- maintainer: - - added --verbose option - - added functionality to add/remove users from a project/package -- print the list of URL to try, when in HTTP debug mode -- build: allow to use lbuild, a compatible replacement for build -- do not create dirs for non-existing packages during checkout [#259711] - - -0.98: - -- new maintainer command, to list the maintainers of a project or package -- ls: add -b option to list binaries -- make osc library simpler to use from external scripts -- new importfromsrcpkg command, to import a package src.rpm from file or URL -- new req command, to issue arbitrary requests to the API -- initial support for commit messages (ci -m/-F) -- implementing a log command to review the commit log -- renamed previous "log" command to "buildlog" (short: bl) -- new meta command, replacing editmeta, editprj, createprj, - editpac, createpac, edituser, pattern -- added search support -- show helpful xml error messages if broken metadata is uploaded - - -0.97: -- added initial revision handling: - - extended "osc co prj pac" to checkout a specific revision of pac - - extended "osc up" to update to a specific revision - - extended "osc diff" to diff the working copy against a - specific revision on the server. NOTE: comparing two - server-side revisions (osc diff -r 11:12) is currently - not supported! -- load subcommands from /var/lib/osc-plugins/ or ~/.osc-plugins/ -- updatepacmetafromspec scans for spec files automatically. Added --specfile option to updatepacmetafromspec. -- wipebinaries: allow to wipe all binaries of packages for which the build is disabled -- addremove: ignore foo.rXX, foo.mine for files which are in 'C' state -- ls: add verbose option to print extra information for packages -- for all server-side commands, allow arguments "foo/bar" instead of "foo bar" -- new wipebinaries and abortbuild commands, by courtesy of Marcus Huewe -- improved metadata error condition handling (thanks to Marcus Huewe) -- build: add --userootforbuild option -- build: implement -x/--extra-pkgs option (passed to backend and included in buildinfo result) -- make filling out of username in templates work again -- don't try to delete projects, as long it is not implemented in the backend -- use new API route for downloading binaries also in configured URLs -- make deletepac work again - - -0.96: -- following suggestions by Christian Boltz and Michal Marek, osc now memorizes - where a working copy was checked out from, saving the api server url to - .osc/_apiurl. -- implement 'info' subcommand -- use new api routes in all places -- buildhistory works again -- copypac: implement package copy from one buildservice instance to another - (--to-apiurl option) -- the results subcommand now handles multiple arguments -- build: implement --prefer-pkgs and --keep-pkgs option -- applied patch from Michael Marek, fixing all places where error - messages were printed to stdout instead of stderr. [#239404] -- osc is now easier to work with when using alternative API servers. The - configured server can be overriden with -A on the commandline. - "apisrv" in the config takes a URL now, so the variable "scheme" which was - needed in addition before becomes obsolete. For backward compatibility, a - hostname (and scheme variable) are accepted like before. Likewise, the auth - sections in the config take a URL now, or a hostname:port to keep old config - working. HTTP or HTTPS scheme is determined from the URL. Credentials must be - configured in .oscrc. -- build: use actual api server in urllist for downloading, instead of hardcoded - api.opensuse.org [#265211]. - - -0.95: -- rewrite the internal HTTP handling - - save and reuse HTTP server cookies, which can speed up HTTP requests up about - 5 times in an iChain setup - - adding http_GET/POST/PUT/DELETE() functions, which dispatch to - http_request(), and use them everywhere - - removing othermethods.py - - keeping urlopen(), in case it is used from externally, but have it print out - a "depracated" message - - finally, global option -H enables HTTP traffic debugging -- implement "rebuild all failed packages", via --failed option in rebuildpac - subcommand -- status -v shows all files, including unmodified ones -- suppress the legend in prjresults by default (show with -l) -- --version shows the program version number -- fix the commit subcommand's argument handling. The following works correctly - now: osc ci ../test/onlyinwc `pwd` fstab ../test/f2 -- fix the download progress meter to work with small terminals [#266989] -- update: when updating multiple packages, print each package name -- make 'results' subcommand many times faster, by making only a single request -- prjresults: sort package names -- build: run with --norootforbuild, thereby defaulting to build as abuild user -- build: fix (harmless) errors showing up in the build log during buildsystem - setup, by using the new preinstall and runscripts attributes -- update: when updating, don't delete files with local modifications -- let the diff subcommand return 1 if differences were found -- fix important bug, which could lead to overwriting local modifications when - upstream changes are merged in -- if a merge fails, the store copy must be updated neverthelesss -- fix testsuite and add testcase for successful merging -- sort output of 'status' (unknown files first, filenames alphabetically) -- core: added class "metadata" (merge from Susannes /branches/froh/reponator/) -- added command alias 'stat' for 'status', like in svn -- improved documentation/examples (Lars + Susanne) -- print usage info if 'co' is called without arguments - -0.9: -- "iChain-ready" (works with API server now using iChain authentication) -- add runtime check for build.rpm version, so the rpm package dependency is - no longer required -- add 'edituser' command for editing the metadata of a user account. It tries - to create a user if it doesn't exist yet. A new command 'usermeta' replaces - 'id' respectively 'userid'. -- rewrite configuration handling. Now the API server can be set in .oscrc -- ignore '.gitignore', '.pc', '*~' (now using filename matching [#208969] -- fix 'status' to work with project directories as arguments -- fix 'status ' -- 'rebuildpac' now accepts additional repo and arch argument. Note: - the syntax has changed. -- add 'prjresults' command to display aggregated build status over - an entire project -- add 'deleteprj' command (the API server doesn't seem to support - it yet, though) -- change 'buildhistory' to display human-readable text -- add 'copypac' subcommand, to copy a complete package to a new package, possibly cross-project -- don't die if user tries to 'add' a file which is already versioned -- don't die if 'addremove' encounters directories -- urlopen(): for server return code 500, print out the reply body - -0.8: -- build: use configuration from *local* specfile (e.g. BuildRequires) -- build: let envvars OSC_SU_WRAPPER and OSC_BUILD_ROOT override config -- build: allow 'dynamical' build-root setting by using %(repo)s and %(arch)s -- add 'createpac/editpac' and 'createprj/editprj' subcommands which - are similar to 'editmeta' but should be more logical to find -- added 'deletepac' subcommand -- added 'buildhistory' subcommand (formerly 'history'). This only - gives out raw xml at this time -- added 'linkpac' subcommand -- added ".git" to the excluded files -- adapt to API changes -- fixed issue with uploading files when an intercepting web proxy was - in between osc and the api server -- fixed creation of new packages/projects - -0.7: -- initial support for local builds (subcommand 'build') -- better error handling -- new subcommands buildconfig, buildinfo, repos -- remove requirement on pyxml package -- editmeta: add examples for package/project templates -- add support for streaming the build log (thanks to Christoph Thiel) -- add 'rebuildpac' subcommand -- add 'repourls' subcommand -- don't diff binary files -- don't try to merge binary files -- add a preliminary 'updatepacmetafromspec' subcommand, which takes package - metadata from a specfile -- fix profiling wrapper -- set User-agent -- bugfixes: - - fix handling of filenames with '+' signs - - make 'resolved' more robust - - fix merge on 'update' if called from another directory - - display reason for build status is 'broken' - - handle HTTP error codes != 404 when reading metadata in edit_meta() - - handle 'project not found' error in show_project_meta() - - -0.6: -- diff bugfix: sometimes displayed diff against obsolete files -- update bugfixes: fix update of working copy when adding a file from upstream - which is missing locally; fix update in directory with unmodified files: - don't try to merge if upstream file wasn't changed at all -- add: make it faster - - -0.5: -- help :-) -- add 'editmeta' subcommand: Edit project/package meta information, creating - new project or package if it doesn't exist. The user interface is $EDITOR -- fix status letter for files merged on update (in analogy to svn , it is - either G or U) -- if an old _files listing without any metadata is found, don't bother the user - with it -- make all subcommands properly importable functions -- bug in 'resolved' command fixed, which wouldn't clear the conflict state of a file - - -0.4: -- allow 'up' inside a project directory (will automatically pull in all new - packages). (For past checkouts, you may need to put the project name into - $prjdir/.osc/_project yourself). -- checkout: preserve mtimes -- add diff3 merge support. Locally modified files are merged with upstream changes - if possible, and go into Conflict state if that fails. -- add 'resolved' command to be used after manual merging. - - -0.3: -- use the new file metadata, which provides checksum, size and mtime -- faster 'status', 'update', 'diff' -- improve argument handling, now e.g. 'osc up *' is possible -- on first usage, ask for username and password and store them in .oscrc - (.netrc can still be used) - +- Update to 1.0.0 + - Command-line: + - Use '.' as a wildcard that resolves to a project or a package name from the current working copy, for example 'osc rdiff ./. -c ' + - Add 'create-pbuild-config' (cpc) command + - Add '--disable-build' option to the 'branch' command + - Add '--disable-build' option to the 'linkpac' command + - Add '-X/--extra-pkgs-from' option to the 'build' command + - Add '--add' option to the 'meta' command that appends new values to the existing values + - Replace '-q/--hide-legend' option in 'prjresults' command with global '-q/--quiet' option + - Replace '--debug' option in the 'getbinaries' command with '--debuginfo' to avoid conflicts with the global '--debug' + - Replace '--verbose' option in the 'build' command with '--verbose-mode' to avoid conflicts with the global '--verbose' + - Replace '--version' option with 'version' command + - Enable forwarding requests to the parent projects in 'rq list -i' and 'sr accept' commands + - Make use of '-M/--multibuild' option consistent across the commands + - Enhance '--force' option in the 'commit' command to allow deleting packages even if other packages depend on them + - Print URLs and xpaths in the debug rather than the verbose mode + - Fix 'add' command for github /archive/ URLs + - Fix 'buildhistory' command to produce proper output using build_table() and a CSV writer + - Fix 'linkpac' command to avoid copying a lock from a locked package to the target package + - Fix 'setlinkrev' command to write a log message on setting a revision + - Fix 'submitrequest' command not to error out on using an alias to apiurl + - Fix 'update' command on project level for scm packages + - Fix '--mine' option in the 'request' command to show only requests created by the user + - Fix the documentation url in the 'maintenancerequest' and 'createincident' commands + - Remove '--skip-validation' option from the 'commit' command + - Remove '--oldpkg', '--oldprj' options from the 'rdiff' command + - Remove 'create', 'list', 'log', 'show', 'decline', 'accept', 'delete', 'revoke' subcommands from the 'submitrequest' command + - Remove '--seperate-requests' option from the 'submitrequest' command + - Remove '--raw' option from the 'develproject' command + - Remove '--maintained' option from the 'search' command + - Remove 'deleteprj' command + - Remove 'deletepac' command + - Remove 'editmeta' command + - Remove 'results_meta' command + - Remove 'rlog' command + - Remove 'rprjresults' command + - Remove 'rresults' command + - Configuration: + - Add 'project_separator' config option + - Add 'disable_hdrmd5_check' config option to ignore hdrmd5 mismatches + - Remove 'plaintext_passwd' config option + - Library: + - Add Store class that will replace store_{read,write}* functions + - Remove 'GnomeKeyringCredentialsManager' and related code + - Remove Request.get_creator() method + - Replace unmaintained cmdln.py with a custom code based on argparse + - Replace core.findpacs() with Package.from_paths() and Package.from_paths_nofail() + - Drop Python 2 support, Python 3.6 is the lowest supported version + - Code cleanups, following PEP 8 and the latest best practices now + - Improve handling of hdrmd5 mismatches + - Handle uncompressed Debian packages + - Replace arbitrary XML escaping code with xml_escape() + - Fix race condition in using .old directory in Serviceinfo.execute() + - Fix manual run of source service + - Connection: + - Switch http_request() to urllib3 and cryptography (drop M2Crypto dependency) + - Warn when using HTTP connection, make HTTPS the default + - Send HTTP header Accept: application/xml + - Wait between retries + - Authentication: + - Support signature (ssh) auth including ssh-agent forwarding + - Lock cookiejar to prevent unnecessary signature auth by waiting for a session cookie + - Print user and apiurl when prompting for a password + - Fix a crash when deleting a password + - Known issues: + - Commandline option values cannot start with '-', for example: osc build -x -vim + Background: This is a limitation of underlying Python's argparse + How to fix: Use '=' to join the option with its value: osc build -x=-vim + URL: https://github.com/openSUSE/osc/issues/1227 + - Commandline positional arguments no longer recognize '/' as a universal argument separator + Background: This is an attempt to bring some consistency into argument parsing, reducing number of separators and value combinations + How to fix: Separate / from / with a space + URL: https://github.com/openSUSE/osc/issues/1272 diff --git a/contrib/osc.spec b/contrib/osc.spec index 01f12570..4c14c10f 100644 --- a/contrib/osc.spec +++ b/contrib/osc.spec @@ -31,14 +31,14 @@ %endif Name: osc -Version: 1.0.0~b5 +Version: 1.0.0 Release: 0 Summary: Command-line client for the Open Build Service License: GPL-2.0-or-later Group: Development/Tools/Other URL: https://github.com/openSUSE/osc -Source: %{name}-%{version}.tar.gz +Source: https://github.com/openSUSE/osc/archive/refs/tags/%{version}.tar.gz#/%{name}-%{version}.tar.gz %if 0%{?debian} Source1: debian.dirs diff --git a/osc/__init__.py b/osc/__init__.py index 012f45ab..34401498 100644 --- a/osc/__init__.py +++ b/osc/__init__.py @@ -13,7 +13,7 @@ __all__ = [ from .util import git_version -__version__ = git_version.get_version('1.0.0~b5') +__version__ = git_version.get_version('1.0.0') # vim: sw=4 et