CHANGES
=======

0.5.0
-----

* Save src.rpm when build fails
* Support to build in Fedora Copr
* Compute version from spec when project is openstack/rpm-packaging
* Ensure the short hash is always 7 chars long in build_rpm.sh

0.4.0
-----

* Expose promotion info in DLRN API
* Show error on command-line for unknown options
* Notify user when no commits are going to be built
* Store promotion history in database
* Complete Python 3 support
* Revert "Require rdopkg >= 0.44.2"

0.3.0
-----

* Learn DLRN to handle prereleases
* Fix README typo
* Add info about NVR
* add a git bisect helper
* Require rdopkg >= 0.44.2
* Set a pool_recycle value when creating the database connection
* Use better method to get UPSTREAM_PROJECT_NAME
* Excluding rdopkg-0.44.0 from versions
* Use the distribution-provided GPG keys for CentOS
* [Doc] Install openssl-devel, libffi-devel
* Improve compatibility with Mock 1.4.1
* Improve error handling when refreshing git repos
* Explicitly close db sessions in DLRN API calls
* Fix code block rendering in CONTRIBUTING.rst
* Avoid creating invalid symlinks in the repo-promote API call
* Use multiple processes for git clone
* Fix run_tests.sh when using Upstream-Id in change
* Temporarily set openstack-packstack as the default package to build
* Make sure the mock output dir gets a proper SELinux context
* Support distgits with spec in subdirectories in rdoinfo driver

0.2.0
-----

* Revert "Add spectool call in build_rpm.sh"
* Be resilient to no upstream property for packages
* Create a switch to prevent fallback to master/rpm-master branches
* Use the lock when importing remote commits only when needed
* Add spectool call in build_rpm.sh
* Allow usage of the upstream_version() to specify a real version
* Create dynamic report.html with drill-down features
* Show error if delorean-deps.repo/delorean.repo files are missing
* Create static web page with commits in the build queue
* Remove babel support from DLRN
* Update references to git repo and Gerrit
* Resolving confusion about project name
* Dynamic web page to see CI Votes in DLRN API
* Use VIRTUALENV_NO_DOWNLOAD for unupgrading pip
* Archive the current directory without symlinks in test scripts
* Delay upstream URL detection in gitrepo driver
* Remove oslo.config from requirements

0.1.0
-----

