               Release Notes for Bacula 15.0

This is a major release with many new features and a number of
changes. Please take care to test this code carefully before putting it into
production. Although the new features have been tested, they have not run in a
production environment.

Compatibility:
--------------
As always, both the Director and Storage daemon(s) must be upgraded at
the same time. Any File daemon running on the same machine as a Director
or Storage daemon must be of the same version.

Older File Daemons should be compatible with the 15.0 Director and Storage
daemons. There should be no need to upgrade older File Daemons.

In 15.0, we have upgraded the volume format from BB02 to BB03 to support
options such as the Volume encryption. Old volumes can still be used by the
15.0 Storage Daemon, however, new 15.0 BB03 volumes cannot be used by old
Storage Daemons.

New Catalog format in version 15.0.0 and greater
------------------------------------------------
This release of Bacula uses a new catalog format.  We provide a set of scripts
that permit conversion from 9.x and earlier versions to the new 15.0 format
(1026).  Normally the conversion/upgrade is automatic, though there is a big
change from 9.x to 11.0 that takes longer than usual, the upgrade process will
require about twice the disk space of the actual database.

The database upgrade introduced in 11.0 should significantly increase
performance when inserting a large number of Jobs with a lot of Files into the
database catalog.

If you start from scratch, you don't need to run the update_bacula_tables
script because the create_bacula_tables script automatically creates the new
table format.  However, if you are using a version of Bacula older than 5.0.0
(e.g.  3.0.3) then you need to run the update_bacula_tables and the
grant_bacula_privileges scripts that will be found in the <bacula>/src/cats
directory after you run the ./configure command.

As mentioned above, before running this script, please backup your catalog
database, be sure to shutdown Bacula and be aware that running the script can
take some time depending on your database size.

Release 15.0.3 / 25 March 2025
----------------------------------------------------------------

15.0.3 is a minor bug fix release.

 - Use the CLOEXEC function in sockets and all file descriptors
 - BSOCK improve POLL to detect and report errors
 - Check for backquote in check_for_invalid_chars() function
 - Detect unsolvable volume cycle in split_bsr_loop()
 - Enforce malware database download from Abuse.ch

 - Fix #10947 time output without century for locale that use multi bytes utf8
 - Fix #10985 Report the FD/SD Encryption in the Job record and the job output
 - Fix #11048 About LastBackedUpTo StorageGroup policy not correctly set
 - Fix #11058 About fsync error reported for tape driver
 - Fix #11197 About error when using bextract on ZSTD compressed data
 - Fix #11251 About bcopy not mounting correctly volumes provided with -i option
 - Fix Client/Uname field not always updated after a status client
 - Fix compilation issue with zstd and without lzo
 - Fix compilation variable in var.c and expand.c

 - Fix org#2714 Fails to take TLS Allowed CN into account
 - Fix org#2738 About error message with generated fileset
 - Fix org#2748 About compilation error with ZSTD and not LZO enabled

 - Update bsmtp copyright information

 - baculum: Add cloud storage status to SD status endpoint
 - baculum: Add enable and disable client, storage, job and schedule endpoints
 - baculum: Add name and sort parameters to filesets filter
 - baculum: Add new query parameters in M365EmailList endpoint
 - baculum: Fix #2722 port from Bacularis fix for displaying schedule list
 - baculum: Fix compatibility with very old PHP 5.4
 - baculum: Fix missing scopes on supported OAuth2 scope list
 - baculum: Fix sorting in filesets endpoint if unique filesets parameter is used
 - baculum: Update API documentation

 - bpipe: Fix org#2737 About segfault with bpipe

 - k8s: Add Ingress integration backup/restore
 - k8s: Add dockerfile to create an image to compile k8s plugin in any debian/ubuntu distribution
 - k8s: Add more options to debug
 - k8s: Add new level(In pvc annotations) in selection of backup mode
 - k8s: Add parallel job in same namespace
 - k8s: Add pvc annotation takes precedence without pod annotation
 - k8s: Add pvc clean up from old backup jobs
 - k8s: Avoid pvc data when pvc is in Pending status. k8s: Fix redoing backup when pvcdata is 0 bytes and the backup mode is standard
 - k8s: Avoid pvcs backup when the pvc status is Terminating
 - k8s: Fix #0010901 - Problem when restore service clusterIPs
 - k8s: Fix #0011005: ModuleNotFoundError: No module named 'baculak8s.plugins.k8sbackend.ingress'
 - k8s: Fix get provisioner permissions
 - k8s: Fix restore problem where pod require the pvc data when it starts
 - k8s: Fix show pvdatada message when you don't use it
 - k8s: Get images from repositories with auth

 - show minimal backtrace if gdb is not installed
 - win32: Fix unwanted debug messages in windows File Daemon

Bugs fixed/closed since last release:
 10291 10901 10947 10985 11005 11048 11058 11197 11251 2722


----------------------------------------------------------------
Release 15.0.2 / 21 March 2024
----------------------------------------------------------------

Security:
 - Director TOTP Console authentication plugin
 - Better restricted console support
 - Add Storage Daemon Volume encryption support
 - Add support for Immutable filesystem flag for volumes
 - Add support for Append Only filesystem flag for volumes
 - Clamav Antivirus plugin
 - Malware detection code (via Abuse.ch)
 - Add AllowedBackupDirectories FileDaemon's directive
 - Add AllowedScriptDirectories FileDaemon's directive
 - Add ExcludeBackupDirectories FileDaemon's directive
 - Add AllowedRestoreDirectories FileDaemin's directive

Management:
 - New FreeSpace and LastBackedUpTo storage group policy
 - New ZSTD fileset compression support
 - Add Kubernetes CSI Volume Snapshot support
 - Add Amazon Cloud driver (in replacement of libS3 cloud driver)
 - Switch Storage Daemon volume format from BB02 to BB03
 - New Bacula Installation Manager (BIM) to ease the installation
 - Add runscript "AtJobCompletion" execution option

Catalog changes:
 - FileSet content description in the FileSet table
 - Add Job/RealStartTime catalog field
 - Add Job/Encrypted catalog field
 - Add Media Protected and UseProtect fields
 - Add Media VolEncrypted field
 - Add FileEvent table and "list fileevent" to track malware and viruses
 - Plugins list available in the Client table
 - Store verified jobid into the catalog PriorJobId Job field

Console changes:
 - Add JSON output to various commands (.jlist, .api 2 api_opts=j)
 - .help enhancement with description of commands
 - help command restricted to the available commands
 - Add .search bconsole command
 - Add bconsole "list joblog jobid=x pattern=xxx" option
 - Add fileindex=jobid,fidx option in .bvfs_restore
 - Add VolType to .bvfs_versions
 - Add "update volumeprotect storage=xxx" bconsole command
 - Add "status dir novolume" to not compute volume in status director output
 - Limit the "status dir" schedule output to 50 jobs. Can be managed via "limit=x offset=y" parameters
 - Add new error codes to job messages
 - Update timestamp of the pid file after a reload command
 - Add ".status dir client=xxxx" filter
 - Add "list jobs reviewed=<1|0>" command
 - Add Runscript to control the run queue (RunsWhen=Queue)
 - Add ".ls dironly" bconsole command
 - Add new Job statuses when the Job is waiting on SD/FD
 - Add new PriorJobId and PriorJobName to volume label format variables
 - Progress Status for Copy/Migration Jobs in "status director" output
 - Add  "list fileevent" bconsole command

Baculum and Rest API changes:
 - Add joberrors parameter to jobs endpoint
 - Add fileset parameter to objects endpoint
 - Add filename and path properties to fileevent endpoints
 - Add sorting parameters to clients endpoint
 - Add running jobs property to clients endpoint
 - Add documentation for os and version filters in clients endpoint
 - Add os and version parameters to clients endpoint
 - Add os, version properties and overview parameter to clients endpoint
 - Add endpoint to check disk archive device prformance on storage 
 - Add endpoint to list files and dirs on storage daemon host
 - Add delete pool endpoint
 - Add delete object endpoint
 - Use new delete module in volume and job endpoints
 - Add module for delete command
 - Add client name parameter to clients endpoint
 - Add file events API endpoint
 - Improve extended name validator
 - Speed up dashboard page loading
 - Fix parsing director time in time endpoint
 - Add objecttype parameter to object categories endpoint
 - Add second dimensional sorting and use it for sorting jobstatus in 
 - Add modify default object sorting in object overview endpoint
 - Fix support for PHP 5.4 in web interface layer
 - Fix content field in job record
 - Improve support for newer PostgreSQL versions
 - Add fileset content property to jobs endpoint
 - Add object categories endpoint
 - Add support for ALL action in console ACL
 - Add objecttype filter to objects names endpoint
 - Add default sorting by endtime to objects overview endpoint
 - Add sorting parameters to volumes overview endpoint
 - Add second dimension of sorting in jobs objects endpoint
 - Add offset and limit parameters to director status endpoint
 - Add sorting by endtime and add endtime property to objects overview 
 - Add group_order_by and group_order_direction parameters to documentation
 - Add notes about object type filters in objects overview endpoint
 - Fix storing ACL config actions for very old PHP versions
 - Add objectsize property to objects overview endpoint
 - Add job type property to objects overview endpoint
 - Add path property to objects overview endpoint
 - Fix offset and limit parameter in jobs objects endpoint
 - Add objectname parameter to jobs objects endpoint
 - Add objectsource property to objects overview endpoint
 - New API config ACLs
 - Add group_order_by and group_order_direction parameters to objects 
 - Add to grup function sorting group capability
 - Add sorting by joberrors if sorted by jobstatus first
 - Improve using unique_objects parameter in object endpoint
 - Add group_offset and unique_objects parameters to objects endpoint
 - Add volume names endpoint
 - Add object names endpoint
 - Add object types endpoint
 - Add documentation for client parameter in objects endpoint
 - Add job status filter to objects endpoint
 - Add joberrors filter to sources endpoint
 - Add server parameter to list vsphere datastores endpoint
 - Add job level property to sources endpoint
 - Add pool resnames endpoint
 - Add storage resnames endpoint
 - Add director time endpoint
 - Change M365 tenants endpoint output to contain tenant names
 - Update documentation

 - Add object overview endpoint
 - Add client plugin list endpoint
 - Add content parameter to filesets endpoint
 - Add directive filter to config endpoints
 - Add enabled filter to clients show endpoint
 - Add endpoint to list AWS cloud buckets
 - Split client overview endpoint into reachable and unreachable clients
 - Adapt storage file ls command parameters to new form
 - Add cancel jobs running on storage endpoint
 - Add delete client endpoint
 - Add endpoint to create directory on storage daemon host
 - Add endpoint to get device disk usage on storage daemon host
 - Add endpoint to list SCSI tape devices on storage daemon host
 - Add fileset filter to objects overview endpoint
 - Add job name and fileset to status client endpoint
 - Add job type parameter to objects overview endpoint
 - Add jobdefs list endpoint
 - Add jobstatus filter to objects overview endpoint
 - Add name parameter to storages endpoint
 - Add option to interpret Bacula error codes by API
 - Add parser for diskperf command output
 - Add regex operator support in queries
 - Add restricting resources in objects overview endpoint
 - Add type parameter to clients endpoint
 - Add usage of multiple content values in filesets endpoint
 - Add volume statistics endpoint
 - List only reachable/unreachable clients in clients endpoint

Misc:
 - Add XXHASH to FileSet signature option
 - Add plugins for Verfy jobs
 - Display mtime instead of ctime in estimate listing output
 - Add specific jobstatus when executing Runscripts
 - New man pages

 - Add %i (jobid) to edit_device_codes(), can be used in storage daemon scripts
 - Pass comment field to copy/migration jobs from the control job
 - Add JobTimestamp variable for volume label format
 - Improve BSR cycle detection and resolution

Release 15.0.1 / 13 February 2024
----------------------------------------------------------------

15.0.1 is a minor bug fix beta release.

 - cloud: Fix #10525 Add device name to the transfer fields

 - Fix #10163 Add %i (jobid) to edit_device_codes()
 - Fix #10365 Pass comment field to copy/migration jobs from the control job
 - Fix #10524 About adding JobTimestamp variable for volume format

 - Fix #10401 About issue when truncating immutable volume
 - Fix #10453 volume with a wrong label
 - Fix #10513 About show command issue with incorrect storage configuration
 - Fix #10631 remove unauthorized Jmsg() in BSOCK::recv()
 - Fix #2699 About SQLite update script
 - Fix #2701 compilation of bjoblist
 - Fix JSON output in .status dir running

 - Fix openssl 3.x don't tolerate to call EVP_CipherFinal_ex() twice
 - Fix org#2440 Improve Makefiles to use relative paths
 - Fix org#2561 Convert text from ISO-8859 to UTF8
 - Fix org#2698 about error with osx platform
 - Fix org#2704 about old FD compatibility
 - Fix org#2705 about issue with accurate checking of new file signature attributes
 - Fix restore issue when compression is enabled but not available
 - Fix warning about BSOCK::send()
 - Fix zlib compression was disable in FD
 - Fix: #0010535. Problem with k8s snapshot version

 - baculum: Add application version endpoint
 - baculum: Add client plugin list endpoint
 - baculum: Add content parameter to filesets endpoint
 - baculum: Add directive filter to config endpoints
 - baculum: Add enabled filter to clients show endpoint
 - baculum: Add endpoint to list AWS cloud buckets
 - baculum :Split client overview endpoint into reachable and unreachable clients
 - baculum: Adapt storage file ls command parameters to new form
 - baculum: Add cancel jobs running on storage endpoint
 - baculum: Add delete client endpoint
 - baculum: Add endpoint to create directory on storage daemon host
 - baculum: Add endpoint to get device disk usage on storage daemon host
 - baculum: Add endpoint to list SCSI tape devices on storage daemon host
 - baculum: Add fileset filter to objects overview endpoint
 - baculum: Add job name and fileset to status client endpoint
 - baculum: Add job type parameter to objects overview endpoint
 - baculum: Add jobdefs list endpoint
 - baculum: Add jobstatus filter to objects overview endpoint
 - baculum: Add name parameter to storages endpoint
 - baculum: Add option to interpret Bacula error codes by API
 - baculum: Add parser for diskperf command output
 - baculum: Add regex operator support in queries
 - baculum: Add restricting resources in objects overview endpoint
 - baculum: Add type parameter to clients endpoint
 - baculum: Add using multiple content values in filesets endpoint
 - baculum: Add volume statistics endpoint
 - baculum: Fix content property in sources endpoint
 - baculum: Fix count property in volume overview endpoint
 - baculum: Fix name parameter in jobs objects endpoint
 - baculum: Fix using error module
 - baculum: List only reachable/unreachable clients in clients endpoint
 - baculum: Mask sensitive AWS data in debug log
 - baculum: Update API documentation

 - cloud: Fix #10291 Assume that driver ls can return an error when scanning an unexistant cloud volume and loosen the conditions that handle this case
 - cloud: Fix #10685 TruncateCache at endofjob was not processed due to wrong transfer status verification
 - cloud: proof guard truncation
 - cloud: test compare upload to AWS with 4 different methods, including bacula post-upload

 - k8s: Fix compilation problem
 - k8s: Fix csi compatibility
 - k8s: Fix problem when it restores a 'namespace'
 - k8s: Fix pvc naming error in csi snapshots

 - rpms: Fix cloud spec file for redhat8


Bugs fixed/closed since last release:
 10163 10291 10365 10401 10453 10513 10524 10525 10535 10591 10604 10631 10685 2699 2701


----------------------------------------------------------------
Release 13.0.3 / 02 May 2023
----------------------------------------------------------------

13.0.3 is a minor bug fix release with several new features and a number of bug
fixes.

 - Fix #10030 About small issue while canceling the restore command

 - Fix #9968 Enhance restricted Console support
 - Fix #10032 Allow restore menu 1 to users without sqlquery command ACL
 - Fix #10033 Add extra Client and FileSet ACL checks to the estimate command
 - Fix #9907 About Director crash with Runscript Console
 - Fix #9968 Adapt restore menu and add RBCLIENT/BCLIENT in some ACL SQL checking
 - Fix small memory leak with setbandwidth command
 - Adapt delete, prune, purge commands to work with restricted consoles
 - Check ClientACL in acl_access_jobid_ok()
 - Check Pool specific ACL in select_media_dbr()
 - Disable Bootstrap manual selection in restore for Restricted Console
 - Do not display specific SQL errors to restricted consoles
 - Include BackupClient in list jobs, list jobmedia, list joblog
 - Restrict the use of local files during the restore file selection process when using a Restricted Console
 - Take the first valid FileSet for the restore Job with restricted consoles

 - baculum: Add checking errors in output from vsphere plugin servers, hosts and datastores commands
 - baculum: Add new m365 plugin mailbox list endpoint
 - baculum: Add VMware vSphere datastore list endpoint
 - baculum: Add VMware vSphere host list endpoint
 - baculum: Add VMware vSphere restore host list endpoint
 - baculum: Add VMware vSphere server list endpoint
 - baculum: Add a new endpoint to list jobs together with objects
 - baculum: Add client filter to objects endpoint
 - baculum: Add client property to object and objects endpoint
 - baculum: Add client resnames endpoint
 - baculum: Add client, pool, fileset and fileset content properties to jobs objects endpoint
 - baculum: Add displaying bconsole command output if command is multiline
 - baculum: Add enabled flag filter to volumes endpoint
 - baculum: Add endpoint to list m365 jobs by email
 - baculum: Add endtime property and filters to source list endpoint
 - baculum: Add estimated job values endpoint that uses job historical data for estimation
 - baculum: Add fileindex parameter to bvfs restore endpoint
 - baculum: Add fileset and filesetid filters to jobs objects endpoint
 - baculum: Add fileset content property to sources endpoint output
 - baculum: Add job errors property to objects endpoint
 - baculum: Add job errors property to sources endpoint
 - baculum: Add job status property to objects endpoint
 - baculum: Add job type to sources endpoint
 - baculum: Add joberrors filter to jobs objects endpoint
 - baculum: Add joberrors filter to objects endpoint
 - baculum: Add mediaid to volume overview endpoint
 - baculum: Add method to execute SQL queries
 - baculum: Add more detailed output to restore endpoint
 - baculum: Add objectid parameter to Bvfs restore endpoint
 - baculum: Add objecttype parameter to jobs objects endpoint
 - baculum: Add offset and limit parameters to bvfs versions endpoint
 - baculum: Add offset parameter to filesets endpoint
 - baculum: Add offset parameter to m365 plugin email list endpoint
 - baculum: Add offset parameter to sources endpoint
 - baculum: Add options to configure preserving table settings
 - baculum: Add order_by and order_direction parameters to sources endpoint
 - baculum: Add order_by and order_direction parameters to volumes endpoint
 - baculum: Add order_by and order_direction params to jobs objects endpoint
 - baculum: Add output parameter to run job endpoint
 - baculum: Add output parameter to run restore endpoint
 - baculum: Add overview parameter to job list endpoint
 - baculum: Add overview parameter to objects endpoint
 - baculum: Add pool filter to volumes endpoint
 - baculum: Add priorjobname parameter to jobs endpoint
 - baculum: Add priorjobname property to jobs endpoint
 - baculum: Add restore_host parameter to vsphere plugin datastores API endpoint
 - baculum: Add server parameter to vsphere plugin hosts API endpoint
 - baculum: Add sorting by jobstatus to objects endpoint
 - baculum: Add starttime property to objects endpoint
 - baculum: Add storage filter to volumes endpoint
 - baculum: Add support for cloud storage commands
 - baculum: Add support for plugin filter in client list endpoint
 - baculum: Add tenant indentifier list endpoint
 - baculum: Add to documentation missing type parameter to job resnames endpoint
 - baculum: Add to estimated job values endpoint average number of backed up objects
 - baculum: Add to jobs endpoint time filters in date/time format
 - baculum: Add to jobs objects endpoint time filters in date/time format
 - baculum: Add to objects endpoint capability to sort by client name
 - baculum: Add to objects endpoint time filters in date/time format
 - baculum: Add volerrors property to volumes overview endpoint
 - baculum: Add volstatsu property to volumes overview endpoint
 - baculum: Add volstatus filter to volumes endpoint
 - baculum: Add voltype parameter to volumes endpoint
 - baculum: Add voltype property support in bvfs output parser
 - baculum: Add volumename filter to volumes endpoint
 - baculum: Add volumes overview endpoint
 - baculum: Add when parameter to run job endpoint
 - baculum: Change a way of executing SQL queries
 - baculum: Change a way of preparing overview with counters in objects endpoint
 - baculum: Change overview behaviour in objects endpoint if used together with groupby parameter
 - baculum: Disable querying API for seeing which authentication methods are supported
 - baculum: Enhance validation in time period control
 - baculum: Extend object name validation pattern
 - baculum: Fix compatibility with PHP 5.4
 - baculum: Fix documentation about jobids parameter in bvfs restore endpoint
 - baculum: Fix documentation for date parameters
 - baculum: Fix example values in OpenAPI documentation
 - baculum: Fix listing restore job in job endpoints
 - baculum: Fix losing autochanger directive value in storage resource in director configuration
 - baculum: Fix m365 user list endpoint
 - baculum: Fix offset and limit parameters for case when storage in catalog is inconsistent with configuration
 - baculum: Fix problem with double jobids in jobs objects endpoint
 - baculum: Fix support for PHP 5
 - baculum: Improve identifier validator
 - baculum: Improve job statuses for job overview purpose
 - baculum: Improve jobs objects endpoint working
 - baculum: Improve precision in show command output parser
 - baculum: Make show command output parser more accurate
 - baculum: Remove overview, order_by, order_direction and object_limit parameters from jobs objects endpoint
 - baculum: Rework and improve sources endpoint
 - baculum: Update documentation
 - baculum: add offset parameter support in new job objects endpoint

 - rpms: Add rhel9 target to spec file


