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, Release-9.6.1 had an inappropriate file size for the readline history file, and Release-9.6.2 had some incorrect copyrights, so all three 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

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
– 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/j
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 device
– 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 initiali
– 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 availa
– 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 differen
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 directiv
– 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 prepar
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 an
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