Teams work merged

@v-hearya,
Thanks for your contribution as a Microsoft full-time employee or intern. You do not need to sign a CLA.
Thanks,
Microsoft Pull Request Bot

:warning: Validation status: warnings

File
Status
Preview URL
Details

patterns-practices/reference/moduledependencycollection-methods-mspp-modularity.md
:warning:Warning

Details

patterns-practices/reference/moduletypeloadernotfoundexception-methods-mspp-modularity.md
:warning:Warning

Details

patterns-practices/reference/allactiveregion-activeviews-property-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/allactiveregion-members-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/allactiveregion-methods-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-constructor-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/backgroundeventsubscription-tpayload-invokeaction-method-mspp-pubsubevents.md
:white_check_mark:Succeeded

patterns-practices/reference/bindablebase-setproperty-t-method-mspp-mvvm.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-region-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-class-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-constructor-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-logger-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-modulecatalog-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-shell-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/clearchildviewsregionbehavior-attached-properties-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-command-property-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-executecommand-method-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-targetobject-property-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-class-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-ctor.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-properties-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-registeredcommands-property-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-contains-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-subscribe-method-action-tpayload-boolean-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-subscribe-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-unsubscribe-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/configurationstore-methods-mspp-modularity.md
:white_check_mark:Succeeded

patterns-practices/reference/confirmation-methods-mspp-interactivity-interactionrequest.md
:white_check_mark:Succeeded

patterns-practices/reference/contentcontrolregionadapter-methods-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/cyclicdependencyfoundexception-events-mspp-modularity.md
:white_check_mark:Succeeded

patterns-practices/reference/dataeventargs-tdata-methods-mspp-pubsubevents.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultconfirmationwindow-confirmation-property-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultconfirmationwindow-methods-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultdispatcher-begininvoke-method-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultdispatcher-class-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultnotificationwindow-constructor-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultnotificationwindow-notification-property-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultprismserviceregistrar-class-mspp-mefextensions.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultprismserviceregistrar-registerrequiredprismservicesifmissing-method-mspp-mefextensions.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-detach-method-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-regionmanageraccessor-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-targetelement-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-class-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-fromasynchandler-method-func-task-func-boolean-mspp-commands.md
:white_check_mark:Succeeded

This comment lists only the first 50 files in the pull request.

patterns-practices/reference/moduledependencycollection-methods-mspp-modularity.md

Line 0: [Warning] Invalid file link:(~/reference/moduledependencyconfigurationelement-class-mspp-modularity).
Line 0: [Warning] Invalid file link:(~/reference/moduledependencycollection-getelementkey-method-mspp-modularity).
Line 0: [Warning] Invalid file link:(~/reference/moduledependencycoll-createnew-method).

patterns-practices/reference/moduletypeloadernotfoundexception-methods-mspp-modularity.md

Line 119: [Warning] Invalid file link:(~/reference/patterns-practices/reference/moduletypeloadernotfoundexception-class-mspp-modularity).

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:warning: Validation status: warnings

File
Status
Preview URL
Details

patterns-practices/reference/moduletypeloadernotfoundexception-methods-mspp-modularity.md
:warning:Warning

Details

patterns-practices/reference/allactiveregion-activeviews-property-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/allactiveregion-members-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/allactiveregion-methods-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-constructor-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/backgroundeventsubscription-tpayload-invokeaction-method-mspp-pubsubevents.md
:white_check_mark:Succeeded

patterns-practices/reference/bindablebase-setproperty-t-method-mspp-mvvm.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-region-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-class-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-constructor-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-logger-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-modulecatalog-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-shell-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/clearchildviewsregionbehavior-attached-properties-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-command-property-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-executecommand-method-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-targetobject-property-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-class-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-ctor.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-properties-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-registeredcommands-property-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-contains-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-subscribe-method-action-tpayload-boolean-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-subscribe-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-unsubscribe-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/configurationstore-methods-mspp-modularity.md
:white_check_mark:Succeeded

patterns-practices/reference/confirmation-methods-mspp-interactivity-interactionrequest.md
:white_check_mark:Succeeded

patterns-practices/reference/contentcontrolregionadapter-methods-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/cyclicdependencyfoundexception-events-mspp-modularity.md
:white_check_mark:Succeeded

patterns-practices/reference/dataeventargs-tdata-methods-mspp-pubsubevents.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultconfirmationwindow-confirmation-property-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultconfirmationwindow-methods-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultdispatcher-begininvoke-method-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultdispatcher-class-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultnotificationwindow-constructor-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultnotificationwindow-notification-property-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultprismserviceregistrar-class-mspp-mefextensions.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultprismserviceregistrar-registerrequiredprismservicesifmissing-method-mspp-mefextensions.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-detach-method-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-regionmanageraccessor-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-targetelement-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-class-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-fromasynchandler-method-func-task-func-boolean-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-properties-mspp-commands.md
:white_check_mark:Succeeded

This comment lists only the first 50 files in the pull request.

patterns-practices/reference/moduletypeloadernotfoundexception-methods-mspp-modularity.md

Line 119: [Warning] Invalid file link:(~/reference/patterns-practices/reference/moduletypeloadernotfoundexception-class-mspp-modularity).

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

patterns-practices/reference/allactiveregion-activeviews-property-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/allactiveregion-members-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/allactiveregion-methods-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-constructor-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/autopopulateregionbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/backgroundeventsubscription-tpayload-invokeaction-method-mspp-pubsubevents.md
:white_check_mark:Succeeded

patterns-practices/reference/bindablebase-setproperty-t-method-mspp-mvvm.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bindregioncontexttodependencyobjectbehavior-region-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-class-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-constructor-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-logger-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-modulecatalog-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/bootstrapper-shell-property-mspp.md
:white_check_mark:Succeeded

patterns-practices/reference/clearchildviewsregionbehavior-attached-properties-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-command-property-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-executecommand-method-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/commandbehaviorbase-t-targetobject-property-mspp-interactivity.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-class-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-ctor.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-properties-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositecommand-registeredcommands-property-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-contains-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-subscribe-method-action-tpayload-boolean-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-subscribe-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/compositepresentationevent-tpayload-unsubscribe-method-action-tpayload-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/configurationstore-methods-mspp-modularity.md
:white_check_mark:Succeeded

patterns-practices/reference/confirmation-methods-mspp-interactivity-interactionrequest.md
:white_check_mark:Succeeded

patterns-practices/reference/contentcontrolregionadapter-methods-mspp-regions.md
:white_check_mark:Succeeded

patterns-practices/reference/cyclicdependencyfoundexception-events-mspp-modularity.md
:white_check_mark:Succeeded

patterns-practices/reference/dataeventargs-tdata-methods-mspp-pubsubevents.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultconfirmationwindow-confirmation-property-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultconfirmationwindow-methods-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultdispatcher-begininvoke-method-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultdispatcher-class-mspp-events.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultnotificationwindow-constructor-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultnotificationwindow-notification-property-mspp-interactivity-defaultpopupwindows.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultprismserviceregistrar-class-mspp-mefextensions.md
:white_check_mark:Succeeded

patterns-practices/reference/defaultprismserviceregistrar-registerrequiredprismservicesifmissing-method-mspp-mefextensions.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-detach-method-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-members-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-methods-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-regionmanageraccessor-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delayedregioncreationbehavior-targetelement-property-mspp-regions-behaviors.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-class-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-fromasynchandler-method-func-task-func-boolean-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-properties-mspp-commands.md
:white_check_mark:Succeeded

patterns-practices/reference/delegatecommand-t-canexecute-method-mspp-commands.md
:white_check_mark:Succeeded

This comment lists only the first 50 files in the pull request.
For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


[Improvement] Fix inefficient map iterator

Fix inefficient iteration using Map#keySet, instead iterate using Map#entrySet, this avoids an expensive call to info.get on each iteration.
Brief change log

Fix inefficient iteration of Map#keySet in SqlParameters.java

Verify this pull request
No functional changes, test coverage is not affected.

This patch was generated automatically using Logifix.

Codecov Report

Merging #6004 (2cda9a8) into dev (4b892f7) will decrease coverage by 0.00%.
The diff coverage is 100.00%.

@@             Coverage Diff              @@
##                dev    #6004      +/-   ##
============================================
- Coverage     46.75%   46.75%   -0.01%
+ Complexity     3744     3743       -1
============================================
  Files           604      604
  Lines         24829    24830       +1
  Branches       2836     2836
============================================
- Hits          11610    11609       -1
- Misses        12077    12078       +1
- Partials       1142     1143       +1

Impacted Files
Coverage Δ

...olphinscheduler/common/task/sql/SqlParameters.java
74.07% <100.00%> (+0.32%)
:arrow_up:

...er/master/dispatch/host/assign/RandomSelector.java
77.77% <0.00%> (-5.56%)
:arrow_down:

...heduler/server/master/runner/MasterExecThread.java
16.08% <0.00%> (-0.19%)
:arrow_down:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 4b892f7...2cda9a8. Read the comment docs.

Hi,how it is going?

@CalvinKirs @Technoboy-
Should be fixed now.

@lyxell The UT is failed, please take a look.

@ruanwenjun
It was probably the suggestion to remove the call to String.valueOf

@lyxell Ok, I see.
There might be a bug in JSONUtils
public static <K, V> Map<K, V> toMap(String json, Class<K> classK, Class<V> classV) {
        return parseObject(json, new TypeReference<Map<K, V>>() {});
}

You can modified the line 156 in AbstractParameters to below code
Map<String, String> param = JSONUtils.parseObject(listIterator.next().toString(), new TypeReference<Map<String, String>>() {
            });