Bugs fixed/closed since last release:
10030 10032 10033 9907 9968


----------------------------------------------------------------
Release 13.0.2 / 16 February 2023
----------------------------------------------------------------

13.0.2 is a minor bug fix release.

 - Fix #9535 avoid "Will not descend from / to /good_dir"
 - Fix #9568 About "cancel inactive" command Storage Daemon selection
 - Fix #9614 Re-create Jobs with bscan only if the bootstrap is matching
 - Fix #9686 Grant PROCESS privilege to bacula user to allow catalog backup
 - Fix #9876 Update information printed during file restore error
 - Fix #9882 About tapealert script issue on rhel8
 - Fix Cython detection on python >= 3.8
 - Fix bconsole command issue after a first error
 - Fix errors in update_bacula_tables
 - Fix org#2577 Remove -f option from MySQL update scripts to detect errors properly
 - Fix org#2628 About improving the update_bacula_tables script on up to date catalogs
 - Fix org#2665 About memory leak on FreeBSD with extended attributes
 - Fix org#2666 About fixing getaddrinfo check in ./configure

 - baculum: Add afterjobid parameter to job list endpoint
 - baculum: Add jobids parameter to objects endpoint
 - baculum: Add plugin column
 - baculum: Add age parameter to jobs and objects endpoints
 - baculum: Add capability to restore using plugin
 - baculum: Add dedupengine output type to status storage
 - baculum: Add documentation for component actions
 - baculum: Add documentation to new job sort parameters
 - baculum: Add documentation to new jobids parameter in job list endpoint
 - baculum: Add event list and single event record endpoints
 - baculum: Add group_limit, order_by and order_direction parameters to objects endpoint
 - baculum: Add groupby parameter to object list endpoint
 - baculum: Add job sum statistics endpoint
 - baculum: Add jobids parameter to Bvfs update endpoint
 - baculum: Add missing objectid parameter to API documentation
 - baculum: Add multiple jobids filter to jobs endpoint
 - baculum: Add new fileindex property to objects
 - baculum: Add new filters to object category sum endpoint
 - baculum: Add new job, fileset and media properties support
 - baculum: Add object category stats endpoint
 - baculum: Add object category status endpoint
 - baculum: Add object size statistics endpoint
 - baculum: Add object versions endpoint
 - baculum: Add offset parameter to event and pool list endpoint
 - baculum: Add offset parameter to jobs, objects and volumes endpoints
 - baculum: Add offset parameter to messages endpoint
 - baculum: Add offset parameter to storage and client list endpoint
 - baculum: Add option to enable/disable audit log
 - baculum: Add patch for offset parameter support in SQL queries
 - baculum: Add query command support, object endpoint and m365 user list endpoint
 - baculum: Add restore plugin option fields endpoint
 - baculum: Add restore plugin options endpoint
 - baculum: Add search Bacula items endpoint
 - baculum: Add single object record endpoint
 - baculum: Add sources endpoint
 - baculum: Add time range parameters to jobs endpoint
 - baculum: Add time range parameters to objects endpoint
 - baculum: Add to jobs endpoint parameters to sort property and sort order
 - baculum: Fix OFFSET parameter in PHP framework
 - baculum: Fix sources endpoint double results
 - baculum: Fix time range filter for job and object endpoints
 - baculum: Fix using multiple job statuses in list jobs jobstatus filter
 - baculum: Fix using operators for SQL queries

 - cloud: Fix #8351 Catalog part number correction notification goes debug
 - cloud: Fix #9508 transfer remove dcr use for JobId
 - cloud: Fix #9606 Rearange POOLMEM usage in cb functions

 - k8s: Add support for Python3.10

 - win32: Fix org#2667 enable sockaddress_storage for windows
 - win32: Switch to openssl 1.1.1t

Bugs fixed/closed since last release:
 8351 9508 9535 9568 9606 9614 9686 9876 9882


Release 13.0.1 / 05 August 2022

13.0.1 is a minor bug fix release.

 - Fix org#2594 About compilation warning on VolRead/WriteTime
 - Fix org#2644 Add support for binary files to bacula md5sum
 - Fix org#2655 About incorrect definition of MAX_FOPTS
 - Fix org#2656 About incorrect error message on TLS CA Certificate
 - Fix org#2657 About startup problem for bacula-sd

 - baculum: Adapt code to use PSR-4 autoloader
 - baculum: Fix #2653 PHP warning about wrong array_key_exists() parameter in session record
 - baculum: Improve logging and add audit log

 - osx: Fix #9309 about extended attribute backup error on macOS
 - Rework MacOS package

 - rpms: Add kubernetes spec file
 - rpms: Add spec file for k8s tools
 - rpms: Fix cloud package
 - rpms: more work on docker and docker tools
 - win32: update openssl to 1.1.1q

Bugs fixed/closed since last release:
 2653 9309

Release 13.0.0 04 July 2022

13.0.0 is a major release.

New Features:
-------------
 - Job 'Storage Group' support
 - Kubernetes plugin
 - New Accurate option to save only file's ACL and metadata
 - Windows CSV (Cluster Shared Volumes) support
 - More logging for daemon<->daemon connections in Job log output
 - Tag support on catalog objects
 - Support for SHA256 and SHA512 signatures in FileSet
 - External LDAP Console authentication

Misc Features:
 - Windows installer 'Silent Mode' options
 - Add PriorJob to bconsole 'llist job' output
 - Check for IP SANs when verifying TLS certs
 - Clarify SD vbackup Device error message
 - Remove deprecated sbrk in MacOS and Windows
 - Add bconsole .jlist command to get JSON output from regular list commands
 - Ensure that the Director will reject catalog updates from the FD
 - Add variable for PreviousJobId in mail messages
 - Respect the 'nodump' flag in more OSes than just BSD
 - Add debug/trace/tags information to .status header
 - Handle lin_tape end of device with the new 'Use Lintape=yes' Device directive
 - Add MaximumJobErrorCount FileDaemon directive
 - bsmtp: Add the possibility to add emails separated with a comma as recipient list
 - SDPacketCheck FileDaemon used to control the network flow
 - Add bconsole .bvfs_lsfiles allfiles command

Main Fixes:
 - Fix org#2188 About the presence of FileSet and Pool directives in the Job
 - Fix Director crash for Client Initiated Backup
 - Fix Director crash for Migration Job
 - Fix incorrect output for the .status client command
 - Skip XATTR larger than MaximumNetworkBuffer
 - Fix deadlock when starting the Director with an improperly configured catalog
 - Fix Director crash caused by BAT
 - Fix org#2627 About Director crashing for Copy Jobs and resource rename
 - Move the delete volume event just before the actual deletion
 - Fix mail variables not working after a conf reload
 - Fix OpenBSD chio-changer script
 - Fix SQL query generated with ACLs
 - Fix heartbeat segfault when the Job is terminated very quickly
 - Fix About wrong backup Client displayed to the user when the original Client doesn't exist
 - Fix org#2605 About incorrect message in restore command
 - cdp: open the inotify stream using the CLOEXEC (close on exec) flag
 - docker: Check the presence of the docker tools during loadPlugins()
 - Fix reload issue when a Job doesn't have a Pool defined
 - Fix Copy Job with SelectionType=PoolUncopiedJobs selecting Jobs from wrong Pool
 - Fix about checking for Storage being used for Job restart/resume
 - Fix about incorrect variable substitution with the query command
 - Fix org#2579 About incorrect JSON generated from empty Messages resource
 - Fix #9116: copy job missuses the client->FdStorageAddress directive
 - Fix org#2658 About segfault with bsdjson with incorrect parameters
 - Skip storage daemon detection if the information is not available in the BSR
 - alist: Fix for memory overflow access
 - Fix org#2659 Install dbcheck and bsmtp in 755
 - Fix org#2662 About SQLite migration script issue
 - snapshot: Adapt for BTRFS 5.17
 - snapshot: Fix snapshot delete/prune command
 - snapshot: Fix #9143 About snapshot not properly stored in the catalog
 - snapshot: Add support for new LVM 2.03.15
 - win32: Update to OpenSSL 1.1.1q
 - rpms: Fix org#2633 about log directory not created on Centos7 

GUI:
 - baculum: Fix clearing OAuth2 properties after testing API connection on security page
 - baculum: Fix directing to default page after log in for users with non-admin roles
 - baculum: Fix #2667 keep original fileset options order
 - baculum: Add to install wizard pre-defined b*json tool paths for FreeBSD and older Debian/Ubuntu
 - baculum: Fix #2661 required parameter PHP error on PHP 8.0
 - baculum: Fix error calling method_exists() with non-objects on PHP 8
 - baculum: Fix clearing OAuth2 properties after testing API connection on security page
 - baculum: Fix directing to default page after log in for users with non-admin roles
 - baculum: Add to install wizard pre-defined b*json tool paths for FreeBSD and older Debian/Ubuntu
 - baculum: Fix #2661 required parameter PHP error on PHP 8.0
 - baculum: Fix error calling method_exists() with non-objects on PHP 8

----------------------------------------------------------------

Release 11.0.6 10 March 2022

11.0.6 is an important bug fix and security fix release.
We advise all 11.0.x users to upgrade to this version.

 - Adjust sample-query.sql file for new catalog schema
 - Fix #2654 About compilation issue on Alpine Linux
 - Fix #2656 About segfault in XATTR code for FreeBSD
 - Fix #7776 About FD error not correctly reported in the Job log
 - Fix #7998 About Director crashing for client initated backup
 - Fix #8126 About strange output for the .status client command
 - Fix MySQL default connection in the grant_mysql_privileges script
 - Fix db_get_accurate_jobids() with concurrent queries on the same Jobs
 - Fix issue with MySQL 8 in src/cats/grant_mysql_privileges
 - Fix detection of PSK
 - Fix org#2622 About incorrect behavior of the MaxDiffInterval directive
 - Fix org#2623 About .ls/estimate command not printing files correctly
 - Fix org#2627 About Director crashing for Copy Jobs and resource rename

 - win32: Upgrade OpenSSL to 1.1.1m

 - Got regression testing working correctly on FreeBSD

 - Update depkgs version to use latest libs3

 - baculum: Add API endpoints for basic user management
 - baculum: Add JSON output parameter to show client(s), show job(s), show pool(s) API endpoints
 - baculum: Add capability to assign dedicated bconsole config file to API basic users
 - baculum: Add capability to close modal windows on clicking gray shadow
 - baculum: Add capability to provide translated directive documentation file
 - baculum: Add capability to use pre-defined paths in API config wizard - idea proposed by Heitor Faria
 - baculum: Add console page to configure consoles
 - baculum: Add copy resource function to enable duplicating resources
 - baculum: Add director show API endpoint
 - baculum: Add documentation for directives
 - baculum: Add interface to manage basic users API from Web component side
 - baculum: Add jump to previous/next error navigation in messages window
 - baculum: Add new columns to job list page - idea proposed by Sergey Zhidkov
 - baculum: Add option to enable/disable messages log window - idea proposed by Bill Arlofski
 - baculum: Add password generator added to password fields
 - baculum: Add time range filters to job history page - idea proposed by Heitor Faria
 - baculum: Add to API deleting volume from the catalog endpoint
 - baculum: Add to config API endpoint parameter to apply jobdefs in results
 - baculum: Add to directive controls option to hide reset button and remove button
 - baculum: Add warning to running job status if job needs media
 - baculum: Apply PRADO framework patches to support PHP 8
 - baculum: Backup job wizard improvements
 - baculum: Change buttons on dashboard page - reported by Sergey Zhidkov
 - baculum: Do not require using some job resource values to ease using jobdefs - idea proposed by Heitor Faria
 - baculum: Enlarge boxes with resource count in status director - reported by Sergey Zhidkov
 - baculum: Fix #2642 add tool to re-assigning volumes from one pool to another
 - baculum: Fix #2646 apply new user permissions immediately instead of after logging out and logging in
 - baculum: Fix #2647 PHP warning about headers already sent on storage view page
 - baculum: Fix #2653 create new resource by copying configuration from other resource
 - baculum: Fix auto-scrolling in windows with configuration
 - baculum: Fix component autochanger schemas in OpenAPI documentation
 - baculum: Fix displaying directive sections in resouce configuration
 - baculum: Fix displaying documentation for jobdefs directives
 - baculum: Fix displaying issue in restore browser - reported by Sergey Zhidkov
 - baculum: Fix error about expected port number when writing component main resource
 - baculum: Fix legend in job status pie chart on job view page
 - baculum: Fix loading dashboard page if job status is created but not yet running
 - baculum: Fix missing texts in translation files - reported by Sergey Zhidkov
 - baculum: Fix opening job details in job table on main dashboard page - reported by Sergey Zhidkov
 - baculum: Fix problem with listing directories in restore wizard - reported by Tomasz Swiderski
 - baculum: Fix remove storage resource if autochanger directive is set
 - baculum: Fix required fields in jobdefs forms
 - baculum: Fix running job number on some pages
 - baculum: Fix table width on schedule list page
 - baculum: Fix undefined index error if user did not use Bacula configuration function
 - baculum: Improve checking director in status director API endpoint
 - baculum: Improve sun icon for displaying job status weather - idea proposed by Heitor Faria
 - baculum: Improve wizards view and responsivity
 - baculum: Loading pages optimization
 - baculum: Make job status pie chart clickable and direct to job history page with filtered results - idea proposed by Bill Arlofski
 - baculum: Make job status pie chart smaller - idea proposed by Sergey Zhidkov
 - baculum: Make table texts translatable - reported by Sergey Zhidkov
 - baculum: Misc visual improvements
 - baculum: Move all external dependencies to vendor directory
 - baculum: Move resource monitor and error message box to separate modules
 - baculum: New advanced schedule settings
 - baculum: New copy job wizard
 - baculum: New delete volumes bulk action on volume list page
 - baculum: New director page with graphical/text status and with configure director resources
 - baculum: New migrate job wizard
 - baculum: Reduce free space between interface elements - idea proposed by Sergey Zhidkov
 - baculum: Reduce size of icons in run job window and on dashboard page
 - baculum: Remove old configure page
 - baculum: Remove redundant statistics pages
 - baculum: Reorganize dasboard page - idea proposed by Sergey Zhidkov
 - baculum: Set responsive priority for job list table
 - baculum: Unify buttons view
 - baculum: Unset default API host setting if default API host is no longer assigned to user
 - baculum: Update API documentation
 - baculum: Update Polish translations
 - baculum: Update Portuguese translations
 - baculum: Update Russian translations

 - baculum: Visual improvements in interface

 - rpms: Disable tcp_wrapper for rhel8 in bacula.spec.in
 - rpms: Do not build with tcp_wrapper on Fedora 31
 - rpms: Fix #2599 - bacula-postgresql conflicts with bacula-mysql
 - rpms: Fix #2615 - Missing bacula-sd-cloud-s3-driver-<version>.so
 - rpms: Fix libs3 installation path
 - rpms: Fix mysql devel package dependency for rhel/centos 7
 - rpms: Remove tcp_wrappers for cloud-storage rpm

Bugs fixed/closed since last release:
2599 2615 2622 2623 2627 2642 2646 2647 2653 2654 2656 7776 7998 8126

Release 11.0.5 03 June 2021

11.0.5 is a minor bug fix release.

 - Fix compilation
 - Fix org#2427 About incorrect handling of empty files with Accurate=yes on Windows
 - Update MySQL update procedure for 5.6

Bugs fixed/closed since last release:
2427


Release 11.0.4 28 May 2021

11.0.4 is a minor bug fix release.

 - baculum: Update script version
 - Fix org#2618 Disable fix on bvfs_get_jobids() temporarily
 - Improve MySQL upgrade procedure

Bugs fixed/closed since last release:
2618

Release 11.0.3 21 May 2021

11.0.3 is a minor bug fix release.

 - Check if char **jobid parameter is NULL before modifying it in bvfs_parse_arg_version()
 - Enhance the update_mysql_tables script
 - Fix compilation of check_bacula.c reported by Dan
 - Fix org#2442 About the check of the Control Device during startup
 - Fix org#2500 .bvfs_get_jobids jobid=X must return X in the list
 - Fix org#2604 About column alignment of 'Terminated Jobs' section
 - Fix org#2605 About incorrect messages in restore command
 - Fix stored/Makefile.in to install cloud driver object with cloud targets
 - Fix various default permissions

 - baculum: Add autochanger management section and improve few other texts
 - baculum: Add component action (start/stop/restart) buttons to client and 
  storage pages
 - baculum: Add example working directory path in API install wizard
 - baculum: Add new device interface definition to Baculum OpenAPI documentation
 - baculum: Fix #2592 logout button on Safari web browser
 - baculum: Fix double device error code number
 - baculum: Fix opening update slots window reported by Hector Barrera
 - baculum: Fix sub-tabs on client and on storage pages
 - baculum: Implement autochanger management
 - baculum: Implement support for assigning multiple API hosts to one user
 - baculum: Restore wizard improvements
 - baculum: Update Portuguese translations
 - baculum: Update Russian translations
 - baculum: Update documentation chapter and screenshots
 - baculum: Use catalog access in changer listall endpoint only if it is configured on API host

 - docs: Add information about the git branch used with Bacula
 - docs: Fix #7657 Enhance the FSType description
 - docs: Fix #7659 About EnhancedWild fileset directive documentation
 - docs: Fix org#2578 About missing "restore directory=xxx" keyword documentation

