# changelog

author: Tomas Hrnciar <thrnciar@redhat.com> 1.131-1
changelog:
  - put build-ID.log file to resultdir
  - call call_copr_repo if initial createrepo failed
  - Build Dispatcher does not wait forever till repo is created,
    it creates it manually
  - properly delete logs for old builds
  - delete build-ID.log files again
  - edit repositories only by new 'copr-repo' tool
  - fix multi-build delete
  - fix for not saving end time of actions
  - lower traffic in build_dispatcher log
  - more resilient redis logging
  - attempt to publish on msgbus N-times
  - log service: move RequiredBy to [Install]
  - keep worker ID in proc title


author: Pavel Raiskup <praiskup@redhat.com> 1.132-1
changelog:
  - better handle invalid options in copr-repo --add/--delete
  - copr-repo: optimize-out useless createrepo_c runs
  - move initial createrepo check from dispatcher to worker
  - don't send messages on bus N-times
  - /bin/copr-repo now respects .disable-appstream files
  - drop unused build_deleting_without_createrepo option


author: Pavel Raiskup <praiskup@redhat.com> 1.133-1
changelog:
  - better build task priority processing
  - dump attempt to send message to backend.log
  - drop the VMM concept, replaced with resalloc
  - delegate more work to the builder code
  - external blob tarball for unittests
  - buggy error handler in pkg_name_evr()
  - basic build task priority
  - the reschedule-all builds idiom removed
  - fix the build cancelation
  - drop duplicate BuildRequire on python-requests
  - require the newest version of copr-common
  - minimalize the transfered amount of information about actions from FE
  - process actions in regard to their priority
  - move backend's code to standard PYTHONPATH
  - move ActionResult to copr_common.enums
  - actions/builds use the same WorkerManager logic
  - more verbose rawhide to release action processing


author: Pavel Raiskup <praiskup@redhat.com> 1.134-1
changelog:
  - fix copr-repo to work with absolute paths
  - automatically batch the createrepo requests
  - scheduler is now fair, and ordered
  - indefinitely retry workers' talk to frontend
  - allow canceling also "starting" builds
  - more verbose delete action in logs
  - cleanup the example configuration
  - use FileHandler for backend.log, fixes traceback


author: Jakub Kadlcik <frostyx@email.cz> 1.137-1
changelog:
  - backend: test action for deleting chroot
  - backend: fix testsuite for the new createrepo_c
  - frontend: don't set ended_on for canceled builds
  - all: run pytest with -vv in package build
  - common, cli, python, rpmbuild, frontend, backend: DistGit source method
  - backend: use createrepo_mod tool for generating module repodata


author: Pavel Raiskup <praiskup@redhat.com> 1.138-1
changelog:
  - get back to using standard createrepo_c command from createrepo_mod
  - drop call to stomp's conn.start() (it was dropped)


author: Pavel Raiskup <praiskup@redhat.com> 0.37-1
changelog:
  - add tests that we properly cleanup tmp directories
  - mock 2.0: config s/use_bootstrap_container/use_bootstrap/
  - mock 2.0: disable bootstrap chroot for make_srpm method
  - put complete set of mock configs to resultdir, in tarball
  - mock 2.0: use dnf.conf/yum.conf automatically
  - make sure builders have the latest libsolv


author: Pavel Raiskup <praiskup@redhat.com> 0.38-1
changelog:
  - do not scrub mock caches, to re-use dnf/yum caches
  - scrub chroot and bootstrap chroot when build is done
  - invent /etc/copr-rpmbuild/mock-config-overrides config dir
  - print human friendly error for nonexisting subdirectory
  - less verbose error output


author: Pavel Raiskup <praiskup@redhat.com> 0.39-1
changelog:
  - more work delegate to builder scripts from backend
  - don't delete the "old" .rpmnew files
  - fix macro in comment (rpmlint)


author: Jakub Kadlcik <frostyx@email.cz> 0.40.2.dev-1
changelog:
  - rpmbuild: fix chroot_scan copying
  - rpmbuild: fix mock --buildsrpm option
  - rpmbuild: set Vendor metadata for builds
  - rpmbuild: use mock --srpmbuild for spec file uploads
  - frontend, cli, python, rpmbuild: better bootstrap config
  - beaker-tests, cli, frontend, python, rpmbuild: add option to config bootstrap
  - all: run pytest with -vv in package build
  - rpmbuild: disable source fetch for the dist-git method
  - rpmbuild: catch FileNotFound on el6 correctly
  - rpmbuild: drop SourceType and rely on BuildSourceEnum
  - common, cli, python, rpmbuild, frontend, backend: DistGit source method
  - rpmbuild: fix Provider class design
  - rpmbuild: inform about testsuite coverage