@ruanwenjun
Looks ok?


Ability to manage pdf export zoom/page size

Describe the feature you'd like
I want more information per pages when exporting as pdf/html, the default zoom is huge.
Describe the benefits this would bring to existing BookStack users
Less pages to print, less paper, less cutted tree, amazonia saved, more oxygen on the planet = more happiness :)
Can the goal of this request already be achieved via other means?
Kind of, yes : export as html, print a pdf with 70% zoom. But it change how it looks.
Have you searched for an existing open/closed issue?

[X] I have searched for existing issues and none cover my fundemental request

How long have you been using BookStack?
0 to 6 months
Additional context
No response

Nothing planned ?

@eoli3n Not right now, there's been no other demand for this, so not really something I'd look to add an option for.
I could probably provide logical theme system hack to alter this globally if desired, Just need to know if you're using the default PDF renderer or if you've set settings to use WKHTMLTOPDF.

A hack would be perfect if possible, with dompdf

Here's an unofficial hack, can't assure it'll be issue free. It's fairly simple though so should rarely cause issues with future changes (not impossible though). Add this to your functions.php after going the "Getting Started" part of the logical theme system docs/video.
<?php

use BookStack\Facades\Theme;
use BookStack\Theming\ThemeEvents;

Theme::listen(ThemeEvents::APP_BOOT, function () {
    config()->set('dompdf.options.dpi', 144);
});

Adjust the 144 as needed (default is 96).
If things look a little "contained" (with large side margins), you can add the below to the "Custom HTML Head Content" customization setting within the BookStack UI:
<style>
.export-format-pdf .page-content { max-width: 100%; }
</style>

Does this still work with recent pdf export changes ?

@eoli3n I have test this, but the setting has moved for the current version of BookStack, and the functions.php should probably now be:
<?php

use BookStack\Facades\Theme;
use BookStack\Theming\ThemeEvents;

Theme::listen(ThemeEvents::APP_BOOT, function () {
    config()->set('exports.dompdf.dpi', 144);
});


Client observations creating too many uri tag values

After observability support was added to RestTemplateEurekaHttpClient in #4255 by using the RestTemplateBuilder metrics are being generated for Eureka client requests.
The ClientRequestObservationConvention adds the URI template of the requests as a low cardinality observability/metric key-value/tag.
The current implementations of EurekaHttpClient based on RestTemplate and WebClient assemble the full URL of the requsts and pass it to the client implementation. This causes a high number of values for the URI tag in the metrics, especially if the lastDirtyTimestamp changes often (due to e.g. flaky health of some component). By default only 100 values are allowed for the URI tag, additional values would be dropped and the metrics using these values are ignored.
Could be mitigated by passing at least the lastDirtyTimestamp as a uriVariable to the RestTemplate calls.
Version: spring-cloud-netflix-eureka-client 4.1.2
Sample of generated (prometheus) metrics
The following metrics where available after making the Eureka server unavailable twice and thus causing a status change to UNKNOWNand dirying of the InstanceInfo.
# HELP http_client_requests_seconds_max
# TYPE http_client_requests_seconds_max gauge
http_client_requests_seconds_max{client_name="localhost",error="ResourceAccessException",exception="ResourceAccessException",method="GET",outcome="UNKNOWN",status="CLIENT_ERROR",uri="/eureka/apps/delta"} 0.0410048
http_client_requests_seconds_max{client_name="localhost",error="ResourceAccessException",exception="ResourceAccessException",method="PUT",outcome="UNKNOWN",status="CLIENT_ERROR",uri="/eureka/apps/<appName>/<instanceId>?status=UP&lastDirtyTimestamp=1720440338928"} 0.0
http_client_requests_seconds_max{client_name="localhost",error="ResourceAccessException",exception="ResourceAccessException",method="PUT",outcome="UNKNOWN",status="CLIENT_ERROR",uri="/eureka/apps/<appName>/<instanceId>?status=UP&lastDirtyTimestamp=1720441059188"} 0.0409643
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="GET",outcome="SUCCESS",status="200",uri="/eureka/apps/"} 0.0054987
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="GET",outcome="SUCCESS",status="200",uri="/eureka/apps/delta"} 0.0476062
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="POST",outcome="SUCCESS",status="204",uri="/eureka/apps/<appName>"} 0.0078605
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="PUT",outcome="CLIENT_ERROR",status="404",uri="/eureka/apps/<appName>/<instanceId>?status=UP&lastDirtyTimestamp=1720440338928"} 0.0
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="PUT",outcome="CLIENT_ERROR",status="404",uri="/eureka/apps/<appName>/<instanceId>?status=UP&lastDirtyTimestamp=1720441059188"} 0.0194635
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="PUT",outcome="SUCCESS",status="200",uri="/eureka/apps/<appName>/<instanceId>?status=DOWN&lastDirtyTimestamp=1720440308847"} 0.0
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="PUT",outcome="SUCCESS",status="200",uri="/eureka/apps/<appName>/<instanceId>?status=UP&lastDirtyTimestamp=1720440338928"} 0.0
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="PUT",outcome="SUCCESS",status="200",uri="/eureka/apps/<appName>/<instanceId>?status=UP&lastDirtyTimestamp=1720441059188"} 0.0066927
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="PUT",outcome="SUCCESS",status="200",uri="/eureka/apps/<appName>/<instanceId>?status=UP&lastDirtyTimestamp=1720442649723"} 0.0058572

Hello @sunruh, thanks for reporting the issue. Makes sense. I don't think we want to modify Eureka's REST API at this point, but we may want to create our own implementation of ClientRequestObservationConvention that will disregard this query param and set it on the RestTemplate once it's been built.
@jonatan-ivanov wdyt?

@sunruh
As a quick workaround till this is fixed and released, you can create a MeterFilter or an ObservationFilter @Bean in your application and remove the high cardinality part of the uri. The uri should be templated and low cardinality as you stated above.
I think if you can inject to your own RestTemplate to the Eureka client, then you should also be able to inject your own convention where you can modify this behavior (but I think the simplest thing to do is creating a MeterFilter).
@OlgaMaciaszek
I think creating a ~EurekaClientRequestObservationConvention that extends ClientRequestObservationConvention and normalizes the value of the uri so it will be low cardinality is the proper solution. I think I would also make this convention extendable (non-final) and injectable by the users so that users can define their own convention if they want to.

Thanks, @jonatan-ivanov, @sunruh. I've started working on it just to realise that this issue should already be resolved as a side effect of a different fix that I just merged yesterday. It switches from using  exchange(String url, ...) to exchange(URI url, ...) in RestTemplateEurekaClient , hence removing the use of uriTemplate and the low cardinality uri key in favour of the high cardinality http.url key. Could you please verify against the latest snapshots?

That fixes the issue. Of course all requests now end up with uri=UNKNOWN but it would be impossible to have an uri tag with any RestTemplate method that takes a URI as those are never templates:
# HELP http_client_requests_seconds_max
# TYPE http_client_requests_seconds_max gauge
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="GET",outcome="SUCCESS",status="200",uri="none"} 0.0037342
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="POST",outcome="SUCCESS",status="204",uri="none"} 0.0
http_client_requests_seconds_max{client_name="localhost",error="none",exception="none",method="PUT",outcome="SUCCESS",status="200",uri="none"} 0.0073595

Both issues (this one and the one regarding special characters in e.g. the instance id) could have been solved by using templating in the RestTemplateEurekaHttpClient, not changing the API but using e.g. in getApplication(String appName), restTemplate.exchange(serviceUrl + "apps/{appName}", HttpMethod.GET, null, Application.class, appName) but I would consider that an improvement.

@sunruh would you like to create a PR with the improvement?

If you would like us to look at this issue, please provide the requested information. If the information is not provided within the next 7 days this issue will be closed.

Closing due to lack of requested feedback. If you would like us to look at this issue, please provide the requested information and we will re-open the issue.

Reopening as enhancement.

Was my PR maybe missed as the status is now "help wanted"?

Thanks @sunruh, I think the status was changed before your PR or roughly at the same time. Will look at it next week.

Hi all, I stumbled on this issue just now; and I'm sorry if it is already resolved (quite frankly, it's a late Friday night for me, and I'm not fully able to follow the conversation anymore). In any case, while searching for solutions I stumbled on this article which presents a way of using WebClient that will still create a tag with the uriTemplate, but respect the parameters as such: https://medium.com/@nickjarzembowski_15160/controlling-webclient-metrics-cardinality-b96669dcc88d
Just thought it might be helpful in this situation. If this is already been taken care of or obsolete, please disregard this comment.


Timeout Error When Entering Passphrase in Green Wallet App (Mobile)

When attempting to connect to my Jade wallet using the standard method in the Green Wallet app on mobile, everything works fine. However, when trying to connect with the passphrase, a timeout error occurs.
When I enter the passphrase within 5-10 seconds, I can access the app normally.
However, if the passphrase entry time exceeds 20-30 seconds, the timeout error occurs and I am unable to access the wallet.
This issue specifically happens in the Green Wallet app on mobile, both in the "Jade" version and the "Jade Official" version. I tested both versions, and both exhibit the same behavior.
Behavior in Sparrow App (PC): I tested the same process in the Sparrow app on PC, and there the passphrase connection works as expected without the timeout error, regardless of how long it takes to enter the passphrase.
Steps to Reproduce:
Connect to Jade using the Green Wallet app on mobile.
Select the option to enter the passphrase.
Enter the passphrase.
If the passphrase is entered within 5-10 seconds, the connection is successful.
If the passphras
https://github.com/user-attachments/assets/558686ab-c2bf-442a-9193-eb17db42a288
e is entered after 20-30 seconds, a timeout error occurs.
Expected Behavior: The passphrase should be accepted regardless of the time it takes to enter it, without causing a timeout error in the Green Wallet app on mobile.
Demonstration Video:
(Attach a video or link that shows the error occurring on Green Wallet on your cell phone).
Related Behavior by Others: Several users are reporting the same issue in Jade and Green Wallet related communities and forums. It appears that the timeout error mainly affects the mobile app, while the Sparrow app on PC does not have this problem.

