# changelog

author: Silvie Chlupova <schlupov@redhat.com> 1.153-1
changelog:
  - less aggressive final_prunerepo setting
  - analyze-results: dump data for projects' chroots
  - basic build tagging
  - better "regenerate repo" instructions
  - limit RubyGems and PyPI package names length
  - Disable coverage analysis during RPM build
  - python code for removing unused tarballs on dist-git server


author: Pavel Raiskup <praiskup@redhat.com> 1.154-1
changelog:
  - copr_fix_gpg: automatically refresh CDN cache
  - copr_fix_gpg: don't use --skip-stat for copr-repo when RPMs are re-signed
  - action processor: properly return failures of the fork action
  - sign EL8+ with sha256 hash algorithm
  - copr_fix_gpg: add a new --chroot option
  - copr_fix_gpg: skip non-chroot directories
  - add hitcounter script for AWS CDN
  - backend: tasks in concurrent sandboxes reprioritized to be more fair


author: Jakub Kadlcik <frostyx@email.cz> 1.156-1
changelog:
  - Consolidate the two hitcounter scripts
  - Dump Resalloc ticket ID and hostname to backend.log
  - Automatically restart services in %post
  - Don't count RPMs downloaded from Mock
  - Attempt to sign multiple times
  - Try multiple attempts of creating GPG keys


author: Pavel Raiskup <praiskup@redhat.com> 1.159-1
changelog:
  - count only hits from an appropriate CDN hostname
  - add option for infinite number of attempts to the hitcounter script
  - print more reasonable output from AWS hitcounter script


author: Jakub Kadlcik <frostyx@email.cz> 1.160-1
changelog:
  - aws-hitcounter: remove temporary files as soon as possible
  - aws-hitcounter: ignore downloaded SRPM files
  - aws-hitcounter: decode special characters from URLs


author: Jakub Kadlcik <frostyx@email.cz> 1.162-1
changelog:
  - use OpenPGP v4 signatures
  - migrate from pipes to shlex
  - require redis.service to be started
  - move to GitHub home page
  - add resultdir cleaner
  - move dispatcher and background workers to copr-common
  - de-prio IO for the analyze-results script
  - don't traceback when there are no files in the S3 storage
  - allow devel instance to remove access files
  - send non-CDN hitcounter hits in chunks
  - copr-backend-unknown-resalloc-tickets script
  - work with multiple CDN hostnames per instance
  - move setup_script_logger to copr-common


author: Silvie Chlupova <schlupov@redhat.com> 0.54.2.dev-1
changelog:
  - Fixup ACR handling
  - Always set 'requests.get()' timeout
  - Drop ANSI escape sequences from logs again
  - Install fedora-review-plugin-java


author: Silvie Chlupova <schlupov@redhat.com> 0.55.2-1
changelog:
  - don't depend on autospec in EL9
  - use config file in *-cancel and *-log scripts
  - better PID for copr-rpmbuild-log
  - keep the required common version on one place


