Prep 2.0.12 Release (#1377)

* APA102 - Migrate ColorOrder to align with fix
* Address LGTM findings
* Updated Changelog with updates since last release
This commit is contained in:
LordGrey 2021-11-20 15:20:01 +00:00 committed by GitHub
parent 7311c3e424
commit 72d99a1121
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 74 additions and 27 deletions

View File

@ -4,14 +4,32 @@ All notable changes to this project will be documented in this file.
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
## [Unreleased](https://github.com/hyperion-project/hyperion.ng/compare/2.0.0-alpha.11...HEAD) ## [Unreleased](https://github.com/hyperion-project/hyperion.ng/compare/2.0.12...HEAD)
### Breaking ### Breaking
### Added ### Added
### Changed
### Fixed
## Removed
## [2.0.12](https://github.com/hyperion-project/hyperion.ng/releases/tag/2.0.12) - 2021-11-20
Hyperion's November release brings you some new features, removed IPv6 address related limitations, as well as fixing a couple of issues.
Hyperion packages can be installed now under Ubuntu (x64) and Debian (amd64/armhf) (incl. Raspberry Pi OS) via our own APT server.
Details about the installation can be found in the installation.md and at apt.hyperion-project.org.
### Added
- New LED-device type: Razor Chroma.
Note: Due to Chroma Razer API limitations, only one device can be configured.
- APA102 - Support setting maximum brightness level (1-31)
- New installation method (Drag'n Drop) for macOS.
- hyperion-remote & standalone grabbers: IPv6 support - hyperion-remote & standalone grabbers: IPv6 support
- New languages - Danish & Hungarian - New languages: Danish & Hungarian
### Changed ### Changed
@ -24,9 +42,17 @@ Note: Existing configurations are migrated to new structures automatically
### Fixed ### Fixed
- Fixed API Subscription (e.g. as used by HomeAssistant) (#1351)
- Fixed APA102 protocol aligning to the standard defined, removed Latch-Time as not required by APA102 protocol (#1352, #1132)
- Fixed hyperion-remote when sending multiple Hex-Colors with "Set Color" option - Fixed hyperion-remote when sending multiple Hex-Colors with "Set Color" option
- UI: Fixed "Selected Hyperion instance isn't running" issue (#1357)
- Fixed Database migration version handling
- Fixed Python ModuleNotFoundError (#1109)
### Removed ### Technical
- Added Qt6 support
- Migrated to MBEDTSL 3
## [2.0.0-alpha.11](https://github.com/hyperion-project/hyperion.ng/releases/tag/2.0.0-alpha.11) - 2021-10-06 ## [2.0.0-alpha.11](https://github.com/hyperion-project/hyperion.ng/releases/tag/2.0.0-alpha.11) - 2021-10-06

View File

@ -1630,7 +1630,7 @@ function updateElements(ledType, key) {
if (ledProperties && ledProperties.leds && ledProperties.maxLedCount) { if (ledProperties && ledProperties.leds && ledProperties.maxLedCount) {
hardwareLedCount = ledProperties.leds.count; hardwareLedCount = ledProperties.leds.count;
var maxLedCount = ledProperties.maxLedCount var maxLedCount = ledProperties.maxLedCount;
if (hardwareLedCount > maxLedCount) { if (hardwareLedCount > maxLedCount) {
showInfoDialog('warning', $.i18n("conf_leds_config_warning"), $.i18n('conf_leds_error_hwled_gt_maxled', hardwareLedCount, maxLedCount, maxLedCount)); showInfoDialog('warning', $.i18n("conf_leds_config_warning"), $.i18n('conf_leds_error_hwled_gt_maxled', hardwareLedCount, maxLedCount, maxLedCount));
hardwareLedCount = maxLedCount; hardwareLedCount = maxLedCount;
@ -1661,7 +1661,7 @@ function updateElements(ledType, key) {
if (ledProperties && ledProperties.maxLedCount) { if (ledProperties && ledProperties.maxLedCount) {
hardwareLedCount = conf_editor.getEditor("root.generalOptions.hardwareLedCount").getValue(); hardwareLedCount = conf_editor.getEditor("root.generalOptions.hardwareLedCount").getValue();
var maxLedCount = ledProperties.maxLedCount var maxLedCount = ledProperties.maxLedCount;
if (hardwareLedCount > maxLedCount) { if (hardwareLedCount > maxLedCount) {
showInfoDialog('warning', $.i18n("conf_leds_config_warning"), $.i18n('conf_leds_error_hwled_gt_maxled', hardwareLedCount, maxLedCount, maxLedCount)); showInfoDialog('warning', $.i18n("conf_leds_config_warning"), $.i18n('conf_leds_error_hwled_gt_maxled', hardwareLedCount, maxLedCount, maxLedCount));
hardwareLedCount = maxLedCount; hardwareLedCount = maxLedCount;

View File

@ -14,35 +14,35 @@ $(document).ready(function () {
if (window.showOptHelp) { if (window.showOptHelp) {
//network //network
$('#conf_cont').append(createRow('conf_cont_net')) $('#conf_cont').append(createRow('conf_cont_net'));
$('#conf_cont_net').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_net_heading_title"), 'editor_container_net', 'btn_submit_net', 'panel-system')); $('#conf_cont_net').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_net_heading_title"), 'editor_container_net', 'btn_submit_net', 'panel-system'));
$('#conf_cont_net').append(createHelpTable(window.schema.network.properties, $.i18n("edt_conf_net_heading_title"))); $('#conf_cont_net').append(createHelpTable(window.schema.network.properties, $.i18n("edt_conf_net_heading_title")));
//jsonserver //jsonserver
$('#conf_cont').append(createRow('conf_cont_json')) $('#conf_cont').append(createRow('conf_cont_json'));
$('#conf_cont_json').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_js_heading_title"), 'editor_container_jsonserver', 'btn_submit_jsonserver', 'panel-system')); $('#conf_cont_json').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_js_heading_title"), 'editor_container_jsonserver', 'btn_submit_jsonserver', 'panel-system'));
$('#conf_cont_json').append(createHelpTable(window.schema.jsonServer.properties, $.i18n("edt_conf_js_heading_title"))); $('#conf_cont_json').append(createHelpTable(window.schema.jsonServer.properties, $.i18n("edt_conf_js_heading_title")));
//flatbufserver //flatbufserver
$('#conf_cont').append(createRow('conf_cont_flatbuf')) $('#conf_cont').append(createRow('conf_cont_flatbuf'));
$('#conf_cont_flatbuf').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_fbs_heading_title"), 'editor_container_fbserver', 'btn_submit_fbserver', 'panel-system')); $('#conf_cont_flatbuf').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_fbs_heading_title"), 'editor_container_fbserver', 'btn_submit_fbserver', 'panel-system'));
$('#conf_cont_flatbuf').append(createHelpTable(window.schema.flatbufServer.properties, $.i18n("edt_conf_fbs_heading_title"), "flatbufServerHelpPanelId")); $('#conf_cont_flatbuf').append(createHelpTable(window.schema.flatbufServer.properties, $.i18n("edt_conf_fbs_heading_title"), "flatbufServerHelpPanelId"));
//protoserver //protoserver
$('#conf_cont').append(createRow('conf_cont_proto')) $('#conf_cont').append(createRow('conf_cont_proto'));
$('#conf_cont_proto').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_pbs_heading_title"), 'editor_container_protoserver', 'btn_submit_protoserver', 'panel-system')); $('#conf_cont_proto').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_pbs_heading_title"), 'editor_container_protoserver', 'btn_submit_protoserver', 'panel-system'));
$('#conf_cont_proto').append(createHelpTable(window.schema.protoServer.properties, $.i18n("edt_conf_pbs_heading_title"), "protoServerHelpPanelId")); $('#conf_cont_proto').append(createHelpTable(window.schema.protoServer.properties, $.i18n("edt_conf_pbs_heading_title"), "protoServerHelpPanelId"));
//boblight //boblight
if (BOBLIGHT_ENABLED) { if (BOBLIGHT_ENABLED) {
$('#conf_cont').append(createRow('conf_cont_bobl')) $('#conf_cont').append(createRow('conf_cont_bobl'));
$('#conf_cont_bobl').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_bobls_heading_title"), 'editor_container_boblightserver', 'btn_submit_boblightserver', 'panel-system')); $('#conf_cont_bobl').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_bobls_heading_title"), 'editor_container_boblightserver', 'btn_submit_boblightserver', 'panel-system'));
$('#conf_cont_bobl').append(createHelpTable(window.schema.boblightServer.properties, $.i18n("edt_conf_bobls_heading_title"), "boblightServerHelpPanelId")); $('#conf_cont_bobl').append(createHelpTable(window.schema.boblightServer.properties, $.i18n("edt_conf_bobls_heading_title"), "boblightServerHelpPanelId"));
} }
//forwarder //forwarder
if (storedAccess != 'default') { if (storedAccess != 'default') {
$('#conf_cont').append(createRow('conf_cont_fw')) $('#conf_cont').append(createRow('conf_cont_fw'));
$('#conf_cont_fw').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_fw_heading_title"), 'editor_container_forwarder', 'btn_submit_forwarder', 'panel-system')); $('#conf_cont_fw').append(createOptPanel('fa-sitemap', $.i18n("edt_conf_fw_heading_title"), 'editor_container_forwarder', 'btn_submit_forwarder', 'panel-system'));
$('#conf_cont_fw').append(createHelpTable(window.schema.forwarder.properties, $.i18n("edt_conf_fw_heading_title"), "forwarderHelpPanelId")); $('#conf_cont_fw').append(createHelpTable(window.schema.forwarder.properties, $.i18n("edt_conf_fw_heading_title"), "forwarderHelpPanelId"));
} }
@ -243,7 +243,7 @@ $(document).ready(function () {
$('#root_network_apiAuth').change(function () { $('#root_network_apiAuth').change(function () {
var state = $(this).is(":checked"); var state = $(this).is(":checked");
checkApiTokenState(state); checkApiTokenState(state);
}) });
checkApiTokenState(window.serverConfig.network.apiAuth); checkApiTokenState(window.serverConfig.network.apiAuth);

View File

@ -570,6 +570,24 @@ bool SettingsManager::handleConfigUpgrade(QJsonObject& config)
} }
migrated = true; migrated = true;
} }
}
if (newDeviceConfig.contains("type"))
{
QString type = newDeviceConfig["type"].toString();
if (type == "apa102")
{
if (newDeviceConfig.contains("colorOrder"))
{
QString colorOrder = newDeviceConfig["colorOrder"].toString();
if (colorOrder == "bgr")
{
newDeviceConfig["colorOrder"] = "rgb";
migrated = true;
}
}
}
}
if (migrated) if (migrated)
{ {
@ -577,7 +595,6 @@ bool SettingsManager::handleConfigUpgrade(QJsonObject& config)
Debug(_log, "LED-Device records migrated"); Debug(_log, "LED-Device records migrated");
} }
} }
}
// Have Hostname/IP-address separate from port for Forwarder // Have Hostname/IP-address separate from port for Forwarder
if (config.contains("forwarder")) if (config.contains("forwarder"))