The moment I connect the wallet, when I open the Green Wallet app, this message "Timeout - no response received for message id: 1010" keeps appearing, sometimes when I open the wallet, sometimes before it actually opens.

The same problem is happening to me, it is preventing me from accessing my Jade because of this passphrase bug.

I think the issue must on the app side - ie. that the app has decided that you've had long enough and that the connection has timed out.  Jade itself has no timeout here and should let you take as long as you need to enter the PIN and any phrase.  (Note the timeout is probably the total time to enter PIN+phrase?)
In any case I can pass this on to the team in question - is the issue on android or ios (or both)  ?
(Also, do you know how the Green Desktop app behaves in this regard ?)
Thanks.

The Green Desktop app still has the same bug of blocking the Jade DIY buttons, so I haven't tested it yet, but I have an official Jade and I'm going to test it with it.

I'm having the same problem

I will forward the details to the mobile and desktop app teams.
Many thanks.

Enviei agora vários e-mails para eles com o teu Tópico aqui referido.

I have raised issues against the ios app, the android app,  and the desktop app to request they check their timeouts are long enough.
To be clear, it is the app timing out - there is no change we can make to Jade (ie. in this repo) which can address this.  The timeout in question is in the mobile/desktop application.

Here I have the bug replicating itself in a ttgo t display version and in the official version, (but when we started the complaint it was impossible to access, today I managed to access but it is a bit unstable because there are days when it does not work).
The bug is happening in version 1.0.33-2-g12 of jade diy with the green wallet app on android in version 4.0.38
https://github.com/user-attachments/assets/90f920ec-12ab-4272-a699-942c1240a7e9
https://github.com/user-attachments/assets/f638eac5-bcbf-466e-b522-59d3a6bccfc9

Thanks - this is an issue with the android (and maybe also ios?) apps - and not with Jade itself.
I have raised issues on our internal system against both these repos - I will link your video above to the existing android issue - many thanks.


iphone bug

In your website https://limonte.github.io/sweetalert2/  , you have to fix the alerts widths because thay  are bigger than the screen width in portrait direction of iphone mobiles.

Thank you @gouhary for reporting this issue! Should be fixed now, can you please check again.

@gouhary  its seems to be working now. Tested on iPhone 5 ]

I think we're done here, @gouhary  reopen if needed


dependency problems on Vero 4K+ OSMC

[x] I confirm that this is an issue rather than a question.

Bug report
Steps to reproduce

download Hyperion-2.0.0-alpha.9-Linux-aarch64.deb
$ sudo sudo dpkg -i Hyperion-2.0.0-alpha.9-Linux-aarch64.de

What is expected?
I expected a functional Hyperion installation
What is actually happening?
_

Selecting previously unselected package hyperion:arm64.
(Reading database ... 31360 files and directories currently installed.)
Preparing to unpack Hyperion-2.0.0-alpha.9-Linux-aarch64.deb ...
---Hyperion ambient light preinst ---
Unpacking hyperion:arm64 (2.0.0) ...
dpkg: dependency problems prevent configuration of hyperion:arm64:
hyperion:arm64 depends on libcec4.
dpkg: error processing package hyperion:arm64 (--install):
dependency problems - leaving unconfigured
Errors were encountered while processing:
hyperion:arm64

Then:
3. $ sudo apt install libcec4
4. $ sudo apt --fix-broken install
result:

---Hyperion ambient light postinstall ---
---> init deamon: systemd
---> Install Hyperion desktop icons

---> Hyperion has been installed/updated!
--->
---> You can start Hyperion from your menu now
---> For configuration, visit with your browser: <IP_ADDRESS>:8090
---> or if already used by another service try: <IP_ADDRESS>:8091
Webpage: www.hyperion-project.org
Wiki: wiki.hyperion-project.org
Forum: forum.hyperion-project.org

daemon is not running after this:
$ hyperiond

hyperiond: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

System

Update for future reference:
Hard work as already be done, I used this to install a pre-built binary:
https://github.com/hissingshark/hyperion-vero4k


Dotted type in jsdoc is not parsed correctly

TypeScript Version:  2.4.0-dev.20170605
Code
import React from 'react';

/**
 * @param {React.FormEventHandler<Checkbox>} a
 */
function foo(a) {}