Bugs fixed/closed since last release:
2442 2500 2578 2592 2604 2605 7657 7659


Release 11.0.2 26 March 2021

11.0.2 is a minor bug fix release.

 - Add functions to unittests library
 - Add support for store_alist_str() in plugin configuration items
 - Enhance bdelete_and_free() macro
 - Update baculabackupreport script

 - Fix #7286 DIR segfault when doing a "dir" command in a restore
 - Fix #7321 About issue when stopping jobs waiting for resources
 - Fix #7396 GRANT command error in granting privileges script for MySQL
 - Fix #7449 About incorrect JSON output with 'TLS Allowed CN' directive
 - Fix #7451 About deleted files incorrectly kept in Virtual Full
 - Fix S3 compilation
 - Fix Verify job issue with offset stream and compressed blocks
 - Fix bug #2498 - Wrong mode for /etc/logrotate.d/bacula
 - Fix check_bacula.c to ignore daemon events
 - Fix possible memory corruption in the label process
 - Fix reload issue when a Job doesn't have a Pool defined
 - Possible fix for SD high memory usage problem
 - Remove suspicious debug line on setdebug()

 - baculum: Add Craig Holyoak to AUTHORS
 - baculum: Fix #2597 LDAP login with LDAPS option
 - baculum: Fix cancel button in new job wizard
 - baculum: Fix displaying warning messages in messages window
 - baculum: Fix undefined property error in run job API endpoint if level value 
   is not provided
 - baculum: Implement API version 2
 - baculum: Improve updating asset files after upgrade
 - baculum: Unify jobs/{jobid}/files endpoint output for detailed and normal 
   modes
 - baculum: Update Polish translations
 - baculum: Update Portuguese translations
 - baculum: Update Russian translations
 - baculum: Use new APIv2 status client request on job history view page

 - rpms: Fix bacula.spec for Fedora 31
 - rpms: Fix bacula.spec for rhel8 / centos 8
 - rpms: Fix missing query.sql
 - rpms: Update bacula.spec for rhel8

 - win32: Fill the version information as CFLAGS
 - win32: Fix #7373 binaries are tagged with correct resource
 - win32: Fix error message when labeling volume on Windows SD
 - win32: Update openssl version to 1.1.1k


Bugs fixed/closed since last release:
2498 2597 7286 7321 7373 7396 7449 7451


Release 11.0.1 04 February 2021

11.0.1 is a minor bug fix release.

 - Add PGSQL detection for macOS and MacPorts.
 - BEE Backport bacula/src/tools/dbcheck.c
 - Fix #7079 About a segfault in a copyjob when the fileset is no longer defined
 - Fix #7168 About incorrect start time displayed for canceled jobs not yet 
  running
 - Fix #7207 About 'dbcheck -n' not working properly
 - Fix #7214 Adapt mtx-changer.conf for GNU cpio mt version
 - Fix #7247 About incorrect variable substitution with the query command
 - Fix MySQL update procedure with incorrect handling of the FileIndex type
 - Fix compilation warnings with Solaris Studio
 - Fix copy/migration job selection
 - Fix org#2579 About incorrect JSON generated from empty Messages resource
 - Fix org#2587 Improve btraceback output
 - Fix org#2588 About incorrect Object/ObjectId type in update_postgresql_tables
 - Fix update_sqlite3_tables to upgrade from 9.6 to 11.0
 - Initialize StartTime in db_create_job_record()
 - Remove deprecated sbrk in macOS and Windows.
 - Use PKG_PROG_PKG_CONFIG macro to search for pkg-config. It is cross-compile 
  safe.
 - alist: Fix for memory overflow access.

 - baculum: Add capability to create filedaemon console and schedule on new 
  resource page
 - baculum: Add console messages log API endpoint
 - baculum: Add console messages log envelope
 - baculum: Add job status weather on job list page
 - baculum: Add new icons for job status weather purpose
 - baculum: Add to Bvfs lsdirs and lsfiles API endpoints pathid parameter
 - baculum: Browser paths in restore browser using pathid
 - baculum: Fix #2560 in restore wizard display names encoded in non-UTF encoding
 - baculum: Fix finding jobs by filename in restore wizard if filename contains 
  whitespace characters
 - baculum: Fix problem with setting hourly schedule - reported by Elias Pereira
 - baculum: Remove excanvas.js dependency
 - baculum: Update debian files to latest version
 - baculum: Update spec files

 - win32: Backport signing procedures to 11.0
 - win32: Fix #7094 bypass random pwd generation when pwd is provided
 - win32: Fix conditional #define's
 - win32: Fix #7256 Update Windows version detection with latest versions 
  (Windows 10).


Bugs fixed/closed since last release:
2560 2579 2587 2588 7079 7094 7168 7207 7214 7247 7256

----------------------------------------------------------------

Release 11.0.0 12 December 2020

11.0.0 is a major release.

New Features:
-------------
 - New catalog format
 - Automatic TLS PSK encrypted communication
 - Support for Client behind NAT
 - Continious Data Protection (CDP) Plugin
 - Global Director Autoprune flag
 - Events/Audit features
 - New Baculum features
 - Support for GPFS

Misc:
-----
 - New Prune Command Option
 - Dynamic Client Address Directive
 - Ability to disable Volume Retention
 - Ask to mount/create volume when the disk space is low
 - Simplification of the Windows FileSet with File=/
 - Use of QT5 for Bat on Windows
 - Support for Windows files with non-UTF16 names
 - Windows Snapshot management has been improved
 - Support for the system.cifs_acl extended attribute backup with Linux CIFS
 - Built-in Client Scheduler
 - Reload command improvements (Keep IP address, Maximum Concurrent value, ...)
 - Support for GLOB pattern in Console ACL directives
 - Faster CRC32 algorithm

Please see the New Features chapter of the manual for documentation on
the new features.


----------------------------------------------------------------

               Release Notes for Bacula 9.6.7

Release 9.6.7

10Dec20

This is a minor bug fix that corrects among other things the MySQL/MariaDB
schemas.  This is the last release of the 9.6.x series.

03Dec20
 - Restore custom permission of symlink on FreeBSD and MacOS
 - Fix #2582 bextract is broken for sparse gzip and compressed streams
 - Fix org#2567 device capabilities overwritten
 - baculum: Update script version
 - Fix org#2573 About Syntax error in granting privileges script with MySQL if 
  --with-db-password parameter is used
 - Fix org#2471 About deleted files are listed as being present in an accurate 
  backup by various sample queries
 - Fix org#2571 About errors in es_AR.po file
 - Fix org#2568 About compilation issue on gcc10
 - Fix org#2584 About inconsitancies in the make_mysql_tables script
 - baculum: Fix English text noticed by Peter McDonald
 - baculum: Update Russian translations
 - baculum: Update Portuguese translations
 - baculum: Implement graphical status storage
 - baculum: Add gauge.js library
 - baculum: Add json output option to show storages and show single storage 
  endpoints
 - baculum: Add path field to restore wizard to narrow down search file results 
  to specific path - idea proposed by Wanderlei Huttel
 - baculum: Add path parameter to job files API endpoint
 - baculum: Fix #2565 status icon overlaps action buttons in API wizard
 - baculum: Add Sergey Zhidkov to AUTHORS
 - baculum: Add Russian translations
 - baculum: Fix access to job resources if no job assigned to user
 - baculum: Update Portuguese translations
 - baculum: Ajax queue improvement in framework
 - baculum: Fix renaming config resources
 - baculum: Add graphs to job view page
 - baculum: Fix using offset in job file list query with MySQL catalog database
 - baculum: Show more detailed job file list - idea proposed by Wanderlei 
  Huttel
 - baculum: Rework job file list API endpoint
 - baculum: Add searching jobs by filename in restore wizard - idea proposed by 
  Wanderlei Huttel
 - baculum: Add job files API endpoint
 - Add code to retry a MySQL query after a deadlock
 - baculum: Update Portuguese translations
 - baculum: Add default days and limit values to status schedules API endpoint
 - baculum: Fix displaying multitextbox and multicombobox directive controls
 - baculum: Fix date filter on status schedule page
 - baculum: Fix #2570 fileset excludes settings with PHP 7.4
 - baculum: New features and improvements to multi-user interface and restricted 
  access



==================================================================

Release 9.6.6

20Sep20

This is a minor bug fix release. Unless there is some new major bug found,
this will be the last of the 9.6.x releases.  The next release major
release (a really big one) is currently scheduled for December.  More 
about this in a subsequent status report ...



18Sep20
 - baculum: Fix displaying date and time on volume view page
 - baculum: Fix #2564 changing volume status to Read-Only
 - baculum: Fix saving multicombobox control values
 - baculum: Fix multicombobox and multitextbox controls to work with PHP 7.4
 - baculum: Fix #2562 displaying date and time in tables on Safari
 - Update copyright year
 - Clarify SD vbackup device error message
 - Fix MT2554 :update upload_cache call in dircmd.c
 - zero malloced memory when SMARTALLOC not enabled
 - baculum: Fix #2558 saving day or day range in schedule resource - reported by 
   Jose Alberto
 - Fix MT2554 :upgrade upload_cache interface.
 - Eliminate compiler errors when smartalloc is turned off
 - baculum: Fix date formatter to work with PHP 7.4
 - baculum: Fix configure Bacula hosts page to work with PHP 7.4
 - baculum: Update Portuguese translations
 - baculum: Change colours in table headers and borders
 - baculum: Add remove runscript button
 - Fix #6366 About an issue with verify job level=DiskToCatalog
 - baculum: Close modal windows on pressing ESC key
 - baculum: Fix logout button on authorization failed page
 - baculum: Add local user authentication method support
 - baculum: Add date and time formatters - idea proposed by Wanderlei Huttel
 - baculum: Enable re-running jobs in async way and visual improvements
 - baculum: Change cursor over selectable table
 - Fix build script copyright detection
 - release: add code to detect Bacula Systems copyrights and fail release
 - Fix compilation of bsnapshot on Fedora

Bugs fixed/closed since last release:
2558 6366


===================================================================

Release 9.6.4

This is a major security and bug fix release. We suggest everyone
to upgrade as soon as possible.

One significant improvement is for the AWS S3 cloud driver. First the
code base has been brought much closer to the Enterprise version (still
a long ways to go). Second is that the community code now uses the latest
version of libs3 as maintained by Bacula Systems.  The libs3 code is
available as a tar file for Bacula version 9.6.4 at: 

   www.bacula.org/downloads/libs3-20200523.tar.gz

Note: Version 9.6.4 must be compiled with the above libs3 version or later.
To build libs3:
- Remove any libs3 package loaded by your OS
- Download above link
- tar xvfz libs3-20200523.tar.gz
- cd libs3-20200523
- make  # should have no errors
- sudo make install

Then when you do your Bacula ./configure <args> it should automatically
detect and use the libs3. The output from the ./configure will show
whether or not libs3 was found during the configuration. E.g.
   S3 support:                yes
in the output from ./configure.

08Jun20
 - Add configure variables to baculabackupreport. Patch from bug #2538
 - Fix orphaned buffers in cloud by adding truncate argument to end_of_job()
 - Improve clarity of Cloud part mismatches and make it an INFO message rather 
   than a WARNING since it corrects the catalog.
 - Small trivial change to check_parts
 - Backport more Enterprise cloud parts changes
 - Backport cloud upload code from Enterprise
 - Update s3_driver.c to new libs3 API calling sequence
 - Fix tray-monitor installation
 - Recompile ./configure
 - Add ./configure code to check for and enable/disable S3 support
 - win32: Fix org#2547 About possible NULL pointer dereference in get_memory_info
 - Ensure cloud driver loaded when listing cloud volumes
 - baculum: Request #2546 support for full restore when file records for backup 
   job are pruned
 - baculum: Fix problem with authorization error after upgrade
 - baculum: Add UPGRADE file
 - baculum: Fix returning value in TStyleDiff - generated notice with PHP 
   7.4
 - baculum: Remove execute bit for framework scripts
 - baculum: Fix displaying empty column button in table column visibility menu - 
  reported by Wanderlei Huttel
 - baculum: Update Polish translations
 - baculum: Update Portuguese translations
 - baculum: New user management. LDAP support. Role-based access control.
 - Fix new compiler warnings + always use bstrncpy not strncpy to ensure EOS at 
   end of string
 - Return smartalloc buffers zeroed -- future performance improvement
 - Improve scanning data/time, fixes bug #2472
 - Make ABORT mention segfault to clarify non-bug #2528
 - Make reading a short block a warning rather than error
 - baculum: Fix validators in run job modal window
 - Remove unused -t option in dbcheck.c -- fixes bug #2453
 - Fix bug 2523 -- spurious extra linking
 - Fix bug #2534 possible double free in error case
 - Fix possible sscanf overflows
 - Fix overflow from malicious FD reported by Pasi Saarinen
 - baculum: Add option to show time in job log - idea proposed by Wanderlei 
   Huttel
 - baculum: Add show log time parameter to job log endpoint
 - baculum: Add tip about using table row selection
 - Fix bug #2525 seg fault when doing estimate with accurate and MD5
 - baculum: Fix issues with SELinux support reported by Neil MacGregor
 - Correct some copyrights
 - Add Docker plugin rpm spec files

Bugs fixed/closed since last release:
2453 2472 2525 2528 2534 2538 2546 2547

===================================================================


               Release Notes for Bacula 9.6.3

This is a minor bug fix (mostly fixing incorrect copyrights) to Release-9.6.2.

09Mar20
 - Eliminate false error when droping postgres table MAC
 - Apply Carsten's character set fix for the docs. Many thanks!
 - Fix logic error in clearing bit on Windows
 - baculum: Update Portuguese translations
 - baculum: Update Polish translations
 - baculum: Add patch to PRADO framework 4.0.1 for supporting PostgreSQL 12 
  catalog database
 - baculum: Add support for PostgreSQL 12 catalog database
 - Enhance failed bpipe to changer error message
 - Clean up some incorrect copyrights
 - Correct spelling errors in messages
 - Add to plugins links
 - baculum: Add bulk actions for job history and volume tables
 - baculum: Update DataTables and its plugins
 - docker: Update copyright headers.
 - Update BSD copyright on *.conf.in files
 - docker: Remove unneeded tar binary.
 - Fix workaround for Sun C++ recommended by Phil Stracchino
 - baculum: Update Polish translations
 - baculum: Update Portuguese translations

Bugs fixed/closed since last release:
None

====================================================

Release 9.6.2

This is a minor new release with several new features and a number of bug
fixes.  The catalog datbase format remains unchanged from the 9.4.4 release

Note: Release-9.6.0 had a build error when using readline, and Release-9.6.1
had an inappropriate file size for the readline history file, so both releases
have been withdrawn.

Major Baculum New Features:
 - SELinux support
 - New graph types
 - Graphical client status
 - Graphical running job status
 - Capability to start, stop and restart components
 - Support for commands that can take a long time (label, estimate...)
 - List job files tab on the job history page
 - Bandwidth limit setting for client and for job
 - New statistics configuration page
 - Improvements to responsive interface
 - Option to show size unit values as decimal or binary bytes
 - Support for new directives
 - New Web controls (password, speed, multiple textbox)
 - New API functions
 - Job history list on job page

Bacula New features:
- Docker plugin.  Documentation for this plugin is not yet ready,
  but will be forthcoming within a few weeks.
- Statistics Collector for Dir, FD, and SD (interface to Graphite)
  - New Statistics resource
  Documentation for this feature is in the New Features section of
  the main manual
- Support for MacOS suspend in File daemon
- SD SyncOnClose directive in Device resource

26Feb20
 - Apply fix for history size from Martin Simmons
 - Fix missing part of patch 8135b9d21d -- readline truncate fix
 - baculum: Fix using bconsole with sudo on Fedora if SELinux is enabled
 - baculum: Add copy, CSV and column visibility buttons to tables
 - baculum: Add buttons and colvis DataTables plugins
 - baculum: Add additional values to job and volume API endpoints
 - docker: Replace realloc_pm() for check_size().
 - Update pluglib.
 - Fix Docker Plugin for accurate backup.
 - Docker: add baculatar docker image.
 - Win32: update Windows build to including needed collector files
 - Get Branch-9.4 ReleaseNotes
 - Update po POTFILES.in and version
 - Get ChangeLog from Branch-9.4
 - baculum: Update Polish translations for API and Web
 - baculum: Update Portuguese translations for API and Web
 - Fix cats-test.c compile
 - baculum: Upgrade W3.CSS from version 4.10 to 4.13
 - Add Docker Plugin for FileDaemon.
 - Add pluglib fd plugin support utilities.
 - Redesigning PM management add missing files.
 - baculum: Fix delete job button visibility
 - baculum: Add to BVFS lsdirs, lsfiles and versions endpoints new output=raw/json 
   parameter
 - baculum: Update spec and deb files
 - baculum: Do not try to switch to new user in API and Web install wizards
 - baculum: Improve Polish translations
 - baculum: Fix maximum length for basic auth password fields
 - baculum: Start storing basic auth passwords in APR MD5 format
 - baculum: Fix button to reopen change user password setting
 - baculum: Fix sorting clients in fileset browser window
 - baculum: Improve showing create new resource messages
 - baculum: Improve texts in restore wizard
 - baculum: Use new icons in restore and fileset browsers
 - baculum: Fix PHP error on storage view page with autochanger comming from 
  host different than main (reported by Jose Alberto)
 - baculum: Fix internal error on restore page if MySQL catalog database is 
  used
 - baculum: Avoid doing redundant API calls by job monitor
 - baculum: Add support to restore from copy jobs
 - baculum: Add API changes to support restore from copy jobs
 - baculum: Add script for checking if Baculum files are installed correctly
 - baculum: Refactor authentication, authorization and exceptions
 - Fix #5708 about "cancel all" command issue
 - baculum: Bandwidth limit window improvements
 - baculum: Add auto-refreshing job tables
 - baculum: Add progress bar to restore jobs on status client
 - baculum: Add job name parameter to monitor
 - baculum: Add table filters
 - baculum: Add restore progress bar
 - baculum: In job status avoid calling client if job isn't running
 - Fix compilation on Solaris
 - baculum: Extend max length for client secret field to maximum allowed secret 
  size
 - baculum: Improvements to messages resource
 - baculum: Implement swipe event and use it to hide main menu on mobile devices
 - baculum: Group directives into sections in config directive list
 - baculum: Fix problem with shaking spinning icons on Firefox
 - baculum: Add confirm window to delete job action
 - baculum: Add job history list on job page
 - baculum: Fix loading first job setting in run job window on window open
 - baculum: Add in API wizard example sudo configuration for bconsole and JSON 
  tools
 - baculum: Make resource config page buttons always available
 - baculum: Fix language setting in config wizard during first run
 - baculum: Fix refreshing job status only when actions tab is open
 - baculum: Miscellaneous improvements to schedule configuration
 - baculum: Extend combobox control to support associative arrays as data 
  source
 - Fix for #0005391: show negative values.
 - Fix #5546 about incorrect level for job resumed
 - baculum: Move refresh job button and log order button to job log tab
 - baculum: Set job values on job selection in run job window
 - baculum: Turn application mode to normal
 - baculum: Add jsmin-php as framework dependency
 - baculum: Fix small issues with old not using svg icons
 - Fix error on .ls when plugin name without ':'
 - baculum: Add list job files to job history view page
 - baculum: Add list job files API endpoint
 - tray-monitor: fix potential memory corruption
 - Fix #5461 #5513 #4717 About WroteVol non-zero message
 - Update Docker Plugin build procedure.
 - docker: Add Docker Plugin DKID unittest.
 - Add Docker Plugin regression tests - more files.
 - Add Docker Plugin regression tests.
 - build: Add Makefile update to fd plugin builds.
 - baculum: Fix PHP error on running job status page and client status page
 - baculum: Fix support for UTF-8 currency symbols in paths - reported by 
  Frédéric F.
 - Fix running job count in status output
 - baculum: Fix directing to default API page when API settings has not been 
  created yet
 - baculum: Set default refresh interval for status client
 - baculum: Improve selecting storage value in run job window
 - baculum: Fix saving to config empty runscript subresources
 - baculum: Add graphical running job status on running job page
 - baculum: Add progress bars to backup jobs displaying on status client page
 - baculum: Fix displaying SqlQuery value in selection type job directive
 - baculum: Add to client status modal window to set bandwidth limit for job
 - baculum: Add API endpoint to set job bandwidth limit
 - baculum: Add to client status modal window to set bandwidth limit for client
 - baculum: Add API endpoint to set client bandwidth limit
 - baculum: Add UnitType and AllowRemove parameters to speed type directive 
  control
 - baculum: Don not use data description and data dependencies modules initialization
 - baculum: Improve checking dependencies
 - baculum: Fix running job twice when job is running by run job window
 - baculum: Changes to proper working list type controls on page load
 - baculum: Change Font Awesome SVG icons into web fonts icons
 - Add new psk-enable-test
 - baculum: Fix removing fileset options subresources
 - baculum: Make loading configuration controls easier
 - baculum: Enable adding multiple file set file browser controls on the same 
  page
 - baculum: Fix using nested directives in repeater control
 - baculum: Misc changes to keep backward compatibility in API endpoints
 - baculum: Fix scrolling to new runscript subresource on add new runscript 
  action
 - baculum: Change way of working directive renderer
 - baculum: Split API panel, oauth, api and page parts into separate services
 - baculum: Add component start/stop/restart actions to Web
 - baculum: Update API SELinux module for new component action policies
 - baculum: Implement component start/stop/restart actions in API
 - baculum: Show error message on status client request if client is not available
 - baculum: Implement graphical status client
 - baculum: Update Font Awesome icons to version 5.9.0
 - baculum: Add output=raw/json parameter to show client API endpoint
 - baculum: Add status client API endpoint
 - baculum: Remove deprecated and not used directives
 - baculum: On restore wizard job list add link to job history for specific 
  jobid
 - baculum: Fix showing job size value on jobs on volume page
 - baculum: Minor fixes and improvements in fileset file browser
 - baculum: Allow dollar character in bconsole commands (used for paths)
 - baculum: Enable restoring data from locations included in paths defined in 
  FileSet
 - baculum: Make 'Run job' and 'Perform restore' buttons clickable at whole 
  theirs area
 - baculum: Miscellaneous improvements to use restore file browsers on different 
  screen sizes and mobile devices
 - baculum: Fix removing items from selected file browser in restore wizard
 - baculum: Unify config module menus look
 - baculum: Create multiple combobox control and use it in console ACL directives
 - baculum: Add timeout to first refresh job log to have log output earlier
 - baculum: Do not show unknown job level for admin job type
 - baculum: Add new directives and new resources support
 - baculum: Fix setting selected items in list directive controls
 - baculum: Add version number to API and Web - idea proposed by Wanderlei 
  Huttel
 - baculum: Disable emulation prepared statements for MySQL to solve problem 
  getting every value as string
 - baculum: Apply framework patch that fixes SQL error when native MySQL prepare 
  statements are used
 - baculum: Add new graph types
 - baculum: Add statistics resource support
 - baculum: Add option to show size unit values as decimal or binary bytes
 - Add a Bacula statistics collection routine.
 - Fix incorrect ASSERTD().
 - baculum: Fix showing unit for size and time period directive types
 - baculum: Add missing speed type control to support speed type directives - 
  reported by Wanderlei Huttel
 - Fix comment
 - baculum: Fix #2477 escaping backslashes in config in text directive types
 - Fix bug 2476 -- copy/migration jobs fail when waiting for a new Volume
 - Add copy-jobspan-label-wait-test to do_all
 - Add two new regression tests submitted by Martin Simmons for bug 2476
 - Add bsmtp Message-Id/MIME-Version/Content-Type headers.
 - baculum: Fix #2474 error 404 if document root path uses link with ending 
  slash - fix suggested by vondi
 - Add Michael Narigon as author for Mac heap implementation
 - Remove bacula32.def and bacula64.def.
 - Redesigning PM management and add support for macOS.
 - baculum: Add password field control and use it for password directives
 - baculum: Add SELinux modules for Web and API
 - baculum: Remove php database extensions dependency from web requirements
 - Add tests/restart-jobmedia-test to do_all
 - baculum: Update API documentation to job estimate endpoint
 - baculum: Use in run job window estimate command in background to avoid HTTP 
  timeout
 - baculum: Move running job estimation to background in API part
 - baculum: Prevent selecting in restore file browser directories placed in 
  locations that are outside paths defined in fileset - reported by Wanderlei 
  Huttel
 - baculum: Fix removing path items selected to restore in restore wizard
 - baculum: Fix clearing restore path field after selecting backup in restore 
  wizard
 - baculum: Update API documentation
 - baculum: Add API endpoints to update slots with and without barcodes and use 
  them in on web interface side
 - baculum: Use on web interface side new API endpoints to label volume with and 
  without barcodes
 - baculum: Add API endpoints to label volume with and without barcodes
 - baculum: Update run job API endpoint in API documentation
 - baculum: Request #2469 add start and cancel buttons on job history list 
  page
 - baculum: Add filesetid parameter to run job API endpoint
 - baculum: Set column visibility priorities for status schedule tables in 
  responsive mode
 - baculum: Add status schedule endpoint to API documentation
 - baculum: Fix showing graphs if exists finished job with empty start time 
  value
 - baculum: Fix TPhpFatalErrorException exception on job view page with PHP 
  version lower than 5.5
 - baculum: Extend log parser to support restore client, job name and volume 
  names
 - Rework fsync patch for win32
 - Fix Windows SD compilation
 - Add Cython detection
 - Add SyncOnClose Storage Device directive
 - Add db_get_jobmedia_record() function
 - Check JobMedia validity after an incomplete job


Bugs fixed/closed since last release:
0005391 2469 2474 2477 5461 5546 5708



========================================================================
Release 9.4.4

This is a bug fix release to 9.4.3.  It includes some fixes that fix
bad data records in Copy/Migration jobs or problems doing restores
of Copy/Migration jobs.

28May19
 - rpm: Fix mysql dependency for bacula-postgresql
 - Fix bug 2476 -- copy/migration jobs fail when waiting for a new Volume
 - Add copy-jobspan-label-wait-test to do_all
 - Add two new regression tests submitted by Martin Simmons for bug 2476
 - Remove bacula32.def and bacula64.def.
 - Add Michael Narigon as author for Mac heap implementation
 - Add tests/restart-jobmedia-test to do_all
 - Allow to hangup/blowup inside a file for tests
   slash - fix suggested by vondi
 - Add db_get_jobmedia_record() function
 - Check JobMedia validity after an incomplete job
 - baculum: Fix #2477 escaping backslashes in config in text directive types
 - baculum: Fix #2474 error 404 if document root path uses link with ending 
 - baculum: Remove php database extensions dependency from web requirements
 - baculum: Fix removing path items selected to restore in restore wizard
 - baculum: Fix clearing restore path field after selecting backup in restore 
    wizard
 - baculum: Fix TPhpFatalErrorException exception on job view page with PHP 
    version lower than 5.5

Bugs fixed/closed since last release:
2474 2476 2477


========================================================================
Release 9.4.3

This is a bug fix release for version 9.4.2.  It includes a number of bug
fixes and patches. 

Baculum: there have been significant additions and changes to Baculum.
If you want a web gui please check it out.

S3 driver: If you are trying to build the S3 drivers, please remember to use the
community supplied (from Bacula Enterprise) version of libs3.so found at:

https://www.bacula.org/downloads/libs3-20181010.tar.gz

As usual the binaries that correspond to this release will follow in
a week or two.

If there are no additional major bugs, this will be the last of the 9.4.x
releases.  The next release will have a number of new features, and will
require a major database upgrade (don't worry it will be easy -- just
run update_bacula_tables)

02May19
 - Fix Window bpipe-fd strncpy programming error
 - Change mysql my_bool to bool as it was removed from mysql
 - Improve assert message
 - examples: move backup-to-cdwriter.txt to move-backup-to-usb.txt
 - fix memory leak in DIR for copy-job
 - Skip empty lines when generating the FileSet from a command
 - Fix creation of bad JobMedia records in Incomplete Job
 - Add messages for Incomplete Jobs
 - Fix misplaced cancel check reported by Alain
 - Change round() to bround() to avoid library definition conflict
 - rpms: Fix bacula-cloud spec file
 - rpms: Add bacula-cloud spec file
 - rpms: Add missing isworm script
 - Use more appropriate computation for VolIndex when creating restore .bsr
 - Fix Daemon message "Message repeated X times" count
 - Fix Carsten's names
 - Make diff.pl adapt to different install locations
 - Fix #4598 Display JobIds used in the restore job log
 - Add smartalloc function to print the owner of a buffer
 - Avoid to use the same variable name for two different things in the cmd_parser 
   class
 - Fix #4433 about 'UPDATE File SET MD5='...' WHERE FileId=0' error when using 
   SpoolAttributes=no
 - Fix MaxVolumeBytes accounting after a mount request
 - Fix verify volume jobs with sparse files
 - Fix small memory leak with Console runscripts
 - Add 'prune jobs/files all' command
 - fix #4383 Sometime SD hangs when TLS and DEDUP are used together

 - baculum: Add status schedule page
 - baculum: Add status schedule API endpoint
 - baculum: Fix schedule directives setting
 - baculum: Update Portuguese translation file
 - baculum: Fix #2466 add plugin directive support in fileset resource
 - baculum: Fix updating whole Bacula config at once
 - baculum: Fix showing validation error if new config is incorrect
 - baculum: Fix setting multiple config resources at once
 - baculum: Fix renaming resources
 - baculum: Add links to resources in job log output
 - baculum: Update example web server config files and spec file
 - baculum: Fix list type directives on configure hosts page
 - baculum: Fix showing messages resource configuration
 - baculum: Add parent node property to directive list types
 - baculum: Add capability to define multiple drivetype and fstype directives in 
   fileset resource
 - baculum: Fix showing runscript subresource on job pages
 - baculum: Update new texts in Portuguese translation file
 - baculum: Add missing texts to translation files reported by Wanderlei Huttel
 - baculum: Update Portuguese translations
 - baculum: Fix showing schedule resource configuration on job view and job 
   history view pages
 - baculum: Fix returning one line output from bconsole
 - baculum: Fix restore wizard error when no fileset available for normal user 
   with limited access
 - baculum: Add capability to use many ACL Console directives in one config 
   resource
 - baculum: Add client ls command to openapi file
 - baculum: Add text box list control to support directives that can be defined 
   multiple times in one resource
 - baculum: Add cancel button to last step new job wizard
 - baculum: Change PoolType field from text box into combo box
 - baculum: Fix adding new schedule run directives
 - baculum: Add support to multiple schedule run directives
 - baculum: Fix in API part saving job runscript config if RunsWhen=Always
 - baculum: Fix adding paths to empty include block
 - baculum: Fix saving job runscript config if RunsWhen=Always
 - baculum: New create backup job wizard
 - baculum: Add API endpoint to list files/dirs on client


Bugs fixed/closed since last release:
2466 4383 4433 4598

=======================================================================
Release 9.4.2

This is a bug fix release for version 9.4.1.  It includes a number of bug
fixes and patches.  Thanks to the community for your participation.
9 bug reports were closed.  This version should fix virtually all 
the problems found on FreeBSD.

If you are trying to build the S3 drivers, please remember to use the
community supplied (from Bacula Enterprise) version of libs3.so found at:

https://www.bacula.org/downloads/libs3-20181010.tar.gz

04Feb19
 - Update Windows .def files
 - Change create_postgresql_database.in script to be more flexible
 - Implement eliminate verify records in dbcheck bug #2434
 - Enhance verify-voltocat-test to detect comparing deleted files
 - Fix bug #2452 VerifyToCatalog reports deleted files as being new
 - Use correct quoting for a character -- fixes previous patch
 - Recompile configure.in
 - Apply Carsten's multiarch patch fixes bug #2437
 - Apply Carsten's patch for adding CPPFLAGS to tools/gigaslam.c compile
 - Allow . to terminate sql queries prompts
 - baculum: Update Baculum API OpenAPI documentation
 - Fix rwlock_test unittest bug #2449 Only call thr_setconcurrency if it's 
   available. Fix order of linking and installation.
 - FixFix spelling errors found by lintian by Carston in bug #2436
 - Apply chmods from Leo in bug #2445
 - Add license files LICENSE and LICENSE-FOSS to the regression directory
 - Display daemon pid in .apiV2 status output
 - Attempt to ensure that ctest job output gets uploaded
 - Apply varargs patch from Martin for bug 2443
 - Apply recv() hide patch from Martin
 - Fix lz4.c register compilation from bug #2443
 - dbcheck: Improve error message when trying to prune Path records with BVFS is 
   used.
 - Update cdash for version 9.4
 - Fix bug #2448 bregex and bwild do not accept -l command line option
 - Partial update copyright year
 - Fix struct transfer_manager to be class transfer_manager
 - Print Device xxx requested by DIR disabled only if verbose is enabled in 
   SD
 - Add migrate-job-no-resource-test to all-disk-tests
 - Remove unused berrno call + return
 - Remove mention of Beta release from ReleaseNotes
 - Fix #3225 about Migration issue when the Job resource is no longer defined
 - baculum: Fix restore paths with apostrophe
 - baculum: Fix data level
 - Change endblock edit to unsigned -- suggested by Martin Simmons
 - Update DEPKGS_VERSION
 - baculum: Adapt Apache configs to version 2.4

Bugs fixed/closed since last release:
2434 2436 2437 2443 2445 2448 2449 2452 3225

====================================================================
Release 9.4.1

This is a minor bug fix release for 9.4.0.  It should fix a few of
the warning messages, but not all, on FreeBSD and Solaris.  More importantly
The ./configure process now properly detects that libs3 is installed
on your system.  If you do not want to use the Amazon S3 driver, this
update is not required.

In addition to this release, I have posted the current source code with
patches for libs3 to bacula.org. This package is needed if you wish to
build the S3 driver. You may download it from the following location:

https://www.bacula.org/downloads/libs3-20181010.tar.gz

21Dec18
 - Remove register attribute on variables as it is not supported by newer C++ 
   compilers
 - Fix regression from 9.2 when backporting Enterprise code in bsock code
 - Add missing default flag so that configure looks for libs3


=====================================================================
Release 9.4.0

This is a major release comprised of more than
13,000 lines of differences since version 9.2.2.  It has updates to Baculum
and small number of bug fixes and back ports from Bacula Systems Enterprise
since version 9.2.2, but primarily it has two new features ...

The main new feature is the addition support for using Amazon S3 (and other
*identical* S3 providers), and WORM tape cassettes.  Note: Azur, Oracle S3,
and Goggle S3 are not compatible with Amazon S3.

16Dec18
 - Add copyright and correct name on stop-restart-test
 - Fix #4449 about an incorrect pool selected with the restart command
 - Fix #4386 About incorrect permission on directories after a restore with 
   replace=ifnewer
 - Fix bug #4379 certain fields of Media record not reset after Truncate command
 - Revert "Update bdirjson.c"
 - Improve volume truncation error messages
 - Free ids buffer
 - Update PO files
 - Initial version and date update
 - Initial cut of ChangeLog and ReleaseNotes
 - Add use_dcr_only in cloud_dev.c so that manual truncate works
 - More Enterprise backports
 - More Enterprise backports + changes to the backporting
 - Minor backport from Enterprise + my own changes
 - Update bdirjson.c
 - Add pseudo WORM support for vtape
 - worm: Fix multiple display of the WORM Recycle message
 - Add first cut cloud drivers
 - Use bfopen in place of fopen
 - Fix #3574 Add "clients" option to the "help list" output
 - Add makedir() in fd_common.h
 - Add bfile is_plugin_data() API
 - Fix issue between FO_PORTABLE and FO_PORTABLE_DATA
   to api
 - Fix NOATTR detection
 - Implement worm cassette support
 - Make detection of duplicate M_SECURITY messages work
 - Remove unused prototype recv(len)
 - Add new security monitoring test
 - Implement new message numbers in stored/block.c
 - Fix incorrectly indicating: malformed message
 - Fix bugs #2335 and #2349 Volume messages printed many times
 - Add new test for bug printing many multiple Max Volume jobs= info
 - Add worning message about failure to update volume info
 - Improve error messages when JobMedia errors
 - Fix complier warning due to unused subroutine variable
 - Fix bug #2334 seg fault when releasing globals
 - Security: sleep(5) on error + aggregating identical messages
 - Update sellist unittests.
 - Update unittests for lockmgr.c and fix memory leak.
 - Update unittests fir ConfigFile/ini.c.
 - Update 'rm -f' for libtool $(RMF).
 - Correct libs/Makefile.in separator.
 - Update htable unittests.
 - Update sha1 unittests.
 - Add fnmatch unittests.
 - Update unit tests and add regression tests for it.
 - Fix escaping special characters in bvfs restore for sqlite catalog
 - Add new manual test
 - baculum: Do not store any main oauth2 client nor main http basic user in api 
   config
 - Fix tls_bsock_shutdown() compilation when no TLS available.
 - Fix bsock compilation warning.
 - Fix bsock compilation problem in *BSD.
 - Permit negative FileIndex values in the catalog
 - Fix format string is not a string literal (potentially insecure).

 - baculum: Update Japanese translation files
 - baculum: Fix availability web config wizard when there is problem with access 
 - baculum: Add new size directive control
 - baculum: Fix basic auth user setting in API install wizard
 - baculum: Fix undefined index error on web config wizard page
 - baculum: Fix #2418 creating or updating new resource
 - baculum: Fix size unit formatters in restore browser reported by Wanderlei 
   Huttel
 - baculum: Fix logging output if it is not possible to decode to json
 - baculum: Improve error handling in web part
 - baculum: Fix formatted size and time values on the volume details page
 - baculum: Fix saving logs when an error occurs
 - baculum: API panel and wizard improvements
 - baculum: Add name field to api client parameters

Bugs fixed/closed since last release:
2334 2335 2418 3574 4379 4386 4449

====================== Release 9.2.2 ======================
Release 9.2.2

This is a minor bug fix release (6,143 lines of diff).  The main fixes to
this version are: eliminate most messages that are repeately printed,
eliminate malformed message output, error when compiling without TLS, ... 

Note: if you are running MySQL and have not recently executed
src/cats/update_bacula_tables, please do so.  It will not change your
database version but it will fix some potential MySQL problems (for more
detals see the release notes for version 9.2.1).