author: Pavel Raiskup <praiskup@redhat.com> 0.42-1
changelog:
  - require podman on all builders
  - move the whole copr-distgit-client below copr-builder
  - git module name to define the lookaside download url


author: Pavel Raiskup <praiskup@redhat.com> 0.44-1
changelog:
  - don't override isolation config by default
  - require appropriate common version
  - repeatedly send requests to frontend until they succeed


author: Pavel Raiskup <praiskup@redhat.com> 1.82-1
changelog:
  - manpage: update API token url
  - support multilib projects
  - fix traceback when lost connection during copr-cli build
  - adding cheat for copr


author: Pavel Raiskup <praiskup@redhat.com> 1.83-1
changelog:
  - added module_hotfixes support
  - nicer mock-config (build config) api output
  - mock-config un-deprecated


author: Tomas Hrnciar <thrnciar@redhat.com> 1.84-1
changelog:
  - Don't spam when downloading build
  - fix chroot-list command to work on both python2 and python3
  - add command to list all available chroots


author: Pavel Raiskup <praiskup@redhat.com> 1.85-1
changelog:
  - new 'copr-cli build-module --distgit DISTGIT' option
  - make build-package honor the --background flag


author: Pavel Raiskup <praiskup@redhat.com> 1.86-1
changelog:
  - add script to list package build order in copr or koji
  - fix `copr mock-config` to use `dnf.conf/yum.conf` automatically


author: Pavel Raiskup <praiskup@redhat.com> 1.88-1
changelog:
  - add command to list all builds of a project
  - more effective query of packages with their latest builds
  - point docs to the correct Fedora Copr instances


author: Pavel Raiskup <praiskup@redhat.com> 1.89-1
changelog:
  - copr get-package supports with_latest* args again
  - testsuite fixes for el6
  - useful error message when new client runs against old frontend


author: Jakub Kadlcik <frostyx@email.cz> 1.90-1
changelog:
  - cli, frontend: custom build batches
  - cli: propagate build --bootstrap value to API call
  - cli: move the build --bootstrap option to a correct parser
  - frontend, cli, python, rpmbuild: better bootstrap config
  - beaker-tests, cli, frontend, python, rpmbuild: add option to config bootstrap
  - all: run pytest with -vv in package build
  - cli: fix timeout option to allow change timeout for build
  - cli: fix dist-git unit tests
  - common, cli, python, rpmbuild, frontend, backend: DistGit source method
  - cli: support project/chroot format for getting/editting chroots
  - cli: do bash-completion when argcomplete is installed
  - cli: formally deprecate --memory option


author: Miroslav Suchý <msuchy@redhat.com> 0.44-1
changelog:
  - add python3-copr Recommends:
  - one-shot script script to remove data for already deleted coprs
  - allow blacklisting packages from chroots


author: Pavel Raiskup <praiskup@redhat.com> 0.46-1
changelog:
  - add offline argument to upload method, to fix RPM import
  - add script to clear lookaside cache of old sources


author: Pavel Raiskup <praiskup@redhat.com> 0.47-1
changelog:
  - new releases done with tito again
  - avoid making more than the predetermined number of workers
  - require logrotate service


author: Jakub Kadlcik <frostyx@email.cz> 0.48-1
changelog:
  - distgit: extend the timeout limit for importing packages
  - distgit: allow `import_package` function to run in parallel
  - distgit: require up2date python3-rpkg
  - distgit: use kojiprofile instead of deprecated kojiconfig
  - all: run pytest with -vv in package build
  - distgit: each log entry to contain PID
  - all: add Makefile symlink to sub-dirs
  - pylint: run pylint in all run*tests.sh files


author: Pavel Raiskup <praiskup@redhat.com> 1.162-1
changelog:
  - module enable option for chroot settings
  - delete action fix for incomplete builds
  - custom webhook to accept utf-8 hook data
  - users can now pick against what dist-git to build module
  - fix delete-chroot e-mail notification
  - change panel order in 'Rebuild all packages' page


