[ClusterLabs] Booth 1.1 is available at GitHub!
Jan Friesse
jfriesse at redhat.com
Wed Oct 18 11:17:18 EDT 2023
I am pleased to announce the latest maintenance release of Booth 1.1 is
available immediately from GitHub at
https://github.com/ClusterLabs/booth/releases as booth-1.1.
Booth 1.1 has been released 7 long years after 1.0, so there are a huge
number of changes and it is really hard to highlight the most important
ones (and I would rather not even try). Also I guess most booth users
are actually running a git version so most of the fixes are already in
production.
Please keep in mind that this is the last release where very old
versions of Python, Pacemaker, ... are supported. The next release will
require at least Python 3.9, Pacemaker 2.1, ... Basically RHEL 8 was
chosen as the oldest supported base. I hope virtually nobody will be
affected by this decision (and if you are then patches are welcomed ;) ).
My plan is to do regular releases once, maybe twice a year (more if
needed of course). Also I'm expecting 1.2 later this year to prepare
Booth for changes in Pacemaker 3.0. So stay tuned!
Complete changelog for 1.1:
Aleksei Burlakov (1):
test: fix the delimiter in the here-string
Bin Liu (2):
low:fix:remove unnecessary return from unit-test.py
typo fix: there is no %{S:2} defined in booth.spec
Chris Kowalczyk (16):
Build: create and set working directory
Build: add correct permissions to the folders
Config: handle hostnames in booth.conf file
Change comment style and indentation
Find the correct address of a local site
Booth Daemon Arguments: disable foreground for D flag
Booth Daemon Arguments: Added tests for DS and S flags
Booth Daemon Arguments: Enable stderr for foregound mode
Booth Daemon Arguments: Disable stderr for daemon mode
Feature: add manual mode to booth tickets
Fixed typo in help message
Updates after review
Updates after code review
Handle multi-leader situation for manual tickets. Added
manual tickets to Life Tests framework
Refactoring after review comments
Fix asciidoc build
Dan Streetman (1):
Don't lock all current and future memory if can't increase
memlock rlimit
Dejan Muhamedagic (14):
Doc: update the before-acquire-handler description to match
the new semantics
Dev: extprog: rename prog to path (it can be a directory too)
build: remove the old paxos update pre-script
Feature: extprog: add capability to run a set of programs
Medium: extprog: external tests timeout after renewal interval
Medium: main: finally fix address matching
Low: ticket: reset next state on ticket reset
Low: extprog: fix pid test
Dev: extprog: set progstate debug
Low: attr: set time string to "" when time is not set
Low: attr: add ticket name to warnings
Medium: attr: fix wrong order for hash free functions
Medium: extprog: fix race condition on ticket loss
fix bashisms (use printf instead of echo)
Fabio M. Di Nitto (14):
build: use pkg-config way to detect and use pacemaker header
files
build: allow to override path to python without failing
version checks
build: fix make distcheck
[build] ship booth.pc with basic booth build information for
downstream packages to use
configure: Simplify libqb detection when libqb is not
installed in standard paths
configure: detect and init pkg-config with proper macro
configure: add BOOTH_PKG_CHECK_VAR macro to wrap PKG_CHECK_VAR
configure: use resource-agents pkg-config info to determine
ocfdir
configure: use PKG_CONFIG to detect pacemaker user/group
configure: drop unnecessary macro
configure: drop dead code
configure: move exec_prefix sanitizer closer to prefix
configure: drop unnecessary check and define
rpm: use new package name for pacemaker devel on opensuse
Jan Friesse (64):
test: Allow test running as a root
test: Enlarge timeout for boothd exit
test: Actively wait for lock file create/delete
build: Make make distcheck with asciidoctor
docs: Fix description of how to run python tests
tests: Make test work for Debian systems
main: Accept longer config and lock file names
main: Delete lockfile when signal arrive too early
build: Do not link with pcmk libraries
pacemaker: Handle updated exit code of crm_ticket
tests: Allow parallel running of tests
build: Make generating of HTML man work
build: Remove unneeded OS detection section
build: Make sure tarball contains all needed files
build: Delete cov directory on clean
configure: Always let automake set python vars
main: mkdir failure is not critical
pacemaker: Express intention about logical or
pacemaker: Change rv handling of pcmk_get_attr
transport: setsockopt failures are not critical
transport: Check fcntl return value
build: Use git-version-gen
build: Rework build of RPM
build: Substitute asciidoc or asciidoctor for RPM
build: Substitute glue dependency in RPM
build: Substitute python dependency in RPM
build: Substitute hauser and haclient in RPM
build: Add option to enable tests during rpmbuild
booth.spec: Add fedora compatibility provides
build: Remove bashisms
test: Add compatibility with iproute ss command
configure: Make sure without-html_man works
git-version-gen: Use fallback for git-archive
build: Fix building of html docs with asciidoc
boot.spec.in: Package html files when generated
booth.spec: Change naming scheme for upgrades
config: Remove deprecated net functions
test: Enhance wait_for_lock_file
main: Use only signal-safe functions
handler: Use only signal-safe functions
doc: Describe debug config file option
Revert "Refactor: main: substitute is_auth_req macro"
ticket: Fix compiler warning
configure: Modernize configure.ac a bit
unit file: Remove Alias directive
config: Include keyword in error message
config: Include protocol in error message
test: Add test for unknown/unexpected keyword
man: Move debug description to better place
man: Indent peers counters
man: Do not format __defaults__
man: Remove italic bold formatting
man: remove literal paragraph format from boothd.8
man: Add generated html files into gitignore
spec: Migrate to SPDX license
main: Fix exit code on grant/revoke command error
attr: Fix memory leak for list and get operation
attr: Fix glib hash_table != NULL assert
tests: Fix Python 3.12 warning
build: Add gitlog-to-changelog
build: Add release.mk
build: Include icons in release tarballs
build: Make distcheck work for non-root user
Prepare 1.1
Jan Pokorný (94):
maint: fix the FSF address + 5x s/write the/write to the/
maint: clarify GPLv2.1+ -> GPLv2+ in the license notices
maint: licensing conformance follow-up (library->program)
fixup: sanitize true-false logic for "daemonize"
Low: drop new_election's dead code as SITE role already enforced
maint: configure: drop useless AC_CHECK_LIB invocations
maint: configure: --enable-resource-monitor no longer relevant
maint: configure: nicely formatted help/summary screens
build: s/CPPFLAGS/CFLAGS/ + use GLIB_LIB
build: allow requesting no HTML man + use in spec
build: add proper zlib build-time check + link flag + spec's BR
maint: configure: drop some more useless definitions
maint: spec: SPDX license notation only for SUSE
maint: spec: drop redundant, unused %check scriptlet
maint: spec: get rid of redundant %clean section
maint: spec: use pkgconfig for glib-2.0
Low: avoid using cl_log directly
Low: apparently static function should be marked so
Low: use unsigned int where suitable
Low: const-cast char arrays where suitable
Low: "char *" more string funcs friendly than unsigned variant
Low: make (a defensive) use of known static buffer sizes
Low: drop unused inline function
Med: prevent possible truncation w/ invalid geoattrs in CIB
test: fix failing test_a_few_trailing_whitespaces
test: adapt to libqb-based logging with lowercased priorities
test: booth cannot cope with <address>%<device> IPv6 addresses
test: fix a typo in assertion violation message
build: ensure expected behavior if --without-html_man not
provided
docs: licensing conformance follow-up (man pages)
Med: make foreach_* macros use variable refs passed as arguments
Low: read_config: unify jump labels (parsing: err, after: out)
Low: read_config: close config file when no longer needed
Med: format_peers: fix a memleak in case of buffer too small
Low: do_status: avoid shadowing the file-scope static variable
Low: do_status: first check for lock's fd from _lockfile
Low: do_status: fix superfluous check for valid lock's fd
Low: do_status: close lock file when no longer needed
Low: list_ticket: space complexity depends just on tickets count
Med: list_ticket: fix a memleak in case of buffer too small
Med: get_local_id: denoopize dependent condition (signedness
issue)
High: read_client: sizeof(*struct_ptr) instead of
sizeof(struct_ptr)
Low: clarify key file read permissions requirement a bit
Low: setup_tcp_listener: close socket when no longer needed
Low: client_alloc: unify (and sanitize) malloc/realloc
Low: add_site: drop a comment that should have been long gone
Feature: offer alternatives to libraries from (cluster-)glue
Feature: alternative logging provider: libqb
Feature: alternative range2random provider: glib
Feature: alternative "nametag" provider: libsystemd
Feature: allow skipping "coredump nursing" phase
Feature: alternative logger (in service-runnable script)
maint: clarify GPLv2+ in the license notices from an earlier PR
Refactor: main: substitute is_auth_req macro
Med: main: initialize Libcrypt properly before the first use
build: drop declared man pages from main Makefile
build: configure: check for pacemaker/crm/services.h header
build: configure: normalize spaces -> tabs
build: configure: "libsystemd" also known as "libsystemd-daemon"
CI: initial .travis.yml
Refactor: mark no_leader properly as a constant pointer
Refactor: attr.c: merge if-else series into the switch statement
Refactor: main: remove superfluous includes
Fix typo: enought -> enough
Comment: add_site: explain why inet_pton is endianess-save
Refactor: quasi-sort includes in transport.c
Low: remove redundant check after find_site_by_id
Feature: make log contain source address of unknown site
maint: spec: fix booth-test containing undesired build sources
CI: travis: workaround 127.0.1.1 not assigned with loopback
maint: fix thinko in .gitignore introduced in 5a457ee
maint: fix typos introduced in 4bb484a
test: remove superfluous shebangs for import-only modules
test: do not mix tabs with spaces in Python code
test: make Python files supported _also_ with Python 3.3+
build: parametrize Python invocations in the shebangs
test: drop underqualified identifier in unittest's 2.6 compat
"polyfill"
test: drop/comment out superfluous imports
test: avoid dangerous mutable/sticky default value
test: unit-test.py: daemon will not stay in foreground with
-D anymore
Refactor: fix "strncpy may miss trailing null byte" warnings
of GCC 8.1
build: spec: get rid of redundant defattr
build: spec: %check scriptlet actually BuildRequires python
build: spec: -test subpackage actually Requires gdb and
python-expect
build: spec: add support/conditionalizing for Python 3
maint: lsb: polish arbitrator's initscript, fix condrestart
maint: test: polish live_test.sh
maint: ocf + script: eliminate some false positives with
ShellCheck
docs: fix an oversight in Makefile.am, stop gitignoring a
tracked file
Med: attr: fix derefence of unspecified value pointer
Low: main: fix hypothetical file path double traversal
discrepancy
Low: handler: fix spurious warning on alleged "fall-through"
in switch
docs: boothd.8: fix runaway formatting for what's config file
snippet
Test: *.py: superprivileged user can run the tests when opted in
Joseph Herlant (3):
Fix malformed man title
Add support for asciidoctor for man pages and html docs
Update Makefile.am to allow asciidoctor integration
Kazunori INOUE (1):
Low: conf: Add Restart option to booth-arbitrator.service
Lars Ellenberg (1):
fixup: add missing dirent.h include
Nick Wang (1):
Replace SuSEFirewall2 by firewalld.
Valentin Vidic (5):
Fix documentation wording
Fix cleanup of service.in files
Use pkg-config to configure libxml-2.0
Fix gcc-10 warnings for packed struct members
Fix gcc-10 warnings for multiple definition of pcmk_handler
Valentin Vidić (1):
Fix GCC-7 warning on buffer size
Upgrade is highly recommended.
Thanks/congratulations to all people that contributed to achieve this
HUGE milestone.
More information about the Users
mailing list