Expected behavior:
The language service parses the jsdoc as documented in https://github.com/Microsoft/TypeScript/wiki/JSDoc-support-in-JavaScript
Actual behavior:
[js] '}' expected. at the <. This appears to be a problem with the dotted type, i.e. import React, {FormEventHandler} from react; …{FormEventHandler<Checkbox>} … works fine.
Reproduced using visual studio code (I don't know how to manually launch and use the language service).

Does it work if you write import * as React from "react"?

Nope:
import * as React from 'react';

/**
 * @param {React.FormEventHandler<Checkbox>} a
 */
function foo(a) {}

'}' expected.

This error also happens, as expected, so I think that confirms that the type can be correctly resolved:
import React from 'react';

/**
 * @param {React.FormEventHandler} a
 */
function foo(a) {}

Generic type 'FormEventHandler' requires 1 type argument(s).

Is this also somehow related to #14233 ? Is there a semantic difference from namespace and dotted notation in Typescript?

JSDoc syntax requires a dot before the type arguments: React.FormEventHandler.<CheckBox>. Closure Compiler syntax does not, though.
#17176 should have fixed this because now JSDoc and Typescript use the same parser for all types, so this should be parsed as a normal Typescript-syntax type reference.


Use h5 Paths to get groups and datasets

Update getting groups and datasets using H5 path instead of initiating the group above and then using the .get_ function.  This speeds up the get because the metadata of the above group does not get initiated and validated which is the main slow down.

[x] Add function MTH5._make_h5_path
[ ] Update .get_[function] to use the h5 path
[ ] Update tests
[ ] Update documentation

Codecov Report
Base: 57.09% // Head: 57.27% // Increases project coverage by +0.17% :tada:

Coverage data is based on head (30e3e0e) compared to base (aa68e07).
Patch coverage: 88.52% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##           master     #133      +/-   ##
==========================================
+ Coverage   57.09%   57.27%   +0.17%
==========================================
  Files         111      111
  Lines       11066    11068       +2
==========================================
+ Hits         6318     6339      +21
+ Misses       4748     4729      -19

Impacted Files
Coverage Δ

mth5/mth5.py
69.08% <85.10%> (+1.05%)
:arrow_up:

tests/version_1/test_mth5.py
98.56% <100.00%> (+0.16%)
:arrow_up:

mth5/io/zen/z3d_collection.py
17.18% <0.00%> (-3.55%)
:arrow_down:

mth5/groups/master_station_run_channel.py
59.10% <0.00%> (-0.62%)
:arrow_down:

mth5/utils/helpers.py
52.50% <0.00%> (+4.50%)
:arrow_up:

mth5/tables/tf_table.py
98.07% <0.00%> (+7.69%)
:arrow_up:

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.

:umbrella: View full report at Codecov.
:loudspeaker: Do you have feedback about the report comment? Let us know in this issue.


Add support for scss files in cli

First of all thanks for this utility, it's exactly what I was looking! Simple but powerful.
I found also very useful the cli to generate components.
With this PR which I hope you will integrate, I have just added the support for generate components via cli from SASS files.
I added one test.scss file and one new npm run test:cli-sass for testing with this file.
The test.scss is the same as test.css but with nested css, and the result is below:
import { styled } from "@phntms/css-components";

import css from "./test.scss";

export const AlmostEmpty = styled("div", {
  css: css.almostEmpty,
});
export const Footer = styled("footer", {
  css: css.footer,
  variants: {
    fixed: {
      true: css.footer_fixed_true,
    },
    theme: {
      light: css.footer_theme_light_default,
      dark: css.footer_theme_dark,
    },
  },
  compoundVariants: [
    {
      fixed: css.true,
      theme: css.light,
      css: css.footer_fixed_true_theme_light,
    },
    {
      fixed: css.false,
      theme: css.light,
      css: css.footer_fixed_false_theme_light,
    },
  ],
  defaultVariants: {
    theme: "light",
  },
});
export const Link = styled("a", {
  css: css.link,
  variants: {
    primary: {
      true: css.link_primary_true,
    },
  },
  defaultVariants: {
  },
});

Let me know if you need any adjustment.
Thanks!

@digitaljohn I have updated README and also added the css and scss in separated folder, so that we can test generating from css and scss files together, using:
npm run test:cli # test css and scss together
npm run test:cli-css # test only css
npm run test:cli-scss # test only scss


Can you update the case?

Can you update or  add  more cases?

What do you mean by cases?

it is sample. like math sample
---Original---
From: @.>
Date: Wed, May 19, 2021 01:32 AM
To: @.>;
Cc<EMAIL_ADDRESS>Subject: Re: [komorra/NodeEditorWinforms] Can you update the case? (#16)
What do you mean by cases?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub, or unsubscribe.

Yes, in the future. But I don't know when exactly. What samples are you interested the most? (I considered audio or bitmap samples to implement)

would you update the example like the picture in the github?


Add BOPTEST and BOPTEST-Gym to the list.

Insert URLs to the project(s) here:
BOPTEST
BOPTEST-Gym
Explain what this list is about and why it should be included here:
The BOPTEST project is an innovative, open, and international initiative aiming to throw light on best practices for building energy management. It provides reliable building emulators, standardized scenarios, and a run-time environment to facilitate the assessment and comparison of control algorithms in buildings. The number of forks and issues shows that there are people other than the main developers using the repositories already. Also, extensive documentation exists for BOPTEST in this link and e.g. in this Colab notebook. A recent tutorial is coming for the CCAI Summer School 2022, already available here.
The community behind OpenSustain.tech offers free marketing and consulting for open source projects added to the list. If you are interested just tick here:

[x]  Share the project on all available social media channels. ( Reddit, Twitter, Linkedin, HackerNews ).
[x]  Collaborative blog post about the project with publication on OpenSustain.tech and OpenSource.com.
[x]  Get feedback on your project.
[x]  Guidance on further development strategies and funding for the project.

A really great project with a strong community and good documentation. Thank you so much for your contribution. I'll send you a message on Linkedin to discuss how I can support you further.


Clientside workaround for coop replays

Intro
This is a a sort of mini-guide on how to launch coop replays manually. I'm creating this as a github issue because I think it should be pretty simple to get the client to do this automatically. In the mean time people will need to do the set up themselves.
Why don't coop replays work?
Coop maps are not stored in the vault like regular maps. This means that the replay server doesn't recognize coop map names, and instead just write none into the fafreplay header. When the client goes to download the map we see an exception like this:
java.io.FileNotFoundException: https://content.faforever.com/faf/vault/maps/none.zip

How to launch coop replays manually
First off, you will want to have the legacy client installed as it will handle updating to the correct version of FA for the replay: https://github.com/FAForever/client/releases

Download the replay from the vault. An easy way to do this is to hit the "play" button on the coop tab, and cancel when you see the error, just be aware that it is downloaded into C:\ProgramData\FAForever\cache\temp.fafreplay.

Change the replay extension from .fafreplay to .coop.fafreplay. This will tell the legacy client that it should update for the coop game mode.

Right click the replay and open it with the legacy client. It is probably called Forged Alliance Forever - Lobby Client. The legacy client should now update the necessary files, but it will most likely fail with an error message like "Map not found" or a timeout error.

Start the replay from the command line. Open cmd or powershell and paste in the following command:

C:\ProgramData\FAForever\bin\ForgedAlliance.exe /init init_coop.lua /nobugreport /log C:\ProgramData\FAForever\logs\game.log /replay C:\ProgramData\FAForever\cache\temp.scfareplay

Client workaround
I think we should modify the replay launching code so that it skips the map download for coop maps. That way the user can set up their maps directory manually before launching the replay. We should also make sure that the client downloads the correct version of the FA for the replay, as it stands I think it tries to always download the most recent version (the legacy client handles this correctly).
Wanna have the bug fixed quickly?
Visit Issue hunt...

IssueHunt Summary

Backers (Total: $10.00)

 askaholic ($10.00)

Become a backer now!
Or submit a pull request to get the deposits!
Tips

Checkout the Issuehunt explorer to discover more funded issues.
Need some help from other developers? Add your repositories on IssueHunt to raise funds.

Either I am stupid or I tried already to fix it

I made a dialog that asks you to start replays even if the map can not be found

Anybody that wants to try, go ahead

@axel1200 why did you reopen this?

Closing for lack of response


[ASK] How can I login with Twitter app.

let swifter = Swifter(consumerKey: TWITTER_CONSUMER_KEY, consumerSecret: TWITTER_CONSUMER_SECRET,appOnly: true)
this does not worked for me.
I Wants to login user from Twitter app as well as Authentication from browser.
From browser it's working.
But it is not redirecting to Twitter app.

did you link to your bundle-identifier?

No, how can I do that.?

´´´
self.swifter.authorizeWithCallbackURL(NSURL(string: "com.YOUR_APP://success")!, success: {
´´´
actually very easy, but took me also a long time to find out ;)

Unfortunately, I did that too...but it didn't help...

the callback url need to be your app and i guess you already have add the openurl stuff in your appdelegate?

Right,so shouldn't I use that in appdelegate?

thats fine.and the callback is your Bundle Identifier?
its is like
LTD.DOMAIN.APPNAME
and i put
LTD.DOMAIN://success
as callback.

No, I used myapp://success

So,LTD.DOMAIN://success will help me in login with Twitter app.?

yes, works for me,
i just recognized you want "appOnly" authentication.
i can not confirm it works the same way, because you need the bearer token and this might be handled slightly different?!
check out this link: https://dev.twitter.com/oauth/application-only

@ZaidPathan yes it is possible only if the user has configured his Twitter account in the Settings. You can then fetch his credentials from there and authenticate the user. @alexdd55 I've used the method here https://github.com/MHaroonBaig/Swift-Beautify in my sample application. The file is located here https://github.com/MHaroonBaig/Swift-Beautify/blob/master/Picker/DoneViewController.swift

Thanks Haroon bro,
I appreciate your and Alex's valuable response.
so is it not possible to fetch user data from installed app.(not settings account).?

No. The only possibility is when the user has configured his official Twitter account in the settings. You can do a work around. Like, many people don't know about configuring their accounts in the Settings section. What you can do is that, you can apply the check and fetch the credentials through the ACAccountStore. Then incase of any error, redirect the user to the settings screen manually so that they could enter their credentials there. You can then authenticate them using the credentials that they would enter.

Alright,
So, I'm closing this issue.
Thanks.


[Camel 3.9] Azure Storage Data Lake appends newline to the file content

Rel. #2289
Steps to reproduce:

Open AzureStorageDatalakeTest
Search for the two locations mentioning the URL of this issue
Replace .body(Matchers.startsWith(content)) with .body(Matchers.is(content))

Expected: the test passes
Actual: for some reason the azure-storage-datalake component appends a newline to the content.
Not sure at all which part of the chain is causing the problem.

A workaround in Camel is under review: https://github.com/apache/camel/pull/5175
If it gets accepted, .body(Matchers.startsWith(content)) can be replaced with .body(Matchers.is(content)) AzureStorageDatalakeTest


Implement RequestDag and RequestBlock APIs

I'm questioning now whether these APIs are actually needed. As a client, I can send a TransmitDag or TransmitBlock command to a node, and it will transmit that dag/block to the specified destination. I'm not sure that the Request* APIs provide any extra value beyond what the Transmit* APIs already provide.


Bug: Unsupported URL

Plugin version
0.9.2
Describe the bug
I get "Request failed. unsupported URL" in the sidebar when I use YT-transcript.
Youtube link
https://youtu.be/bCX0Py6-po8?si=MK1PPwnOFKXUwT2p
Expected behavior
It fetches the transcript.
Screenshots

Hi yes that’s inconvenient but short url won’t work. You have to use full one.
Wiadomość napisana przez Calion @.***> w dniu 08.06.2024, o godz. 15:27:

Plugin version
0.9.2
Describe the bug
I get "Request failed: Unsupported URL" in the sidebar when I use YT.
Youtube link
https://youtu.be/bCX0Py6-po8?si=MK1PPwnOFKXUwT2p
Expected behavior
It fetches the transcript.
Screenshots
DECE4574-A19B-470F-B09C-10E69B223A97.jpeg (view on web)https://github.com/lstrzepek/obsidian-yt-transcript/assets/3050950/79623db5-ef67-49c1-b481-ea8a5b36105a
—
Reply to this email directly, view it on GitHubhttps://github.com/lstrzepek/obsidian-yt-transcript/issues/51, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AABNICE67OALJRAAFTZWPLDZGMBE7AVCNFSM6AAAAABI772XUWVHI2DSMVQWIX3LMV43ASLTON2WKOZSGM2DCNRVGY4DMNY.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Related bug: #50
Probably closing one also closes the other.

@lstrzepek
Are you still accepting PR's on this repository?

this is a duplicate of #50
link is working on desktop version

Thank you for the #55 fix @lstrzepek ! 🙏


Refactor expDesign

This refers to the function in use for MT+ localizer (nb: MT/MST has its own design function for the moment)
TO DO:
Refactoring

[x] make it "stand alone"  #69
[x] make vars name transparent #67
[x] make fixation target set a separate function
[x] modularize the function for "task" (considering to make them part of CPP_PTB)

Features improvements

[ ] make it flexible in case someone wants only one condition (either static or motion or more than two conditions) moved to #88
[ ] add a task for different speed targets (either faster or slower), might be better to develop this in another or to easy the weight of this one. The ground is set though. Consider as the output of the function a matrix with 1 (is target) and 0 (no target) instead of the actual dot speed moved to #89
[ ] improve and avoid error('number of repetitions must be a multiple of max number of targets'); moved to #90
[x] make the target tasks optional (eg if I have two targets like fixation cross and speed, I set  cfg.target.type = {'fixation_cross', 'speed'};)
[x] reconsider pseudorand. rule 3 in setFixationTargets:  no more than ``nbRepetitions - 1`` target in the same event order. Maybe better a rule of eg no less than 1 per each event position in the block (increase an equal distribution of the targets in the all event's position in the blocks across the run)

Annex

[x] improve doc in README
[x] Improve doc in the function
[x] unit test

Unchecked to does will probably be moved to issues for future developments... this is already a big one sorry :)

added some tests.
do you want to also refactor the MT MST one ? It should be fairly straight forward now, no? (famous last words)

Hey sorry for being late on the reply here.

do you want to also refactor the MT MST one ? It should be fairly straight forward now, no? (famous last words)

I am tempted to do that in a new PR cause I suspect that a separate design for MT_MST might be useless now and with few 'if/switch' statements we can do the trick.
Also, I see that in some functions the copyright tag has been moved below the function [out] = myFunc(in) call. The style used 'everywhere' is to put it in the very first line, isn't it?
I am a bit confused by the test for the speed task because I see code related to the fixation task there.  So my idea is to use setSpeedTargets to implement a task where the subj has to detect the eg 'faster dots trial'. The output matrix is full of values that are multiplicators of cfg.dot.speed = 15; so that if the matrix reports a 1, then it has the set speed (no change in speed), if eg 2 for a given trial then that speed will be doubled. I know it is hard to get from the code as it is right now but it is because it is WIP and to implement when someone will need that.
The idea is also the possibility to have >1 task in the same experiment if needed, as fixation target && dot faster speed target

Also, I see that in some functions the copyright tag has been moved below the function [out] = myFunc(in) call. The style used 'everywhere' is to put it in the very first line, isn't it?

Until recently miss_hit only allowed the top line, but that would mess up using the "help" command on Octave and very few matlab codebases put the copyright there.
So this has changed and we can now use the more conventional "copyright at the end of the help section".
No need to change all functions now, but if you run into a function where it is still in the top line, put it at the end of the help section.

I am tempted to do that in a new PR cause I suspect that a separate design for MT_MST might be useless now and with few 'if/switch' statements we can do the trick.

Agreed

I am a bit confused by the test for the speed task because I see code related to the fixation task there. So my idea is to use setSpeedTargets to implement a task where the subj has to detect the eg 'faster dots trial'. The output matrix is full of values that are multiplicators of cfg.dot.speed = 15; so that if the matrix reports a 1, then it has the set speed (no change in speed), if eg 2 for a given trial then that speed will be doubled. I know it is hard to get from the code as it is right now but it is because it is WIP and to implement when someone will need that.

Ah OK I get it now: I was not sure what was expected so I sort of made a wild guess: then the code and test need to be updated.

I moved the left to does to new issues and brought back the mock configuration inside expDesign. Apologies if I push for this but it is a time saver for me and also might help future users to understand how it works and what are the inputs there (hope the new comments are clear).
Also added more info about the WIP situation of setSpeedTargets both in the readme and inside the function. Let me know if the test works after this or it needs a fix.

Merging this one


Fix intermittent test failure in test/auction/fa2-auction-fee.test.ts

fa2-auction-fee.test.ts reliably passes locally, yet reliably fails in CI. @EGuenz believes this is due to the combination of the inherent time sensitivity of the test and its execution on a slower machine (the CI runner node in the failure case).
We should tweak whatever time constants are at play to ensure the test reliably succeeds in CI.

Reopening. Still seeing this happen occasionally, though much less frequently.

I have not been seeing it anymore after some tweaks so I will close.


Update application-provisioning-quarantine-status.md

Updated the retries

@owinoakelo : Thanks for your contribution! The author(s) have been notified to review your proposed change.


fix(versions): update Activiti/example-runtime-bundle versions into master

UpdateBot pushed maven dependency: org.activiti.cloud.rb:activiti-cloud-runtime-bundle-dependencies to: 7.1.151

UpdateBot commands:
updatebot push-version --kind maven org.activiti.cloud.rb:activiti-cloud-runtime-bundle-dependencies 7.1.151


Save TraceFromIndex and TraceToIndex

Describe the feature
Erigon  stores the trace information, specifically the "From" and "To" addresses, in an indexed format. This intelligent indexing greatly enhances the performance when searching for transactions or traces, eg the rpc like trace_filter, ots_searchTransaction will experience significant speed improvements as a result of this index.
But the format of the index in Erigon2 and Erigon3 are different.
Erigon 2
The db stat as below(the holesky chain on 2024-08-23)
Status of CallFromIndex
  Pagesize: 8192
  Tree depth: 4
  Branch pages: 4490
  Leaf pages: 857155
  Overflow pages: 0
  Entries: 55318038
Status of CallToIndex
  Pagesize: 8192
  Tree depth: 4
  Branch pages: 5570
  Leaf pages: 1061662
  Overflow pages: 0
  Entries: 69128270
Status of CallTraceSet
  Pagesize: 8192
  Tree depth: 3
  Branch pages: 523
  Leaf pages: 45804
  Overflow pages: 0
  Entries: 8279845

For each executed block, it will collect all the from and to addresses touched in each call, and then save into kv.CallTraceSet https://github.com/ledgerwatch/erigon/blob/d24e5d45755d7b23075c507ad9216e1d60ad03de/eth/calltracer/calltracer.go#L63 :

The key is the block number.
The value contains an address (20 bytes) and a flag byte
If the flag's least significant bit is set (v[length.Addr]&1 > 0), it adds the block number to the froms map for that address.
If the flag's second least significant bit is set (v[length.Addr]&2 > 0), it adds the block number to the tos map for that address.

After processing all entries, it finalizes the data by writing the collected information to kv.CallFromIndex and kv.CallToIndex, it stores as the key-value pairs:
   address + chunk1_start_block -> bitmap_chunk1
   address + chunk2_start_block -> bitmap_chunk2

and value is a collection of block numbers, so for the same key(in the same range of blocks) the bitmap will be UPSERTED for each block.
And in the meanwhile clean the old entries in kv.CallTraceSet(this table is temporary)
Erigon 3
Similar to Erigon2, but there was no temporary kv.CallTraceSet table, the from and tos are directly created into kv.TblTracesFromIdx and kv.TblTracesToIdx, and the storage format is also different:

Erigon2: one bitmap for a range of blocks per address, one bit for one block;
Erigon3: Key-Value pairs where key is address+block, and value is empty, data is persisted into disk as inverted index(managed by a B-Tree like struct)

Compared to Erigon2, Erigon3 has improvements:

no need to put/delete the temporary kv.CallTraceSet table;
no need to update for the same bitmap, just insert new records for new blocks;

Potential tradeoffs:

for the active addresses(eg: Exchange Hot Wallet), Erigon3's storage may use more disk than a bitmap

WIP: need to learn more about the Erigon 3's implemation, and propose a suitable method in reth.
Additional context
No response

I'd like to help with this, if possible!

This should not be done as part of the core node IMO and should be done as an ExEx DB index + RPC, WDYT?

@gakonst I am not sure if the built-in RPC logics(eg: crates/rpc/rpc/) can still utilize this index if it is used as ExEx DB. If not, it will have to be an independent db, just like an additional RDS table, in this case, the built-in RPC won't be used, only the RPC in ExEx will be used, so it won't be very useful.


Downloads blockchain from 2009

This has happened to me a few times.  Multibit wants to download the blockchain from 2009.  I suspect my computer was not cleanly shutdown.
I'd expect MB to remember the birthday of my wallet and start from there.  That's what makes the out of the box experience so good.

Closing due to inactivity.


Help with maintenance of the Scrivener.HTML project?

Please let me know if this isn't the appropriate venue – or just close the issue :) – I also noticed that this project itself is in 'low maintenance mode', so no worries if this isn't something you'd be interested in in helping out with.
Scrivener.HTML seems to be un-maintained; see:

Maintenance Help · Issue #103 · mgwidmann/scrivener_html

Several users of that library have contributed changes to resolve some issues, mainly due to dependency conflicts as various other libraries have been updated. I think most of the desired changes are literally just fiddling with dependency versions, e.g. relaxing version requirements.
Unfortunately, the owner of that project/package doesn't seem able or willing to follow-up on any of the open issues. (And that's totally okay!) But perhaps you, the creator/owner/maintainer and various contributors to this project, might be able to contact the creator/owner of Scrivener.HTML yourself and ask them to consider transferring ownership of the project to someone else. (And it's totally fine if no one has the time, or wants to spend it, to do any of that.)
Worst case, the users of this library can always fork it themselves – several have done so already.
Maybe second-best case would be someone stepping up to maintain a fork. That seems like it would also require changing the project/package name (e.g. on Hex).
Thanks for the project!

(this is a follow-up of discussion on the Elixir forum)
Just commenting that there are at least two coins to this: the GitHub repo (forking and consolidating on someone's fork can be done reasonably) and the Hex package.
For the Hex package, here are useful links:

https://hexdocs.pm/hex/Mix.Tasks.Hex.Owner.html#module-transfer-ownership (for full transfer)
https://hexdocs.pm/hex/Mix.Tasks.Hex.Owner.html#module-add-owner (for shared owner)

There have been instances where the transfer wasn't straightforward at least for some party (e.g. https://github.com/mochi/mochiweb/issues/233).
I hope we'll be able to keep the package name for clarity. It also seems like a form of "community cleverness", if we can collectively achieve this.

Thanks for opening the issue. I'm not actively doing Elixir development these days and I don't have time to get involved in the ownership transfer of this library. That said, if you all do end up transferring it, please open a PR to change the link on the README and I'd be happy to merge it.

@drewolson Thanks!


Generate CodeFlare API client

This PR generates the CodeFlare client using k8s code-generator.
This client will ease the development of e2e tests, and may eventually be used externally.
The change in the the API directory structure is to accommodate tooling conventions.

/lgtm
The make commands are running for me locally. Not sure how to debug further than this.

The proof PR #136 exercises the generated client. e.g.:
https://github.com/project-codeflare/codeflare-operator/pull/136/files#diff-82075545c22e6700e8c62cd71f0d1d9875d87dbe20c0932fa0bd5fd9c6e6ff65R61
I think that's a good way to validate it works. WDYT?

That's reasonable to me!


RunPipelineActivityRequest.cpp missing #include <aws/core/utils/HashingUtils.h>

What platform/OS are you using?
Linux
What compiler are you using? what version?
g++ 7.2.0
What's your CMake arguments?
cmake ..
Can you provide a TRACE level log? (sanitize any sensitive information)
No
As title says I was unable to build RunPipelineActivityRequest.cpp without adding a #include <aws/core/utils/HashingUtils.h>

Same issue for aws-cpp-sdk-iotanalytics/source/model/SampleChannelDataResult.cpp

Thanks for reporting this. Will get that fixed right away

Fixed in v1.4.40


Automated Package Upgrade

:tada: This PR is included in version 7.2.41 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Re-enable PR website Preview

Description
It would be great to re-enable the preview capability for the website and API doc in PR for the purpose of quality control. We used to have this feature and it was removed as part of restructuring the website. Specifically, it should support:

Uploading the built preview doc in CI into a static hosting place and making it publicly available.
Adding a link to the preview site as a comment in the PR.

You can see examples of this in action in https://github.com/awslabs/autogluon/pull/548

In the autogluon case, we used S3 for the static hosting, and I created the staging bucket for this purpose. The bucket is set to have a lifecycle configuration that automatically deletes files older than 30 days so that the file space doesn't blow up

For MXNet website, we need to host the preview on  an Apache v2.4 server in order to make all the redirect works the same.

@ys2843 can this be applied onto s3, or otherwise can we get ride of the redirection?

@ys2843 @sandeep-krishnamurthy please treat this task as high priority. now that we have a stable version as the default on the website, the website fixes are not nearly as urgent as being able to preview the website changes automatically in each PR. thanks.


IPython AutoIndent

This is more to do with IPython than Iron, but I thought it might help anyone who was encountering the same thing...
Kept receiving an Unexpected Indent Indentation Error on using iron-send-motion in visual mode.
Issue ended up being that IPython was trying to autoindent the lines from vim that were already indented properly, so if i sent the lines with all of my indentation removed, the code would execute properly.
Solution was to add --no-autoindent toplugins.lua so now it looks like below. Code sends and executes correctly now without removing indentation in Nvim.
local iron = require('iron')

iron.core.add_repl_definitions {
  python = {
    venv_python = {
      command = "/Users/mwcmitchell/.virtualenvs/ipython/bin/ipython3 --no-autoindent"
    }
  }
}

iron.core.set_config {
  preferred = {
    python = "venv_python",
  }
}

Hi,
Thanks for the issue and the fix. I believe that's a good default and I could add that to iron, so everyone benefits from it.
Best,
Henry

I just pushed a branch(fix/ipython-no-autoindent) containing the default. If possible, could you test it for me?
Thanks a lot.

Hey thank you for the update 😄
Sorry I'm just seeing this, I'll test it out as soon as I'm home from work!

Just removed my --no-autoindent and pulled the branch, works perfectly.
Thanks again Henry!

Amazing! I'll merge it!
Thanks for the issue and for testing the fix.
Best regards,
Henry

@hkupty ipython --no-autoindent works fine, but  in jupyter console , the indentation problem is still not solvable.


create new masternode button crashes the windows wallet if the wallet is locked when you press it

Fixed on 0.16.01


Fix proposal

Behold

Flicks again, again
I believe that flicks are actually very useful to store.  We do not need to convert to use flick as the time system in the application, but I think we should use it to record the precise offset (in seconds) at which an annotation was created.
This new method of mapping downsample frame number to seconds is different from before and may change again.  Having some absolute value stored on each feature to say where in the video it came from is useful for being about to report accurate timestamps when exporting to CSV, and if we ever need to do corrections, we can use this new field.
Storing this value will not really allow us to change framerates, so it's really only useful for debugging purposes and for producing precise timestamps in output data if external processes ever need it.
useTimeObserver
I refactored app-wide time state into this function rather than add a new useFlick function to match useFrame in provides.ts.  It also also exposes framerate information through provides.  This information is currently unused.

So I wrote this out because I found it easier for me to follow this way.... This last frame is really 5.006 - 4.98832165499 long or 0.01767834501.... trueFrameWidth = 0.01668335001

Thank you for this example, it was helpful.
I'd consider this a variable frame width issue, and as such, out of scope for DIVE.  In this case, the user would think they needed to annotate the duplicate frame at the end of the video twice, and then Kwiver would ignore the last frame.
Not even ffprobe is reporting the proper length of the frames, so that extra long frame could be anywhere in the sequence.
I'm open to digging further into this issue for edge cases like this, but I think it's out of scope for this particular issue, since the example you've described would not ultimately harm a training run.
Final notes
This is still a draft.  Need to implement server-side support for the new flick field and to use it during export.  Need to remove a few debugging tools from this code.

Thanks for writing this out.  To make sure I'm on the same page we will now use flicks on the client side to log the time at which an annotation is drawn instead of relying on the frame number.  There still needs to be an offset of true rounding done using kwiverSeek if there exists the originalFPS.  The only unknown here is that the flick that is recorded could have some imprecision because of the browser implementation of currentTime.  Not knowing the imprecision of the browser but I guess it could be several or tens of flicks off (flick is extremely small and I don't think the browser is that accurate).  That I think is a fine trade off if we can be more accurate.


[ChangeNotifier.cs] AssetPostprocessor causes memory leak, crash

AssetPostprocessor causes 100% memory usage and crashes Unity.
Problem solved after removing lines 51-59 in ChangeNotifier.cs.

Could not allocate memory: System out of memory!
Trying to allocate: 22369620B with 16 alignment. MemoryLabel: Texture
Allocation happened at: Line:72 in C:\build\output\unity\unity\Runtime\Core\Containers\Vector.h

This should be fixed in https://github.com/bdunderscore/ndmf/commit/b7053ca644572b051fa9a657e6e3c640e7ce8673 and will be in the next release

Released in 1.6.2


CalibratePulses not working

I've tried running calibratepulses and after it compiles the first 8- sequences and takes that data if fails with this error message:
Attempted to access data(0); index must be a positive integer or logical.
Error in PulseCalibration.analyzeRabiAmp (line 20)
if data(end/2) > offset
Error in PulseCalibration/PulseCalibrationDo (line 46)
[piAmpGuesses(1), offsetPhases(1)] = obj.analyzeRabiAmp(data(1:end/2));
Error in PulseCalibration/Do (line 207)
obj.PulseCalibrationDo();
Error in calibratePulses (line 32)
pulseCal.Do();
So it looks like it just isn't taking any data. I changed the ExpParams.measurements from M1 to the new M1_KernalIntegrator that we are using. Not sure if this is correct though.
Any Ideas?

I don't have any insight at the moment.  For the record you're on the develop branch at a commit somewhere around 1/12/15 right?

It looks like the last commit was on 1/16/15.

Can you tell me the comment or the commit hash?  There were some changes made that day to some of the objective function code.

This issue was fixed in ee3dbc1.


CI-related changes and improvements :factory:

GitHub Actions:

[x] Differential ShellCheck
[ ] Release Drafter
[ ] Super Linter

Tests:

[ ] Jest -> Vitest
[ ] Make sure that timeouts are set correctly

Others:

[ ] Setup Mergify

Codecov Report

Merging #19 (b3a29c9) into main (64f6b98) will not change coverage.
The diff coverage is n/a.

:exclamation: Current head b3a29c9 differs from pull request most recent head eadcaab. Consider uploading reports for the commit eadcaab to get more accurate results

@@           Coverage Diff           @@
##             main      #19   +/-   ##
=======================================
  Coverage   87.66%   87.66%
=======================================
  Files           5        5
  Lines         300      300
  Branches       55       55
=======================================
  Hits          263      263
  Misses         37       37

Help us with your feedback. Take ten seconds to tell us how you rate us. Have a feature suggestion? Share it here.


list of option tokens

This has incorrect branch name... hsould be list of lptokens

@DaveVodrazka you can get it by calling starknet all_the_url_params --address $MAIN_CONTRACT_ADDRESS --abi ./build/amm_abi.json --function  get_all_lptoken_addresses


Advancedmode api changes 22 april

Checked the list of files changes. This should not break the base mode. Review will be done now.


Add global variables introduced in cuDNN v5.1

This PR adds cuDNN related global variables that were added from cuDNN v5.1

LGTM!


Error foreign key constraint are incompatible.

Issue Summary
Hello!
I'm facing issue with upgrading to latest version from 5.60 after migrating to MySQL 8 with upgrading OS to Ubuntu 20.04.
I've applied recommendations from article about ER_FK_INCOMPATIBLE_COLUMNS and that doesn't help. I'm
SHOW TABLE STATUS giving me collation utf8mb4_0900_ai_ci at all tables.
mysql> show create database ghost\G
*************************** 1. row ***************************
Database: ghost
Create Database: CREATE DATABASE ghost /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci / /!80016 DEFAULT ENCRYPTION='N' */
1 row in set (0.00 sec)
mysql> show variables like '%collation_connection%';
+----------------------+--------------------+
| Variable_name        | Value              |
+----------------------+--------------------+
| collation_connection | utf8mb4_0900_ai_ci |
+----------------------+--------------------+
1 row in set (0.01 sec)
mysql>
mysql> SELECT @@GLOBAL.sql_mode;
+-----------------------------------------------------------------------------------------------------------------------+
| @@GLOBAL.sql_mode                                                                                |
+-----------------------------------------------------------------------------------------------------------------------+
| ONLY_FULL_GROUP_BY,STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION |
+-----------------------------------------------------------------------------------------------------------------------+
1 row in set (0.00 sec)
mysql>
MySQL Server version: 8.0.37-0ubuntu<IP_ADDRESS> (Ubuntu)
Steps to Reproduce
Installation should be updated from MySQL 5.7 to 8 and upgrade from 5.x to 5.60.0 and then to 5.86.2.
Database collation is updated to utf8mb4_0900_ai_ci. Update to latest version.
Ghost Version
5.60.0
Node.js Version
v18.20.3
How did you install Ghost?
Ubuntu 18.04 upgraded to 20.04, manual installation
Database type
MySQL 8
Browser & OS version
Version 126.0.6478.115 (Official Build) / Windows 11
Relevant log / error output
user@server:/var/www/ghost$ ghost update

Love open source? We’re hiring JavaScript Engineers to work on Ghost full-time.
https://careers.ghost.org

+ sudo systemctl is-active ghost_vmadm-in
✔ Checking system Node.js version - found v18.20.3
✔ Ensuring user is not logged in as ghost user
✔ Checking if logged in user is directory owner
✔ Checking current folder permissions
✔ Checking folder permissions
✔ Checking file permissions
✔ Checking content folder ownership
✔ Checking memory availability
✔ Checking free space
✔ Checking for available migrations
✔ Checking for latest Ghost version

# 5.86.2

* 🐛 Fixed YouTube bookmark creation - Kevin Ansfield

---

View the changelog for full details: https://github.com/tryghost/ghost/compare/v5.86.1...v5.86.2

✔ Fetched release notes
Version already installed.
ℹ Downloading and updating Ghost [skipped]
+ sudo systemctl stop ghost_vmadm-in
✔ Stopping Ghost
✔ Linking latest Ghost and recording versions
+ sudo ln -s /var/www/ghost/current/content/themes/source /var/www/ghost/content/themes/source
✔ Linking built-in themes
+ sudo systemctl start ghost_vmadm-in
+ sudo systemctl stop ghost_vmadm-in
✖ Restarting Ghost
A GhostError occurred.

Message: Ghost was able to start, but errored during boot with: alter table `recommendation_click_events` add constraint `recommendation_click_events_member_id_foreign` foreign key (`member_id`) references `members` (`id`) on delete SET NULL - Referencing column 'member_id' and referenced column 'id' in foreign key constraint 'recommendation_click_events_member_id_foreign' are incompatible.
Help: Error occurred while executing the following migration: 2023-09-12-11-22-10-add-recommendation-click-events-table.js
Suggestion: journalctl -u ghost_vmadm-in -n 50

Debug Information:
    OS: Ubuntu, v20.04.6 LTS
    Node Version: v18.20.3
    Ghost Version: 5.86.2
    Ghost-CLI Version: 1.26.0
    Environment: production
    Command: 'ghost update'

Additional log info available in: /home/user/.ghost/logs/ghost-cli-debug-2024-06-26T07_17_50_484Z.log

Try running ghost doctor to check your system for known issues.

You can always refer to https://ghost.org/docs/ghost-cli/ for troubleshooting.

? Unable to upgrade Ghost from v5.60.0 to v5.86.2. Would you like to revert back to v5.60.0? (Y/n)

Jun 26 09:17:43 vmadmin systemd[1]: Started Ghost systemd service for blog: vmadm-in.
Jun 26 09:17:44 vmadmin node[45362]: Love open source? We’re hiring JavaScript Engineers to work on Ghost full-time.
Jun 26 09:17:44 vmadmin node[45362]: https://careers.ghost.org
Jun 26 09:17:44 vmadmin node[45362]: - Inspecting operating system
Jun 26 09:17:47 vmadmin node[45393]: [2024-06-26 07:17:47] INFO Ghost is running in production...
Jun 26 09:17:47 vmadmin node[45393]: [2024-06-26 07:17:47] INFO Your site is now available on https://vmadm.in/
Jun 26 09:17:47 vmadmin node[45393]: [2024-06-26 07:17:47] INFO Ctrl+C to shut down
Jun 26 09:17:47 vmadmin node[45393]: [2024-06-26 07:17:47] INFO Ghost server started in 2.218s
Jun 26 09:17:47 vmadmin node[45393]: [2024-06-26 07:17:47] INFO Bootstrap client was closed.
Jun 26 09:17:47 vmadmin node[45393]: [2024-06-26 07:17:47] WARN Database state requires migration.
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Creating database backup
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Database backup written to /var/www/ghost/content/data/vm-admin.ghost.2024-06-26-07-17-48.json
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Running migrations.
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission for browse:recommendation
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission(Browse recommendations) to role(Administrator)
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission(Browse recommendations) to role(Admin Integration)
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission(Browse recommendations) to role(Editor)
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission(Browse recommendations) to role(Author)
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission(Browse recommendations) to role(Contributor)
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission for read:recommendation
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission(Read recommendations) to role(Administrator)
Jun 26 09:17:48 vmadmin node[45393]: [2024-06-26 07:17:48] INFO Adding permission(Read recommendations) to role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Read recommendations) to role(Editor)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Read recommendations) to role(Author)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Read recommendations) to role(Contributor)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission for edit:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Edit recommendations) to role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Edit recommendations) to role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission for add:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Add recommendations) to role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Add recommendations) to role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission for destroy:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Delete recommendations) to role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding permission(Delete recommendations) to role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding table: recommendations
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding setting: recommendations_enabled
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Adding table: recommendation_click_events
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Rolling back: alter table `recommendation_click_events` add constraint `recommendation_click_events_member_id_foreign` foreign key (`member_id`) references `members` (`id`) on delete SET NULL - Referencing col>
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Dropping table: recommendation_click_events
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Dropping setting: recommendations_enabled
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Dropping table: recommendations
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Delete recommendations) from role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Delete recommendations) from role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission for destroy:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Add recommendations) from role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Add recommendations) from role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission for add:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Edit recommendations) from role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Edit recommendations) from role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission for edit:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Read recommendations) from role(Contributor)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Read recommendations) from role(Author)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Read recommendations) from role(Editor)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Read recommendations) from role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Read recommendations) from role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission for read:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Browse recommendations) from role(Contributor)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Browse recommendations) from role(Author)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Browse recommendations) from role(Editor)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Browse recommendations) from role(Admin Integration)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission(Browse recommendations) from role(Administrator)
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Removing permission for browse:recommendation
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Rollback was successful.
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] ERROR alter table `recommendation_click_events` add constraint `recommendation_click_events_member_id_foreign` foreign key (`member_id`) references `members` (`id`) on delete SET NULL - Referencing column 'member_i>
Jun 26 09:17:49 vmadmin node[45393]:
Jun 26 09:17:49 vmadmin node[45393]: alter table `recommendation_click_events` add constraint `recommendation_click_events_member_id_foreign` foreign key (`member_id`) references `members` (`id`) on delete SET NULL - Referencing column 'member_id' and referenced column 'id>
Jun 26 09:17:49 vmadmin node[45393]: {"config":{"transaction":false},"name":"2023-09-12-11-22-10-add-recommendation-click-events-table.js"}
Jun 26 09:17:49 vmadmin node[45393]: "Error occurred while executing the following migration: 2023-09-12-11-22-10-add-recommendation-click-events-table.js"
Jun 26 09:17:49 vmadmin node[45393]: Error ID:
Jun 26 09:17:49 vmadmin node[45393]:     300
Jun 26 09:17:49 vmadmin node[45393]: Error Code:
Jun 26 09:17:49 vmadmin node[45393]:     ER_FK_INCOMPATIBLE_COLUMNS
Jun 26 09:17:49 vmadmin node[45393]: ----------------------------------------
Jun 26 09:17:49 vmadmin node[45393]: Error: alter table `recommendation_click_events` add constraint `recommendation_click_events_member_id_foreign` foreign key (`member_id`) references `members` (`id`) on delete SET NULL - Referencing column 'member_id' and referenced col>
Jun 26 09:17:49 vmadmin node[45393]:     at /var/www/ghost/versions/5.86.2/node_modules/knex-migrator/lib/index.js:1032:19
Jun 26 09:17:49 vmadmin node[45393]:     at Packet.asError (/var/www/ghost/versions/5.86.2/node_modules/mysql2/lib/packets/packet.js:728:17)
Jun 26 09:17:49 vmadmin node[45393]:     at Query.execute (/var/www/ghost/versions/5.86.2/node_modules/mysql2/lib/commands/command.js:29:26)
Jun 26 09:17:49 vmadmin node[45393]:     at Connection.handlePacket (/var/www/ghost/versions/5.86.2/node_modules/mysql2/lib/connection.js:481:34)
Jun 26 09:17:49 vmadmin node[45393]:     at PacketParser.onPacket (/var/www/ghost/versions/5.86.2/node_modules/mysql2/lib/connection.js:97:12)
Jun 26 09:17:49 vmadmin node[45393]:     at PacketParser.executeStart (/var/www/ghost/versions/5.86.2/node_modules/mysql2/lib/packet_parser.js:75:16)
Jun 26 09:17:49 vmadmin node[45393]:     at Socket.<anonymous> (/var/www/ghost/versions/5.86.2/node_modules/mysql2/lib/connection.js:104:25)
Jun 26 09:17:49 vmadmin node[45393]:     at Socket.emit (node:events:517:28)
Jun 26 09:17:49 vmadmin node[45393]:     at addChunk (node:internal/streams/readable:368:12)
Jun 26 09:17:49 vmadmin node[45393]:     at readableAddChunk (node:internal/streams/readable:341:9)
Jun 26 09:17:49 vmadmin node[45393]:     at Readable.push (node:internal/streams/readable:278:10)
Jun 26 09:17:49 vmadmin node[45393]:     at TCP.onStreamRead (node:internal/stream_base_commons:190:23)
Jun 26 09:17:49 vmadmin node[45393]:
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] WARN Ghost is shutting down
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] WARN Ghost has shut down
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] WARN Your site is now offline
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] WARN Ghost was running for a few seconds
Jun 26 09:17:49 vmadmin node[45393]: [2024-06-26 07:17:49] INFO Bootstrap client was closed.
Jun 26 09:17:49 vmadmin systemd[1]: Stopping Ghost systemd service for blog: vmadm-in...
Jun 26 09:17:50 vmadmin node[45362]: /usr/lib/node_modules/ghost-cli/lib/process-manager.js:46
Jun 26 09:17:50 vmadmin node[45362]:         throw error;
Jun 26 09:17:50 vmadmin node[45362]:         ^
Jun 26 09:17:50 vmadmin node[45362]: {
Jun 26 09:17:50 vmadmin node[45362]:   message: {
Jun 26 09:17:50 vmadmin node[45362]:     statusCode: 500,
Jun 26 09:17:50 vmadmin node[45362]:     errorType: 'MigrationScriptError',
Jun 26 09:17:50 vmadmin node[45362]:     level: 'critical',
Jun 26 09:17:50 vmadmin node[45362]:     id: 300,
Jun 26 09:17:50 vmadmin node[45362]:     context: {
Jun 26 09:17:50 vmadmin node[45362]:       config: { transaction: false },
Jun 26 09:17:50 vmadmin node[45362]:       name: '2023-09-12-11-22-10-add-recommendation-click-events-table.js'
Jun 26 09:17:50 vmadmin node[45362]:     },
Jun 26 09:17:50 vmadmin node[45362]:     help: 'Error occurred while executing the following migration: 2023-09-12-11-22-10-add-recommendation-click-events-table.js',
Jun 26 09:17:50 vmadmin node[45362]:     code: 'ER_FK_INCOMPATIBLE_COLUMNS',
Jun 26 09:17:50 vmadmin node[45362]:     property: null,
Jun 26 09:17:50 vmadmin node[45362]:     redirect: null,
Jun 26 09:17:50 vmadmin node[45362]:     hideStack: false,
Jun 26 09:17:50 vmadmin node[45362]:     message: "Ghost was able to start, but errored during boot with: alter table `recommendation_click_events` add constraint `recommendation_click_events_member_id_foreign` foreign key (`member_id`) references `members` (`id`) on delet>
Jun 26 09:17:50 vmadmin node[45362]:     name: 'MigrationScriptError',
Jun 26 09:17:50 vmadmin node[45362]:     errno: 3780,
Jun 26 09:17:50 vmadmin node[45362]:     sqlState: 'HY000',
Jun 26 09:17:50 vmadmin node[45362]:     sqlMessage: "Referencing column 'member_id' and referenced column 'id' in foreign key constraint 'recommendation_click_events_member_id_foreign' are incompatible.",
Jun 26 09:17:50 vmadmin node[45362]:     sql: 'alter table `recommendation_click_events` add constraint `recommendation_click_events_member_id_foreign` foreign key (`member_id`) references `members` (`id`) on delete SET NULL'
Jun 26 09:17:50 vmadmin node[45362]:   }
Jun 26 09:17:50 vmadmin node[45362]: }
Jun 26 09:17:50 vmadmin node[45362]: Node.js v18.20.3
Jun 26 09:17:50 vmadmin systemd[1]: ghost_vmadm-in.service: Main process exited, code=exited, status=1/FAILURE
Jun 26 09:17:50 vmadmin systemd[1]: ghost_vmadm-in.service: Failed with result 'exit-code'.
Jun 26 09:17:50 vmadmin systemd[1]: Stopped Ghost systemd service for blog: vmadm-in.