author: Pavel Raiskup <praiskup@redhat.com> 1.164-1
changelog:
  - rawhide-to-release should create the chroots deactivated
  - new rawhide-to-release --retry-forked option
  - allow repeated run of 'rawhide-to-release'
  - bugfix rawihde to release
  - raise timeout limit for builds to 24h


author: Pavel Raiskup <praiskup@redhat.com> 1.165-1
changelog:
  - enable cov by default in testsute
  - more obvious links to the live logs
  - return a user friendly error when modulemd is not ok
  - basic build task priority implemented
  - droped the reschedule-all builds idiom
  - new build cancel implementation
  - WorkerManager used for builds, too
  - enable deleting multiple builds from cli
  - drop RequestCannotBeExecuted and BuildInProgressException
  - re-assign BuildChroots to re-enabled CoprChroot
  - not finished build_chroots to disallow copr_chroot removal
  - models: link BuildChroot(s) with corresponding CoprChroot(s)
  - fix repo generation for modules with dash in their name
  - added support for project runtime dependencies
  - return user friendly error when build chroot was not found
  - large sync of model with migrations
  - require the newest version of copr-common
  - fix for the new werkzeug in rawhide
  - use flask caching instead of flask cache
  - prioritize initial createrepo action, set lower priority for some actions
  - make ActionsLogic.send_* methods to return the generated action
  - minimalize the transfered amount of action information to BE
  - disable group build delete checkboxes if js is not enabled
  - provide status information for build chroots in APIv3
  - fix application context error for add-user command
  - move some constants to copr.conf so we can tweak them
  - disallow creating modules without any packages
  - don't show builds table when there are none of them
  - fix pagure-events so it submits correct packages


author: Pavel Raiskup <praiskup@redhat.com> 1.166-1
changelog:
  - show _all_ build-delete checkboxes when javascript is on
  - don't submit builds when there are no CoprChroot(s) assigned
  - make pending-jobs faster again
  - allow canceling also "starting" builds
  - don't traceback on invalid cancel requests
  - build.source_status None accepted for old builds
  - don't raise 500 on misconfigured build-time repos
  - print source build.log in starting state


author: Pavel Raiskup <praiskup@redhat.com> 1.167-1
changelog:
  - catch OSError when srpm_storage is full
  - drop the duplicate jquery-ui.min.js reference from html layout
  - move to jQuery 3
  - drop redundant dependency on python3-flask-cache
  - more understandable permissions error messages
  - allow users to upvote or downvote projects
  - more understandable build state descriptions in web UI
  - add new overview tab showing starting builds
  - fix avatars for copr groups
  - validate package name input
  - more effective query of packages with their latest builds
  - return user-friedly error message for non-admin exceptions
  - admins can now create projects for others via API
  - fix up libmodulemd dependency


author: Jakub Kadlcik <frostyx@email.cz> 1.170-1
changelog:
  - frontend: hide buttons in repositories pages for non-admins
  - frontend: fix User.copr_permission relationship
  - frontend: de-dup the rendering html code for repositories
  - frontend: sync flash about EOL repos with the listing indent
  - frontend, python: we cannot order chroots by name
  - frontend: show a warning that user should visit their EOL repositories page
  - frontend: add EOL repositories page for user (in opposite to project)
  - frontend: not access flask.g.user, user parameter instead
  - frontend: put the "running/starting/..." text to breadcrumb
  - frontend: silence cyclic-import warnings
  - cli, frontend: custom build batches
  - frontend: silence warnings from confused PyLint
  - frontend: de-duplicate forms
  - frontend: fix canceling builds
  - frontend: document the attributes related to EOLed chroots
  - frontend: fix APIv3 ordering
  - frontend: test: adding tests for canceling builds
  - frontend: don't set ended_on for canceled builds
  - frontend: don't re-set Build.package value
  - frontend: assign package ASAP with rebuilds
  - frontend: test chroot-edit 403 and form errors
  - frontend: fix-up the CoprChroot form rendering
  - frontend: de-duplicate work with build form
  - frontend: merge two methods which were split needlessly
  - frontend: short-cut the loop in build_config chroot search
  - frontend, cli, python, rpmbuild: better bootstrap config
  - beaker-tests, cli, frontend, python, rpmbuild: add option to config bootstrap
  - frontend: fix the monitor page
  - frontend: exception handlers fix once more
  - Revert "frontend: fix exception tests for F31"
  - frontend: redirect to URLs with trailing slashes
  - all: run pytest with -vv in package build
  - cli: fix timeout option to allow change timeout for build
  - frontend: reduce the timeout to 5 hours
  - frontend: input field for setting timeout for builds
  - frontend: remove setting memory requirements
  - frontend: access chroots more safely to avoid KeyError
  - frontend: don't mark ELN as fedora latest version
  - frontend: use "source build" collocation, not "srpm build"
  - frontend: don't duplicate enums.BuildSourceEnum
  - common, cli, python, rpmbuild, frontend, backend: DistGit source method
  - frontend: nicer message in package name validator
  - frontend: nicer web-UI error message on missing default source method
  - frontend: catch NoPackageSourceException in apiv3 on rebuild
  - frontend: move error handlers to the same file
  - frontend: fix exception tests for F31
  - frontend: improve APIv3 exception handling for better messages
  - frontend: fix custom form errors also for CoprFormFactory and
    CreateModuleForm
  - frontend: make sure user cannot pin projects that he doesn't have permissions
    to
  - frontend: fix PinnedCoprsForm validation
  - frontend: count srpm builds in statistics
  - frontend: allow . and disallow : in package name
  - frontend: allow '+' symbol in package name
  - frontend: enable coverage for ./commands
  - frontend: silence pylint issues
  - frontend: fix testsuite stderr warnings
  - frontend: test branch-fedora command
  - frontend: fix rawhide-to-release to inherit comment
  - frontend: fix forking into an existing project