06Nov18
 - Fix bug #2421 by Adam about quoting Windows paths in CreateChildProcess()
 - Update po files
 - Implement new message numbers in stored/block.c
 - Fix incorrectly indicating: malformed message
 - Fix bugs #2335 and #2349 Volume messages printed many times
 - Add new test for bug printing many multiple Max Volume jobs= info
 - Fix complier warning due to unused subroutine variable
 - Fix bug #2334 seg fault when releasing globals
 - Fix escaping special characters in bvfs restore for sqlite catalog
 - Fix tls_bsock_shutdown() compilation when no TLS available.
 - Fix bsock compilation warning.
 - Fix bsock compilation problem in *BSD.
 - Add new manual test

 - rpm: Fix mysql dependency for bacula-postgresql

 - baculum: Fix basic auth user setting in API install wizard
 - baculum: Improve error handling in web part
 - baculum: Fix formatted size and time values on the volume details page
 - baculum: Fix undefined index error on web config wizard page
 - baculum: Fix #2418 creating or updating new resource
 - baculum: Fix size unit formatters in restore browser reported by Wanderlei 
   Huttel
 - baculum: Do not store any main oauth2 client nor main http basic user in api 
   config
 - baculum: Update Japanese translation files
 - baculum: Fix availability web config wizard when there is problem with access 
   to api
 - baculum: Add new size directive control
 - baculum: Fix logging output if it is not possible to decode to json
 - baculum: Fix saving logs when an error occurs
 - baculum: API panel and wizard improvements
 - baculum: Add name field to api client parameters

Bugs fixed/closed since last release:
2334 2335 2418 2421


=======================================================================
Release 9.2.1

This is a bug fix release. It also contains some refactoring. That said,
there are 10,909 lines of diff between release 9.2.0 and this release.
One major improvement is that this release should eliminate the persistent
problem we have seen with MySQL unhappy with zero DATETIME fields.  If you
have problems with that, please simply execute the script update_bacula_tables
found in the <bacula>/src/cats library.  It will modify the table default
values for DATETIME fields to be friendly to the whims of MySQL and MariaDB.

12Aug18
 - baculum: Fix saving directives in messages resource
 - Refactoring of BSOCK and introducing BSOCKCORE.
 - baculum: Update API documentation
 - baculum: Add status endpoint to available scopes endpoints
 - Make print_ls_output identify delete files more clearly
 - Backport stored/vbackup.c
 - baculum: Add status director and status storage endpoints
 - baculum: Add type and level filters to jobs endpoint
 - baculum: Add support for .api 2 command in bconsole module
 - Implement a keepalive on bpipe sockets fixes bug #2347
 - Backport bpipe enhancements
 - Permit catalog to contain negative FileIndexes
 - Fix bug #2319 wrong port value stored in bsock giving incorrect error messages
 - baculum: Add to jobs endpoint filtering by client and clientid
 - Fix bug #2410 bdirjson output incorrect for day greater than 24
 - Attempt to avoid MySQL complaints about not allowing zero or empty in DATETIME
 - Add M_SECURITY when connection is bad + fix bug where invalid probes sent to 
   Dir
 - baculum: Fix schedule single day value setting
 - Fix bug #2286 copied jobs always have level=Incremental
 - baculum: Fix add slot parameter to label command
 - baculum: Fix restoring backup from deleted clients
 - baculum: Fix click action on remove config resource button
 - baculum: Fix framework validation for active list type controls
 - baculum: Implement ideas from Wanderlei Huttel
 - Fix bug 2395 problem with man dir
 - baculum: Fix saving subresources in config
 - Start work on HAVE_CLIENT_ONLY install
 - Switch to using /lib/systemd/system to install service files
 - Install Bacula systemd files in /etc/systemd/system
 - baculum: Update Portuguese translations
 - baculum: Fix group most recent backups option in restore wizard for mysql
 - Fix bug #2404 uninstall systemd service
 - Fix warning during compilations of mainwin.cpp
 - baculum: Implement second part ideas and fixes proposed by Wanderlei Huttel
 - Update catalog update scripts in updatedb directory
 - Fix bug #2340. Display of db_driver
 - Add warning messages for bad or old self-signed certificates
 - baculum: Fix #2403 error while writing diraddress directive in Bacula config
 - baculum: Implement ideas and fixes proposed by Wanderlei Huttel
 - baculum: Update Portuguese translations
 - baculum: Fix pool does not exist error on pool details page
 - baculum: Fix create directive base method
 - rpm: Fix MySQL dependency on bacula-postgresql package

Bugs fixed/closed since last release:
2410 2389 2286 2319 2340 2347 2357 2403 2404 2405 2395 2392

=====================================================================

Release 9.2.0

This is one of the biggest Bacula release ever made.  It has
almost 540,000 lines of diff output between Release 9.0.8 and
this release.

This is a major new release with a new version number. It has been
very thoroughly tested, but as always, please backup any previous
version and test this version prior to putting it into production.

For the most part the changes were contributed to the Bacula 
project by Bacula Systems SA and myself, but there were a number
of other contributors that I thank.

Database Update
---------------
There are no changes required to the catalog database.

Compatibility:
--------------
As always, both the Community Director and Storage daemon(s) must be upgraded
at the same time.  Any File daemon running on the same machine as a Director
or Storage daemon must be of the same version.

Older File Daemons should be compatible with the 9.2.0 Director and Storage
daemons.  There should be no need to upgrade older File Daemons.

20Jul18
 - Separate dequeuing msgs and dequeuing daemon msgs
 - Replace uint with uint32_t
 - Reset default status schedule limit to 30
 - Comment out use of uint that breaks Windows build
 - Update win32 .def files
 - Fix concurrent acquire/release of device
 - Correct copyright
 - Fix compiler warning generated by prior commit 1aad2088d21a3
 - Backport Enterprise src/findlib
 - Backport Enterprise src/filed
 - Backport Enterprise src/lib
 - Add debug code for bug #2356
 - Fix bug #2385 -- compiler bug IMO
 - fix #3945: Add "ocfs2" to list of filesystems known by "FsType" directive
 - Backport parts of src/dird to community
 - Use bstrcmp in place of strcmp
 - Recompile configure
 - Update config.guess and config.sub
 - Fix #3615 about bconsole Socket errors reported in the bacula log file
 - Fix permissions of mtx-changer.conf
 - Use /dev/sg0 rather than /dev/sg1 so vtape devices work
 - Make out of freespace non-fatal for removable devices -- i.e. behaves like 
   tape
 - Pull latest tls*.pem from BEE
 - Fix #3854 missing tls library initialization in bdirjson, bfdjson, bsdjson 
   and bbconsjson
 - Fix bug #2212 where restore jobid=nn file=xxx restores the files twice
 - Apply patch from Wandlei Huttel to add Run Time and suffix to Restored 
   bytes
 - Fix bug #2343 where truncate of explicit Volume name truncates non-purged 
   volumes
 - Fix some file execute permissions. Fixes bug #2389
 - Fix license problems in Bug #2382
 - Apply patch from Leo to fix bug 2192
 - Fix bad placement of jcr->pool reference as pointed out by Martin Simmons
 - rpm: Add OpenSuse Leap 42.3
 - rpm: Update bacula.spec for Fedora 27
 - Fix #3824 about incorrect setdebug command description
 - Fix Solaris 10 compilation error on BXATTR when no linkat(2) found.
 - win32: Fix backup issue with path > 250 char
 - Fix #3672 about bdirjson issue with the Autochanger directive
 - Enable build of Windows 64 bit tray monitor
 - Fix build of Windows tray-monitor
 - Some changes to configure.in
 - Update some old copyrights
 - Update some old copyrights
 - Fix showing PkiCipher and PkiDigest values in bfdjson output
 - Fix buffer overrun at BXATTR_Solaris::os_get_xattr_names.
 - Bring Branch-9.1 up to date with Branch-9.0
 - Fix #3745 update the client SQL record after a reload
 - Fix 'grep -m' when '-m' option is not available.
 - Update the build for ACL/XATTR support.
 - Add some debugging information to bacl_solaris.
 - Fix backup ACL/XATTR when fatal error and not only error.
 - Fix Solaris XATTR support on Solaris 11.
 - Fix compile error on !HAVE_EXTENDED_ACL
 - Add some debugging messages.
 - Fix compilation warning on FreeBSD.
 - Add command to change the pool of a job and the associated volumes
 - Fix #3593 VirtualFull will select jobs to consolidate using Job name in 
   addition to Client/FileSet
 - Do not increment the device num_writers if the call to dir_update_volume_info() 
   fails
 - Add prune option to select volumes from a/all pool(s)
 - rpm: Add Fedora26-64 platform
 - Add the RestoreClient directive for Restore job.
 - Implementaion of .ls command for Plugins.
 - Use correct SQL table encoding for Postgresql 10.x
 - Fix Where/Replace parameter displayed in the Restore job summary
 - use pthread_kill() instead of pthread_cancel() to terminate SD_msg_chan
 - Recompile configure.in
 - Recompile configure.in
 - Correction of my_name_is() function using realpath()
 - Add a detection of realpath() function to configure.
 - Fix tray-monitor compilation
 - Use breaddir() in the tray monitor
 - file_dev.c: replace readdir_r() wit new breaddir()
 - new breaddir() function to replace readdir_r() + core update
 - Fix #3098 Add debug tag 'record' for traces about records in the SD
 - Fix #1826 Add Job Where and Replace variables to the Restore job summary
 - Remove tests about "NULL Volume name. This shouldn't happen!!!*
   options to api restore
 - Port missing RestoreObject Plugin Config code from BEE.
 - Enhance "status schedule" function to allow multiple job= and client= filters
 - Add next_name() function to scan string lists
 - Fix #1170. Enhance "status schedule" command. Display ordered output, add 
   Client and FileSet filters.
 - bvfs: Add clients= option to .bvfs_get_jobids to handle clusters
 - Add delete client bconsole command
 - Fix #2910 about a problem in the "status network" command when the client is 
   not reachable
 - Fix #1108 Enhance setdebug help command and console completion
 - baculum: Fix SQL grouping error in restore wizard reported by Rasmus Linden
 - baculum: Fix cancel button in web config wizard
 - baculum: Web interface password is no longer stored in settings.conf
 - baculum: Fix path validator for UTF-8 characters
 - baculum: Add capability to set maximum numer of jobs visible in tables
 - baculum: Add prune and purge actions to volume view page
 - baculum: Fix compatibility with old api for prune and purge actions
 - baculum: Update Portuguese translations
 - baculum: Fix catching API exceptions
 - baculum: Clean up theme Baculum-v1
 - baculum: Fix initializing new resource page
 - baculum: Add button to set job log order
 - baculum: Add manual loading CSS files with versioning
 - baculum: Move API panel CSS files to separate directory
 - baculum: Move Web CSS files to separate directory
 - baculum: Fix not showing 'gui on' command in bconsole output
 - baculum: Loading table data performance improvements
 - baculum: Fix sending path load request by enter key
 - baculum: Add patch to fix gettext class file in framework
 - baculum: Add htaccess file to framework directory
 - baculum: Update rpm and deb templates with apache and lighttpd config files
 - baculum: Update example api endpoints
 - baculum: Adapt Web and API to new framework version
 - baculum: Updated PRADO framework to version 4.0.1
 - baculum: Highlight main menu items for subpages
 - baculum: API v1 documentation as open API file
 - baculum: Update Web requests form for the new API v1
 - baculum: New improved version API v1
 - baculum: Fix link to job history page
 - baculum: Fix previous step button in restore wizard
 - baculum: Enable debug for first config wizard run
 - baculum: Fix directing to wizard if application config doesn't exist
 - baculum: Fix opening configuration tabs bug reported by Heitor Faria
 - baculum: Set curl connection timeout
 - baculum: Show error message after connection to api test
 - baculum: Update LICENSE file
 - baculum: Solve old browser cache problem for javascript after upgrade
 - baculum: New redesigned web interface
 - baculum: Changes in api for the redesigned web interface
 - baculum: Fix saving boolean values in schedule Run directive
 - baculum: Add link to go back from job configuration window
 - baculum: Add new volumes required api endpoint
 - baculum: Add listbox control and use it for base and device directives
 - baculum: Fix showing verify job fields in job run configuration window
 - baculum: Revert back volume pool name in volume list window
 - baculum: Fix error message about disabled bconsole
 - baculum: API endpoints code refactor
 - baculum: Add state, number, boolean and id validators
 - baculum: Return bconsole disabled error if bconsole support isn't enabled
 - baculum: Remove unused api endpoints
 - baculum: Fix oauth2 client working in the web part
 - baculum: Fix auth setting radio buttons alignement
 - baculum: Enlarge interface height to 100%
 - baculum: Add more information to cURL error
 - baculum: Stop using hidden fields to store item identifiers
 - baculum: Fix redundant loading users portlet
 - baculum: Add required config fields asterisk mark
 - baculum: New reworked restore wizard
 - baculum: Wizards view improvements
 - baculum: Add restore hardlinks support in api
 - baculum: Add strip_prefix, add_prefix, add_suffix and regex_where restore 
 - baculum: Fix link to job history page
 - baculum: Fix previous step button in restore wizard
 - baculum: Enable debug for first config wizard run
 - baculum: Fix directing to wizard if application config doesn't exist
 - baculum: Fix opening configuration tabs bug reported by Heitor Faria
 - baculum: Set curl connection timeout
 - baculum: Show error message after connection to api test
 - baculum: Update LICENSE file
 - baculum: Solve old browser cache problem for javascript after upgrade
 - baculum: New redesigned web interface
 - baculum: Changes in api for the redesigned web interface

Bugs fixed/closed since last release:
1108 1170 1826 2212 2343 2356 2382 2385 2389 2910 3098 3593 3615 3672 3745
3824 3854 3945


=======================================================================

Release 9.0.8

This is a minor release that fixes a couple of bugs and corrects
some copyrights that were not totally correct.

28May18
 - Fix bug #2212 where restore jobid=nn file=xxx restores the files twice
 - Pull regression truncate-test from Branch-9.1
 - Apply patch from Wandlei Huttel to add Run Time and suffix to Restored 
   bytes
 - Fix bug #2343 where truncate of explicit Volume name truncates non-purged 
   volumes
 - Fix some file execute permissions. Fixes bug #2389
 - Fix license problems in Bug #2382
 - Apply patch from Leo to fix bug 2192
 - Fix bad placement of jcr->pool reference as pointed out by Martin Simmons
 - rpm: Add OpenSuse Leap 42.3
 - rpm: Update bacula.spec for Fedora 27
 - baculum: Fix SQL grouping error in restore wizard reported by Rasmus Linden
 - Update some old copyrights
 - baculum: Update Portuguese translations
 - Remove old Bacula Systems notices

Bugs fixed/closed since last release:
2212 2320 2349 2354 2379 2382 2383 2330 2054
2343 2369 2194 2359 2151 2366 2353 2381 2378


=======================================================

Release 9.0.7

This is a significant release because it now has the Windows code
reintegrated and updated to work with this version.  Other than
Baculum updates and the new Windows update, there is no significant
change to the other code.  

If you wish to use the Windows 9.0.7 File daemon binaries with 
your existing 9.0.x Bacula Director and Storage daemon it should
work fine but has not been tested.

The 64 bit version of the Windows binaries has been installed and
very quickly tested, as a consequence, please test it carefully before
putting into production.  There seem to be some minor installation errors
that are probably related to .conf files.  Also the Windows binaries do
not yet contain the tray-monitor or the old Exchange plug.  Both currently
fail to build.

18Apr18
 - Remove NSIS debug
 - baculum: Fix opening configuration tabs bug reported by Heitor Faria
 - Restore win32 dir from Branch-5.2 and update it
 - Add Phil Stracchino's fix for Qt5
 - baculum: Fix saving boolean values in schedule Run directive
 - rpm: Add Fedora26-64 platform
 - baculum: Add link to go back from job configuration window
 - Use correct SQL table encoding for Postgresql 10.x
 - baculum: Add listbox control and use it for base and device directives
 - baculum: Fix showing verify job fields in job run configuration window
 - baculum: Revert back volume pool name in volume list window
 - baculum: Fix error message about disabled bconsole
 - baculum: API endpoints code refactor
 - baculum: Add state, number, boolean and id validators
 - baculum: Return bconsole disabled error if bconsole support isn't enabled
 - baculum: Remove unused api endpoints
 - baculum: Fix oauth2 client working in the web part
 - baculum: Fix auth setting radio buttons alignement
 - baculum: Enlarge interface height to 100%
 - baculum: Add more information to cURL error
 - baculum: New reworked restore wizard
 - baculum: Wizards view improvements
 - baculum: Add restore hardlinks support in api
 - baculum: Add strip_prefix, add_prefix, add_suffix and regex_where restore 
   options to api restore
 - Port missing RestoreObject Plugin Config code from BEE.
 - baculum: Stop using hidden fields to store item identifiers
 - baculum: Fix redundant loading users portlet
 - baculum: Add required config fields asterisk mark

Bugs fixed/closed since last release:
None


==============================================================

Release 9.0.6

This is a bug fix and enhancement release. The two major enhancements are
support for Qt5 in bat and the tray monitor, and support for OpenSSL-1.1.
There were also a number of nice bug fixes. Thanks to the users who 
supplied patches for the enhancements and bug fixes. They are much 
appreciated.


19Nov17
 - Update AUTHORS for recent commits
 - Remove incorrecly placed openssl-compat.h
 - Add openssl-compat.h which went in wrong directory
 - baculum: Add removing single resource
 - baculum: Add module to check resource dependencies
 - baculum: Fix saving names with spaces inside schedule Run directive
 - baculum: Fix saving entire config by api request
 - Backout vol size tests in previous attempt to fix bug #2349
 - Fix compiler warning in previous patch
 - Apply patches from bugs #2325 and #2326 to fix FIFO bugs
 - Fix bug #2315 INTEGER misspelled in update_sqlite3_tables.in
 - Try to fix bug #2349 multiple recycle messages
 - Add support for items with comma in ini_store_alist_str()
 - Fix segfault after the reload of an incorrect configuration
 - Add temporary fix to avoid a deadlock after a reload command on an incorrect 
   configuration
 - baculum: Throw 404 error if service not known
 - Fix race condition between setip and the access to CLIENT::address()
 - Fix #3284 about Client address not reloaded properly
 - baculum: Use home page url when an error is shown
 - Fix bug #2346 Dir blocks when max reloads reached
 - baculum: Send config to api server as json
 - Remove enterprise code that breaks Mac install -- fixes bug #2351
 - Correct FS size calculation for FreeBSD, Solaris, and Windows
 - baculum: Enable Portuguese language support in makefile
 - baculum: Fix required directives in schedule resource configuration
 - baculum: Fix saving messages resource
 - baculum: Improve slow reloading config resource list
 - crypto: remove most of OpenSSL initcallbacks for 1.1
 - Update ACL/XATTR code and define new ACL/XATTR API for Plugins.
 - baculum: Fix numeric password setting bug reported by Heitor Faria
 - crypto: convert EVP_PKEY access and remainings bits for OpenSSL 1.1
 - crypto: convert EVP_MD_CTX + EVP_CIPHER_CTX to OpenSSL 1.1
 - crypto: Use DEFINE_STACK_OF()
 - crypto: Add a tiny OpenSSL compat level
 - crypto: remove support for ancient openssl
 - fix #3269 obey the user choice of "Are you sure you want to delete X JobIds
 - Add restore wizard to the tray monitor.
 - Preparation fixes: remove some warning
 - Add ASSERTD() to track NULL Volume name error
 - Add "noautoparent" restore command option to disable the automatic parent 
  directory selection
 - Make qt-console compatible to Qt5 (Qt4 still work)

