Add the message:ready event for the React Native WebView window.postMessage injection

React Native injects the window.postMessage method when the web page finishes loading. Before that, if we send a message to React Native will not work and throw an error: 2 arguments required, but only 1 present.. But there is no way to know when it has been injected. So I added the message:ready event.
Without this event, I had to hack like this. :(

Thanks for the PR and bug report! I think we should hold back on changes to this until we’ve decided how we’re going to handle all the bugs from postMessage shims.
But this is also illustrating a really important issue with overriding the postMessage global: we don’t know when it’s initialised. You’re getting your error, because you’re calling the native postMessage, which requires a second argument, origin.
If we didn’t override it, and created our own web-worker-like global with a postMessage function, and a user-settable onmessage handler, we could avoid all of these issues, and initialise the global much earlier on without fear of it being overridden by shims.
Coping @satya164 for feedback on this issue.

I re-opened that PR.

If we didn’t override it, and created our own web-worker-like global with a postMessage function, and a user-settable onmessage handler, we could avoid all of these issues, and initialise the global much earlier on without fear of it being overridden by shims.

From the code I understand that we initialize it as soon as the webview is created. How can we initialize it before that? I don't think we ever considered that this will be overriden by shims. We only considered that we shouldn't override existing shims. I think if the page is overriding global variables, I think we can't handle it, and the page must handle it manually.
I don't think introducing a new API will get rid of this issue. It'll still need to be injected like this API, and there will be delay.

@jacobp100 @satya164 Thanks~!
I just saw your discussion in another PR. I think it's a good idea to extend window.postMessage if it's spec compliant. Because, for example, if we need our React Native page to run on the Web, just like what react-native-web does, we can implement the webview with an iframe. For security reasons, web developers will also check target from  message events.
But we still need to know when we can successfully send messages to React Native, what iframe never has to worry about.
Or I think I don't need to add a new message: init event. Just send the message event, and set the event.target as something can present React Native?


Fix importing in SSR app

This should fix the issue reported in https://github.com/whawker/react-jsx-highcharts-examples/issues/2
Importing debounce-raf caused exception when window was not available.

Codecov Report

Merging #261 into master will increase coverage by 0.29%.
The diff coverage is 100%.

@@            Coverage Diff             @@
##           master     #261      +/-   ##
==========================================
+ Coverage   89.17%   89.46%   +0.29%
==========================================
  Files          81       81
  Lines        1016     1016
  Branches      194      194
==========================================
+ Hits          906      909       +3
+ Misses         96       94       -2
+ Partials       14       13       -1

Impacted Files
Coverage Δ

...ges/react-jsx-highcharts/src/utils/debounce-raf.js
100% <100%> (ø)
:arrow_up:

...ts/src/components/BaseChart/createProvidedChart.js
85.71% <0%> (+42.85%)
: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 6b62ff7...c918d23. Read the comment docs.


Allow colection enumerator to be enumerated multiple times

Options should be cleared on subsequent calls within the loop because they are already included in the next_page url.
However each time the enumerator is enumerated it calls the initial get and needs the options passed in.

@bzwei @syncrou Please review
cc @durandom

wow, this looks like a subtle bug.
So it only happens, if you call more than one Enumerable method on the Enumerator.
I wonder if we should do some caching here?
Because this means it also fires as many api requests as methods are called and even worse, the api requests can have different responses


feat: Access transaction in current scope

Specially when trying to add spans to automatically instrumented transactions, users need access to the current transaction.
This gives direct access no matter how deep the code is in the transaction/span tree.
This replicates a similar feature in JS: https://github.com/getsentry/sentry-javascript/pull/2668.

Dang, the current implementation runs into a MYPY limitation because the type annotation for property getter and setter is different.
https://github.com/python/mypy/issues/3004
https://travis-ci.com/github/getsentry/sentry-python/builds/173008390


fix!: don't emit legacy did:sov prefix for new protocols

Adds a protocolUsesLegacyDidSovPrefix property to the AgentMessage class that is set to false by default. Messages that historically used the legacy did sov prefix (mostly AIP 1) can now define this. By default even messages that have protocolUsesLegacyDidSovPrefix enabled will still use the new prefix (which is what it should be according to the completed community coordinated update). When useLegacyDidSovPrefix is enabled though, it will only use the legacy did sov prefix for messages that historically used it.
Fixes https://github.com/hyperledger/aries-framework-javascript/issues/1230
It is a breaking change because it was first an all or nothing, and now it is 'smarter' about it.
BREAKING CHANGE: the useLegacyDidSovPrefix has been removed in favour of a more specific useDidSovPrefixWhereAllowed option. The previous option was applied globally to all messages
and would result in newer protocols also using did:sov prefixes. The behaviour has been
changed to only use the legacy did sov prefix when the useDidSovPrefixWhereAllowed option is enabled, and the
protocol historically used did:sov prefixes for the type. This includes:

Connection V1
Issue Credential V1
Present Proof V1
Forward V1
Trust Ping V1
Basic Message V1

If you have custom messages that should use the legacy did sov prefix when useDidSovPrefixWhereAllowed is enabled, you should add the
allowDidSovPrefix property to your  message class as follows:
export class MyMessage extends AgentMessage {
  public readonly allowDidSovPrefix = true
}

This is disabled by default, and therefore will always use the new prefix by default,
even if useDidSovPrefixWhereAllowed is enabled on the agent.

Codecov Report

Merging #1245 (fd397b8) into main (b6ae948) will increase coverage by 0.01%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main    #1245      +/-   ##
==========================================
+ Coverage   87.64%   87.66%   +0.01%
==========================================
  Files         739      739
  Lines       17619    17641      +22
  Branches     2992     2991       -1
==========================================
+ Hits        15443    15465      +22
  Misses       2169     2169
  Partials        7        7

Impacted Files
Coverage Δ

packages/core/src/agent/AgentMessage.ts
90.90% <100.00%> (+1.43%)
:arrow_up:

...rc/modules/basic-messages/messages/BasicMessage.ts
100.00% <100.00%> (ø)

...onnections/messages/ConnectionInvitationMessage.ts
98.18% <100.00%> (+0.03%)
:arrow_up:

...ections/messages/ConnectionProblemReportMessage.ts
100.00% <100.00%> (ø)

...s/connections/messages/ConnectionRequestMessage.ts
100.00% <100.00%> (ø)

.../connections/messages/ConnectionResponseMessage.ts
100.00% <100.00%> (ø)

...c/modules/connections/messages/TrustPingMessage.ts
95.00% <100.00%> (+0.26%)
:arrow_up:

...s/connections/messages/TrustPingResponseMessage.ts
94.11% <100.00%> (+0.36%)
:arrow_up:

...als/protocol/v1/messages/V1CredentialAckMessage.ts
100.00% <100.00%> (ø)

...ol/v1/messages/V1CredentialProblemReportMessage.ts
100.00% <100.00%> (ø)

... and 10 more

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

This is disabled by default, and therefore will always use the new prefix by default,
even if useLegacyDidSovPrefix is enabled on the agent.

It might be good to add a log warn there explaining that https://didcomm.org will be used even though useLegacyDidSovPrefix was supplied.

This is disabled by default, and therefore will always use the new prefix by default,
even if useLegacyDidSovPrefix is enabled on the agent.

It might be good to add a log warn there explaining that https://didcomm.org will be used even though useLegacyDidSovPrefix was supplied.

This will result in a shitload of warnings. We now have useDidSovPrefixWhereAllowed, do you think it's still needed with the change in the name?

This is disabled by default, and therefore will always use the new prefix by default,
even if useLegacyDidSovPrefix is enabled on the agent.

It might be good to add a log warn there explaining that https://didcomm.org will be used even though useLegacyDidSovPrefix was supplied.

This will result in a shitload of warnings. We now have useDidSovPrefixWhereAllowed, do you think it's still needed with the change in the name?

No, I ment more its explicitly provided by the user to a function, not when its from the agent config.
But I am okay with leaving it out as this would mean we add the log conditionally which is a bit odd.


Softether on VPS Using Local Bridge

http://blog.lincoln.hk/blog/2013/05/17/softether-on-vps-using-local-bridge/
Follow the tutorial to make a very bad failure,
But this buddy is a magical success. I want to know who has the TXT document available?
https://www.youtube.com/watch?v=jqRkFKHdz4A

Lincoln's bridge example works... Did you disable SecureNAT before you set up the bridge and dnsmasq? That could be the reason for your failure...
I'm guessing your only working with IPv4?
/etc/sysctl.conf
# For binary values, 0 is disabled, 1 is enabled.
# To save changes run command  sysctl -p
# For more information, see sysctl.conf(5) and sysctl.d(5).

# Controls IP packet forwarding
net.ipv4.ip_forward = 1

/etc/init.d/vpnserver
#!/bin/sh
### BEGIN INIT INFO
# Provides:          vpnserver
# Required-Start:    $network $remote_fs
# Required-Stop:     $network $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: SoftEther VPN Server
### END INIT INFO

DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
TAP_ADDR=<IP_ADDRESS>
TAP_INTERFACE=tap_soft

test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
sleep 3
#####################################################
#       ifconfig tap interface
#####################################################
#
# Assign $TAP_ADDR to our tap interface
/sbin/ifconfig $TAP_INTERFACE $TAP_ADDR
#
#####################################################
#       End
#####################################################
sleep 3
service dnsmasq start
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
sleep 3
######################################################
#       ifconfig tap interface
######################################################
#
# Assign $TAP_ADDR to our tap interface
/sbin/ifconfig $TAP_INTERFACE $TAP_ADDR
#
######################################################
#       End
######################################################
sleep 3
service dnsmasq restart
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

/etc/dnsmasq.conf
##################################################################################
# SoftEther VPN server dnsmasq.conf
################################################################################## Interface Settings

# If you want dnsmasq to listen for DHCP and DNS requests only on
# specified interfaces (and the loopback) give the name of the
# interface (eg eth0) here.
# Repeat the line for more than one interface.
interface=tap_soft

# If you want dnsmasq to really bind only the interfaces it is listening on,
# uncomment this option. About the only time you may need this is when
# running another nameserver on the same machine.
bind-interfaces

################################################################################## Options

# Uncomment this to enable the integrated DHCP server, you need
# to supply the range of addresses available for lease and optionally
# a lease time. If you have more than one network, you will need to
# repeat this for each network on which you want to supply DHCP
# service.
dhcp-range=<IP_ADDRESS>,<IP_ADDRESS>,12h

# Override the default route supplied by dnsmasq, which assumes the
# router is the same machine as the one running dnsmasq.
dhcp-option=3,<IP_ADDRESS>

# If you don't want dnsmasq to poll /etc/resolv.conf or other resolv
# files for changes and re-read them then uncomment this.
no-poll

# If you don't want dnsmasq to read /etc/resolv.conf or any other
# file, getting its servers from this file instead (see below), then
# uncomment this.
no-resolv

# Disable re-use of the DHCP servername and filename fields as
# extra option space. This makes extra space available in the
# DHCP packet for options but can, rarely, confuse old or broken
# clients. This flag forces "simple and safe" behavior to avoid
# problems in such a case.
dhcp-no-override

# Never forward addresses in the non-routed address spaces.
bogus-priv

################################################################################## External DNS Servers

# Use this DNS servers for incoming DNS requests = Cloudflare
server=<IP_ADDRESS>
server=<IP_ADDRESS>

#########################################

################################################################################## Client DNS Servers

# Let's send these DNS Servers to clients.
# The first IP is the IPv4 address that are already assigned to the tap_soft

# Set IPv4 DNS server for client machines
dhcp-option=option:dns-server,<IP_ADDRESS>,<IP_ADDRESS>

#########################################

Lincoln's bridge example works... Did you disable SecureNAT before you set up the bridge and dnsmasq? That could be the reason for your failure...
I'm guessing your only working with IPv4?
/etc/sysctl.conf
# For binary values, 0 is disabled, 1 is enabled.
# To save changes run command  sysctl -p
# For more information, see sysctl.conf(5) and sysctl.d(5).

# Controls IP packet forwarding
net.ipv4.ip_forward = 1

/etc/init.d/vpnserver
#!/bin/sh
### BEGIN INIT INFO
# Provides:          vpnserver
# Required-Start:    $network $remote_fs
# Required-Stop:     $network $remote_fs
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: SoftEther VPN Server
### END INIT INFO

DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
TAP_ADDR=<IP_ADDRESS>
TAP_INTERFACE=tap_soft

test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
sleep 3
#####################################################
#       ifconfig tap interface
#####################################################
#
# Assign $TAP_ADDR to our tap interface
/sbin/ifconfig $TAP_INTERFACE $TAP_ADDR
#
#####################################################
#       End
#####################################################
sleep 3
service dnsmasq start
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
sleep 3
######################################################
#       ifconfig tap interface
######################################################
#
# Assign $TAP_ADDR to our tap interface
/sbin/ifconfig $TAP_INTERFACE $TAP_ADDR
#
######################################################
#       End
######################################################
sleep 3
service dnsmasq restart
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

/etc/dnsmasq.conf
##################################################################################
# SoftEther VPN server dnsmasq.conf
################################################################################## Interface Settings

# If you want dnsmasq to listen for DHCP and DNS requests only on
# specified interfaces (and the loopback) give the name of the
# interface (eg eth0) here.
# Repeat the line for more than one interface.
interface=tap_soft

# If you want dnsmasq to really bind only the interfaces it is listening on,
# uncomment this option. About the only time you may need this is when
# running another nameserver on the same machine.
bind-interfaces

################################################################################## Options

# Uncomment this to enable the integrated DHCP server, you need
# to supply the range of addresses available for lease and optionally
# a lease time. If you have more than one network, you will need to
# repeat this for each network on which you want to supply DHCP
# service.
dhcp-range=<IP_ADDRESS>,<IP_ADDRESS>,12h

# Override the default route supplied by dnsmasq, which assumes the
# router is the same machine as the one running dnsmasq.
dhcp-option=3,<IP_ADDRESS>

# If you don't want dnsmasq to poll /etc/resolv.conf or other resolv
# files for changes and re-read them then uncomment this.
no-poll

# If you don't want dnsmasq to read /etc/resolv.conf or any other
# file, getting its servers from this file instead (see below), then
# uncomment this.
no-resolv

# Disable re-use of the DHCP servername and filename fields as
# extra option space. This makes extra space available in the
# DHCP packet for options but can, rarely, confuse old or broken
# clients. This flag forces "simple and safe" behavior to avoid
# problems in such a case.
dhcp-no-override

# Never forward addresses in the non-routed address spaces.
bogus-priv

################################################################################## External DNS Servers

# Use this DNS servers for incoming DNS requests = Cloudflare
server=<IP_ADDRESS>
server=<IP_ADDRESS>

#########################################

################################################################################## Client DNS Servers

# Let's send these DNS Servers to clients.
# The first IP is the IPv4 address that are already assigned to the tap_soft

# Set IPv4 DNS server for client machines
dhcp-option=option:dns-server,<IP_ADDRESS>,<IP_ADDRESS>

#########################################

I used above configuration  and add a iptables nat rule for it, vpn client can get a dhcp IP ,  but  the client can't visit any website , it seems that vpnserver not work in kernel nat mode.

May be different VPS  not  act the same?  I used VPS of www.bandwagonhost.net  and local vmware workstations vm,  add OS is CentOS7.x  64bit.
Local bridge bug limited the useing range  of SoftEtherVPN, for more and more vpn server is installed on VPS.

If you get a local ip assigned but can't connect to websites.... then sounds like a DNS issue. If you can ping <IP_ADDRESS> DNS nameserver is your issue.

`# Allow outgoing DNS
iptables -A OUTPUT -o tap_soft -s <IP_ADDRESS>/24 -p tcp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o tap_soft -s <IP_ADDRESS>/24 -p udp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
Allow incoming DNS & DHCP (dnsmasq)
iptables -A INPUT -i tap_soft -p udp --dport 67 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i tap_soft -p tcp --sport 53 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i tap_soft -p udp --sport 53 -m state --state ESTABLISHED -j ACCEPT`
`# NAT using Local Bridge
<IP_ADDRESS>/24 = Local Bridge & SoftEther VPN Clients (dnsmasq)
<IP_ADDRESS> = SoftEther VPN Server's network interface (Local IP if behind NAT or Public IP of VPS)
iptables -t nat -A POSTROUTING -s <IP_ADDRESS>/24 -j SNAT --to-source <IP_ADDRESS>`

#Allow outgoing DNS
iptables -A OUTPUT -o tap_soft -s <IP_ADDRESS>/24 -p tcp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o tap_soft -s <IP_ADDRESS>/24 -p udp --dport 53 -m state --state NEW,ESTABLISHED -j ACCEPT

#Allow incoming DNS & DHCP (dnsmasq)
iptables -A INPUT -i tap_soft -p udp --dport 67 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i tap_soft -p tcp --sport 53 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i tap_soft -p udp --sport 53 -m state --state ESTABLISHED -j ACCEPT

#NAT using Local Bridge
#<IP_ADDRESS>/24 = Local Bridge & SoftEther VPN Clients (dnsmasq)
#<IP_ADDRESS> = SoftEther VPN Server's network interface (Local IP if behind NAT or Public IP of VPS)
iptables -t nat -A POSTROUTING -s <IP_ADDRESS>/24 -j SNAT --to-source <IP_ADDRESS>

It works! Many thanks to you.  You see, it is really hard for beginners. Would you make a tutorial  on Local-bridge and Cluster?


g.getbout probably misclassifies bouted time as unbouted

When using part5_agg2_60seconds = TRUE and boutdur.mvpa = c(1, 5, 10), I was expecting not to get any time into the dur_day_MOD_unbt and dur_day_VIG_unbt categories (the shortest bout lenght is equal to the epoch length, so any epoch above the moderate threshold should be classified as a bout of 1 minute). However, I get some minutes in the unbouted category, and I have noticed that all the dur_day_MVPA_bts_1_5_min have actually a duration of at least 2 min (and not 1 min as expected). I think it is related to the piece of code looking at the first and last minute of every bout meeting the bout.criter (g.getbout, bout.metric = 6).

Sorry, I have been aware of this for a while but forgot to make the effort to document or address it.
If we would adjust the code to also allow for bout lengths that equal the epoch length then the concept of a bout may become unclear. Even if we document this behaviour it would still be hard to justify why we allow for it to happen.
The easiest solution I see is to define a bout as a time segment that lasts at least 2 epochs and meets the other criteria we specify for it. Further, I would then make it impossible for the user to specify a bout length that is equal or less than 1 epoch. For example, in the params_check function we could trigger an error when the user tries to specify this.
Just to clarify, this behaviour should only apply to the condition when bout length equals epoch length. If you specify
boutdur.mvpa = c(5, 10) with an epoch length less than 5 minutes you should get  bouts that last for 5 minutes or longer. I tested that when I worked on the bout algorithm.

... another option is that we automatically increase the bout length with 1 if the bout length equals the epoch length. This would then allow for using 1 minute bout length in part 2 when the epoch size is 5, but the code would automatically look for bouts of minimum length 2 minutes if the epoch length is 1 minute in part 5. We then only need to make sure this is reflect in the variable names of part 5. In that way the variable name will be consistent with the calculation.


fix(dropdown-menu): remove unnecessary portal

Remove unnecessary portal in DropdownMenuContent otherwise we won't be able to customize it.
ref: https://www.radix-ui.com/primitives/docs/components/dropdown-menu#portal

Hi @maltoze, do you mean customize the DropdownMenuPortal ?

@dan5py yes

Adding the container prop to the DropdownMenuContent and the passing it to the portal could be a solution although it differs from Radix docs.
I don't think this prop is used a lot, but I could be wrong.

When developing a browser extension, it is necessary to use the container prop in order to portal menu content to a shadow DOM.


Use versioned URL for "Online Documentation" buttons in the editor

This also avoids a redirect, making the page appear to load faster.
This closes https://github.com/godotengine/godot/issues/58245.

Thanks!

Cherry-picked for 3.5.


#5044: Add optional output tensor for backward ops

Add  optional output tensor support for backward op addcmul.
Primary issue : #5044

@eyonland and @KalaivaniMCW
Reg the addcmul and addcdiv was redirected to PR


Red and Blue artifacts in GeoPix Simulation

Describe the bug
When I run any project a zig-zag red/blue pattern appears in the middle of the screen.
To Reproduce
Steps to reproduce the behavior:

Load an example project

Expected behavior
Expected the project to load fault free
Screenshots

Desktop (please complete the following information):

OS: Windows
Version: Windows 11
GTX 1650 MAX-Q
32 Gig DDR4 RAM
Ryzen 5 5600X

I can confirm this occurs when you set Persp to Ortho Blend to 0


[Bug]: The official website document needs to provide information about externally integrated template variables

ODC version
ODC 4.2.0
OB version
Any version of OceanBase
What happened?
The official website documentation lacks information about external integration template variables.

What did you expect to happen?
The official website document needs to provide information about externally integrated template variables
How can we reproduce it (as minimally and precisely as possible)?
Check the website document external integration module
Anything else we need to know?
No response
Cloud
No response

The document has been updated at: https://www.oceanbase.com/docs/common-odc-1000000000090970#cce13d81-4099-4cad-8a2e-4c415a8adb5d

pass


Use PostgreSQL connection pool

Fixes

Addresses #5209 by @krysal
Description

This PR adds the required psycopg[pool] package and sets the DB connection to use pools.
The removed CONN_MAX_AGE option is incompatible with pools. The closest option would be max_lifetime from psycopg_pool:

max_lifetime (float, default: 1 hour) – The maximum lifetime of a connection in the pool, in seconds. Connections used for longer get closed and replaced by a new one. The amount is reduced by a random 10% to avoid mass eviction.

Testing Instructions

Run the API and confirm everything continues to work as usual.
Checklist

[x] My pull request has a descriptive title (not a vague title likeUpdate index.md).
[x] My pull request targets the default branch of the repository (main) or a parent feature branch.
[x] My commit messages follow best practices.
[x] My code follows the established code style of the repository.
[ ] I added or updated tests for the changes I made (if applicable).
[ ] I added or updated documentation (if applicable).
[ ] I tried running the project locally and verified that there are no visible errors.
[ ] I ran the DAG documentation generator (ov just catalog/generate-docs for catalog
PRs) or the media properties generator (ov just catalog/generate-docs media-props
for the catalog or ov just api/generate-docs for the API) where applicable.

Developer Certificate of Origin

Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1

Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129

Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.

Developer's Certificate of Origin 1.1

By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
    have the right to submit it under the open source license
    indicated in the file; or

(b) The contribution is based upon previous work that, to the best
    of my knowledge, is covered under an appropriate open source
    license and I have the right under that license to submit that
    work with modifications, whether created in whole or in part
    by me, under the same open source license (unless I am
    permitted to submit under a different license), as indicated
    in the file; or

(c) The contribution was provided directly to me by some other
    person who certified (a), (b) or (c) and I have not modified
    it.

(d) I understand and agree that this project and the contribution
    are public and that a record of the contribution (including all
    personal information I submit with it, including my sign-off) is
    maintained indefinitely and may be redistributed consistent with
    this project or the open source license(s) involved.

I won't have time to work on this before the new year so closing it for now.


Fix attach/associate action select translation

The attach/associate action select only selects a single value at a time and the translation key ends with record_id, but all translation files contain record_ids. (https://github.com/filamentphp/filament/blob/d4c5fb0b0fb15f1d625a452d5e6d7f7683ae0d11/packages/tables/src/Actions/AttachAction.php#L197)
I renamed and translated all languages that I could read and verify that the singular form resembles the plural form. For the others I just renamed the translation string as I think plural instead of singular is still better than a missing translation string.

Wow, so much effort here translating all the phrases. You really didn't need to do that, I would have left that job to the natives. But thank you so much.


Integrate blog RSS feed into Discord

... so that new blog posts on ThisDallasLife.com are automatically posted on the #general channel.

Closing this ticket because Discord is no longer part of DU communication strategy.


CSHARP-762 Document next release's features

Execution profiles
Metadata synchronization toggle
UDT definitions with keyspace

Hi Jorge ,
Does version 3.0.9 support CQL3?
Thank You
Abhilash

I see you posted the question on the mailing list, we can continue discussing from there.


NPM package "bindings" (for LCP native lib): risk of regression bug (to be analysed), due to v1.3.1 "minor" update that includes WebPack hack for "require()"

Potential breaking change, to be investigated:
var requireFunc = typeof __webpack_require__ === 'function' ? __non_webpack_require__ : require
https://github.com/TooTallNate/node-bindings/commit/40dcc1ffad085e22cf4b730a002ceeed77297ac5
Risk: we are currently at 1.3.0, but version 1.3.1 will be automatically picked-up by the next npm update or rm -rf node_modules && rm package-lock.json && npm install. This will transparently import into readium-desktop the aforementioned WebPack "require()" hack, which may break the native LCP functionality (i.e. lcp.node static lib binding). We need to verify this ASAP. Note that this does not impact r2-testapp-js as this sample/demo app project does not use WebPack.
The main package.json does not directly reference the bindings package:
https://github.com/readium/readium-desktop/blob/feature/new-db/package.json
...however, the secondary package.json does indeed reference the bindings package:
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/src/package.json#L35
( https://github.com/readium/readium-desktop/blob/feature/new-db/src/package.json#L35 )
...and of course the r2-lcp-js component does too:
https://github.com/readium/r2-lcp-js/blob/76392106308336a9d688cfd54433864b7c139270/package.json#L49
( https://github.com/readium/r2-lcp-js/blob/develop/package.json#L49 )
So, there are two possible solutions:

lock the bindings package to version 1.3.0 by simply removing the ^ symbol in package.json (we've done that several times already with other NPM packages, so this would be fine). However, the package-lock.json would in principle not change, unless a sub-dependency in our node_modules tree does import 1.3.1 ... in which case we need to make sure version 1.3.0 remains used by our LCP code, at the small cost (footprint + confusing deps tree) of a duplicate NPM package inside the WebPack bundle.
allow version 1.3.1 after checking that everything still works correctly in the WebPack package (with both npm run start and npm run start:dev). I will be able to do that as soon as LCP works in feature/new-db again, or alternatively I can try in an older branch.

Analysis:
We already explicitly exclude the bindings package from the WebPack bundle in the production build using the "externals" config for the "main" and "renderer" processes:
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/webpack.config.main.js#L29
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/webpack.config.reader.js#L33
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/webpack.config.renderer.js#L33
At development time, we prevent a gigantic production bundle for the "main" process by externalizing many packages using a custom "node externals" utility (which handles r2-xxx-js EcmaScript dist path aliases). This not only speeds-up build times considerably but also makes debugging much more effective (no huge sourcemap):
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/webpack.config.main.js#L52
WebPack already bundles arbitrarily for the "renderer" processes due to the live-reload server, module caching, etc.
However, optionally the same "node externals" utility is used when the environment variable WEBPACK is set to bundle-external.
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/webpack.config.reader.js#L51
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/webpack.config.renderer.js#L51
This convenience option was used by myself to improve the developer UX an old computer (shorter build times), but it is not the default, it has to be invoked explicitly with npm run start:devex (instead of npm run start:dev):
https://github.com/readium/readium-desktop/blob/3efc805d2d3458827d50cf341d402c3fda39d0d4/package.json#L28
So, to conclude, it looks like the behaviour change in bindings version 1.3.1 will not affect us, because we always force this package to be externalized / excluded from the WebPack bundle (typeof __webpack_require__ === 'function' is never true). In fact, this change means we could now (if we really wanted to) include the bindings package in the WebPack bundle, thanks to the __non_webpack_require__ function used by bindings updated logic:
var requireFunc = typeof __webpack_require__ === 'function' ? __non_webpack_require__ : require

(I recommend we keep everything as it is now though :)
So, I am updating r2-xxx-js packages with bindings's 1.3.1 minor semantic-versioning increment. This will be reflected in the package-lock.json of readium-desktop in my next Pull Request.

Side note - of course this NodeJS require() problem is not unique to WebPack bundles, and in fact with r2-testapp-js the Browserify bundling configuration also excludes / externalizes the bindings package from the bundles of "main" and "renderer" electron processes:
https://github.com/readium/r2-testapp-js/blob/baaca14db05c74bb7c9810f94ab224b5cc347024/package-scripts-bundle.cson#L20-L21
https://github.com/readium/r2-testapp-js/blob/baaca14db05c74bb7c9810f94ab224b5cc347024/package-scripts-bundle.cson#L106-L107
There are several other bundlers too, but it seems the bindings developer decided to address WebPack specifically by hard-coding the require() function monkey-patching. Perhaps a future iteration will make it possible to configure this programmatically?
At any rate, let's continue to externalize bindings from all our bundles. Safest approach.

This PR now references bindings version 1.3.1: https://github.com/readium/readium-desktop/pull/189
(once LCP support is available again in readium-desktop, let's test to see if external-assets/lcp.node continues to work when imported from outside the WebPack bundle ... as it should :)

LCP support works fine with the Bindings update.


Confusion about Alpaca dataset and instruction task.

I'm using this repo for running my custom data on various tasks (thank you by the way, this repo is a great example of FSDP, Any Precision Optimizer, and a variety of useful techniques for working with these models).
However, one portion I don't quite understand, but I'm assuming it is not a bug since it is also the same way on the original Alpaca repo, is how the input ids and labels are generated for the instruction tasks. The InstructionDataset doesn't offset the token ids, it just masks the prompt inputs. For example, you might have an input and label as below:
input_ids = [1, 1951, 31, 3642, 9342, 1002, 2] # assume token_ids 1, 1951, 31 are part of the prompt
labels = [-100, -100, -100, 3642, 9342, 1002, 2]

In this example, at index 3, the input token id is 3642 and the target at the same time step is 3642. This doesn't really make sense to me, it seems like a trivial task, because we are simply asking the model to predict the token we are currently inputting, rather than the next token in the sequence (like it does during pretraining). Can someone help me understand why this is the case?

Closing this as I found out what I wasn't understanding correctly. The CasualLM class from Transformers automatically offset these values in the forward pass, so the input to the model class above is correct, since it is then shifted correctly in the loss computation.


Create 0x Api service

Description
Create a service/wrapper over the 0x api, that the swap screen can use.
It must provide:

a method to fetch the swap rate between 2 tokens: https://docs.0x.org/0x-api-swap/api-references/get-swap-v1-price
a method that executes the swap: https://docs.0x.org/0x-api-swap/api-references/get-swap-v1-quote (it would be nice if this method receives the expected price for the swap, so we can avoid sending the transaction if the price changed too much).

Acceptance Criteria

[ ] Method for fetching exchange rates
[ ] Method for executing the swap

There is a rate limit of 3 requests/second for the 0x API - do we want to wrap this api (more flexibility) or call directly from the app (less rate limit issues)? @silasbw curious for your opinion

@dievazqu will get Denisse's contact's advice


Extend stmanager for more diskless support

Proposal: Instead of relying on shell scripts to do tasks like creating ISO files we could extend stmanager to do so. This would reduce the amount of external tool needed and would guarantee the same behavior on different distributions where tools like e.g. parted might be different versions.

https://github.com/system-transparency/stmgr exists and serves exactly this purpose.


Fix RegEx to allow any character in a template name

If an invalid character is provided in a template name, our RegEx was filtering it out and not handling it properly.
I'm not sure whether this is too broad and we might need something like non-whitespace ^\s or non-forward-slash ^/, but technically a user can put whatever they want in there, so it seemed like . might be most appropriate.
ref: https://issues.redhat.com/browse/ACM-7737

The E2E tests failed because I was expecting only one history status and got 7. I've added logic here to not requeue when an error matching k8serrors.IsInvalid() occurs since it seems that's unrecoverable and shouldn't be tried again, but if that's too risky it's in a separate commit and can be removed.


Fixed a typo in the readme

lgtm [merge]

👍🏻

reviewed this while insufficiently caffeinated and thought it was for a different repo. ignore my merge comment.


Google auth apis: migrate to FedCM

See notes here: https://developers.google.com/identity/gsi/web/guides/fedcm-migration

Seems important to be able to continue to login with Google. Is anyone working on this?
(Or are there other FedCM implementations. A linux port would also be nice!)

Seems important to be able to continue to login with Google. Is anyone working on this?
(Or are there other FedCM implementations. A linux port would also be nice!)


Can pass custom parameters?

If managing multiple projects in one repository (like a monorepo), may need condition handling in deploy scripts to only deploy a specific project. (like on.workflow_dispatch.inputs)
Is there any way currently possible?
For example .deploy --project foobar (Similar to .lock --reason <text>)

There is a way to do this but its a little "hacky"!
You could have multiple workflows all calling the branch deploy Action. Rather than using the default .deploy as your trigger, you could use a different "trigger" for each project.

workflow file 1

contains the branch deploy Action
uses the config option trigger: .deploy backend

workflow file 2

contains the branch deploy Action
uses the config option trigger: .deploy frontend

etc...

This way you can have multiple workflow files, doing multiple things, with different triggers.
.deploy backend would run custom logic in a custom workflow to ship changes only to the components in your monorepo for your backend. Likewise, .deploy frontend would be similar but for frontend components.
Let me know if that helps!

@CatsMiaow do you have any other questions or can this issue be closed? 😄

yes thanks for the reply
I can solve the problem with the method you suggested, so I'll close the issue.
Still, it would be nice if it could be solved in one workflow with custom parameters.


Add dictionary encoded array

For this PR, I had to create a bitmap_offset class. It takes the bitmap and an offset.
As the dictionary uses an index array and a value array, the bitmap already have an offset, and so we can't let the array_base automaticaly add an offset to the iterators.
So now it's the responsability of the array classes to declare the bitmap with and offset and the array_crtp just use the bitmap.begin() method.

I may have misunderstood the spec, but I don't understand why we need a bitmap and a bitmap_with_offset in the dictionary encoded array. The spec says "The null count of such arrays is dictated only by the validity bitmap of its indices, irrespective of any null values in the dictionary.", so I think the dictionary array should use the bitmap from the index (or keys) arrays. For instance if we have the following data:

index = [0, 1, 0, 1, null, 2]
dictionary = ['foo', 'bar', 'baz']
offset = 0

Then the array "seen" by the user is ['foo', 'bar', 'foo', 'bar', null, 'baz']
Now if offset = 1, the user should see ['bar', 'foo'n 'bar', null, 'baz']
If my assumption is correct, then we don't need the bimap_offset class (the primitive_array owning the indices will already apply its own offset to the bitmap, and if the dicitonary has an offset too, it can add it to the returned iterator in itd own bitmpa_begin method), and we don't need any bitmap member in the dictionary class.

@JohanMabille The quote you provide is only about the null_count c interface member.
For me, the dictionary layout is the combination of a primitive_array and another array.
In the dictionary layout we don't want to apply any offset to the iterators/element index, as is already handled by the combinations of arrays.
That why I have to modify the CRTP classe to not apply any offset. And so I created a bitmap_offset class.
I agree there is no need of the bitmap_offset for the dictionary class (the offset was already set to 0). I just push a commit to remove it, but we still need a dedicated bitmap for the dictionary as we have to handle nulls of both indexes (keys) and values.
Also I will remove the bitmap_offset class by a subrange, for the primitive and variable binary size.

I will create another because the there is too much conflicts with the current merge.

Replaced by: https://github.com/man-group/sparrow/pull/228


Not compatible with song titles containing a space

If a song's JSON contains a space in the "song" section (for example, Yap Squad from Bob and Bosip) it will remove it, meaning it refers to a song that does not exist. This can be manually fixed by just adding the spaces back, but it's not very convenient.

This issue has been solved as of release v1.4.1
Thank you for your contribution!


Fix broken JFR is possible?

Hello!
I configured Async-profiler, but JVM stucks while the application was running.
At the same time, JFR was apparently written, but after rebooting the JVM the file did not close as expected, and ultimately an error occurs when opening the file with JMC:
org.openjdk.jmc.flightrecorder.internal.InvalidJfrFileException: No readable chunks in recording
Can i close JFR with a specific sequence of bytes so that you can open it? Noticed that it have a starting and ending byte sequence.
Example:
At the start of the file:

In the end:

I also found this thing (split.jar), but it does not work with current JFR (from asprof). Probably outdated.

Thank you for providing the file.
Unfortunately, this recording is not recoverable.
JFR recordings consist of a series of chunks. Each chunk is self-contained: it can be parsed independently of other chunks. If some chunk is incomplete or corrupted, it should be still possible to recover data from other chunks. In your case, however, the file includes only one incomplete chunk.
Chunk header starts with FLR\0 (0x46 0x4C 0x52 0x00) - you may try to find this sequence in a recording. In your file, it occurs only once in the beginning. Also, the chunk length field in your recording has the value 0x40 0x00 0x00 0x00 which is a placeholder for an incomplete chunk.
Normal JFR chunk contains:

Metadata
Events
One or more constant pools

Constant pools hold all the symbolic information, such as method names, class names, stack traces, etc. Events usually contain numeric references into the constant pool. Even though there can be multiple constant pools in a chunk, async-profiler writes only one constant pool at the end of a chunk. So, your recording only has metadata and events, but no constant pools, therefore, it's impossible to decode numeric IDs in the events.
Async-profiler has two options to control chunk rotation:

chunktime specifies duration of each chunk;
chunksize determines a threshold in bytes when a chunk is flushed.

For example, --chunktime 5m --chunksize 10m forces async-profiler to record a new chunk every 5 minutes or every 10 megabytes of events, whichever happens earlier. With these options, even if JVM crashes, you'll be able to parse JFR recordings up to the last 5 minutes.

how did you get these values?

I'm not sure what you mean. These are from the beginning of the file you've sent to me:

Closing the issue as answered. Feel free to start a new discussion if you have further questions.


Unstable features accidentally usable on the Stable release chanel are still unstable

In some cases, it is possible to use unstable features on the Stable release channel. For example:

In expressions, only the final components of a foo::bar::baz path is checked for stability: https://github.com/rust-lang/rust/issues/15702. (See for example https://github.com/rust-lang/rust/pull/49896#issuecomment-381292836.)
By creating a crate named test or with some other name of a standard library crate, is it possible to override what is called by some compiler-generated code: https://github.com/rust-lang/rust/issues/49942
Using the bootstrap flag

This PR proposes that the semantic versioning / stability promise normally associated to the Stable release channel specifically do not extend to such cases. Finding a way to bypass the stability system should not be sufficient to make unstable features de-facto stable.

assigning to core team because its about project-wide policy

Ping @rust-lang/core, @SimonSapin Any progress here?


Security issue: Downloads Resources over HTTP

There is currently an open security advisory about this module from the Node Security Project.
https://nodesecurity.io/advisories/161
Overview
unicode loads unicode data downloaded from unicode.org into nodejs.
Unicode downloads binary resources over HTTP, which leaves it vulnerable to MITM attacks.
Remediation
No fix is currently available for this vulnerability.
It is our recommendation to not install or use this module at this time.

There does not appear to be an https version of the unicode data URL. Would you be willing to include an offline copy of the data in the package, fetched at publish time?

put the dowbload code in a prepublish/build script and add the file to your package

@HansHammel That solution requires every user of this package to do unnecessary extra work. Let's solve it once, correctly, in this package so that all users aren't exposed to man-in-middle attacks because of insecure http requests.

as I said, put the file in the code

@HansHammel I think you're either trolling me, or just misunderstanding what I wrote. I suggest rereading this thread before commenting further.
@dodo Any thoughts on this issue? Would you accept a PR that downloads UnicodeData.txt at publish time and includes it in this package? This would resolve the outstanding Node.js Security Advisory against this package.

No, seriously, why do you have to download the file? Is there any reason you cannot embed it and update it only on new package releases!?

@HansHammel You're advocating for the same thing that I am. Download the file right before a release.

Any advancement on that? I can't push my project into production if there's a security flaw.
As it uses this package, it would be great to have a definitive solution…

https coming soon

If it will be loaded over HTTPS, it is still an issue if the unicode server goes down or throttles downloads as discussed in #25 and other issues in this repo.
Especially on Mac OS, where you can't simply sudo apt-get install unicode-data. Therefore, I am +1 for @feross & @HansHammel's solution to simply include it into this repo.

Moreover sourceforge is far from reliable. Store this file directly in the module is the best way to avoid problems and improve human validation.

Hi,
I just created a pull request, doing this, as we have the same issue: https://github.com/dodo/node-unicodetable/pull/28
I'd by happy about any reviews ;)
We at eversports.com also depend on quite some packages using this one and at the moment it breaks our development and deployment processes. I also just wrote to the npmjs support team about this, because the package seems quite orphaned.
If someone wants to join maintaining the package, please don't hesitate getting in touch with me. I hope I'll get a quick response from the npmjs team. We'll see...

/popcorn

adding
addons:

  apt:
    packages:
    - unicode-data

seems to help if you're on travis-ci

Hello everyone!
I just published a new version on npm and thereby directly adopted the unicode version scheme, so the new version is 9.0.0. The slug package should automatically use this new version.
You find the new fork here: https://github.com/eversport/node-unicodetable
Feel free to create or move any issues there! Also, anyone who wants to join maintaining or just create new pull requests is very welcome!
The new version also provides the category/*.js files directly, so there is no need to download a file from unicode.org anymore during install.

@tdanecker also see #16


Set the branch to 0.16 for knative in test case

Proposed Changes

This PR pins the knative repo to release-0.16 in upgrade test cases, because operator has not catch up all the latest changes, leading to upgrade tests failure.

Release Note

/lgtm
/approve


⚙ Update pre-commit config with Prettier and ESLint

⚙ Update pre-commit config with Prettier and ESLint

Thanks! :rocket:


USSD Code by sending SMS

How to check credit balance by sending SMS in the GPRS library for SIM800L?
There is a command line for checking the AT commands?

@jamalkaksouri  Please refer to this issue https://github.com/Seeed-Studio/GPRS_SIM900/issues/22


Bump ethereumjs libraries

#304  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @2xic and the rest of your teammates on  Graphite


Use capi machine name as hostname and k8s node name

Issue #, if available:
When kubernetes cluster is created using cloudstack, the CAPI machine name and k8s node name does not match
Description of changes:
Cloudstack metadata does not have a meta_data field named hostname, which can be used as hostname overwrite when VM is created in CloudStack platform.
The fix is to inject ds.meta_data.hostname value using CAPI machine name in cloud-init user data, so CAPI machine name will be registered as a node name when kubelet does node registration.
Testing performed:
Manual testing.
➜  eks-main git:(main) ✗ k get machines -A
NAMESPACE     NAME                            CLUSTER   NODENAME                        PROVIDERID                                           PHASE     AGE   VERSION
eksa-system   wanyufe-etcd-lk4nb              wanyufe                                   cloudstack:///8132067e-a17c-4362-9f41-17ebde0a03bb   Running   23s
eksa-system   wanyufe-g4ngn                   wanyufe   wanyufe-g4ngn                   cloudstack:///0118f9f5-b077-4ed6-8059-3a3bdf624bff   Running   23s   v1.21.13-eks-1-21-17
eksa-system   wanyufe-md-0-7cd6946f9d-6vxxb   wanyufe   wanyufe-md-0-7cd6946f9d-6vxxb   cloudstack:///163cd246-da31-4c03-8765-ab589d88218c   Running   23s   v1.21.13-eks-1-21-17
➜  eks-main git:(main) ✗ k get nodes
NAME                            STATUS   ROLES                  AGE     VERSION
wanyufe-g4ngn                   Ready    control-plane,master   4m      v1.21.5-eks-1-21
wanyufe-md-0-7cd6946f9d-6vxxb   Ready    <none>                 2m43s   v1.21.5-eks-1-21
➜  eks-main git:(main) ✗ k get cloudstackmachines -A
NAMESPACE     NAME                                                 CLUSTER   INSTANCESTATE   READY   PROVIDERID                                           MACHINE
eksa-system   wanyufe-control-plane-template-1665026095159-4hh57   wanyufe   Running         true    cloudstack:///0118f9f5-b077-4ed6-8059-3a3bdf624bff   wanyufe-g4ngn
eksa-system   wanyufe-etcd-template-1665026095159-87khh            wanyufe   Running         true    cloudstack:///8132067e-a17c-4362-9f41-17ebde0a03bb   wanyufe-etcd-lk4nb
eksa-system   wanyufe-md-0-1665026095163-zlv87                     wanyufe   Running         true    cloudstack:///163cd246-da31-4c03-8765-ab589d88218c   wanyufe-md-0-7cd6946f9d-6vxxb

By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Codecov Report
Base: 33.65% // Head: 33.34% // Decreases project coverage by -0.31% :warning:

Coverage data is based on head (274e026) compared to base (03a9ef6).
Patch coverage: 33.33% of modified lines in pull request are covered.

Additional details and impacted files
@@            Coverage Diff             @@
##             main     #170      +/-   ##
==========================================
- Coverage   33.65%   33.34%   -0.32%
==========================================
  Files          43       43
  Lines        3753     3755       +2
==========================================
- Hits         1263     1252      -11
- Misses       2326     2340      +14
+ Partials      164      163       -1

Impacted Files
Coverage Δ

controllers/cloudstackmachine_controller.go
59.31% <0.00%> (+0.40%)
:arrow_up:

pkg/cloud/instance.go
79.01% <100.00%> (ø)

...ontrollers/cloudstackisolatednetwork_controller.go
8.51% <0.00%> (-27.66%)
:arrow_down:

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.

/approved

/lgtm


JBPM-4664:advanced and baisc mode for process instance include: new details…

…page and  create module jbpm-console-ng-generic-preferences
@Salaboy
Please review it!
Thanks

@Salaboy  hi i  updated this PR, as we discuss content.
Please review it.

@Salaboy hi i updated this PR, as we discuss content.(include: refacing Dataset Process instance list)
The PR dependency on PR https://github.com/droolsjbpm/droolsjbpm-build-bootstrap/pull/64
Please review it.

replace by new PR

replace by new PR


Add a Gitter chat badge to README.md

hotosm/osm-export-tool2 now has a Chat Room on Gitter
@mataharimhairi has just created a chat room. You can visit it here: https://gitter.im/hotosm/osm-export-tool2.
This pull-request adds this badge to your README.md:

If my aim is a little off, please let me know.
Happy chatting.
PS: Click here if you would prefer not to receive automatic pull-requests from Gitter in future.

There has been past activity on the Gitter channel, so I'm merging this.


Switch Camera on custom layout

Is it possible to switch the camera in a custom layout like capture_appcompat.xml? I want to switch between front and back camera with a button. The CompoundBarcodeView has no function like setCameraId so i wanted to ask, if there is another solution to this?

i could solve it on my own:
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.activity_capture_portrait_orientation);

    barcodeView = (CompoundBarcodeView) findViewById(R.id.barcode_scanner);
    barcodeView.decodeContinuous(callback);
    barcodeView.setStatusText(null);
    Button useOtherCamera = (Button) findViewById(R.id.useOtherCamera);
    //if phone has only one camera, hide "switch camera" button
    if(Camera.getNumberOfCameras() == 1){
        useOtherCamera.setVisibility(View.INVISIBLE);
    }
    else {
        useOtherCamera.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {

                CameraSettings settings = barcodeView.getBarcodeView().getCameraSettings();

                if(barcodeView.getBarcodeView().isPreviewActive()) {
                    barcodeView.pause();
                }

                //swap the id of the camera to be used
                if (settings.getRequestedCameraId() == Camera.CameraInfo.CAMERA_FACING_BACK) {
                    settings.setRequestedCameraId(Camera.CameraInfo.CAMERA_FACING_FRONT);
                } else {
                    settings.setRequestedCameraId(Camera.CameraInfo.CAMERA_FACING_BACK);
                }
                barcodeView.getBarcodeView().setCameraSettings(settings);

                barcodeView.resume();
            }

        });
    }
}

Great - that is the correct approach to follow currently.
I'll see if I can add some helper functions for that at some point.

Is there any helper function added for this feature?

Thank you very much..
I almost spend whole day on this.


Bluetooth: Host: Call att_mtu_updated callback when channel is reconfigured

Previously, the att_mtu_updated callback was only called on initial connection of the channel or during the MTU Exchange procedure. There was no way for the application to know that the MTU increased in the case where the peer initiated a reconfiguration.
Adds a test that verifies the callback is called. The function for reconfiguring the EATT channels is hidden behind CONFIG_BT_TESTING and is not meant for use by applications.

@jhedberg Plase take a look


arm: add std::io::Read wrapper around read_swo

An upcoming release of itm-decode now takes an std::io::Read impl
instead of requiring the end-user to push bytes manually.

Wait with eventual merge until I tested the implementation.

Implementation works. Example usage with itm can be seen in https://github.com/rtic-scope/cargo-rtic-scope/blob/eeb13aa66194d366e6a27d56d524a3f2fcd1a153/cargo-rtic-scope/src/sources/probe.rs.
CC @Yatekii


Update Move-csuser.cmd

Fixing the purpose and status of "ProxyPool" parameter for the Move-csuser powershell cmdlet.

#sign-off

@dariomws and @get-itips, @ruchiagrawal9221 and I are from the same team in Microsoft whuch supports user migration.  She has not signed up yet as Microsoft Doc team.  I made the same change in my PR: #10636.  This PR is a duplicate. Sorry for the confusion.


Update README with curl instructions for Kedge download

Updates the README with curl instructions rather than using binary
links.

@kadel Yeah, it should. Updated!

Hey @surajssd @kadel @containscafeine
I take inspiration by how https://kubernetes.io/docs/tasks/tools/install-kubectl/ does it in regards to their kubectl installation. Following how other projects from the incubator / k8s project does it. Makes sense having multiple commands as well instead of an all-in-one command / curl https://foobar.com/script.sh | sh.

@cdrage so what are you exactly planning to do here?

@surajssd I'd suggest an alternative way of how to deploy Windows, but otherwise, I don't think we should change anything (except Windows portion). Keep it similar to https://kubernetes.io/docs/tasks/tools/install-kubectl/
Any suggestions?

@cdrage yes SGTM

@surajssd Updated.

@kadel Please review again, I've updated the docs. Hopefully the last time for updating! Added separate Windows instructions.


Juttle adapter api 0 5

Stacked on top of #83.
Implements the 0.5 API contract exposed by juttle/juttle#413 in the influx adapter.

Cool, thanks! I was just about to do this change :) As soon as we have a new release, I'll rebase this PR and merge.

I cherry-picked your patch to #83 and going to close this one (the tests against master pass, thanks!) - as David is going to prepare a migration guide based on that PR and I added some more commits.


Improve art folder organization

there are two Van Gogh directorie and the structure is confusing

also there are various test folders, leftover placeholder art, maybe we meet as a group and decide what can go


create a set of recognized denomination forms

I took a stab at restricting the acceptable forms here.  There was some consensus that "BtC" was confusing that was discussed in a previous pr https://github.com/rust-bitcoin/rust-bitcoin/pull/1715.
Also, personally I felt that the PossiblyConfusingDenomination enum variant was itself confusing.  I think it's probably cleaner to just maintain a list of acceptable forms and treat everything else as unknown.  For now I just created a const of possibly confusing forms.

I think I've made the requested changes.

@Kixunil @tcharding since it seems there's some disagreement on what forms or terms are considered confusing, how about if we just leave that unchanged since it doesn't have much to do with this PR?  FWIW one of the comments said we shouldn't worry if M means mega or not since we don't support mega, but I don't see why we wouldn't add Mega in the future..

@yancyribbens because nobody has a million bitcoins.

@apoelstra the internet says that Satoshi has 1.1 million..

Yes, let's leave that unchanged.
"nobody having 1M BTC" isn't a great argument since it can be used in other contexts. E.g. "number of bitcions in circulation", besides it's commonly used for sats.


NormalTension and LocalPressure boundary conditions structs

Codecov Report

Merging #268 (a7d86cf) into main (a4dbb63) will decrease coverage by 1.56%.
The diff coverage is 100.00%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##             main     #268      +/-   ##
==========================================
- Coverage   82.14%   80.58%   -1.56%
==========================================
  Files          40       40
  Lines        1411     1411
==========================================
- Hits         1159     1137      -22
- Misses        252      274      +22

Impacted Files
Coverage Δ

src/Meshes/Handlers.jl
35.38% <ø> (-17.29%)
:arrow_down:

src/StructuralModel/StructuralModel.jl
88.88% <ø> (ø)

.../BoundaryConditions/LocalLoadBoundaryConditions.jl
95.00% <100.00%> (+2.14%)
:arrow_up:

... and 4 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Google doc style repo creation

Currently, one must give a name when creating a repo. This creates an extra barrier for users to get started.
On GitHub, each project has a handle, e.g. codepod-io/codepod. We won't use that. Instead, we use Google Docs's approach. Users can create a repo, and it will be titled "Untitled". We can have many "Untitled" repos, no need to be unique (but they will have unique hash ID). The title can be edited at any time.
For reference, this is Google Docs interface:

@forrestbao Any input on this?

"If we don't have a handle like torvalds/linux, how should we share/discover/refer-to?" One would ask.
Easy; everyone is Youtuber here. You have a customizable homepage to showcase your work, and each of your project has a short unique URL like https://youtu.be/Npu7jkJk5nM

I think a better analogy is Google CoLab. In Google Colab, once you create a notebook, the default name is untilted.ipynb. Then you can changed it as in Google Docs.
Yeah, I like this idea.
On a related note, we can also remove "private" switch when creating a notebook. Just let a notebook by default be private until a user chooses to share it.
Then, on yet another related note, "share" means "public"? What about team share? We shall follow Google Docs sharing scheme

"If we don't have a handle like torvalds/linux, how should we share/discover/refer-to?" One would ask.
Easy; everyone is Youtuber here. You have a customizable homepage to showcase your work, and each of your project has a short unique URL like https://youtu.be/Npu7jkJk5nM

You can take a look at how DeepNote does it. For example,
https://deepnote.com/workspace/forrest-bao-8d3a-8e96c0f9-789e-4b51-b08f-8c67f93fd301/project/NLPclass-5185c4e4-930a-4349-b76b-be1834007069/notebook/LDA-d3cd48df628e43349658499d66eb8093
It contains user name, workspace name, and notebook name. But adds a hash behind all three. I think this is to prevent name changes. However, I think the hash is too long. It defeats the purpose to include names at all.
Or you can take a look at Twitter.
https://twitter.com/forrestbao/status/1595900998131793920
It still has the username and uses a unique tweet ID for posts.

I think Using hashes or integers is very bad idea. The link is too long. YouTube does a better job by using a-z, A-Z and then 0-9. We should do that.

username and uses a unique tweet ID

Including userid and repoid sounds good.

YouTube does a better job by using a-z, A-Z and then 0-9. We should do that.

We used nanoid with nolookalikes, it generates something like this: Y8WCEGKQjH.
https://github.com/codepod-io/codepod/blob/58aea55c1e430a5befcd7043f296c8cd011a43ac/ui/src/pages/repos/CreateRepoForm.tsx#L16-L18


-updated teh elb health check to check last 3 values instead of just one value

@yithian approved #4287


Fix: Missing certificate signed by unknown authority refs: https://gi…

Summary

Here is the pull request to fix the issue I open about missing code that I already PR in the previous repository.
Ticket Link

Fixes https://github.com/mattermost/docker/issues/34

Hello @mrckndt,
Please could you have a look ?
Best regards,

@craph Thank you so much!

@metanerd You're welcome

@metanerd , @cpanato , @mrckndt I did a new PR #52 for this issue because I made a mistake in #49.
You already accepted and merger those changes but in #49 the changes was revert 😢 I'm very sorry for the mistake.
Thanks to all of you for applying #52 again to fix my mistake.
Best regards,


What is the system (I guess it's Skylake, but home cores used, etc)?
What compiler and OpenMP RT did you use?

Was Intel MKL-DNN v0.20.5 built with GCC but Intel OpenMP RT? If so, could you please re-run DNNL v1.1 with LD_PRELOAD=libiomp5.so just to confirm the difference doesn't come from the different libraries.

Hi @emfomenk
I previously force mkldnn built with GOMP. The following results were all using IOMP.
Skylake 8180
gcc version 4.8.5 20150623 (Red Hat 4.8.5-16) (GCC)

export OMP_NUM_THREADS=56
export KMP_AFFINITY=granularity=fine,compact,1,0

DNNL
$ DNNL_VERBOSE=0 ./benchdnn --bnorm --dir=FWD_I --tag=aBcd16b --flags=GS --mode=p mb1ic2048ih7iw7
perf,cpu,"wip",--bnorm --dir=FWD_I --tag=aBcd16b --flags=GS mb1ic2048ih7n"wip",0.0493164,0.054051
tests:1 passed:0 skipped:0 mistrusted:0 unimplemented:0 failed:0 listed:0
total perf: min(ms):0.0493164 avg(ms):0.054051

MKLDNN
$ MKLDNN_VERBOSE=0 ./benchdnn --bnorm --dir=FWD_I --fmt=nChw16c --flags=GS --mode=p mb1ic2048ih7iw7
perf,"wip",FWD_I,GS,f32,nChw16c,1,2048,1,7,7,0.0625,0.00952148,0.0112343
tests:1 passed:0 skipped:0 mistrusted:0 unimplemented:0 failed:0
total perf: min(ms):0.00952148 avg(ms):0.0112343

Thanks!
The picture is nice and clear, though not pleasant... :confused:
Will take a look into that! Thanks for the report!

I also noticed that the performance of Reorder is much worse than before if src has same format as dst, no matter what format or size they are.
Here's an example:
DNNL
$ ./benchdnn --reorder --sdt=f32 --sdt=f32 --stag=nChw16c --dtag=nChw16c --mode=p 1x320x7x7

MKLDNN
$ ./benchdnn --reorder --idt=f32 --odt=f32 --ifmt=nChw16c --ofmt=nChw16c --mode=p 1x320x7x7

threads
dnnl (avg ms)
mkldnn (avg ms)

1
0.0853134
0.00334179

2
0.0467896
0.00326999

3
0.0335625
0.00280365

4
0.0263149
0.00256752

5
0.0218227
0.00229523

6
0.0192559
0.00230699

7
0.0169212
0.00240872

8
0.0167018
0.002212

9
0.0147134
0.00238238

10
0.0142527
0.00239831

11
0.0136945
0.0022774

12
0.012458
0.00250865

13
0.0117519
0.00233977

14
0.011507
0.00230867

15
0.0111178
0.00249798

16
0.0107166
0.00247868

Hi @pinzhenx,
I am having troubles reproducing batchnorm or reorder results on my system. Can you please provide exact cmake command and output for both versions?

Hi @rsdubtso
It's no longer a problem after I built it with -DCMAKE_BUILD_TYPE=Release. Kinda weird though.
Thanks for your help. Closing it.

Yeah, there is another reported issue about  inconsistent build system behavior when CMAKE_BUILD_TYPE is unset. A fix will soon be (or is already) promoted to master.


Update DS page in BC Developer Guide

Alongside 3.0.0 release, we need to update the language on the 'about the design system' page in the BC Developer Guide to reflect current status.

In progress, PR submitted https://github.com/bcgov/bcdg/pull/28

Completed: https://github.com/bcgov/bcdg/pull/29


Exception while upgrading the amplify cli.

Before opening, please confirm:

[X] I have installed the latest version of the Amplify CLI (see above), and confirmed that the issue still persists.
[X] I have searched for duplicate or closed issues.
[X] I have read the guide for submitting bug reports.
[X] I have done my best to include a minimal, self-contained set of instructions for consistently reproducing the issue.
[X] I have removed any sensitive information from my code snippets and submission.

How did you install the Amplify CLI?
npm
If applicable, what version of Node.js are you using?
v16.14.0
Amplify CLI Version
8.5.0, 8.4.0, 8.3.0
What operating system are you using?
Amazon Linux 2 on Cloud9 instance.
Did you make any manual changes to the cloud resources managed by Amplify? Please describe the changes made.
No manual changes made.
Amplify Categories
Not applicable
Amplify Commands
Not applicable
Describe the bug
I'm getting lately this error when I upgrade the amplify cli:
`Developer2:~/environment/xxxxx (xxxxx) $ amplify upgrade
Downloading latest Amplify CLI
100% [========================================] 0.0 seconds left
⠸ Validating downloaded Amplify CLI....internal/modules/cjs/loader.js:905
throw err;
^
Error: Cannot find module '/home/ec2-user/environment/xxxx/--version'
at Function.Module._resolveFilename (internal/modules/cjs/loader.js:902:15)
at Function._resolveFilename (pkg/prelude/bootstrap.js:1819:46)
at Function.Module._load (internal/modules/cjs/loader.js:746:27)
at Function.runMain (pkg/prelude/bootstrap.js:1847:12)
at internal/main/run_main_module.js:17:47 {
code: 'MODULE_NOT_FOUND',
requireStack: []
}
✖ An unexpected error has occurred, opt in to send an error report to AWS Amplify with non-sensitive project configuration files. Confirm  (y/N)`
The last line is new, it was first stuck showing waiting for validation, after a control-c, the "An unexpected..." message appeared, but I could not select the confirm, the script was not running anymore.
The version is now 8.5.0, prior was 8.4.0, which had the same error, but the version seems to work regardless of the exception.
It's kind of annoying though, I always need to cross fingers when I upgrade the cli.
Expected behavior
Clean upgrade with no issues.
Reproduction steps
I can't provide steps to reproduce, no time currently to do so.
GraphQL schema(s)

# Put schemas below this line

Log output

2022-06-14T15:01:53.686Z|info : amplify upgrade core
2022-06-14T15:01:53.736Z|info : amplify-cli-core.banner-message/index.ts.fetch banner messages from https://aws-amplify.github.io/amplify-cli/banner-message.json({}
2022-06-14T15:06:52.247Z|info : amplify version core  {"version":true,"yes":false}
2022-06-14T15:07:02.753Z|info : amplify status core  {"yes":false}
2022-06-14T15:07:02.806Z|info : amplify-cli-core.banner-message/index.ts.fetch banner messages from https://aws-amplify.github.io/amplify-cli/banner-message.json({}
2022-06-14T15:07:04.511Z|info : amplify-provider-awscloudformation.display-helpful-urls.showCognitoSandBoxMessage(["userPool"])

Additional information
The log does not show any errors, see above.

I noticed, that I'm getting the following weird messages on push with the new version 8.5.0, there where apparently fixed in 8.4.0, but appeared also on 8.3.0 as I remember.
Overrides functionality is not implemented for this category
Overrides functionality is not implemented for this category
Overrides functionality is not implemented for this category
Overrides functionality is not implemented for this category
Overrides functionality is not implemented for this category
Overrides functionality is not implemented for this category
Overrides functionality is not implemented for this category
Overrides functionality is not implemented for this category
✔ Successfully pulled backend environment staging from the cloud.
Overrides functionality is not implemented for this categor```

Hey @ecc7220 :wave: thanks for raising this! This is a duplicate bug of https://github.com/aws-amplify/amplify-cli/issues/10583#issuecomment-1154508064

There was a bug in amplify upgrade in amplify-cli 8.4.0 which has been fixed in amplify-cli 8.5.0 . Please install the CLI using npm install -g<EMAIL_ADDRESS>. The problem in amplify upgrade will not be seen in future versions of the CLI. Closing this, since resolved in 8.5.0.

And for your second note this is documented as an active bug here https://github.com/aws-amplify/amplify-cli/issues/10546
Closing in favor of the explanation on #10583 and duplicate bug of #10546


fix: run linter

Motivation
It seems the code in main has some lint warnings when running yarn lint:check.
Solution
Run yarn lint:fix

thanks for the PR! we'll probably do lint:fixes during Seaport 1.6 development (currently on Seaport 1.5) so that the 1.5 code matches the deployed version.

actually i'll reopen this to fix other PRs, I'm not sure why the linting would have changed so much, maybe something related to line length. @0age anything in particular you want to do here?

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (50a0c09) 99.77% compared to head (bbd6db6) 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@             Coverage Diff             @@
##             main     #1295      +/-   ##
===========================================
+ Coverage   99.77%   100.00%   +0.22%
===========================================
  Files          22        22
  Lines        1361      1266      -95
  Branches      220       220
===========================================
- Hits         1358      1266      -92
+ Misses          3         0       -3

Flag
Coverage Δ

foundry
?

production
100.00% <ø> (ø)

reference
100.00% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


Getting timeout when trying to connect

When I try to open a new connection, I get the following error:
AseException: Timed out trying to establish a connection
AdoNetCore.AseClient.Internal.ConnectionPool.Reserve()

Could I be doing something wrong? My code looks like:
using (var test = new AseConnection("Data Source=sybase;Port=5000;Database=gravity;Uid=sa;Pwd=myPassword;pooling=false;"))
{
    test.Open(); // Blows up here
    test.ExecuteScalar<int>("Select (1)");
 }

I know my server is running because I can connect to it with DBeaver.

Hi @cwoolum, currently we don't support reading from the sybase.ini file, so if your data source is defined there it won't work. This is something we should think about implementing...
In the meantime, can you try specifying the server's IP address or DNS name instead and see what happens?
Thanks

Sorry, by sybase.ini I meant sql.ini

I'm not using sql.ini to connect. Sybase is the hostname of the docker container that hosts my sybase instance. Let me try by IP and see if that works. DNS usually resolves correctly but there could be something weird happening.

Ah, interesting, it might be useful for us to set up a test case of some sort. Let us know how it goes

Okay, I tested with IP address but I'm still getting the same error. I'm running this on an empty Linux instance with nothing else installed. Are there any other dependencies that are required?

Beyond having .net core 1 or 1.1 or 2 installed, there should be no dependencies

I'm starting to think this might be a Linux related issue. I ran the app in Windows and was able to connect to by db fine. When I ran it from inside the Linux container, I had the error again.
Because of a VPN issue, I can't test against an external Sybase db right now while running inside of Linux. I'll try to replicate the issue another way.

This was a configuration error on my part. Sorry!

No worries, glad you figured it out :)


The Skipped updates don't stay: Skipped

Description
I keep getting the update for: "1.3.11 Build 231116 Rel.69367n", after every restart of HA.
Even if I Skip the updates they keep showing every time HA starts. As if the skipped status before also resets. It's the first time it happened - with every camera C310 and C200.
Reproduction Steps

Skip update
Restart HA

Expected behavior
Skipped updates stay as such.
If applicable, add error logs.
No response
Device Firmware
1.3.9 Build 231024 Rel.62920n(4555)
Integration Version
5.4.18
Using stream component
Yes
Does camera work via official integrations?
Yes
Camera has all attributes filled out in developer tools
Yes
HASS Environment
Intel NUC
Search for similar issues
Yes
Additional information
No response

Ok, disabling entities: update.cameraXXX_update, did the trick.


Cant start on lion(MAC OS 10.7)

plz forgive me if its really obvious, but TELL ME!
about all i know
http://dpaste.org/Xv07P/

https://github.com/github/hubot/issues/42

working now, add this to readme? also #42 links


chore(ci): attempt to configure autopublish

maybe it works!

Current dependencies on/for this PR:

main

PR #239   👈

This comment was auto-generated by Graphite.


add graphql-tag/loader as hook for nodejs | feature

It would be nice to have graphql-tag/loader available in the nodejs as hook.
That means I can use
import query from './queries/query.graphql';

in the nodejs as well.
It is very easy to do that with https://www.npmjs.com/package/require-hacker

I think require hooks are no longer recommended as a best practice for Node, right? The correct approach is to have a build step that outputs .js files I think.

It is much easier to work with hooks when you have isomorphic application. How you are using it in your isomorphic application?

I don't use the webpack loader personally, I'm using the template literal and putting the queries inside the JS. I think it could be cool to add a require hook to this package, I'm just saying the best way is to run a build step on the server code.

Agreed best to let developer tools handle understanding .graphql


The calendar does not go

You could take a look at the series calendar to see if they have changed anything on the web, because it has been all day without being able to show anything.

use the custom calendar


Hotspots in Random Sampling Filter

As part of my efforts to benchmark Libpointmatcher, I created a toy example that processes point clouds coming from a ROS topic.
I ran the node through Intel VTune, for 100 seconds, with 96 of them being actually dedicated to processing, during the rest the node was idle.
In the following lines I describe my search for hotspots and a short analysis.
Hotspots
CPU

Memory access

Processor events

Note: there are lots of misaligned memory moves shown in the above figures. A big part of those is due to ROS deserialization (TCPRead), another part to libpointmatcher_ros deserialization (reported here, and another part due to not using move semantics -I think-). They are not the core of this issue.
Analysis
The call to std::random in the random sampling data points filter happens within the main sampling loop:

Sampling a random number is a fast operation, but the way it is currently implemented defaults to a scalar operation, probably preventing the loop from getting vectorized. Furthermore, it is retiring (running through the CPU execution units) a lot of times, when compared with other instructions. The average latency of a single random call is 23 cycles, almost as much as the calls to the kernel to switch threads / reserve memory.

Proposals
I would propose to implement a similar solution as the one presented in #328, where we would:

Bring a generator for a uniform distribution (please confirm if this is OK).
Create a vector of indices within the range of a point cloud.
Random shuffle the vector indices.
Keep only X percent of the columns after random sampling.

@pomerlef Do you think this would be a good solution? Is there any specific test case you would like me to look at?

Good catch! I'm not quite sure about your test set up, but it could be useful to run the analysis on the unit test as they apply registration using bunch of filters without passing through ROS.
I was under the impression that std::rand() was uniform. If that was not the case and you're converting it to uniform, that's even better.
The proposal looks fine for me. The RandomSamplingDataPointFilter is used quite a lot in general. Just make sure to visually assess the filtered point cloud before and after to make sure that there no artefact in the point cloud after the modification.

Hi @pomerlef
Thank you for your prompt reply.
I tested the solution proposed (see code snippet below) and found it to be way slower than expected. Due to multiple reasons:

Creating a vector of ints is expensive in itself, O(n) worst case.
Shuffling the vector sequentially is O(n) as well, even with a random number generator.
Shuffling doesn't seem to run in parallel? (the compiler -gcc does not seem to auto-vectorize the code)

  Eigen::VectorXi indices = Eigen::VectorXi::LinSpaced(nbPointsIn, 0, nbPointsIn - 1);
  std::random_device randomDevice;
  std::minstd_rand randomGenerator(randomDevice());
  std::shuffle(indices.data(), indices.data() + nbPointsIn, randomGenerator);
  Eigen::Index j = 0;
  for (Eigen::Index i = 0; i < nbPointsOut; i++) {
    // cloud.setColFrom(indices[j], cloud, i);
    cloud.swapCols(indices[i], j);
    j++;
  }
  cloud.conservativeResize(j);

Now, I implemented two other solutions that did work, and speeded up the filter:
Solution 1
Sampling floats in the range [0,1] from a uniform distribution using the std::random objects. Removed random sampling from the actual column-swapping loop.
Increases the speed in around 25-30%
	std::random_device rd;
  	std::minstd_rand gen(rd());
  	std::uniform_real_distribution<float> dis(0, 1);
	const Eigen::VectorXf randomNumbers = Eigen::VectorXf::NullaryExpr(nbPointsIn, [&](float dummy){return dis(gen);});
	int j=0;
	for (Eigen::Index i = 0; i < nbPointsIn && j<=nbPointsOut; i++) {
		if (randomNumbers[i] < prob)
		{
			cloud.setColFrom(j, cloud, i);
			++j;
		}
	}
	cloud.conservativeResize(j);

Solution 2
Using a random generator from std::random, but without sampling from a uniform distribution. All random samples are saved in an Eigen vector before our column-swapping sampling loop.
	std::random_device rd;
  	std::minstd_rand gen(rd());
	const Eigen::VectorXf randomNumbers = Eigen::VectorXf::NullaryExpr(nbPointsIn, [&](float dummy){return gen();});
	int j=0;
	for (Eigen::Index i = 0; i < nbPointsIn && j<=nbPointsOut; i++) {
		if (randomNumbers[i] < prob)
		{
			cloud.setColFrom(j, cloud, i);
			++j;
		}
	}
	cloud.conservativeResize(j);

I could worth it to try the Marsaglia's xorshf generator.
For solution 2, if it's not uniform, do we know what the histogram looks like? There might be some implication on the resulting density of points. I doubt, I would code both and use a parameter approximation=true to activate solution 2.

Comparison of proposed methods in the pull request
@pomerlef I just read your request about testing Marsaglia's generator. It is even faster than the proposed  methods

This method is approx. 1.5x faster than the ones I proposed, but the distribution of values looks slightly less random. Note that I'm sampling float values from xorshf96 by dividing over the max value of unsigned long: https://github.com/raylee/xorshf96/blob/master/xorshf96.c#L23
See attached files for the float values sampled by the original, proposed (direct RNG and uniform), as well as xorshf96.
original.txt
direct_rng.txt
uniform.txt
xorshf96.txt


libguestfs, guestfs-tools: 1.48.(4/2) -> 1.50.1

Description of changes
libguestfs release notes: https://libguestfs.org/guestfs-release-notes-1.50.1.html
guestfs-tools release notes: https://libguestfs.org/guestfs-tools-release-notes-1.50.1.html

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[ ] Tested basic functionality of all binary files (usually in ./result/bin/)
23.11 Release Notes (or backporting 23.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Result of nixpkgs-review pr 238165 run on x86_64-linux 1

10 packages built:

diffoscope
diffoscope.dist
diffoscope.man
guestfs-tools
libguestfs
python310Packages.guestfs
python310Packages.guestfs.dist
python311Packages.guestfs
python311Packages.guestfs.dist
vagrant


dotnet core 2.1 proxy problem

The telegram bot crashes because, it does not work with my proxy any longer:
Application startup exception: System.Exception: Could not resolve a service of type 'Logging.ITelegramBotService' for the parameter 'telegramBotService' of method 'Configure' on type 'Startup'.
---> System.AggregateException: One or more errors occurred. (A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond) ---> System.Net.Http.HttpRequestException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond ---> System.Net.Sockets.SocketException: A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond
   at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
   --- End of inner exception stack trace ---
   at System.Net.Http.ConnectHelper.ConnectAsync(String host, Int32 port, CancellationToken cancellationToken)
   at System.Threading.Tasks.ValueTask`1.get_Result()
   at System.Net.Http.HttpConnectionPool.CreateConnectionAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Threading.Tasks.ValueTask`1.get_Result()
   at System.Net.Http.HttpConnectionPool.WaitForCreatedConnectionAsync(ValueTask`1 creationTask)
   at System.Threading.Tasks.ValueTask`1.get_Result()
   at System.Net.Http.HttpConnectionPool.SendWithRetryAsync(HttpRequestMessage request, Boolean doRequestAuth, CancellationToken cancellationToken)
   at System.Net.Http.RedirectHandler.SendAsync(HttpRequestMessage request, CancellationToken cancellationToken)
   at System.Net.Http.HttpClient.FinishSendAsyncBuffered(Task`1 sendTask, HttpRequestMessage request, CancellationTokenSource cts, Boolean disposeCts)
   at Telegram.Bot.TelegramBotClient.MakeRequestAsync[TResponse](IRequest`1 request, CancellationToken cancellationToken)
   at Logging.TelegramBotService.GetSelf() in C:\code\Code\Logging\TelegramBotService.cs:line 79
   at Logging.TelegramBotService.<StartBot>b__8_0() in C:\code\Code\Logging\TelegramBotService.cs:line 71
   --- End of inner exception stack trace ---
   at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
   at System.Threading.Tasks.Task.Wait()
   at Logging.TelegramBotService.StartBot() in C:\code\Code\Logging\TelegramBotService.cs:line 71
   at Logging.TelegramBotService..ctor(IServiceProvider services, IConfig config) in C:\code\Code\Logging\TelegramBotService.cs:line 48
--- End of stack trace from previous location where exception was thrown ---
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitConstructor(ConstructorCallSite constructorCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(IServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitScoped(ScopedCallSite scopedCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteRuntimeResolver.VisitSingleton(SingletonCallSite singletonCallSite, ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.CallSiteVisitor`2.VisitCallSite(IServiceCallSite callSite, TArgument argument)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.DynamicServiceProviderEngine.<>c__DisplayClass1_0.<RealizeService>b__0(ServiceProviderEngineScope scope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceProviderEngine.GetService(Type serviceType, ServiceProviderEngineScope serviceProviderEngineScope)
   at Microsoft.Extensions.DependencyInjection.ServiceLookup.ServiceProviderEngineScope.GetService(Type serviceType)
   at Microsoft.Extensions.DependencyInjection.ServiceProviderServiceExtensions.GetRequiredService(IServiceProvider provider, Type serviceType)
   at Microsoft.AspNetCore.Hosting.Internal.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)
   --- End of inner exception stack trace ---
   at Microsoft.AspNetCore.Hosting.Internal.ConfigureBuilder.Invoke(Object instance, IApplicationBuilder builder)
   at Microsoft.AspNetCore.Hosting.Internal.ConfigureBuilder.<>c__DisplayClass4_0.<Build>b__0(IApplicationBuilder builder)
   at Microsoft.AspNetCore.Hosting.ConventionBasedStartup.Configure(IApplicationBuilder app)
   at Microsoft.AspNetCore.HostFilteringStartupFilter.<>c__DisplayClass0_0.<Configure>b__0(IApplicationBuilder app)
   at Microsoft.AspNetCore.Hosting.Internal.AutoRequestServicesStartupFilter.<>c__DisplayClass0_0.<Configure>b__0(IApplicationBuilder builder)
   at Microsoft.AspNetCore.Hosting.Internal.WebHost.BuildApplication()

NuGet Package Version: 14.4.0
*.NET Core 2.1

@seriouz Please follow issue template and provide more info so we can investigate it.

Closing for age.

crash when run project in visual studio
SocketException: No connection could be made because the target machine actively refused it
how use proxy connection to debug in visual studio


Ability to set eligibility based on specific date range

Is your feature request related to a problem? Please describe.
As a Program Admin, I want to be able to only allow people to apply to a program if their birthday falls within a specific date range. For example, the Seattle Preschool Program only accepts applications for kids with birthdays between 9/1/2018 and 8/31/2020. I currently cannot set an eligibility condition between two date ranges.
Describe the solution you'd like
Ability to set, "date" "is between" "mm/dd/yyyy - mm/dd/yyyy" (similar to the existing function where by you can set "age" "is between" "3-4"
Additional context

Hi @isabelcshaw and @nb1701 -- There's a request for a small improvement to the predicate logic to be able to set eligible date ranges. Is there someone on the greater CiviForm team who has experience in the predicate code who could take this one on?

https://github.com/civiform/civiform/pull/4428/files should be helpful for this change (the original PR to create the between logic).

Needing a "between" calculation isnt specific to just dates.  This applies to numbers as well.  Example, Number X is Between 60000 and 69999
I'm updating the title to reflect this need for a between eligibility calculation for all numbers AND date fields.


Modified TradeOffer.Send() to include more info

diffs are much better now after reverting some commits

#1017


Fix for #81

Changes to the schema for defining the startup script as described in #81

Codecov Report

Merging #84 (8f2aace) into main (41e06fb) will increase coverage by 0.35%.
The diff coverage is 97.77%.

:exclamation: Your organization is not using the GitHub App Integration. As a result you may experience degraded service beginning May 15th. Please install the Github App Integration for your organization. Read more.
@@            Coverage Diff             @@
##             main      #84      +/-   ##
==========================================
+ Coverage   97.38%   97.73%   +0.35%
==========================================
  Files           9        9
  Lines         382      397      +15
==========================================
+ Hits          372      388      +16
+ Misses         10        9       -1

Impacted Files
Coverage Δ

src/ibek/gen_scripts.py
100.00% <ø> (ø)

src/ibek/render.py
97.75% <96.15%> (+1.24%)
:arrow_up:

src/ibek/support.py
98.95% <100.00%> (+0.14%)
:arrow_up:

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more

I'm merging this in order to work on Pydantic conversion. I will come back to the very latest updates to the schema in #81 after pydantic conversion.


Report card format mock-up for Fossils

Suggested format changes e-mailed

Place Report redesign is available on Figma, link here. Map height was increased, content is in columns and first hr tag is hidden.

Left comments in Figma about re-ordering of items as shown in the redesign

these have been made into individual tickets


Does --pyink-lines work with stdin?

When I use --pyink-lines on a file, it works as expected, it reformats required lines. But when I read the same file from stdin, it reformats everything we pass to it.
$ echo 'if True: print("CHANGED TEXT")\nif False: print("there")' > test.py

$ cat test.py
if True: print("CHANGED TEXT")
if False: print("there")

$ pyink test.py --pyink-lines=1-1 --quiet && cat test.py
if True:
    print("CHANGED TEXT")
if False: print("there")

It reformatted only the lines we issued. When I try to use stdin though, it reformats everything.
$ echo 'if True: print("CHANGED TEXT")\nif False: print("there")' > test.py

$ cat test.py
if True: print("CHANGED TEXT")
if False: print("there")

$ cat test.py | pyink --quiet --pyink-lines=1-1 -
if True:
    print("CHANGED TEXT")
if False:
    print("there")

As you can see, it reformats everything.

Thanks for the report, I can confirm this is a bug.

Fixed in #17.