Code of Conduct

[X] I agree to be friendly and polite to people in this repository

mysql> SELECT DEFAULT_CHARACTER_SET_NAME, DEFAULT_COLLATION_NAME FROM INFORMATION_SCHEMA.SCHEMATA WHERE SCHEMA_NAME='ghost'; +----------------------------+------------------------+ | DEFAULT_CHARACTER_SET_NAME | DEFAULT_COLLATION_NAME | +----------------------------+------------------------+ | utf8mb4                    | utf8mb4_0900_ai_ci     | +----------------------------+------------------------+ 1 row in set (0.00 sec)


Can't click on (or into) TextInput that's on an ActionBar. Python 3.6.4 Windows 10

Versions

Python: v3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)]
OS: Windows 10
Kivy: v1.10.0
Kivy installation method: python -m pip install kivy

Description
I created a basic menu an added three TextInput widgets to the ActionBar. They're contained in the overflow section. The overflow is named "Settings" when I click on "Settings" it drops down displaying the three TextInput widgets. When I click on any of them the drop down immediately closes. They simply don't work.
I've tested this code on linux and it works fine; meaning when I click on the TextInput widgets the drop down remains open and I can type into them. No errors were produced.
Code and Logs
from kivy.uix.textinput import TextInput
from kivy.app import App
from kivy.lang import Builder
from kivy.uix.screenmanager import ScreenManager, Screen
from kivy.uix.actionbar import ActionItem