* fallback to increment version from the previous tag
* support kernel in scripts/build_rpm.sh
* Allow to only build commits associated with tags
* Allow several base URLs for projects in the gitrepo driver
* Create commit.yaml file in process_build_result
* Remove pycparser pin
* More fixes in version detection logic in the gitrepo driver
* Change .gitreview to use softwarefactory-project.io
* Replace -%{version} with -%{upstream_version} in gitrepo driver
* Fix the version detection logic in the gitrepo driver
* Add DB migration script
* Add support for rubygem based projects
* When promoting a repo, remove symlink if it already exists
* Add documentation on the DLRN internals
* Add functionality to import commits built by another instance
* Expand MariaDB support documentation
* API adjustments
* Fix version and tarball generation for Puppet OpenStack modules
* Revert "Use python setup.py --version for Puppet modules with PBR support"
* Use python setup.py --version for Puppet modules with PBR support
* Avoid Sphinx 1.5 option
* Workaround DLRN Pike builds until Pike deps repo is ready
* Increase unit test coverage
* Increase tests coverage
* Add missing pipe in run_project_tests.sh
* Set proper down revision for DLRN API alembic migration
* Enforce priorities in mock configuration
* Initial DLRN API
* Use rdopkg findpkg to map project names in tests
* Handle git errors in source repos gracefully
* Improve documentation for --local usage
* Make DB connection string configurable, add MariaDB support
* Set timeout when opening reviews
* CLI: make --config-file projects.ini the default
* Support Commit comparison in python3
* Remove fix for tripleo/+bug/1351491
* Fix CONTRIBUTING open changes url
* Pin sh back to >= 1.12.6
* Properly get last processed commit in post_build
* Remove unused functionality, deprecate "delorean" as a script
* Fix compute order for spec files with multiple Name: lines
* Expand description of the current and consistent repos
* make rpmspecfile.py python3 compatible
* Support upstream_version macro in gitrepo driver
* Use openstack-macro instead of rdo-rpm-macro
* Pin python-sh version to 1.11.0
* Be more strict on which Git branches allow fallback to master/rpm-master
* Make DB handling thread-safe
* Enable packaging for a feature branch in TripleO CI
* Fix local repo usage for parallel builds
* Move repo handling functions to its own module
* Move rsync function to another module
* Move notification-related functions to separate module
* Move functions from shell to utils
* Move build-related functions to a separate module
* Support puppet projects in map-distgit-name
* Fix --run execution
* Return the exit code of the worst commit build result
* Allow to test a packaging fix for an upcoming upstream change
* Pin pycparser to 2.14
* Fix repo_bootstrap macro passing to mock
* Support Source: lines in specs just like Source0:
* Use distgit branch in gitrepo driver
* Use Epoch in renderspec when called from gitrepo driver
* Translate pypi names into OpenStack names using pymod2pkg
* Fix TARNAME for puppet projects
* Add logic in run_tests.sh for *-rdo branches
* Define dlrn macro in specs when building
* Use --use-public instead of --dev for run_project_tests.sh
* Make session a local variable
* Make 'packages' a local variable
* Make config_options a local variable for main()
* Do not make 'options' variable global
* Only pass head_only option to genreports
* Do not use global config_options in drivers
* Use boolean value for use_version_from_spec
* Allow setting the Gerrit topic on reviews
* sub-packages be added to the dict
* Revert "Revert "Enable yum priorities plugin for mock builds""
* Revert "Enable yum priorities plugin for mock builds"
* Enable yum priorities plugin for mock builds
* Use dlrn-1.cfg on mock scrub call in run_project_tests.sh
* Fallback to rpm-master when branch is *-rdo
* Add renderspec to requirements.txt
* Only run post_build() when the build was successful
* Properly add local repo, if available, to mock configuration
* Parallel mock builds in DLRN
* retry on Temporary failure in name resolution
* Handle the case where a source branch is changed
* Allow building multiple packages with --package-name and --project-name
* Add run_project_tests.sh script to test upstream commits
* Get TARBALL properly in build_rpm.sh
* Add --verbose-mock to display rpmbuild.log output during build
* Manage versions with a tilde in the gitrepo driver
* Add option in gitrepo driver to determine source branch from spec
* Add option to show verbose mock output on console
* rsync all files/dirs in a single command
* Check create log dir before log file
* Fix docs typo
* Use zuul-cloner in tests to clone rdoinfo, if available
* Add timestamp to log output
* Purge: only check for rpm in directory if there are rpms in commit
* Add option to purge command to exclude RPMs from certain dirs
* Set up newly cloned repos even with --local
* Add the --project-name command line option
* return 2 when a RETRY has been detected
* Fix --local mode to use what has been checked out
* Fix error when data dir doesn't exist and nothing is built
* display which git branch is being processed
* Remove .git when generating tarball name if present
* Trim spec files after %changelog when building
* Add Alembic support
* oslosphinx not oslo.sphinx
* Support tags in Git repos, not only branches
* Do not reset repo when using --dev and gitrepo driver
* Remove unneeded DLRN_DEV and REPO_BOOTSTRAP env vars
* Fix versions.csv creation when a commit has no rpms
* Add package NVR to versions.csv
* Move to fedora 24
* Fix submit_review arguments
* Ignore errors in purge for rmtree commands
* When purging, always provide info on what is being removed
* Fix repo handling when local=True
* Fix "cleanning" typo in message
* Follow-up on purge patch
* Detect and fix cases where Git URL changed
* Add current symlink to the rsync list
* Add the consistent symlink to the rsync list
* Fix env var for bootstrap
* Set rdoinfo as default driver if not set in projects.ini
* Add option to gitrepo driver to allow skipping directories
* Do not process the same commit twice if name changed
* Update documentation for new projects.ini options
* Move repo handling to plugins, add git repo plugin
* Use createrepo_c when installed
* Rename delorean commands to dlrn in scripts
* Update section on serving status reports
* Add missing dependencies to README documentation
* Make package info retrieval be plugin-based
* Improve regexp for [test-]requirements.txt sed
* Update docs to add up-to-date pip requirement
* Fix maxretries handling after config simplification
* Simplify config file handling
* DLRN Logo
* Fix mock file generation after build_rpm_wrapper.sh removal
* Remove build_rpm_opm.sh
* Take build_opm_wrapper.sh logic into shell.py
* Resolve unit test issues
* Support virtual packages
* Fix variable comparison when running in dev mode
* Add package name and commit hash to "installed" file
* Fix rsync after build
* DLRN has been migrated!
* scripts/run_tests.sh: do not run tox tests with zuul
* Support rsyncing generated repo to remote server
* Add a purge command
* Add Failure to get mirror list to known errors
* Generate semver compliant RPM Version for pre-releases
* Fixed Documentation of DLRN
* Update CONTRIBUTING.rst
* build_rpm.sh: deduce the right tarball names for puppet packages
* Rename delorean to dlrn in the DLRN codebase
* add the --run and --stop options
* build_rpm.sh: fix building tar ball for puppet repos carrying setup.py
* scripts/build_rpm.sh: fix tar ball name for non python projects
* scripts/build_rpm.sh: initial code to handle non python packages
* More strict mapping with project name
* scripts/run_tests.sh: fix last call to map-project-name
* allow to change the URL for rdoinfo.git in run_tests.sh
* Create spec variable to break dependency loop
* Allow to create a gerrit review in case of failure
* projects.ini: make the default centos7
* Add link to online documentation
* add a last success timestamp field to versions.csv
* Use jinja2 template engine for report generation
* Clean up mock cache after running a CI job
* Make the tar ball uniq
* Added --version flag for delorean package
* Add documentation around what each delorean repository is
* Remove oslo.sphinx from docs, add tox -e docs
* Make sure CI tests use tags when needed
* Reporting: extract reporting code in its own module
* Follow up on --recheck patch
* Update the notifaction email sent when a build fails
* rework the --order option to detect cycles
* Use fedora guidlines for pre-release packages
* Add scripts/ directory to setup.cfg
* Add compatibility with earlier versions of sh
* implement --recheck and --status options
* Add Zuul support in run_tests.sh
* Create mock config file in a writable directory
* Only run tests when testing delorean itself
* retry on "Device or resource busy" messages
* do not set the consistent link if one package is in the RETRY state
* use rdoinfo tags
* remove -q to mock commands to allow debugging
* Drop fedora in delorean-ci
* Set the current Fedora version to f23
* Only try to edit setup.cfg if it's there
* Use consistent instead of coherent
* Add cleanup_sdist function
* manage a coherent symlink when all the packages build
* add no route to host to the retry regexp
* Add getCommits to db module
* Save version information into generated repositories
* Add function to get the last processed commit
* Add base test class with sample data
* Move table and db connection code into db.py
* Fixed IO error for ./data/repos/style.css
* Read the opm version/release from git tags
* Allow OPM builds from any branch
* Use run_tests.sh to build the main projects
* Add Troubleshooting section
* Remove comparing to Fedora Rawhide
* Versioning test case without tags
* Do not use mock --copyin
* Cleanup and reinitialize chroot for every build
* Use correct source branch for rpm-master
* Bump default baseurl from f21 to f22
* Test, build and publish packages for the right distro and branch
* OPM is now semver-ish like the rest of the family
* git-hg was replaced by git-remote-hg
* Run all setuptools commands inside the chroot
* Fix doc regarding bootstrapping a Delorean repo
* Use full path for mock command
* Compute the build order according to the Buildrequires from the spec files
* Use mock instead of a custom docker machinery to build packages
* Make rcX part of the release
* Move Version/Release calculation into a function
* Fallback to master branch
* Change ignore-errors to ignore_errors
* Workaround to install rdo-rpm-macros and python-pbr
* Use basedir with .repo file to fetch dependencies
* Add yet another network error to the list
* Add dnf transient network error
* Fix commits in RETRY status in status_report.html
* Return false for known errors if log does not yet exist
* Remove commits in RETRY status from report.html
* Update version of python-pbr used by Delorean
* Switch Fedora builder to Fedora 22
* Add retry status for transient build errors
* Process simultaneous commits in the right order
* Better status report
* Fix the openstack-puppet-modules version
* Change the version special case for alembic
* Disable source repos when running yum-builddep
* Switch to https
* Adding delorean generated files in .gitignore
* Document sudo requirement
* Adjust requirement on PBR
* Bump opm version to 2015.2
* Use with statement to open/process safely files
* Also install python3-pbr
* Install recent pbr into container
* Use build time when generating report
* Store project_info when sending an e-mail
* Only apply pbr fix if files exist
* Update workaround for pbr >= 0.11
* Update workaround for pbr >= 0.11
* Switch default distro to rpm-master
* Fix tarball generation for modules requiring pbr > 0.11
* Add Kilo support in run_tests for CI
* Add "flag" to each db commit record
* Improve CentOS 7 dockerfiles
* Improve Fedora 21 dockerfiles
* HTML Reports improvements
* Increase scope of chmod
* Add example script to run delorean on a server
* Remove "/repos" from notify email
* Select packages to use from most recent build
* Archive logs on error
* Save the distro commit and build time
* Install latest build tools updates from RDO repo
* Add command to compare mutiple delorean repos
* Add an option to use public delorean repo for dependencies
* Rename distros to distro parameter in projects.ini
* Use trunk.rdoproject.org instead of IP addresses
* Add an option to log the commands run by delorean
* rdo-release-kilo is ready
* Add reponame configuration
* fix project to package name mapping for glance_store
* Use mapped project name in path to spec file
* Fixup combined puppet modules tarball
* Build OPM from either collection repo or separate module repos
* Fix release version for packages without dev versions
* Remove dns entry for trunk.rdoproject.org
* Add centos package building to ci
* Add support for patches to packaging
* Fix hard-coded master branch
* Use rdopkg to manage rdoinfo repo
* Remove broken repositories with sudo
* Make branches configurable on a per-package basis
* Remove "repos" from the repository URL
* Build Fedora packages in F21
* Remove testpatches
* Changes name of the docker instance to builder-"target"
* CentOS 7 has epel-release
* trunk.rdoproject.org DNS record is now active
* Use Dockerfiles to build images
* Add simple test script
* Exit 1 if we encountered an error
* Always clone spec repository is it doesn't exist
* Exclude the data directory pep8 tests
* Only install rdo-release-juno if its not installed
* Fix error message to use datadir config option instead of './data'
* Support for rhel as a builder
* Add unit tests for refreshrepo method in shell.py
* Adds a configuration option for the scripts directory
* Add docker synchronization
* First commit to start working on test coverage
* Fix for Puppet Modules name with an '_' between username and module name
* Add a configuration option to allow for different build targets
* openstack-puppet-modules master is Kilo now!
* Added a cloud-config script as a method to deploy delorean
* Removed hardcoded "f20-master" branch from testpatches function
* Removed the boilerplate links from the top of the README
* Timeout git fetch after one hour
* Delete repository on fetch error
* Fix path to venv activate script
* Adding some basic documentation
* Added path to log files also when installing fails
* Update log levels used
* Correct location to send patches
* Check db for already built commit hashes
* Add --dev option (dev mode)
* Use yum priorities so Delorean RPMs are preferred
* Install gcc in build image
* Set release to 999 for released commits
* Get version for last line output from setup.py
* Install RDO while building packages
* Add .gitreview
* Generate a diff of specs when compared to Rawhide
* Generate report of failing packages
* Throttle project emails
* Trigger a new build on spec changes
* Make use of Commit object
* Install pbr before creating the sdist
* Populate the build log with something if its empty
* Email changes
* Add --head-only and --package-name options
* Add --build-env option
* Fix issue where generated RPMs had root:root perms
* Update testpatches function to use datadir
* Fix use of positional params to build_rpm_opm.sh
* Switch over to using rdoinfo
* Add the python-rfc3986 project
* Include script to build o-p-m
* Add packstack and openstack-puppet-modules
* Clean yum cache when building build image
* Add new python-XStatic-* packages
* Add support to use bypass the repo refresh
* Add python-oslo-vmware
* Adding retrying and osprofiler projects
* Catch error from docker run
* Add python-oslo-utils
* Add info to notes about why build failed
* Fix typo (stray $)
* Remove version workaround for openstack-tripleo
* Checkout $branch before we reset
* Don't follow symlinks to test packages
* Workaround for tripleo project versions
* Workaround for python-alembic version number
* Add more projects
* Remove stray return statement
* Update repository location in README
* Refactor to follow the rdopgk process closer
* Test packages install
* Only add the current repo if it exists
* Add more projects
* Use setup.py get get package versions
* Add git-hg to the list of deps
* Add more projects
* Increase sleep
* Add info about dependencies
* Add support for a single multi spec repo
* Adding os-*-config projects
* Add more projects
* Install the most current repo inside the build container
* Use relative symlinks
* Generate report after processing each commit
* Remove unused import
* Report human readable commit time
* pep8 changes
* Order report by newest first
* Save state in db
* Monitor the correct branch
* Update README.rst
* Add a little info to the README
* Add more supported projects
* More generic build script
* Add wrapper script around build_rpm
* Initial commit