Bugs fixed/closed since last release:
2315 2325 2346 2349 2351


======================================================================

Release 9.0.5

This is an important bug fix release.  In particular it fixes the cases
where Bacula would print a very large number of error messages. Additional
backported code from Bacula Enterprise is included as well as updates to
the rpm scripts.  A number of minor Baculum issues have also been
corrected.

01Nov17
 - Use if exists on dropping MAC table in postgres. Fixes bug #2314
 - Fix bdirjson display of Minutes. Fixes bug #2318
 - baculum: Set default language if no language set
 - baculum: Fix language setting in api
 - baculum: Update generated .mo files for api
 - baculum: Add missing texts to translations
 - baculum: Fix add to translation static texts on the api default page
 - baculum: Fix missing session start
 - Make verify job log same as other logs -- fixes bug #2328
 - Take a more conservative approach for setting killable true
 - Add extra safety for readdir buffer

31Oct17
 - Retab systemd/Makefile.in
 - Don't require mount for @piddir@
 - Use Debian systemd start/stop scripts supplied by Sven Hartge

29Oct17
 - Fix bug #2316 add CacheRetention to Pool
 - Skip tape ioctls on FreeBSD when using a FIFO fixes bug #2324
 - Fix bug #2338 to not truncate already truncated volumes
 - Remove some old C int code and use bool

28Oct17
 - Remove unused lib/lz4.c.orig file
 - Update AUTHORS file
 - Mark Volume read-only only if no access rights or read-only partition
 - Add -P daemon option to supress creating PID file
 - Fix too big copy to test FD plugin_ctx

26Oct17
 - Backport Enterprise code

23Oct17
 - When read-only volume found mark it in catalog -- fixes bug #2337
 - Make out of space on partition fatal
 - Fix bug 2323 -- loop exit condition was backward and add error message
 - Add missing copy-plugin-confs for regress
 - Fix bug reported by jesper@schmitz.computer where bat hangs on FreeBSD

08Oct17
 - baculum: Fix reading and writing schedule resource

15Sep17
 - baculum: Fix undefined offset error during saving director config
 - baculum: Fix listing days of week in schedule setting

14Sep17
 - baculum: Fix saving schedule run directive value

12Sep17
 - rpm: Add missing script baculabackupreport and query.sql for Suse
 - rpm: Add missing libbacsd* file and tapealert script to Suse rpm spec file
 - rpm: Add missing libs bbconsjson, bdirjson and bsdjson to Suse rpm spec 
  file
 - rpm: Add aligned plugin rpm spec file for Suse
 - rpm: Add bacula-tray-monitor.desktop launcher in scripts directory
 - rpm: Add Suse Linux ES 12.1 platform

11Sep17
 - rpm: Add bacula-tray-monitor.desktop file in script dir

Bugs fixed/closed since last release:
2314 2316 2318 2324 2328 2337 2338

=================================================================
Release 9.0.4
This is a minor bug fix release. The main fix in this release
is to allow SQLite3 to work.

Please note: SQLite3 has been depreciated for a long time. If the
community will step forward (as it did in this case) and prepare
the appropriate make_sqlite3_tables and update_sqlite3_tables files,
we can continue to leave the SQLite3 code in Bacula.  However, we
strongly urge users to update to MySQL, MariaDB, and PostgreSQL,
which are our supported SQL databases.

06Sep17
 - Update po files
 - Fix SQLite3 upgrade tables script fixes bug #2306
 - baculum: Fix language setting in config file
 - Upgrade to latest lz4.c to fix bug #2310 bus error on 64 bit Solaris
 - Recompile configure.in
 - Ensure systemd/bacula.conf is created by configure fixed bug #2307
 - Fix compiler warning noted in bug #2309
 - Fix SQLite3 Version bug #2305
 - Remove unused variable to elimiate compiler warning
 - Recompile configure.in
 - Fix #2925 Do not try to stop non backup jobs (virtualfull, copy, migration, 
  restore, etc...)
 - baculum: Fix broken symbolic links for lang files
 - don't use add_event() when flag "l" is not set
 - core: bwlimit measure bandwidth
 - core: bwlimit handle backlog and allow burst
 - Do not purge running jobs in autoprune

Bugs fixed/closed since last release:
2305 2306 2307 2309 2310 2925

==================================================================
Release 9.0.3

This is a minor bug fix release.

08Aug17
 - baculum: Fix access denied error on api install wizard page
 - baculum: Remove assigning to api host when user is deleted
 - baculum: Fix empty admin setting
 - baculum: Add ability to assign host to specific user
 - baculum: Fix bconsole test connection for new api host that works with new 
   director
 - baculum: Fix sqlite db support
 - Fix bug #2301 Solaris Available space incorrectly reported by turning off the 
   output for Solaris
 - Fix bug #2300 mount/unmount/release of single tape drive does not work
 - baculum: Fix bconsole connection test in config wizard
 - baculum: Fix writing config for schedule and message names with space
 - bpipe: Fix compiler warning
 - baculum: Fix drag & drop file version elements
 - baculum: Add fileset info endpoint and use it in restore wizard
 - baculum: Use client name instead of clientid and start using fileset to 
   prepare restore tree
 - baculum: Remove fileset parameter from run restore
 - baculum: Fix lstat regex pattern
 - baculum: Get the most recent jobs by client and fileset or by clientid and 
   filesetid
 - Fix: bug #3048: jobs are stuck in endless loop in reserve.c
 - Add total time to test.out file
 - baculum: Add restore job selection in restore job wizard
 - Enhance verify job report from bug 2249

Bugs fixed/closed since last release:
2300 2301 3048


===============================================================

This is a minor bug fix release, but a few of the bugs are important.
The main items fixed are:

- Postgresql should now work with Postgresql prior to 9.0
  Note: the ssl connection feature added in 9.0 is not available on
  postgresql servers older than 9.0 (it needs the new connection API).
- The issues with MariaDB (reconnect variable) are now fixed
- The problem of the btape "test" command finding a wrong number
  of files in the append test was a bug.  It is now fixed.  It is
  unlikely that it affected anything but btape.
- The bacula-tray-monitor.deskop script is released in the scripts
  directory.
- We recommend that you build with libz and lzo library support (the
  developer packages must be installed when building, and the shared 
  object libraries must be installed at run time).  However we have
  modified the code so that Bacula *should* build and run with either
  or both libz or lzo absent.

23Jul17
 - Use Bacula in place of Libz variables so we can build with/without
   libz and lzo
 - Apply ideas from bug #2255 prettier status slots output
 - Configure and install bacula-tray-monitor.desktop
 - Fix btape test which counted files incorrectly on EOT
 - Fix bug #2296 where Bacula would not compile with postgres 8 or older
 - Fix bug #2294 Bacula does not build with MariaDB 10.2
 - baculum: Fix multiple directors support
 - baculum: Fix showing errors from the API

Bugs fixed/closed since last release:
2255 2294 2296


==================================================================

Release 9.0.1 12Jul17:

This is a minor bug fix release that mainly to include the new
tray-monitor files that were omitted. The tray-monitor now builds
and runs at least on Ubuntu Linux.

12Jul17
 - Remove two incorrect trailing commas in bsock.h
 - Fix bug #2293 bad big endian detection in lz4.c
 - Add new tray-monitor files that were omitted in the backport from Enterprise
 - bvfs: Do not insert deleted directories in PathVisibility table
 - Fix compilation for Debian Stretch with GCC 6.3

Bugs fixed/closed since last release:
2293

========

This is either the biggest Bacula release ever made or one of the
biggest ones. Even without the new Aligned Volumes source code, which
is substantial, there are over 400,000 lines of diff output between
Release 7.4.7 and the release of 9.0.0

This is a major new release with a new version number. It has been
very thoroughly tested, but as always, please backup any previous
version and test this version prior to putting it into production.

For the most part the changes were contributed to the Bacula 
project by Bacula Systems SA and myself, but there were a number
of other contributors that I thank.

Database Update
---------------
This version of Bacula requires a database update.  So either you or the
installation process must apply the update_bacula_tables script.  As a
precaution, please do a database dump or run your nightly database backup
prior to running the update script.

Compatibility:
--------------
As always, both the Community Director and Storage daemon(s) must be upgraded
at the same time.  Any File daemon running on the same machine as a Director
or Storage daemon must be of the same version.

Older File Daemons should be compatible with the 9.0.0 Director and Storage
daemons.  There should be no need to upgrade older File Daemons.

Packagers:
---------
There are a good number of new binaries (e.g.  bbconsjson, bdirjson,
bfdjson, and bsdjson) to install; a new tapealert script file that should
be installed; and some new shared objects (e.g.  libbacsd).  The
dvd-handler script has been removed.  Note also to run the
update_bacula_tables script after having dumped the catalog to bring any
existing catalog up to the new version needed for Bacula 9.0.0.

New Features:
-------------
Please see the New Features chapter of the manual for documentation on
the new features.  The new features are currently only in the New Features
chapter and have not yet been integrated into the main chapters of the
manual.

New Features (summary):
-----------------------

 - Major rewrite of the Storage daemon to: put all drivers in class 
   structures, provide better separation of core/driver code, add new 
   drivers (aligned volumes, cloud), simplifies core code, allows loadable
   device drivers much like plugins but which are better integrated into
   the SD.
 - There are a number of new Bacula Systems whitepapers available on
   www.bacula.org, and a few more will be coming in the next few months.
 - New unique message id will be added to every message (designed but
   not yet implemented).

Core Features:
 - Implement a drive usage counter to do round robin drive assignment
 - Enhance functionality of TapeAlert
 - Implement a "Perpetual Virtual Full" feature that creates a Virtual Full backup
   that is updated every day
 - Increase Director's default "Maximum Concurrent Jobs" setting from 1 to 20
 - Add "PluginDirectory" by default in bacula-sd.conf and bacula-fd.conf
 - Add support for terabytes in sizes. Submitted by Wanderlei Huttel.
 - Restore mtime & atime for symlinks
 - New "status network" command to test the connection and the bandwidth
   between a Client and a Storage Daemon
 - New Tape Alert tracking
 - Loadable SD device drivers
 - PostgeSQL SSL connections permitted
 - JobStatistics improved
 - DB update required
 - Autochanger improvements to group Devices
 - Improved .estimate command
 - Comm line compression
 - Separate bxxjson programs for Console, Dir, FD, SD to output .conf contents
   in Json for easier reading with programs
 - Read Only storage devices