View File

@ -233,10 +233,9 @@ void QJsonSchemaChecker::checkProperties(const QJsonObject& value, const QJsonOb
{ {
validate(value[property], propertyValue.toObject()); validate(value[property], propertyValue.toObject());
} }
else if (verifyDeps(property, value, schema)) else if (!verifyDeps(property, value, schema))
{ {
} if (required != propertyValue.toObject().end() && propertyValue.toObject().find("required").value().toBool() && !_ignoreRequired)
else if (required != propertyValue.toObject().end() && propertyValue.toObject().find("required").value().toBool() && !_ignoreRequired)
{ {
_error = true; _error = true;
@ -247,10 +246,15 @@ void QJsonSchemaChecker::checkProperties(const QJsonObject& value, const QJsonOb
} }
if (_correct == "") if (_correct == "")
{
setMessage("missing member"); setMessage("missing member");
} }
}
else if (_correct == "create" && _ignoreRequired) else if (_correct == "create" && _ignoreRequired)
{
QJsonUtils::modify(_autoCorrected, _currentPath, QJsonUtils::create(propertyValue, _ignoreRequired), property); QJsonUtils::modify(_autoCorrected, _currentPath, QJsonUtils::create(propertyValue, _ignoreRequired), property);
}
}
_currentPath.removeLast(); _currentPath.removeLast();
} }