Skip to content

Release 0.5.0 - #102

Merged
linuxnow merged 26 commits into
mainfrom
release/0.5.0-combined
Oct 19, 2026
Merged

linuxnow merged 26 commits into
mainfrom
release/0.5.0-combined

Conversation

@linuxnow

Copy link
Copy Markdown
Contributor

Version 0.5.0: every open pull request merged at its head, then the version bump.

Closes #86
Closes #91
Closes #92
Closes #93
Closes #94
Closes #95
Closes #96
Closes #97
Closes #98

Merged:

Left out: none.

Conflicts resolved in the merges, both sides kept:

The last commit bumps the spec, debian/changelog, src/main.c and both man pages to 0.5.0; the changelog lists what each merged change does.

verdict=refused was parsed, stored and then ignored. A plugin whose files failed qualification was added like
any other. pins_check now refuses such a plugin with the new code PHD_ERR_PIN_REFUSED (-516), after the
files have been checked against the pin: the verdict applies only to the pinned files, so files that
differ still answer -509 first. Because the add and the replay share pins_check, an instance whose pin turns
refused while it runs is refused at its next replay (instance_replay_refused with -516). The code is declared
in protocol.h, and the README and protocol/plugin-hostd.json are regenerated from it.

The test fails on main (the add answers resp 0). It covers pin_set, a pin_file under first-use (the
plugin is not learned into the store), the replay, and changed files. A sabotage arm removes the check.

Closes #71
omx-clap-host refuses a note_on, note_off or all_notes_off that its note queue for the instance has no room
for before the next block, and answers -901 today, a code no table declares. Errors go by code: the protocol
now declares PHD_ERR_NOTE_QUEUE_FULL (-517), the next free code after PIN_REFUSED (-516). The line was not
taken and nothing of it is kept; the controller may send it again. The daemon passes a worker's reply
through unchanged, so nothing in it changes; README.md and protocol/plugin-hostd.json are regenerated.

The fake host answers it for a synth whose uri holds "synth_full", and the daemon test checks that the
code reaches the controller for the three verbs. tests/consumer.c now also refuses two errors that share a
code, or a code outside the -5xx hundred; a sabotage arm (a new "consumer" kind) gives this code -516 and
turns that test red.
…'s (#42)

Every *.pins file of pins_dir (/usr/share/plugin-hostd/pins.d by default)
is read at start in byte order of its name. A pin there with
verdict=refused always holds: the store, the pin_file, pin_set and
pin_accept never override it, and pin_set and pin_accept of its uri answer
PIN_REFUSED (-516). Any other package pin is under the host's pins. Of two
package pins of one uri a refusal wins, otherwise the later file by name.
A bad line or an unreadable file is skipped and named on stderr; a missing
or empty directory holds no pins.
…oom for

# Conflicts:
#	README.md
#	include/plugin-hostd/protocol.h
#	protocol/plugin-hostd.json
#	tests/sabotage.py
…V2 refusal and pick tables whole (#88)

# Conflicts:
#	Makefile
#	tests/sabotage.py
… expects what an unprivileged daemon can set (#87)

# Conflicts:
#	src/supervisor.c
# Conflicts:
#	README.md
#	include/plugin-hostd/protocol.h
#	protocol/plugin-hostd.json
#	tests/sabotage.py
plugin-hostd-probe measures LV2 plugins through lv2_measure; a pin whose verdict is refused refuses the add with PIN_REFUSED (-516); packages ship pins in pins_dir, a read-only layer under the host's; NOTE_QUEUE_FULL (-517) is declared; a plugin the LV2 adapter refused under auto gets a worker of its own; a worker whose feedback the relay cannot follow is not started, and a failed realloc no longer loses the relay's or the LV2 adapter's tables; a worker_env nice that cannot be applied is logged. The build now requires omx-contract-devel >= 2.16.0, which the probe runner's rates and the protocol's scales are read from.
@linuxnow
linuxnow merged commit 1f3b1a8 into main Oct 19, 2026
35 checks passed
@linuxnow
linuxnow deleted the release/0.5.0-combined branch October 19, 2026 00:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant