+---------------------------------------------------------------------------+
| Revive Adserver                                                           |
| https://www.revive-adserver.com                                           |
|                                                                           |
| Copyright: See the COPYRIGHT.txt file.                                    |
| License: GPLv2 or later, see the LICENSE.txt file.                        |
+---------------------------------------------------------------------------+

Release Notes: Revive Adserver 6.0.0-RC1
========================================

These release notes cover what's new, system requirements, download and
installation instructions, known issues and frequently asked questions for
Revive Adserver. Please read these notes before reporting any bugs.


What's New in Revive Adserver 6.0.0-RC1
---------------------------------------

 * Release date: September 17th, 2025


Security Updates
----------------

 * None


New Features
------------

 * Updated the MaxMind GeoIP2 plugin to support the upcoming changes in the
   procedures required to download database updates from MaxMind. In order
   for the automatic updates to continue working, the MaxMind account ID
   needs to be added in the plugin configuration screen.

 * Added new "addMagicMacros" delivery plugin hook.

 * New displayNameLength configuration directive to increase the length of
   campaign and banner names displayed in the zone linking screens.

 * Added loading animation when the next screen is taking some time to load
   and a new UI setting to disable or customise how long to wait before
   displaying the loader (defaults to 250ms).

 * Improved pruning of the data_summary_ad_zone_assoc table.

 * Added new command to delete orphaned images or HTML5 banner folders.
   The command can be executed using the new script/console entry point,
   based on Symfony Console Command component.

 * Added support for writing to a fail2ban compatible log file on unsuccessful
   login attempts.

 * Replaced advertiser and website statistics with a new account statistics
   screen for administrator users.

 * Added new setting to send a "Link" header during delivery when using HTTPS
   and images are hosted on a different hostname then delivery (e.g. CDN), in
   order to speed up ad rendering on a page. Based on the setting, browsers
   will either attempt to pre-connect to the images server, or just perform a
   DNS lookup.

 * Added new "Disable delivery cookies" setting. For more information see:
   https://documentation.revive-adserver.com/display/DOCS/Third+party+cookies

 * Added cookie.adminDomain advanced setting to allow custom configuration in
   case the admin console runs behind a reverse proxy and login isn't working.

 * Added a warning message in the banner edit screen when non-HTTPS assets
   are used and banner won't be selected for delivery on HTTPS pages.

 * Added missing localization for the date pickers.

 * Added optional banner file size limit to the banners storage settings.

 * Added zone filtering to the "Linked Zones" tab for banners.

 * Added new Mailer plugin, allowing to use SMTP or a selection of 3rd party
   providers to send emails. By default, no plugin is configured or selected
   in the e-mail settings, so the legacy code is in use, granting backwards
   compatibility.


Bug Fixes
---------

 * HEAD requests to delivery scripts were previously executed and counted
   as proper requests, even though the ad payload would have been discarded.

 * Fixed issue with the search functionality being case-sensitive when
   using a Postgres database.

 * Optimimized some queries used in the statistics screen, leading to
   faster response times on very large instances.

 * Changed the OAGEO cookie from session cookie to permanent, with a 30m
   expiration time. This should allow refreshing geo information for mobile
   users on the move.

 * Fixed the definition of the "acls" and "acls_channel" tables so that they
   have a proper primary key.

 * Fixed the definition of the "banners_vast_element" table in the IAB VAST
   Plugin to use a primary key and avoid the creation of an additional
   "banners_vast_element_seq" table on MySQL without any prefix.

 * Fixed an issue preventing contract campaigns from working properly with
   hour of day limitation in non-UTC timezones or with campaigns having
   daily targets.

 * Fixed improper handling of write errors when downloading GeoLiteCity
   database files.

 * Fixed issue with search settings being reset when typing a new search
   keyword. Compact view is also the new default in order to keep resource
   usage low.

 * Fixed an issue preventing webp banners from being displayed on Newsletter
   zones and when using Image Invocation Code.

 * Fixed sorting by campaign type in the advertisers campaign screen.

 * Improved command line installer by including the field name in form error
   messages and removing the unused -H option.

 * Fixed command line installer not picking up the custom image store path and
   not setting permissions on .htaccess files.

 * Fixed global settings help link.

 * Fixed non-working sorting in the websites list inventory screen.

 * Fixed avw.php logging an ad impression when requesting a non existing
   zone.

 * Fixed PHP 8.1+ compatibility issues in the republish maintenance script.