class MainScreen(Screen):
    def __init__(self, **kwargs):
        super(MainScreen, self).__init__(**kwargs)

class ActionInput(TextInput, ActionItem):
    pass

class mScreenManager(ScreenManager):
    pass

root_widget = Builder.load_string('''
mScreenManager:
    MainScreen:
<MainScreen>:
    ActionBar:
        pos_hint: {'top':1}
        ActionView:
            use_separator: True
            ActionPrevious:
                title: 'Menu'
                with_previous: False
           ActionOverflow:
           ActionButton:
               id: b_1
               text: 'b_1'
               on_release:
           ActionButton:
               id: b_2
               text: 'b_2'
               on_release:
           ActionButton:
               id: b_3
               text: 'b_3'
               on_release:
           ActionButton:
               id: b_4
               text: 'b_4'
               on_release:
           ActionButton:
               id: b_5
               text: 'b_5'
           ActionButton:
               id: b_6
               text: 'b_6'
               on_release:
           ActionGroup:
               text: 'Settings'
               mode: 'spinner'
               ActionInput:
                    id: t_input_1
                    hint_text: "Can't click"
                    multiline: False
                    on_text_validate:
               ActionInput:
                   id: t_input_2
                   hint_text: "can't click"
                   multiline: False
                   on_text_validate:
               ActionInput:
                   id: t_input_3
                   hint_text: "Can't click"
                   multiline: False
                   on_text_validate:
''')