author: Pavel Raiskup <praiskup@redhat.com> 1.171-1
changelog:
  - re-process killed SRPM tasks
  - backward compat APIv3 build-chroot fix
  - copr homepage/contact empty string converted to None
  - use URL path parameter (if there is such) instead of failing
  - fix custom webhook for binary payload
  - added new mock --isolation option in Copr
  - don't allow prolonging already expired chroots
  - try-except block for github webhook without clone_url
  - deduplicate APIv3 build-chroot parameters
  - don't traceback when the build ID larger than integer
  - allow searching builds by build ID
  - fix email recipient for permissions update


author: Jakub Kadlcik <frostyx@email.cz> 0.5-1
changelog:
  - explicitely requires python3-setuptools
  - all: run pytest with -vv in package build
  - pylint: sync all the pylintrc files
  - pylint: run pylint in all run*tests.sh files


author: Miroslav Suchý <msuchy@redhat.com> 1.12-1
changelog:
  - /usr/bin/env python3 -> /usr/bin/python3
  - static_path -> static_folder
  - fix macro syntax
  - use git_dir_archive instead of git_dir_pack


author: Miroslav Suchý <msuchy@redhat.com> 1.51-1
changelog:
  - do the relabel in %posttrans
  - use git_dir_archive instead of git_dir_pack
  - allow frontend's apache to ioctl uploaded tarballs
  - packaging: Python 2/3, RHEL/Fedora fixes


author: Pavel Raiskup <praiskup@redhat.com> 1.101-1
changelog:
  - allow to pick dist-git instance when building modules
  - fix traceback when wrong url to frontend is specified


author: Pavel Raiskup <praiskup@redhat.com> 1.103-1
changelog:
  - fix APIv3 build deletion
  - warn about deprecated APIv1
  - fix v2 client is_a_group_project usage
  - show obsolete warning on all APIv1 and APIv2 pages
  - more effective query of packages with their latest builds


author: Jakub Kadlcik <frostyx@email.cz> 1.105.3.dev-1
changelog:
  - frontend, python: we cannot order chroots by name
  - python: synchronize the docs for build options
  - frontend, cli, python, rpmbuild: better bootstrap config
  - beaker-tests, cli, frontend, python, rpmbuild: add option to config bootstrap
  - all: run pytest with -vv in package build
  - common, cli, python, rpmbuild, frontend, backend: DistGit source method
  - python: Don't apply bind_proxy in BaseProxy __init__()


author: Jakub Kadlcik <frostyx@email.cz> 0.7-1
changelog:
  - add ActionResult (moved from backend package)
  - add DefaultActionPriorityEnum
  - add ActionPriorityEnum
  - add run_tests.sh script and run pylint in it


author: Jakub Kadlcik <frostyx@email.cz> 0.8.2.dev-1
changelog:
  - common, cli, python, rpmbuild, frontend, backend: DistGit source method
  - common: RHEL6 fix for ModuleStatusEnum