Bconsole Features:
 - Add "ExpiresIn" field in list and llist media output
 - Add command to change the priority of a running job (update jobid=xxx priority=yyy)
 - Add level= and jobtype= parameters to the "list jobs" command
 - Add option to bconsole to list and select a specific Console
 - Add shortcut to RunScript console commands. Submitted by Wanderlei Huttel. 
 - Display "IgnoreFileSetChanges" in show fileset command (#2107)
 - Display PrefixLinks in "show job" output
 - Display permission bits in .bvfs_decode
 - Display the Comment field in "llist job" command
 - Add "ActionOnPurge" field to "llist pool" command. Fix #2487
 - Add "long" keyword to list command, ie "list long job". This is 
   essentially an alias fo the "llist" command.
 - Modify the "setbandwidth" limit parameter to accept speed input. ex: limit=10kb/s
 - Modify the "setbandwidth" limit parameter so that the default 
   is no longer kb/s but b/s. 
 - Do not show disabled resources in selection list
 - Fix bconsole readline and "dumb" terminal handling of CTRL-C
 - Add the priority field to the .api 2 job listing output
 - Improved restricted consoles when accessing catalog.
 
Misc Features:
 - New Tray Monitor program
 - Client Initiated Backups
 - Many performance enhancements
 - Bandwidth limitation timing improved
 - Global resource variables are not lost during a reload command
 - Add -w option to btape to specify a working directory
 - Enhance bls -D/-F help message
 - The "list" command now filters the results using the current Console ACLs
 - The WhereACL is now verified after the restore menu


02Jul17
 - Skip verify-data-test if not running Linux
 - Skip lzo-test if lzo not in Bacula
 - Remove double define HAVE_LZO in config.h
 - Add documentation on baculabackupreport to delete_catalog_backup.in
 - Install baculabackupreport and ignore script without .in
 - Recompile configure.in
 - Add Bill's baculabackupreport script
 - Update po files
 - Fix error in FreeBSD during maxtime-test
 - Fix #2853 About character substitution for "virtual full" job level in 
   RunAfterJob
 - Attempt to fix timing problem with console-dotcmd-test on FreeBSD
 - Ensure we have a DIR connection in dequeue_messages
 - Add more debug to regress for FreeBSD failures
 - Fix #2940 Allow specific Director job code in WriteBootstrap directive
 - Fix pragma pack to allow lz4.c work on Solaris and other machines
 - baculum: Fix working logout button
 - A more correct fix for lz4.c on Solaris 10
 - Remove use of #pragma pack in lib/lz4.c for Solaris 10
 - Recompile configure from configure.in
 - Detect Solaris 10
 - Fix bug #2289 version 7.9 not compatible with old FDs -- comm compression
 - Make getmsg.c compatible with old FDs
 - Use one MAX_BLOCK_SIZE and set to 20M
 - rpm: Add Fedora 25 build platform
 - Remove vestiges of crc32_bad -- fixes Solaris build
 - Fix #2890 about segfault in .status command on Redhat 5 32bit
 - Add missing semi-colon in bsys.c
 - baculum: Fix incorrect table name error during restore start
 - Display the correct address in lockdump for db_lock()
 - Fix getmsg to handle additional forms of Progress messages
 - baculum: Fix double assets and runtime symbolic links in baculum-web deb 
   package
 - baculum: Fix missing php-xml dependency in deb metafile
 - baculum: Improve errors handling in API restore pages
 - rpm: Remove libbacsd.la for both Red Hat and Suse
 - rpm: Add missing libs bbconsjson, bdirjson and bsdjson
 - rpm: Fix libstdc++ version in BAT spec file
 - Fix some problems noted by clang
 - baculum: Reorganize run job code
 - baculum: Reorganize estimate job code
 - baculum: Make get method definition not obligatory
 - Make file-span-vol-test portable
 - Attempt to fix deadlock in FreeBSD maxtime-test
 - Do not produce error if MySQL database exists in create_mysql_database
 - rpm: Add missing tapealert script
 - rpm: Add missing libbacsd
 - rpm: Remove dvd-handler script
 - Fix bvfs queries
 - Use FileId in place of Filename
 - Revert "Put FilenameId in .bvfs_lsfiles output"
 - Put FilenameId in .bvfs_lsfiles output
 - Add more debug in src/cats/bvfs.c
 - Fix bvfs_lsdirs and bvfs_lsfiles
 - baculum: Add Japanese language support in deb and rpm packages
 - Add DirectoryACL directive
 - baculum: New Baculum API and Baculum Web
 - Add forking info to LICENSE and LICENSE-FAQ
 - Minor improvement to error message
 - Fix race in steal_device_lock shown in truncate-concurrent-test
 - Apply Marcin's fix for 6th week of the month
 - Add new truncate test
 - Retab Makefile.in in platforms/systemd.in
 - Fix compiler warning
 - Add FD backwards compatibility
 - Fix regression minor scripting problems
 - Fix #2807 about an issue with the show command when using incorrectly JobToVerify 
   directive
 - Fix #2806 about the director service started before the database with systemd
 - Update Dart control files
 - Massive (70,000+ lines) backport of code from Bacula Enterprise 8.8.
   See next line ...
 - Adapt update_bacula_tables scripts for catalog version 15
 - Allow to use Base directive in a JobDefs
 - Add more debug to the bpipe plugin
 - Enhance error message when packets are too big
 - Add '.storage unique' bconsole command
 - Allow to use ".jobs type=!B" to display specific job type
 - Add lockdump storage daemon information
 - Fix #2698 Display loaded driver list in status storage output
 - Fix autochanger unload message that contains sometime an incorrect volume name
 - Fix issue with open_bpipe() function that may flush stdio buffer if the 
   command is incorrect
 - Fix unload tape messages to print correct volume + improve output format
 - Fix unload/re-load same volume
 - Fix DIR get unexpected "Connection reset by peer" for FD
 - Fix #2548 about SQL connection leak with RunScript::Console commands
 - Fix #2588 about segfault in bdirjson with JobDefs/Base directive
 - Fix #2593 about incomplete jobs incorrectly rescheduled
 - Fix #2629 about pool argument not listed in the "help cloud" output
 - Fix #2632 about VolType not set correctly for Cloud volumes after a label problem
 - Fix #2640 about a reference to the source directory in query.sql file
 - Fix bug #2271 where poll interval causes tape mount message to repeat
 - Fix segfault in bdirjson with incorrect configuration files

Bugs fixed/closed since last release:
2271 2548 2563 2567 2588 2593 2602 2624 2625 2627 2629 2632 2638 2640 2646
2698 2520 2559 2561 2582 2806 2807 2890 2289 2890 2853 2940

======================================================================
=======================================================================

Release Version 7.4.7

This is a minor bug fix release, which hopefully corrects a seg fault
on OpenBSD due to the new ACL/XATTR code, and it also fixes most build
problems on Solaris 10 as well as EPROTO on OpenBSD.

There is one minor new feature that allows you to specify the query
item number on the bconsole query command line.

15Mar17
 - Permit specifying query item number on bconsole query command line
 - Fix Solaris 10 problems reported by Phil Stracchino
 - Fix EPROTO on OpenBSD

=====================================================

Release Version 7.4.6

This is a bug fix release, which hopefully corrects a seg fault on OpenBSD
due to the new ACL/XATTR code, and it also fixes the large number of tape
mount messages that are repeated at 5 minute intervals due to a bug in the
poll code. Various small fixes for FreeBSD.

Please note, the signature hash files (.sig) for the source code was
previously SHA1.  For this and future releases we have changed it to be
SHA256.

10Mar17
 - Fix bug #2271 where poll interval causes tape mount message to repeat
 - Attempt to fix IPV6 not configured
 - Possible fix for acl seg fault on OpenBSD where no acl code defined
 - Change release digest from SHA1 to SHA256
 - Fix getnameinfo() for FreeBSD fixes bug #2083

Bugs fixed/closed since last release:
2083 2271

=====================================================

Release version 7.4.5

This is a minor bug fix plus a significant total rewrite of the
ACL and XATTR code by Radoslaw Korzeniewski.

07Feb17
 - Correct wrong word in message
 - Remove restriction on using the scratch pool that can 
   cause restore failures
 - Remove debug code that breaks btape fill
 - Initialize freespace_mutex fixes bug 2207
 - baculum: Update AUTHORS file
 - baculum: Enable Japanese language on web interface
 - baculum: Implement Japanese language support
 - XACL - refactoring an ACL and XATTR codes.
 - Revert "Warn of Storage Daemon version incompatibility if 
   label fails. Bug #2193"
 - Make another attempt to resolve bug #2176
 - Warn of Storage Daemon version incompatibility if label fails. Bug #2193
 - Apply patch to list more pool info from bug #2202
 - Fix status alignment output reported by Wanderlei Huttel



Release version 7.4.4

This is a bug fix release.

20Sep16
 - Fix #2085 About director segfault in cram-md5 function
 - Attempt to fix bug #2237
 - Recompile configure.in
 - Fix systemd installation
 - If using readline reset terminal at bconsole exit
 - Fix compilation without SMARTALLOC
 - Fix #2060 about SQL false error message with "update volume fromallpools" 
   command
 - Fix spurious MD5 update errors when nothing changed should fix bug #2237 and 
   others
 - Fix small memory leak with the restart command
 - baculum: Update language files
 - Fix #335 Avoid backups going to the scratch pool
 - systemd: Give 3mins to the bacula-sd service to stop and close the dde
 - Minor modifications to Ubuntu packaging
 - Check if the ScratchPool points to the current Pool and print a warning 
   message in such case
 - Fix #1968 print the ScratchPool name instead of just 'Scratch'
 - Display PrefixLinks in "show job" output
 - Add explicit LL to big integers to appease older compilers
 - Enable the plugin directory for the FileDaemon by default
 - Allow multiple mailcommand+operatorcommand in Messages. Fixes bug #2222
 - Handle NULL pointers in smartdump() and asciidump()
 - Modify status to include Admin and Restore in Level field -- clearer
 - Ensure that zero JobMedias are written for labelling
 - Fix error message about the stream 26 (PLUGIN_NAME) in bextract

Bugs fixed/closed since last release:
1968 2060 2085 2222 2237 335



Release version 7.4.3

This is a bug fix release. Most importantly, it fixes the new
GCC 6.0 aggressive compiler behavior that elides (deletes) code 
written by the Bacula developers.  There is no benefit to the
new GCC agressive optimization and it breaks a lot of programs
including Bacula.  This problem showed up on ArchLinux and Fedora 24.

17Jul16
 - Add LICENSE and LICENSE-FOSS files to the documentation
 - Add shortcut to RunScript console commands. Submitted by Wanderlei Huttel. 
   Fixes bug #2224
 - Fail when multiple mailcommand and other strings are specified in .conf. Fixes 
   bug #2222
 - Add support for terabytes in sizes. Submitted by Wanderlei Huttel. Fixes bug 
   #2223
 - Add error message for truncate command when actiononpurge not set. Fixes bug 
   #2221
 - Fix optimization error with GCC 6.1
 - Fix compilation warnings with GCC 6.1
 - Explicitly create MySQL user in grant_mysql_privileges.in

Bugs fixed/closed since last release:
2221 2222 2223 2224

New feature:
  - There are two new Director directives that simplify doing
    console commands rather than using RunScripts.  They are
      ConsoleRunBeforeJob = "console-command"
      ConsoleRunAfterJob = "console-command"


===========================================================

Release version 7.4.2

This is an important bug fix release to version 7.4.1 mainly
fixes detection of MySQL 5.7 (as found in Ubuntu 16.04).  Certain bug
fixes contributed by Bacula Systems.

06Jul16
 - Fix #1926 about wrong duplicate job detection with Copy/Migration and
   Backup jobs
 - Recompile configure after db.m4 change
 - Fix batch insert for MySQL 5.7
 - Fix zero level debug output -- now at 100
 - Fix #766 about Job logs displayed with unneeded linefeed
 - Fix #1902 about a segfault with the "cancel inactive" command
 - Fix bug where MySQL 5.7 is improperly linked on Ubuntu 16.04

Bugs fixed/closed since last release:
1902 1926 766


=================================================

Release version 7.4.1

This is a minor bug fix release to version 7.4.0.  Most of the
fixes have been kindly contributed by Bacula Systems SA.

31May16
 - Fix bug #1849 MySQL does not accept 0 for DATETIME default
 - Modify the alist object to be reused after a destroy()
 - baculum: Fix setting invalid timezone value for PHP
 - Fix compilation for AIX
 - Fix the restore termination string in the job report to take in account 
   JobErrors and SDErrors
 - baculum: Show jobs for client
 - Fix bconsole "llist job=<xxxx>" output
 - Fix #146 about update volume command line usage
 - bat: Fix #1066 about bad update pool command
 - Fix #1653 about make_catalog_backup default user name
 - baculum: Show jobs stored on volume
 - Fix update Volume=x Slot=nn when Slot > MaxVols
 - Set exit code for create_postgresql_database.in
 - Fix bug #2197 -- build failure with --disable-libtool
 - Fix bug #2204 -- superfluous END-OF-DATA in update_mysql_tables.in
 - Convert a Migration job with errors into a Copy job
 - Remove exporting add_mtab_item -- fixes bug #2198
 - Fix possible problem of show multiple resources
 - Comment out tools/smtp-orig.c as it is for reference only

Bugs fixed/closed since last release:
1066 146 1653 1849 2197 2198 2204

=======================
Release version 7.4.0

For the most part the changes were contributed to the Bacula 
project by Bacula Systems SA.

This is a new release with a new version number. It has been
very thoroughly tested, but as always, the new features may not
always work as expected.

The Catalog database format has not changed since version the
prior release (7.2.0).

Compatibility:
--------------
As always, both the Community Director and Storage daemon(s) must be upgraded
at the same time.  Any File daemon running on the same machine as a Director
or Storage daemon must be of the same version.

Older File Daemons should be compatible with the 7.4.0 Director and Storage
daemons.  There should be no need to upgrade older File Daemons.

New features and changes:
Please see the New Features chapter of the manual for documentation on
the new features.  The new features are currently only in the New Features
chapter and have not yet been integrated into the main chapters of the
manual.

New Features and changes summary:
- Support for KFREEBSD OS
- Improved support for Clang
- Configure SSL connection to MySQL
- New chio-changer-freebase in examples/autochangers
  New directives in bacula-dir.conf in Catalog{} resource
     for the MySQL backend (not currently implemented for
     Postgresql or SQLite).
   dbsslkey
   dbsslcert
   dbsslca
   dbsslcapath
   dbsslcipher
- examples/autochangers/rc-chio-changer removed
- examples/devices/DVD.conf removed
- updated copyrights
- Add "Expires in" to list and llist volumes
- Implement a more efficient Volume selection algorithm between DIR and SD
- Implement new list/llist command keywords:
   order=asc|ascending
   order=desc|descending
   limit=nn
   jobstatus=
   Client=
   JobErrors
- Implement new bconsole @tall command that outputs input and
  output to console and terminal.  Note, this also outputs 
  bconsole input commands.
- Implement MaxVirtualFullInterval
- Implement VirtualFullPool override
- Pool overrides work better
- Automatic selection of catalog from client where possible.
- Implement VerifyData level type for Verify jobs.


More detailed changes:

14Jan16
 - Implement MaxVirtualFullInterval
 - Update AUTHORS
 - Ensure relabel has latest vol info may fix bug #1412
 - Change license as per agreement with FSFE
 - Apply Carsten's patch that fixes bug #2192 builds on kfreebsd
 - baculum: Enable Portuguese language on web interface
 - baculum: Implement Portuguese language support
 - baculum: Assign Baculum copyright to Kern Sibbald
 - baculum: Fix sorting in restore by group most recent backups
 - baculum: Fix restore group most recent backups for MySQL
 - Fix FD DisableCommands
 - baculum: Fix to change user password
 - Add ExpiresIn field in list and llist media output
 - Fix #1548 about Solaris SIGBUS with accurate mode backup
 - Backport more Enterprise code to sql_list.c
 - Add info message of #jobs consolidated in Virtual Full
 - baculum: Unify user validation
 - Add HasBase+Comment to llist Jobs
 - Fix seg fault in btape fixes bug #2180
 - Fix slight error in autoprune -- should fix bug #2151
 - baculum: Add first unit tests
 - Fix #1545 about fix in manual_prune.pl script with large number of volumes
 - Fix false status output. Fixes bug #2103
 - Integrate patch into latest version, which fixes bug #1882
 - Fix bug #2090 correct detection of GCC
 - Fix CLANG warning messages -- fixes bug #2090
 - Add new chio-changer-freebase from bug #2115
 - Applied modified patch from bug#2117 to fix bpipe end of stream
 - Apply patch from bug #2165 to fix the update sqlite3 script
 - Fix update MD5 failure bug reported by Peter Keller
 - baculum: Add dashboard panel
 - Patch to add MySQL ssl access
 - Manually apply patch in bug #2156 to allow building on KFreeBSD
 - Fix bug #2153 with patch submitted by Ana Arruda
 - baculum: Switch to started job status just after job start
 - baculum: Add possibility to open configuration windows from URL
 - Fix restore when storage specified on command line
 - Fix restore of Windows streams to non-Windows machines
 - Implement level=Data to the Verify job
 - Fix #1524 about bextract trace file location
 - Fix truncate bug free_volume problem
 - baculum: Remember sort order for data grids
 - baculum: Improve size formatter precision
 - baculum: Fix jobs count in job list
 - baculum: Add jobbytes and jobfiles columns in job list
 - baculum: Get system timezone for PHP if possible
 - baculum: Fix restore when a lot of jobids given
 - baculum: Set default job attributes (level, client, fileset, pool, storage, 
  priority) in Run job panel
 - Fix truncate race bug #1382
 - baculum: Fix update pool action when no volumes in pool
 - baculum: Split configuration windows into two tabs: actions and console
 - baculum: Change default elements limit to 500 elements
 - baculum: Add drive parameter to bconsole release command execution
 - Fix #1470 Fix setdebug command when all components are selected
 - baculum: Fix expectation failed error during restore
 - Add new JOB_DBR field
 - #ifdef out bpluginfo since it does not compile
 - Fix #1449 about a FileDaemon segfault with the fstype option
 - Remove vestiges of rechdr_queue hopefully fixes bug #2180
 - Apply bconsole manpage patch from bug #2182
 - Apply ppc64el configure detection patch from bug #2183
 - Fix #1414 When the FD is down, status dir now prints "is waiting for Client 
  xx-fd"
 - Implement new options in list command
 - Add @tall command to log both input/output in a log file
 - Fix #1360 about bextract -t not documented in the man page
 - Update spec file for latest OSX versions
 - Fix compilation on MacOS
 - Improve Jmsg in response(), display SIGNAL number when appropriate
 - Avoid segfault in dump_block() when the block_len is invalid
 - Fix #1368 about xattr error not displayed correctly at restore time
 - Fix bug 2173 QT tray monitor can not be built due to missing files in configure
 - Move plugin_free() in free_jcr()
 - Fix bug #2083 -- Fix sockaddr_to_ascii for FreeBSD
 - Fix fadvise bug found by Robert Heinzmann
 - Fix compilation without zlib and lzo
 - Fix compilation error with new fstype_cmp() function
 - Fix compilation problem with AFS
 - Fix compilation on Solaris/FreeBSD
 - Fix segfault in open_bpipe() when the program is empty
 - Modify find_next_volume_for_append() to not send the same volume twice
 - Avoid <NULL> string displayed in restore menu
 - Do not update state file after a bacula-xxx -t
 - Fix #804 about misleading message with the purge command
 - Fix automount feature after a label command
 - Reinsert tabs in systemd Makefile.in
 - baculum: Provide LICENSE-FOSS file content in Baculum deb packages (copyright 
  file)
 - Use Client Catalog resource in get_catalog_resource() if "client" is specified 
  in command line
 - Fix #1131 about Job::Next Pool resource precedence over the Pool::Next pool 
  directive
 - Fix #898 truncate volumes larger than 200 bytes

Bugs fixed/closed since last release:
1131 1360 1362 1368 1382 1412 1414 1449 1470 1524 1545 1548 1882 2083 2090
2103 2115 2117 2151 2153 2156 2165 2180 2182 2183 2192 804 898



================================================================
Release version 7.2.0

Bacula code: Total files = 733 Total lines = 303,426
The diff between Bacula 7.0.6 and Bacula 7.2.0 is 254,442
which represents very large change, for the most part 
contributed to the Bacula project by Bacula Systems SA.

This is a major new release with many new features and a
number of changes. Please take care to test this code carefully
before putting it into production.  Although the new features
have been tested, they have not run in a production environment.

============== !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! ===================
New Catalog format in version 7.2.0 and greater
-----------------------------------------------
This release of Bacula uses a new catalog format.  We provide a script
(update_bacula_tables in bacula/src/cats and in bacula/updatedb) that
will update from Bacula 3.x, 5.2, or 7.0 to version 7.2.0 format.
The database upgrade is fast and simply.  As always we strongly 
recommand that you make a dump of your database prior to doing the
upgrade.

NOTE: The upgrade will work only for PostgreSQL and MySQL. Upgrading is
not (yet) supported for SQLite3.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!


For packagers, if you change options, naming, and the way 
we link our shared object files, as at least one of you does,
you are creating a situation where the user may not be able
to run multiple versions of Bacula on the same machine, which
is often very useful, and in addition, you create a configuration
that the project cannot properly support.

Please note that the documentation has significantly changed.
You will need additional packages to build it such as inkscape.
Please see the README and README.pct files in the docs directory.
The packages come with pre-build English pdf and html files,
which are located in the docs/docs/manuals/en/pdf-and-html directory.

Packagers: please note that the Bacula LICENSE has changed, it is still
AGPLv3 and still open source. A new requirement has been added which
requires other projects using the source to keep the acreditations.

Packagers: please note that the docs license has changed. It is now 
licensed: Creative Commons Attribution-ShareAlike 4.0 International
This is a common open source license.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Compatibility:
--------------
As always, both the Community Director and Storage daemon(s) must be upgraded
at the same time.  Any File daemon running on the same machine as a Director
or Storage daemon must be of the same version.

Older File Daemons should be compatible with the 7.2.0 Director and Storage
daemons.  There should be no need to upgrade older File Daemons. However,
this has not been fully tested yet.  Since we expect some problems, please 
test before putting it into production.

New Features:
Please see the New Features chapter of the manual for documentation on
the new features.  The new features are currently only in the New Features
chapter and have not yet been integrated into the main chapters of the
manual.  Also, since there were so many new features, it is possible that
a few that previously existed in version 7.0.x are documented a second
time in the 7.2.0 new features section.

More detailed changes:

12Aug15
 - Put back missing close_msg(NULL) to flush daemon messages at job end
 - Add LICENSE-FOSS and update LICENSE for baculum
 - Backport from Bacula Enterprise
29Jul15
 - Fix max vol size test accidently deleted
 - Remove gigaslam and grow on uninstall -- from bug report
 - Revert to Branch-8.3 fd_snapshot.c
 - Pull more recent changes from Branch-8.2
 - Fix bvfs_lsdir pattern parameter setting
 - Remove CheckList nolonger used
 - Revert "Use db_lock()/unlock() around JobMedia creation transaction"
 - Fix #1099 about director crash with rescheduled jobs
 - Fix #1209 about bat segfault when clicking on Media
 - Qmsg(M_FATAL) set jcr->JobStatus to JS_FatalError immediately
 - snapshot: Abort the job by default if a snapshot creation fails
 - Revert to old SD-FD close session protocol
 - Remove drive reservation if no Jobs running
 - Remove filename patch
 - snapshot: Try to detect LVM when the filesystem is ext3 or XFS
 - Fix bad debug message in mac_sql.c
 - Fix restore-multi-session test by incrementing found files only on next 
   file
 - Add -T description in man pages
 - Correct incorrect Fatal error message text in bsock
 - mysql: Add support for multiple instances binary backup in the same fileset
 - Fix compilation with new debug hook
 - mysql: Avoid warning with abort_on_job plugin option
 - Fix compilation after patch "prune volume yes"
 - Do not print message about retention when using "prune volume yes" command
 - Fix #536 about Copy/Migration/VF that should not use Client "Maximum Concurrent 
   Jobs"
 - Fix potential segfault with unused ConfigFile objects
 - Fix #1108 Enhance setdebug help command and console completion
 - Add more JCR variables in lockdump procedure
 - Fix error in update_postgresql_tables.in caused by bad search and replace
 - Fix #1127 about the repositioning enhancement during restore
 - Correct try_reposition() return code after a seek()
 - Add position information in the block structure
 - Fix a number of acl and xattr bugs + give more understandable variable 
   names
 - Make btraceback.dbx and .gdb use new sql engine name
 - Revert most of patch ef57e6c4 and replace with old cats code
 - Revert useless parts of patch 08d8e2d29
 - Revert patch d7f71d2c94a and rewrite it using simpler public domain example
 - Fix batch mode detection for SQLite3
 - Revert d9aa76fa and simplify
 - Revert patch 30388e447fa3 + fix bug #1948
 - Use a more appropriate name for the acl context
 - Use class pointer rather than jcr in src/lib/jcr.c
 - Revert patch f294b276
 - Change B_DB to BDB to correspond to naming convention
 - Add -T option in bacula-sd to use trace file
 - Force use of newer TLS protocols
 - Avoid problem with db_get_job_record() when SchedTime or RealEndTime is 
   NULL
 - Update our regexec() to support NULL argument
 - Add function to copy a file in bsys.c
 - Fix bug 2141 fork before TLS initialization
 - Update LICENSE-FOSS
 - Change license on src/lib/crc32.c as agreed with the author, Joakim Tjernlund
 - Update po
 - More license updates
 - Fix compilation
 - Add read_control command between Plugin/FD and Storage Daemon
 - Add .bvfs_get_jobs and .bvfs_get_bootstrap functions
 - Fix compilation for Solaris9
 - Fix Makefile.in tabs
 - Update Windows .def files
 - More copyright notices
 - Fix Windows plugin licenses
 - Change license copyright for updatedb and qt-console/tray-monitor
 - Change copyright for logwatch
 - Update more copyrights
 - Update copyrights in pebuilder
 - Update plugin licenses
 - Add copyrights + license to platforms
 - Update copyrights in po
 - More license clarifications
 - One more copyright in src/cats
 - Update src/cats .in file copyrights
 - Compute Job "Compression Ratio" using SDJobBytes instead of JobBytes
 - Get correct attributions for bsmtp.c
 - Switch from LGPLv3 for scripts to BSD 2-Clause
 - Fix segfault on dot commands used in RunScript::Console directive
 - Fix patch c0f0e6c01c7 to optimize retries only for autochangers
 - Fix #876 about SD reads too far with complex bootstrap
 - Correct unmount test in dev.c
 - Add debug JobId in next-vol-test script
 - Fix patch c59e5da29 to not orphan buffers
 - Fix bad implementation of enable/disable job,client,schedules + implement 
   enable/disable storage devices
 - Implement enable/disable schedule and client
 - Optimize Volume protocol when Volume not InChanger
 - Do not trash existing record during label of new volume
 - During accurate restore unstrip as soon as possible
 - Better handline of no storage device found
 - Fix #1075 The replace=never flag was not properly handled when combined with 
   database= option in mysql/postgresql plugin
 - display timestamp in X_msg() in one single pass to avoid double flush()
 - Update copyrights in scripts directory
 - Fix bug #1083 RT14512
 - configure.in: new HAVE_FCNTL_LOCK detect fcntl() locking capability
 - Fix #1008 about status storage that displays "Writing" and "Reading" information 
   for the same DCR
 - Add new %E job code to use non fatal job errors in scripts
 - Revert to old htable, but add 64 bit hash
 - Fix possible race condition in smartalloc
 - Refactor + optimize fstype.c + revert mntent_cache.c/h
 - snap: Fix small initialization problem with LVM backend
 - Fix compilation warning in bextract
 - lock the pid file using fcntl(F_SETLK)
 - bat: Fix segfault in client view when the Uname field is empty
 - bat: Fix #1047 about segfaults in Client, Media and Pool view
 - Revert patch 62ab7eb5 for filed/backup.c
 - Revert patch 62ab7eb5 for filed/verify.c
 - Refactor mount/unmount to use class calls
 - Add return status to DEVICE:close and report error at end of Job
 - Fix seg fault
 - fix a Dmsg in match_bsr.c:match_volume()
 - Fix #861 about bad help command on status schedule
 - Add new cats header file
 - Refactor DB engine to be class based
 - Remove regression cancel_test from do_all
 - Fix invalid .mod command in BAT during restore (bugfix #858)
 - Use B_ISXDIGIT() in rangescanner
 - Handle hex numbers in str_to_uint64()
 - Fix prune-migration-test -- wait in wrong place
 - fix MA 987 cannot copy/migrate jobs with a Level=VF in the job resource
 - Fix basejob error caused by patch on bug #965
 - Allow to list restore jobs in llist jobid= command
 - Fix #940 about segfault in bat when doing an "update slots"
 - Fix #983 about segfault on win32 filedaemon when using bat to monitor the 
   status
 - Fix #969 about a segfault while doing a cancel of a copy job
 - Fill errmsg after an error with FETCH query in db_big_sql_query()
 - Fix #965 about an empty error message after a problem when sending accurate 
   file list
 - Fix #972 about segfault in show command used with multiple resources
 - Work bsnapshot for SLES12 and fix issue with ZFS
 - Fix small memory leak in cancel command with ujobid and job parameters
 - Ensure that client resource is not freed during setbandwidth command
 - fix errors in the use of a Mmsg()
 - Use a specific mutex for auth instead of jcr->mutex
 - update po
 - Add missing call to free_jcr() in previous patch
 - Lock the jcr when using sd_calls_client_bsock variable
 - Ensure that only one thread can use the auth code in the Storage
 - Fix #951 about SDCallsClient not used during restore jobs
 - snapshot: Get the creation date from the zfs list snapshot command
 - snapshot: Fix small issue with Name parameter in list snapshot
 - Fix bsnapshot to return status=0 on error
 - fix a mempool error at SD shutdown
 - snapshot: Call support() only if the device is in the fileset
 - snapshot: Avoid double / in path and files when volume is /
 - Fix segfault with Console runscript introduced by "Stop ua commands if comm 
   line drops"
 - handle ctrl-C and SIGTERM the same way in SD
 - Startup scripts return proper exitcode for service restart action
 - Implement tables configuration
 - Add ReadBytes to FD status output
 - Accept 0/1 for @BOOL@ type in ConfigFile module
 - Set cmd_plugin only in pluginCreateFile if not SKIP/ERROR/CORE
 - Fix #13680 about systemd message "unknown lvalue"
 - Stop ua commands if comm line drops
 - Fix weird compilation problem on rhel5
 - Display TLS information in status client/storage
 - Fix rpms where unix user were not properly defined
 - update extrajs package in debs/rpm package
 - Fix segfault with new filesetcmd
 - snapshot: Reset JobId in Snapshot table when deleting a job
 - snapshot: Add ability to list snapshots from the FD
 - snapshot: Add a confirmation message when pruning snapshots
 - Add RunScript AfterSnapshot event
 - Fix #431 About upon upgrade, RPMs resets group membership
 - snapshot: Display bsnapshot error message if possible
 - Fix jobmedia-bug3
 - Set error code in return from run regress script
 - snapshot: More work on LVM backend and on list/sync commands
 - snapshot: Add EnableSnapshot directive in fileset
 - snapshot: Add errmsg and status to SNAPSHOT_DBR
 - snapshot: Send SnapshotRetention parameter to the Client and work on the 
   prune command
 - Add bacula-snapshot.spec
 - Add disabled=yes/no in bsnapshot.conf
 - Fix #875 about bvfs repeats the same output many times
 - Revert "Storing the result in a local variable from sql_num_fields saves us a 
   lot of callbacks."
 - Remove passing args to cats driver class initialization
 - Simplify cats by eliminating the B_DB_PRIV class
 - Convert more db funcs to class calls
 - Add Snapshot Engine to bacula core
 - Change more db calls into class calls
 - Add files missed in last commit
 - Convert db_lock/unlock to be called via class
 - Fix small memory leak
 - Remove more vestages of Ingres
 - Fix #843 about "show storage" option missing in the help command output
 - Use bzip2 for sles dependency
 - Avoid warning with uninitialized variables
 - update "help status"
 - Revert "Small fix to Eric great patch for readline commandcompletion so it 
   also compiles on non gcc compilers."
 - Separate out definitions into new header
 - Remove bad restore.h
 - Revert "Move restore struct defintions to seperate include file. Small change 
   to acl.h and xattr.h to use define inline with other header files."
 - Revert "Fix MediaView::getSelection"
 - Bat: ensure sufficient rows to display drives in storage display
 - new MmsgDx() macro that combine Mmsg(errmsg, fmt, ...) and Dmsg in once
 - add a ASEERTD() for DEVELOPPER
 - Fix wrong KiB value
 - Revert "Fix bug #1934 Wrong values at media list in BAT"
 - Change bplugin_list to b_plugin_list which is more appropriate
 - Remove Ingres related unused files
 - Simplify rwlock coding
 - Make subroutine names clearer
 - Back out useless patches
 - Put back old code prior to excessive edits
 - Remove over complicated acl/xattr code
 - Add license to files without any
 - Fix #805 about nextpool command line argument not properly used
 - Remove recursion from free_bsr() and free_bsr_item() to handle very large 
   BSR
 - Avoid segfault in connect_to_file_daemon() when jcr->client is NULL
 - #776 Volume created in the catalog but not on disk and #464 SD can't read an 
   existing volume
 - Add schedule to show command tab completion
 - Make global my_name hold 127 chars
 - Mark file volumes that are not accessible in Error in mount_next_vol
 - Fix #743 about bat permission conflict on /opt/bacula/etc
 - Add copyright to Makefiles
 - change in lockmgr.c to avoid the report of a memory leak in testls
 - lib: integrate SHA2 into bacula
 - Fix #747 about restore problem failing on "Unexpected cryptographic session 
   data stream
 - Revert previous copyright accidentally changed
 - Fix btape fill command by removing some debug code in empty_block()
 - Add Accurate Fileset option "M" to compare ctime/mtime with the save_time 
   like with normal Incremental
 - Add index on Job(JobTDate) to mysql catalog
 - Fix bad check on bopen_rsrc return status. bug #2106
 - Do not stop the storage daemon startup if the File device is not yet accessible
 - Fix double free in btape
 - Fix failed mount request in btape fill test
 - Avoid ASSERT() when using btape with vtape driver
 - Possible fix for NULL client bug #2105
 - Fix compilation of Nagios check_bacula
 - Add test for restict c99 in autoconf
 - Allow to use device= option in release/mount/unmount command
 - Fix #699 about duplicated job name when starting two jobs at the same time
 - Fix #701 about status schedule missing from tab completion and correct job 
   filter
 - remove autoconf/configre
 - Fix #346 Add ipv6 support for Solaris
 - Fix #692 about compatibility issue with community FD
 - Fix new match_bsr patch
 - Fix #588 Improve SD bsr read performance
 - Fix ownership bug in html-manuals package
 - Add EFS in the client status flag list
 - Implement Win EFS Support
 - Fix QT windows build for 32bit
 - Add SLES113 to spec files
 - Add @encode and sp_decode functions for plugins
 - Fix tls-duplicate-job seg fault + harden pthread_kill() code
 - Update plugin version to ensure 8.0 will not load 6.6 plugins
 - Add JobBytes and ReadBytes to llist jobid= output
 - Rewrite store_drivetype and store_fstype to allow a comma separated list of 
   items
 - Fix #633 about JobDefs MaximumBandwidth Job inheritance
 - Fix possible editing truncation due to 32 bit calculations
 - Remove non-portable -ne in echo
 - update po
 - Add Makefile for mssql-fd plugin
 - Improve error message of open_bpipe() on win32
 - Add jobid= parameter in .status dir running command
 - Add worker states
 - Pull latest worker files from development branch
 - Add comment about incorrect scripting
 - Put Dsm_check() on reasonable debug level
 - Remove auto-generated tray-monitor.pro.mingwxx file
 - Display message about MaximumBlockSize default value only if a value was 
   specified
 - fix solaris : replace be64toh() by unserial_uint64()
 - update SD <-> SD capabilities exchange
 - Handle RestoreObjects with Copy/Migration jobs
 - Add free list to worker class
 - Fix bad caps with SDcallsClient + debug + fix seg fault on connection error
 - Implement blowup=nn for FD and hangup+blowup for SD
 - Correct bat copyright
 - Change sizeof expressions to be more standard
 - Remove regress trap that causes sd-sd-test to fail
 - Dmsg was not handling tag anymore
 - Fix for SD seg fault while swapping volumes
 - Make bextract able to handle dedup streams
 - Remove unused file
 - Make sure mount_next_read_volume() will cancel the current job
 - Forbid llist command in runscript
 - Fix #295 about query file message
 - Add no_mount_request to DCR
 - Update Windows .def file
 - Add spec file for redhat/suse html manual package
 - Fix bug #2091 bad vtape device definitions
 - Fix bug #2089 compiler warning
 - Make sure level is tag free when printing debug message
 - fix tags in Dmsg
 - Regenerated configure script
 - Remove spaces at the end of lines in Bat file
 - Revert bat.pro.in file
 - Fix recursive echo bug #2088
 - Add new fifo class flist.h/c
 - Allow to create temp DEVICE from DEVRES
 - For bat always use g++
 - Make selection by Volume Name or MediaId a bit clearer
 - Optimize Dmsg() with tags by keeping current tags into a separate variable
 - Make message more understandable


=========================================================================

Bugs fixed in this version:
1099 1209 536 1108 1127 876 1075 1083 1008 1047 861 858 965 940
983 969 965 972 951 13680 431 875 843 1934 805 776 743






================= Old 7.0.x Release ====================================

Release version 7.0.5
This is an important bug fix release to version 7.0.4.  Since it fixes several
major problems.  We recommend that everyone upgrade to this version.

28Jul14
 - Fix #547 by adding .schedule command
 - Update AUTHORS
 - Fix bug #2079 with patch from Robert Oschwald
 - Fix orphaned file descriptors during errors
 - Yet another client==NULL
 - Improve FD and SD cancel
 - Jim Raney's TLS patch
 - Fix bug #1679 pool overrides not shown in manual run display
 - Attempt to avoid client==NULL
 - Fix for bug #2082 (hopefully)
 - Fix seg fault in jobq.c
 - make stop after first error
 - Increase status schedule days from 500 to 3000
 - Remove bad cherry-pick
 - Fix compiler warning
 - Allow options create_postgresql_database from patch in bug #2075 by roos
 - Fix bug #2074 crashes when no conf file present
 - Set pthread id in jcr at beginning so the job can be canceled.
 - Fix possible heartbeat interval timing problems
 - Fix some errors reported by valgrind. May fix the problem with bsmtp command.
 - Ensure b_sterror() is using the correct size of input buffer
 - Fix possible seg fault
 - Fix segfault when trying to stop the bnet_server thread in terminate_stored()
 - Fix bad link bug #2076
 - Fix compilation of bsock.c when TLS is not available
 - Correct L suffix to be LL
 - Fix bad copy/migrate data header
 - On termination shutdown thread server
 - baculum: Updated README file
 - baculum: Update English language texts
 - baculum: Saving auth file for web server HTTP Basic auth
 - baculum: Added directory for web server logs
 - baculum: Added example Lighttpd configuration for Baculum and sample web 
   server auth file
 - Expanded auth error message
 - baculum: Support for web servers which do not provide direct info about HTTP 
   Basic auth
 - Fix limit bandwidth calculation
 - Eliminate strcpy() from bsmtp
 - Fix for configuring sudo option for bconsole access
 - Display correct NextPool overrides + use Job NextPool in restore if available
 - Fix Bacula to work with newer Windows pthreads library
 - Fix bug #180 ERR=success in btape when tape error

Bugs fixed/closed since last release:
1679 180 2074 2075 2076 2079 2082 547


Release version 7.0.4
This is a bug fix release to version 7.0.3.  We recommend that
everyone upgrade to this version.

The main fixes are to make copy/migration to a second SD work, and
to cleanup some of the inconsistencies in the cancel command which 
could confuse the user.

02Jun14
 - Better error handling for cancel command
 - Fix compiler warning + simplify some #ifdefs
 - Fix copy/migration to second SD
 - Fix calls to sl.set_string()
 - Improve sellist code

=============================================================
Release version 7.0.3
This is a bug fix release to version 7.0.2. We recommend that
everyone using version 7.0.2 upgrade to this version.

12May14
 - Fix error handling in do_alist_prompt
 - Tighten error condition handling in sellist
 - Add new cancel test
 - Update LICENSE and LICENSE-FAQ
 - Also update autoconf/aclocal.m4
 - Reschedule on error caused EndTime to be incorrect -- fixes bug #2029
 - Flush console queued job messages -- should fix bug #2054
 - Attempt to fix FreeBSD echo/printf, bug #2048
 - Update to newer libtool + config.guess
 - Recompile configure
 - Apply fix supplied for acl.c in bug #2050
 - Fix a SD seg fault that occurs with over committed drives
 - Clear bvfs cache and set debug options available only for admin
 - Moved auth params to curl opts
 - Filtred single results for restricted consoles
 - Removed unnecessary debug
 - Changed e-mail address in gettext file
 - Support for customized and restricted consoles
 - Misc changes for rpm building (made by Louis)
 - Updated requirements for Baculum
 - Apply fix for bug 2049: wrong drive selected
 - Fix #2047 about bthread_cond_wait_p not declared
 - Fix Bacula bug #2044 -- fix Makefile for bplugininfo linking
 - Fix Bacula bug #2046 -- sellist limited to 10000
 - Fix Bacula bug #2045 -- multiply defined daemon_event
 - Fix Bacula bug #2020 overflow in btape -- Andreas Koch

Bugs fixed/closed since last release:
2020 2029 2044 2045 2046 2047 2048 2050 2054


===================================================================
Release version 7.0.2
This is a minor update since version 7.0.1 that is mostly cleanup.
However, there is one annoying bug concerning shell expansion of
config directory names that is fixed, and there is at least one
syntax error in building the full docs that appears on some systems
that is also fixed.

02Apr14
 - Remove more vestiges of libbacpy
 - Put back @PYTHON@ path in configure
 - Fix improper string in parser
 - Remove libbacpy from rpm spec files
 - Fix linking check_bacula
 - Fix new SD login in check_bacula
 - Tweak docs build process


Release version 7.0.1
This is a minor update since version 7.0.0 that is mostly cleanup.

31Mar14
 - Remove old plugin-test
 - Update po files
 - Enable installation of the bpluginfo utility
 - More tray-monitor updates
 - Add Simone Caronii to AUTHORS
 - Align command line switches in manpages.
 - Apply upgrade to config.guess
 - Remove bgnome-console and bwx-console leftovers.
 - Update tray-monitor header also for new bsock calls
 - Attempt to fix nagios to use new bsock calls
 - Update tray-monitor to new bsock calls

========================================
Release 7.0.0

 Bacula code: Total files = 713 Total lines = 305,722
 The diff between Bacula 5.2.13 and Bacula 7.0.0 is 622,577 lines,
 which represents very large change.

This is a major new release with many new features and a
number of changes. Please take care to test this code carefully
before putting it into production.  Although the new features
have been tested, they have not run in a production environment.

!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
For packagers, if you change options, naming, and the way 
we link our shared object files, as at least one of you does,
you are creating a situation where the user may not be able
to run multiple versions of Bacula on the same machine, which
is often very useful, and in addition, you create a configuration
that the project cannot properly support.

Please note that the documentation has significantly changed.
You will need additional packages to build it such as inkscape.
Please see the README and README.pct files in the docs directory.
The packages come with pre-build English pdf and html files,
which are located in the docs/docs/manuals/en/pdf-and-html directory.

Packagers: please note that the Bacula LICENSE has changed, it is still
AGPLv3 and still open source. A new requirement has been added which
requires other projects using the source to keep the acreditations.

Packagers: please note that the docs license has changed. It is now 
licensed: Creative Commons Attribution-ShareAlike 4.0 International
This is a common open source license.
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!

Compatibility:
--------------
As always, both the Director and Storage daemon(s) must be upgraded at
the same time. Any File daemon running on the same machine as a Director
or Storage daemon must be of the same version.

Older File Daemons should be compatible with the 7.0.0 Director and Storage
daemons.  There should be no need to upgrade older File Daemons.

The following are new directives, commands and features:
- New Baculum web GUI interface.  See the gui/baculum directory.
- Directive fdstorageaddress in Client
- Directive SD Calls Client in Client
- Directive Maximum Bandwidth per Job in Client
- Directive FD Storage Address in Storage
- Directive Maximum Spawned Jobs in Job
- setbandwidth command in bconsole
- Progress meter with FD in status dir
- LastDay of month in schedule
- sixth 6th week in month in schedule
- Improvements in bconsole SQL calls
- Allow list and ranges in cancel as well as the keyword: all
- truncate command in bconsole
- prune expired volumes?
- New hardlink performance enhancements
- restart command
- restore optimizespeed=yes|no for hardlinks default yes
- PkiCipher and PkiDigest in FD Client item
 Cipher aes128, aes192, aes256, blowfish
 Digest md5, sha1, sha256
- Maximum Bandwidth Per Job in FD Client resource
- Maximum Bandwidth Per Job in FD Director Resource
- .bvfs_decode_lstat
- DisableCommand in FD Director resource
- DisableCommand in FD Client resource
- status scheduled bconsole command with the following options:
   days=nn (0-500 default 10); limit=nn (0-2000 default 100)
   time=YYYY-MM-DD HH:MM:SS
   schedule=xxx job=xxx
- NextPool in Run override
- Directive NextPool in Job

Please see the New Features chapter of the manual for more
details.

The following features or directives have been removed:
- Win32
- tray-monitor
- wx_console
- Removed cats DBI driver
- Python

Detailed changes:
=================
24Mar14
 - Add Josip Almasi to AUTHORS
 - [PATCH] Support for restricted consoles in BAT config
 - [PATCH] Fix for free director directive
 - [PATCH] Fix auto-select restricted console for director in bconsole
 - Realign output display
 - Update ua_output.c from Branch-6.7
 - Add some missing Branch-6.7 updates
 - Added needed empty directories to Baculum
 - Fix for support PostgreSQL, MySQL and SQLite
 - Framework adjusting to Baculum database connections
 - Framework fix for lower case tables names in MySQL
 - Fix for Baculum SQLite support
 - Initial commit Baculum
 - Add Marcin to AUTHORS file
 - Strip trailing blanks
 - Update copyright year
 - Update LICENSE and header files
 - Remove old file
 - Add new header in misc files
 - Remove tray-monitor bwx-console manual installation
 - Remove FD python and examples
 - Fixup spec files
 - Remove pythonlib from lib
 - Update package-list
 - Fix SDCallsClient daemon synchronization
 - Add debug code + make 127.0.0.1 same as localhost for tls tests
 - Fix multiple DIRs in console
 - Make failure for bat to connect to DIR non-fatal
 - Fix bat style to one that works
 - Take disk-changer from Branch-6.7
 - Simplify Version output
 - Fix FDVersion for SD Calls Client test
 - Update accurate test
 - Update differential test
 - Add new regress timing scripts
 - Improve plugin make clean
 - Implement regress FORCE_SDCALLS
 - Remove win32 tray-monitor and wx-console directories
 - Remove regress-config need only regress-config.in
 - Add configure archivedir
 - Improve SQL failure reporting
 - First cut backport BEE to community
 - Add copyright to mtx-changer.in