class TestApp(App):
    def build(self):
        self.title = 'Example App'
        return root_widget

if __name__ == '__main__':
    TestApp().run()

[INFO   ] [Logger      ] Record log in C:\Users\Aaron\.kivy\logs\kivy_18-03-04_1.txt
[INFO   ] [Kivy        ] v1.10.0
[INFO   ] [Python      ] v3.6.4 (v3.6.4:d48eceb, Dec 19 2017, 06:54:40) [MSC v.1900 64 bit (AMD64)]
[INFO   ] [Factory     ] 194 symbols loaded
[INFO   ] [Image       ] Providers: img_tex, img_dds, img_sdl2, img_pil, img_gif (img_ffpyplayer ignored)
[INFO   ] [Text        ] Provider: sdl2
[INFO   ] [OSC         ] using <thread> for socket
[INFO   ] [Window      ] Provider: sdl2
[INFO   ] [GL          ] Using the "OpenGL" graphics system
[INFO   ] [GL          ] GLEW initialization succeeded
[INFO   ] [GL          ] Backend used <glew>
[INFO   ] [GL          ] OpenGL version <b'4.5.13506 Compatibility Profile Context 23.20.15017.3010'>
[INFO   ] [GL          ] OpenGL vendor <b'ATI Technologies Inc.'>
[INFO   ] [GL          ] OpenGL renderer <b'Radeon (TM) RX 480 Graphics'>
[INFO   ] [GL          ] OpenGL parsed version: 4, 5
[INFO   ] [GL          ] Shading version <b'4.50'>
[INFO   ] [GL          ] Texture max size <16384>
[INFO   ] [GL          ] Texture max units <32>
[INFO   ] [Window      ] auto add sdl2 input provider
[INFO   ] [Window      ] virtual keyboard not allowed, single mode, not docked
[INFO   ] [GL          ] NPOT texture support is available
[INFO   ] [Base        ] Start application main loop
[INFO   ] [Base        ] Leaving application in progress...

After fixing indenting issues, I ran this on Windows 11, Kivy 2.2.1.
Clicked on settings. Clicked on each of the three dropped-down buttons. Entered text.
Worked fine.
Closing as completed, but if this still happens to you on the latest, please let us know.


Reduced LaTeX pane priority so it is a last resort

Pandas dataframes have both _repr_latex_ and _repr_html_ methods, but pane.LaTeX can only handle equations, not full LaTeX tables, so we need to use pane.HTML instead.  In general pane.HTML is more general in its support than pane.LaTeX, so it makes sense to prefer pane.HTML.

Codecov Report

Merging #100 into master will not change coverage.
The diff coverage is 0%.

@@           Coverage Diff           @@
##           master     #100   +/-   ##
=======================================
  Coverage   91.83%   91.83%
=======================================
  Files          25       25
  Lines        3868     3868
=======================================
  Hits         3552     3552
  Misses        316      316

Impacted Files
Coverage Δ

panel/pane.py
82.05% <0%> (ø)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 9939ec8...af88a4c. Read the comment docs.