Non-Backwards Compatible Changes
--------------------------------

 * Revive Adserver now requires at least PHP 8.1

 * Deprecated [rawDatabase] section in the config file is no longer supported.

 * Deprecated SQL stored banners: the default setting for new installations is
   to disallow SQL stored banners.

 * Removed obsolete P3P headers and settings.

 * Removed local mode tags, previously deprecated in v5.3.0.

 * Removed XML-RPC tags, previously deprecated in v5.3.0.

 * Removed option to generate pop-unders, which are not allowed by modern
   browsers.

 * Deprecated popups and interstitials: it is no longer possible to create new
   popup or interstitial zones. Existing tags will continue to work as
   expected, until the functionality will be fully removed in a future version.

 * Removed the possibility to configure the Operation Interval setting from the
   user interface, effectively deprecating non-standard usages. In fact using
   anything different from 60 minutes is complex, confusing, and fraught with
   danger.

 * Removed the legacy "Client - Browser (Deprecated)" and "Client - Operating
   System (Deprecated)" delivery rules.

 * The "intl" PHP extension is now required in order to run Revive Adserver.


Community Contributions
------------------------

We would like to thank the following community members for their
contribution to this release:

 * zd-ls
 * lcuis
 * J0k3RTwelv3


System Requirements
-------------------

Before installing, please make sure your server meets the system
requirements, which can be found at:

https://www.revive-adserver.com/support/requirements/


Downloading and Installing
--------------------------

 * Downloading Revive Adserver

   You can always find the latest version of Revive Adserver at:

   https://www.revive-adserver.com.

 * Installing Revive Adserver

   Installing Revive Adserver is a straightforward process. Follow the steps at:

   https://www.revive-adserver.com/how-to/install/

 * Upgrading Revive Adserver

   Upgrading Revive Adserver is a straightforward process. Follow the steps at:

   https://www.revive-adserver.com/how-to/update/

   Please note: The upgrade process will update your Revive Adserver database,
   and the database may no longer be compatible with your old installation.
   You *must* create a backup of your database before you upgrade, just in case.

   The upgrade wizard supports upgrading from:

   ---------------------------------------------------------------
   | Product                             | Version(s)            |
   ---------------------------------------------------------------
   | Revive Adserver 5.x                 | All previous versions |
   ---------------------------------------------------------------
   | Revive Adserver 4.x                 | All versions          |
   ---------------------------------------------------------------
   | Revive Adserver 3.x                 | All versions          |
   ---------------------------------------------------------------
   | OpenX 2.x                           | All versions          |
   ---------------------------------------------------------------
   | Openads 2.4                         | All versions          |
   ---------------------------------------------------------------
   | Openads 2.0 for MySQL               | 2.0.11-pr1            |
   |   (formerly phpAdsNew)              |                       |
   ---------------------------------------------------------------
   | Openads 2.3 alpha                   | 2.3.31-alpha-pr3      |
   |   (formerly Max Media Manager v0.3) |   (v0.3.31-alpha-pr3) |
   ---------------------------------------------------------------
   | Openads 2.3 beta                    | All versions          |
   ---------------------------------------------------------------
   | Max Media Manager v0.1              | v0.1.29-rc            |
   ---------------------------------------------------------------
   | Openads 2.0 for PostgreSQL          | 2.0.11-pr1            |
   |  (formerly phpPgAds)                |                       |
   ---------------------------------------------------------------

   If you are not running one of these versions, you will need to upgrade
   your existing installation before you will be able to upgrade to
   Revive Adserver.

 * Uninstalling Revive Adserver

   To uninstall Revive Adserver, delete the installed files and database tables.


Known Issues
------------

This list covers some of the known problems with Revive Adserver. Please read
this before reporting any new bugs.

 * The upgrade process may time out with very large databases. See
   https://www.revive-adserver.com/docs/faq for more information if you
   have a large database.

 * If you want to run Revive Adserver with MySQL, please note that MySQL 4.1 or
   higher is required. If you are using an older version of MySQL, you will
   need to update you database software before upgrading.

 * If you want to run Revive Adserver with PostgreSQL, please note that
   PostgreSQL 8.1 or higher is required. If you are using an older version of
   PostgreSQL, you will need to update your database software before
   upgrading.

 * Some of the PEAR libraries used are not compatible with database prefix
   names with double "_" characters (e.g. "rv__"). You should NOT install
   Revive Adserver with a prefix of this format.

 * Some users have reported issues of being logged out when viewing
   statistics. This can be worked around by ensuring that the timezone is
   correctly set in PHP.

 * See https://www.revive-adserver.com/support/bugs/ for the latest bug reports.


FAQ
---

 1. Can I upgrade from OpenX Source?

    Yes. OpenX Source has rebranded as Revive Adserver. You will be able to
    upgrade from any version of OpenX Source.

 2. Where can I get help?

    You can ask for help at the Revive Adserver community forums:
    https://forum.revive-adserver.com/

 3. What can I do to help?

    We need help from both developers and users to provide as much feedback
    as possible to make Revive Adserver even better. You can contribute
    feedback, bug reports, submit patches or help with documentation by
    visiting https://www.revive-adserver.com/.