author: Pavel Raiskup <praiskup@redhat.com> 0.56-1
changelog:
  - copr-distgit-client: document the configuration for the dist-git subpackage
  - copr-distgit-client: add the centos-stream configuration
  - copr-distgit-client: new --forked-from option that allows builds from (any) forks
  - rpmbuild: support for remote refs in committish (PR#2049 and PR#2081)


author: Jakub Kadlcik <frostyx@email.cz> 0.58-1
changelog:
  - Fix make_srpm with new git
  - Define copr-specific macros also for SRPM builds
  - SCM method to clone recursively


author: Jakub Kadlcik <frostyx@email.cz> 0.59-1
changelog:
  - Add support for pyp2spec generator
  - Define copr-specific macros for make_srpm method
  - Define copr-specific macros for custom builds
  - Determine SRPM builds by having source_type
  - Undefine %dist for SRPM builds
  - Build SRPM from DistGit even with missing sources
  - Drop an unused extract_srpm method


author: Jakub Kadlcik <frostyx@email.cz> 0.62-1
changelog:
  - migrate from pipes to shlex
  - move to GitHub home page
  - use repos from task for custom method
  - switch to template for custom method
  - strip trailing / from clone url


author: Pavel Raiskup <praiskup@redhat.com> 1.95-1
changelog:
  - add parameters for disabling appstream generation
  - let exceptions flow to the main function
  - generate webhook secrets using APIv3


author: Silvie Chlupova 1.96-1
changelog:
  - frontend: speedup for listing builds via APIv3
  - cli: print JSON list continuously, not at once when all items are fetched
  - cli: add regenerate-repos command


author: Silvie Chlupova <schlupov@redhat.com> 1.98-1
changelog:
  - don't traceback for missing field in frontend's output
  - paginate packages list in APIv3
  - fix exit code when a build is canceled
  - api monitor page to contain pkg_version


author: Pavel Raiskup <praiskup@redhat.com> 1.99-1
changelog:
  - add 'edit-chroot --reset' option
  - add 'edit-chroot --rpmbuild-with{,out}'
  - add 'edit-chroot --modules' option


author: Pavel Raiskup <praiskup@redhat.com> 1.100-1
changelog:
  - list-package-names now uses pagination
  - ensure that (error/info) logging is printed even without --debug
  - support for GSSAPI authentication added
  - re-try 3x the connection to Frontend upon failures


author: Jakub Kadlcik <frostyx@email.cz> 1.102-1
changelog:
  - Add support for pyp2spec generator
  - Fix the --debug test on EL7
  - Simplify cli configuration
  - Make requests-gssapi an opt-in dep in PyPI
  - Sync 'copr build' with other 'copr build*' methods
  - De-duplicate printing builds, and waiting
  - De-duplicate logic for taking dirname from arg
  - Simplify and fix progress bar
  - Add API support for runtime_dependencies
  - Print the URL of created project


author: Jakub Kadlcik <frostyx@email.cz> 0.50-1
changelog:
  - dist-git: optimize cgit cache file generator
  - dist-git: move everything to Python path
  - backend, frontend, keygen, distgit: keep cca 3 months of logs


author: Pavel Raiskup <praiskup@redhat.com> 0.51-1
changelog:
  - add a --foreground option for importer_runner.py
  - install debugging helpers for indefinite imports (rhbz#1963954)


author: Jakub Kadlcik <frostyx@email.cz> 0.58-1
changelog:
  - require redis.service to be started
  - move to GitHub home page
  - fair processing of task from multiple sandboxes
  - use dispatcher and background workers


author: Silvie Chlupova <schlupov@redhat.com> 1.183-1
changelog:
  - ACR toggle - handle NO_VALUE specially too
  - Fixup ACR handling
  - "Rebuild All" form to respect chroot denylist
  - "rebuild all packages" from successful builds
  - Large project modification timeout fix
  - Homepage redesign
  - Speedup BuildChroot removals
  - Add BuildChroot(s) to Build ASAP if package is known
  - APIv3 /monitor route
  - Single before_request hook
  - Checkpoint measurement helpers
  - Assure error_handler error is 500
  - Handle CoprDir.get_by_copr consistently
  - Search by attributes using the input value
  - Print searched string with attributes
  - Add dropdown with hints for searching
  - Support searching by attributes and improve searching overall
  - Openid,login by email: guide user, don't do infinite loop
  - Conscious language (group blacklist -> denylist)
  - Conscious language (chroot blacklist -> denylist)
  - Change prompt from $ to #> in Quick Enable box
  - Accept admin permissions for Copr build
  - Explain what fedora-review project is


author: Silvie Chlupova <schlupov@redhat.com> 1.184-1
changelog:
  - sort chroot-histogram graphs by number of builds
  - use dist-git method for builds by default
  - fix size of graphs on status page
  - limit max number of packages per request
  - paginate packages list in APIv3
  - don't query all packages when empty list is specified
  - webhook rebuilds are background jobs now
  - re-enabled chroots should reset final_prunerepo_done
  - fix import order reported by pylint
  - print human-readable validation errors in APIv3
  - basic build tagging
  - use new Fedora chroot icon
  - use official EPEL log for chroot icon
  - PyLint fixes for create_db.py
  - fix ./run_tests.sh script for coverage args
  - don't insert+commit in create_after event
  - build PyPI only for python3 by default
  - describe advanced searching possibilities
  - limit RubyGems and PyPI package names length
  - Disable coverage analysis during RPM build
  - 2029379 - workaround GitHub caching proxy
  - drop duplicit "group" table join
  - add "My Projects" button to the homepage
  - api monitor page to contain pkg_version


author: Pavel Raiskup <praiskup@redhat.com> 1.185-1
changelog:
  - added support for resetting fields in chroots over the API
  - get-chroot - return modules as a list
  - add a link to comps.xml documentation into the chroot edit form
  - user-friendly error for devel stack(s) when there is a database problem
  - optimize the SQL for the /pending/ routes a bit
  - a new route /pending/all/ giving a rough stats
  - cache the number of currently processed batches to speedup the overall web-UI
  - speed-up the models.Batch related routes
  - don't use redis as a middleman when updating hitcounter stats
  - use standard backend auth for updating stats
  - hitcounter: don't return 201 when there is an exception
  - add API routes for editing module list in chroot


author: Pavel Raiskup <praiskup@redhat.com> 1.186-1
changelog:
  - support for api_3 gssapi login
  - the /pending-jobs/ is now a streamed page
  - a bit more optimized /pending-jobs/ route
  - web-UI: make sure that background builds are more visible
  - build "is_background" info in the api_3 calls
  - indicate low priority builds in status overview


author: Jakub Kadlcik <frostyx@email.cz> 1.187-1
changelog:
  - Start logging important events
  - Change logging formatter to show also flask.g.user
  - APIv3 support for chroot_denylist
  - Restrict the CoprDir names to <copr>:custom:<suffix>
  - Don't require trailing slash in APIv3 /package/list
  - Don't hide CoprDir buttons in Builds web-ui
  - New command 'copr-frontend chroots-template'
  - More understandable Pagure badges
  - Detect ClientDisconnected errors


author: Jakub Kadlcik <frostyx@email.cz> 1.188-1
changelog:
  - Add support for pyp2spec generator
  - Add API support for runtime_dependencies
  - Runtime_dependencies may be separated by a newline
  - Pagure-events: don't submit builds for disabled projects


author: Jiri Kyjovsky <j1.kyjovsky@gmail.com> 1.189-1
changelog:
  - check packit_forge_project option in build_options for builds
  - add packit_forge_projects_allowed for Copr projects
  - remove leading and trailing whitespace from StringField


author: Jakub Kadlcik <frostyx@email.cz> 1.191-1
changelog:
  - show timeout in the build detail page
  - disable Edit button in the project settings when chroot unchecked
  - fix FTBFS issues for F37/Rawhide
  - match OS logos by their OS family
  - show the batch ID (if assigned) in the build detail
  - add link to /user/repositories/ on the user detail page
  - stg frontend instance should link to stg FAS instance
  - add page for exploring projects
  - remove APIv2 code


author: Jakub Kadlcik <frostyx@email.cz> 1.192-1
changelog:
  - allow arbitrary creation of :pr:<ID> directories
  - custom repositories with custom webhook
  - move to GitHub home page
  - use shlex.quote instead of pipes.quote
  - add route for a new distgit dispatcher
  - expand repos for custom SRPM
  - process external repos for custom build
  - support LDAP groups for Kerberos users
  - add version to the bitbucket webhook tag name
  - loosen the rules of package matching in webhook tags
  - add optional argument pkg_name to webhooks API
  - no delay after large SRPM upload
  - name the import log "import.log" in web-UI
  - show import log to everyone, not just admin
  - log webhook calls
  - cache the queue sizes for one minute
  - log manage.py commands


author: Jakub Kadlcik <frostyx@email.cz> 1.84-1
changelog:
  - Remove redundant error handler
  - Log IP address of the backend that originated a request
  - Remove redundant loggers


author: Silvie Chlupova <schlupov@redhat.com> 1.115-1
changelog:
  - don't BuildRequires pyproject-rpm-macros directly
  - fix exception caused by default msg value
  - raise user-friendly exception when on request timeout
  - print human-readable validation errors in APIv3
  - remove macros that reference old Fedoras and EL6 and instroduce EL9


author: Pavel Raiskup <praiskup@redhat.com> 1.117-1
changelog:
  - support for GSSAPI added (gssapi=true config option)
  - better error message when authentication fails
  - add a connection_attempts, retries connection to Frontend upon failure


author: Jakub Kadlcik <frostyx@email.cz> 1.121-1
changelog:
  - Add support for pyp2spec generator
  - Make requests-gssapi an opt-in dep in PyPI
  - Return the correct message when all request attempts fail
  - Add API support for runtime_dependencies
  - The auth_username() needs to trigger authentication


author: Jakub Kadlcik <frostyx@email.cz> 1.124-1
changelog:
  - move to GitHub home page
  - add external repos for custom build
  - don't play with sessions if using ApiToken


author: Jakub Kadlcik <frostyx@email.cz> - 0.16.2.dev-1
changelog:
  - Add background_worker.py from backend
  - Add get_redis_connection function
  - Add Dispatcher, WorkerManager, and QueueTask classes
  - Add WorkerLimit, PredicateWorkerLimit, and GroupWorkerLimit classes


author: Jakub Kadlcik <frostyx@email.cz> 0.17-1
changelog:
  - move to GitHub home page
  - logging shouldn't affect stdout
  - move dispatcher and background workers to copr-common
  - scripts should log also timestamps etc when logging into file
  - move setup_script_logger to copr-common


