SRTP does not include padding bytes

What did you do?
Establish a peer connection to send a track then call webrtc.TrackLocalStaticRTP.WriteRTP() to write RTP packets with non-empty payload and payload padding (PaddingSize > 1), e.g. with packets like this:
rtp.Packet{
	Header: rtp.Header{
		Version: 2,
		Padding: true,
	},
	PaddingSize: 4,
	Payload: []byte{0x01, 0x02, 0x03},
}

What did you expect?
The sent ciphertext (SRTP) should have corresponding plaintext containing trailing padding bytes, e.g. with plaintext like this:
[160 0 0 0 0 0 0 0 0 0 0 0 1 2 3 0 0 0 4]
// padding bytes ----------------^-^-^ ^----- PaddingSize

What happened?
The sent ciphertext (SRTP) has corresponding plaintext with Header.Padding == true but no padding bytes, e.g. with plaintext like this:
[160 0 0 0 0 0 0 0 0 0 0 0 1 2 3]

which makes the receiver peer wrongly parse the received packet, e.g. as
[160 0 0 0 0 0 0 0 0 0 0 0 1 2 3]
// padding bytes ----------^-^ ^----- PaddingSize

Causes of the problem:
In webrtc.TrackLocalStaticRTP.writeRTP(p *rtp.Packet), the packet is not passed down as a whole but only its header and payload (missing PaddingSize) are passed down via b.writeStream.WriteRTP(&p.Header, p.Payload), to TrackLocalWriter, then to interceptor, then to srtp.SessionSRTP.writeRTP(header *rtp.Header, payload []byte), and finally to srtp.Context.encryptRTP(dst []byte, header *rtp.Header, payload []byte).
Currently, there's only one way to generate padding bytes, that is to marshal RTP packet via rtp.Packet.Marshal()(See pion/rtp#155). But even with marshalled packet, the plaintext will always be unmarshalled and its padding info is thrown away: both webrtc.TrackLocalStaticRTP.Write(b []byte) and srtp.SessionSRTP.write(b []byte) just p.Unmarshal(b) then call the "writeRTP()" counterparts.
Suggested solutions
Either call rtp.Packet.Marshal() or add the padding appending codes to update the payload somewhere before passing it to srtp.
Discussion

Usually, padding packets contain only padding bytes. These padding-only packets hide this issue with empty payload. But in the general case of non-empty payload + padding, current system will send wrong SRTPs which will make the receiver peer crash.
The public function srtp.Context.EncryptRTP(dst []byte, plaintext []byte, header *rtp.Header) does require a marshalled plaintext, but the private function srtp.Context.encryptRTP(dst []byte, header *rtp.Header, payload []byte) has a shortcut to the payload which can be unmarshalled. So, these interfaces should be re-considered.

I don't use webrtc.TrackLocalStaticRTP, but for webrtc.TrackLocalStaticSample I ended up adding padding-only packets and packets with payload and padding into rtp.Payloader here https://github.com/alexpokotilo/rtp/tree/packetizer-padding-support
TODO: I will add support to webrtc.TrackLocalStaticSample and share link here

@ bixycler I think the simplest way in your case is to add padding to payload manually and set Padding flag in Header.
PaddingSize indeed doesn't work. Moreover I don't understand how it should work in case Packet unmarshalled before interceptor.
But I honestly don't think this is a problem for webrtc.TrackLocalStaticRTP as you always can append padding to rtp payload before you can webrtc.TrackLocalStaticRTP.Write* functions and just set Header's padding field.
I agree that PaddingSize  cannot be used to pass packets with padding. But in your case you could just add padding to rtp manually.
I did the same for webrtc.TrackLocalStaticSample. It was a little harder as webrtc.TrackLocalStaticSample works with samples. But it works in anyway

PaddingSize field logically belongs to the header, even that it is added to RTP packet as a last byte. I propose to add PaddingSize field to rtp.Header and mark one in rtp.Packet as a deprecated. @Sean-Der what do you think about this?

 RTP header has the Padding bit set which is forwarded, but the padding is gone.


Maas 3118 prometheus plugin

Added a plugin for Prometheus.
The plugin receives a check, retrieves data from Prometheus according to the query provided in the check's source, and returns values extracted from the result.
If request to Prometheus failed, the corresponding graphite metric is incremented. If no data is received (for instance because metric name is misspelled),

Coverage increased (+0.5%) to 88.859% when pulling a9add4f90117a070d0e2d379e1456db77ac3a85a on MAAS-3118-prometheus-plugin into c35bbe3c4587b1264c67d7a04f364d3e7c49db1f on develop.

Coverage increased (+0.6%) to 88.928% when pulling a2197ac962fd04dfdd4bdfc86bd0b8677466ed21 on MAAS-3118-prometheus-plugin into c35bbe3c4587b1264c67d7a04f364d3e7c49db1f on develop.

Coverage increased (+0.6%) to 88.928% when pulling ea7d2d85b451eecd03d23396b03965e1e202c009 on MAAS-3118-prometheus-plugin into c35bbe3c4587b1264c67d7a04f364d3e7c49db1f on develop.


proposal: slices: add Clear function

// Clear will zero out all elements from s[len(s):cap(s)], this is usefull if they
// contain pointers as they keep alive objects even in this range past len.
// By zeroing this range s wont keep alive the objects pointed at anymore.
func Clear[S ~[]E, E any](s S) {
 // Implementation detail, clearer than words to explain imo.
 s = s[len(s):cap(s)]
 var zero E
 for i := range s {
  s[i] = zero
 }
}

Rational Compact* and Delete* have this comment:
// When Compact discards m elements in total, it might not modify the elements
// s[len(s)-m:len(s)]. If those elements contain pointers you might consider
// zeroing those elements so that objects they reference can be garbage collected.

// Delete might not modify the elements s[len(s)-(j-i):len(s)]. If those
// elements contain pointers you might consider zeroing those elements so that
// objects they reference can be garbage collected.

Clear would make it easy to perform this operation.

It might be usefull to add a max int parameter which stop clearing once this index is reached if this index is smaller than cap(s) so that this pattern could be used:
oldLen := len(s)
s = DoDelete(s)
s = DoCompact(s)
s = DoFoo(s)
Clear(s, oldLen)

This is because it can be a reasonable assumption to assume what was already free capacity was already zeroed, what would need to be rezeroed would just be the range between the old len and the new len (since we expect remanents from Delete and Compact to be remaining).

I don't yet see a need for a max parameter.  Can't you simply write Clear(s[:max]) ?

I smoehow overlooked that, this would require s[:max:max] but yes that solves the problem.

There is already a builtin clear function coming in Go 1.21 (#56351). It zeroes the range 0:len(s) instead of len(s):cap(s) but you can always write clear(s[len(s):cap(s)]) to do that. Do we really need slices.Clear too?

sgtm


Roll Engine from 91a63d6a44c5 to 9c7c6b1487f1 (42 revisions)

Roll Engine from 91a63d6a44c5 to 9c7c6b1487f1 (42 revisions)
https://github.com/flutter/engine/compare/91a63d6a44c5...9c7c6b1487f1
2020-06-23<EMAIL_ADDRESS>Roll Skia from fc2534692b97 to c2f46c16ab67 (2 revisions) (flutter/engine#19233)
2020-06-23<EMAIL_ADDRESS>Roll Dart SDK from 2d22e4ca26ef to d2628a71067d (3 revisions) (flutter/engine#19231)
2020-06-23<EMAIL_ADDRESS>Roll Skia from b444943db27d to fc2534692b97 (1 revision) (flutter/engine#19230)
2020-06-23<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from oldar... to RGOLO... (flutter/engine#19229)
2020-06-23<EMAIL_ADDRESS>Revert "Implement PlatformViewsController.createOverlaySurface (#19226)" (flutter/engine#19228)
2020-06-23<EMAIL_ADDRESS>Implement PlatformViewsController.createOverlaySurface (flutter/engine#19226)
2020-06-23<EMAIL_ADDRESS>Roll Dart SDK from d872aea6a645 to 2d22e4ca26ef (14 revisions) (flutter/engine#19227)
2020-06-23<EMAIL_ADDRESS>Roll Skia from 6dd62cbdfa1c to b444943db27d (1 revision) (flutter/engine#19225)
2020-06-23<EMAIL_ADDRESS>Roll Skia from 3cf3d92b56fd to 6dd62cbdfa1c (4 revisions) (flutter/engine#19222)
2020-06-22<EMAIL_ADDRESS>JNI glue for calling PlatformViewsController.createOverlaySurface (flutter/engine#19221)
2020-06-22<EMAIL_ADDRESS>Reland "Add GetBoundingRectAfterMutations to EmbeddedViewParams to calculate the final bounding rect for platform view #19170" (flutter/engine#19212)
2020-06-22<EMAIL_ADDRESS>[fuchsia] Adds --targets arg for build_fuchsia_artifacts.py (flutter/engine#19109)
2020-06-22<EMAIL_ADDRESS>Creates a new RenderMode for FlutterView (flutter/engine#19143)
2020-06-22<EMAIL_ADDRESS>Roll Skia from abe2375dfb06 to 3cf3d92b56fd (5 revisions) (flutter/engine#19218)
2020-06-22<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from thz2_... to LRcV-... (flutter/engine#19217)
2020-06-22<EMAIL_ADDRESS>Roll Dart SDK from cc5df58bd229 to d872aea6a645 (8 revisions) (flutter/engine#19216)
2020-06-22<EMAIL_ADDRESS>Enable firefox integration tests (flutter/engine#19164)
2020-06-22<EMAIL_ADDRESS>Roll Skia from 956ec8a8bcdd to abe2375dfb06 (5 revisions) (flutter/engine#19215)
2020-06-22<EMAIL_ADDRESS>[iOS] text input methods to only call updateEditState once  (flutter/engine#19161)
2020-06-22<EMAIL_ADDRESS>Fix fonts.clear exception in IE11 (flutter/engine#19180)
2020-06-22<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from gaCdq... to oldar... (flutter/engine#19209)
2020-06-22<EMAIL_ADDRESS>Roll Skia from 50daeddf396f to 956ec8a8bcdd (5 revisions) (flutter/engine#19208)
2020-06-22<EMAIL_ADDRESS>Roll Dart SDK from 9fcac032b669 to cc5df58bd229 (22 revisions) (flutter/engine#19207)
2020-06-22<EMAIL_ADDRESS>Revert "Add GetBoundingRectAfterMutations to EmbeddedViewParams to calculate the final bounding rect for platform view (#19170)" (flutter/engine#19204)
2020-06-22<EMAIL_ADDRESS>Add GetBoundingRectAfterMutations to EmbeddedViewParams to calculate the final bounding rect for platform view (flutter/engine#19170)
2020-06-21<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from subm1... to gaCdq... (flutter/engine#19195)
2020-06-21<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from hY212... to thz2_... (flutter/engine#19194)
2020-06-21<EMAIL_ADDRESS>Roll Skia from dc3b8f94f587 to 50daeddf396f (1 revision) (flutter/engine#19193)
2020-06-21<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from g6RIO... to subm1... (flutter/engine#19190)
2020-06-21<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from hlLdJ... to hY212... (flutter/engine#19189)
2020-06-20<EMAIL_ADDRESS>Roll Skia from 9eb89bac85e1 to dc3b8f94f587 (2 revisions) (flutter/engine#19187)
2020-06-20<EMAIL_ADDRESS>Roll Fuchsia Mac SDK from 68PYO... to hlLdJ... (flutter/engine#19184)
2020-06-20<EMAIL_ADDRESS>Roll Fuchsia Linux SDK from 7tx5F... to g6RIO... (flutter/engine#19182)
2020-06-20<EMAIL_ADDRESS>Roll Skia from 33e044fb16f6 to 9eb89bac85e1 (2 revisions) (flutter/engine#19177)
2020-06-20<EMAIL_ADDRESS>Implement external view embedder on Android (flutter/engine#19033)
2020-06-20<EMAIL_ADDRESS>Roll Skia from 29cb9f9478d4 to 33e044fb16f6 (1 revision) (flutter/engine#19176)
2020-06-20<EMAIL_ADDRESS>Revert method channel platform resolved locale (flutter/engine#19136)
2020-06-20<EMAIL_ADDRESS>Roll Dart SDK from 7e72c9ae7ef1 to 9fcac032b669 (12 revisions) (flutter/engine#19175)
2020-06-20<EMAIL_ADDRESS>[web] Fix conic to quad conversion assertion. (flutter/engine#18811)
2020-06-19<EMAIL_ADDRESS>Roll Skia from 5a967f593cd7 to 29cb9f9478d4 (1 revision) (flutter/engine#19174)
2020-06-19<EMAIL_ADDRESS>Fix issue with cubic bounds misaligning. (flutter/engine#19054)
2020-06-19<EMAIL_ADDRESS>Roll Skia from 579e63af0048 to 5a967f593cd7 (5 revisions) (flutter/engine#19173)
Also rolling transitive DEPS:
fuchsia/sdk/core/linux-amd64 from 7tx5FDFGTSLg to RGOLO8d3F4MP
fuchsia/sdk/core/mac-amd64 from 68PYOoJqqERG to LRcV-yIeJQrc
...

Commit queue failed; closing this roll.


Add more timings + redis flush intents

Adds valuable info into perf issues when a config reload takes place
Minimizes multiple flushes taking place for the same config change in Redis
Minor cleanup: don't use time as a variable name since it shadows the import
Minor cleanup: log errors when attempting to load LUA script

@kkaneda updated PR as per your comments. PTAL again?

LG!


Fix Identical sub-expressions

Issue
Identical sub-expressions to the left and to the right of the '!=' operator: joints_0.size() != joints_0.size()
#65602

Can you revist the commit message to mention what this does?

Fix gltf 8 bone weights condition to check for the second joint array size.

Like this.

Thanks! And congrats for your first merged Godot contribution :tada:


[BUG] Vscode getting slower after installing RobotCode extension

Describe the bug
I am using VsCode to work with Robot scripts and earlier was using intellisense extension, as its deprecated I switched to Robot Code Extension version v0.12.1
After installation VsCode becomes slower and none of the navigations are working, also there is a progress bar which says RobotCode: Load workspace but it never finishes
Logs
Copy the messages from VSCode "Output" view for RobotCode and RobotCode Language Server for the specific folder/workspace.
Activate RobotCode Extension.
Try to activate python extension
Python Extension is active
create Language client: RobotCode Language Server mode=pipe for folder "dashboard-test-suite"
trying to start Language client: RobotCode Language Server mode=pipe for folder "dashboard-test-suite"
client for file:///Users/kiranawa/eclipse-workspace/dashboard-test-suite starting.
client for file:///Users/kiranawa/eclipse-workspace/dashboard-test-suite running.
client for file:///Users/kiranawa/eclipse-workspace/dashboard-test-suite started.
Desktop (please complete the following information):

VS Code Version 1.71.0
RobotCode Version v0.12.1
OS: Mac
Python Version 3.8.1
RobotFramework Version 5.0.1

Somehow this is not working with vscode, recently it was showing me RF version as 3.1.2 where as I installed latest version. Even after adding above setting its not hyperlinking keywords.

Did you use a valid python environment, RobotCode needs a RobotFramework Version >= 4. press <strg+shift+p> and then select "Python: Select Interpreter"
Do you have any other RobotFramework related extensions installed? If yes remove the other ones.
There is another Output Log named something like: "RobotCode Language Server mode... for folder...". Can you copy this output?

Python

Nothing other then Robot Framework Language Server

Getting this as well

Out of RobotCode Language Server mode is below:
Activate RobotCode Extension. Try to activate python extension Python Extension is active Robot Framework version in workspace folder 'dashboard-test-suite' not supported. Only Robot Framework version >= 4.0.0 supported. Please install or update Robot Framework >= Version 4.0 to the current python environment or select a valid python environment.
Not sure but I have RF version 5.0.1 installed but its saying its not up to date
Aliasgers-MacBook-Pro:dashboard-test-suite kiranawa$ sudo pip3 install robotframework Password: WARNING: The directory '/Users/kiranawa/Library/Caches/pip' or its parent directory is not owned or is not writable by the current user. The cache has been disabled. Check the permissions and owner of that directory. If executing pip with sudo, you should use sudo's -H flag. Requirement already satisfied: robotframework in /Library/Python/3.9/site-packages (5.0.1)
Aliasgers-MacBook-Pro:dashboard-test-suite kiranawa$ python --version Python 3.8.1

You have installed "Robot Framework Language Server" please uninstall it, both have the same functionallity, but don't work together.
It seems you have some misconfigured python, there is a python 3.8.1 version but pip will look in a folder with python 3.9 packages  (/Library/Python/3.9/site-packages). Do you have different python versions installed at the same time?

Removed Robot Framework Language Server extensions.
Yes there are multiple python version exists. 2.7, 3.8 and 3.9
I tried removing 3.8 from Application but still python3 is pointing to that version. Let me fix that first.

do you know pyenv

Wich errors?

Mostly in .robot files, .resource files are fine.

sorry, this is a known bug. in the current version. Just close the file and open it again.
You can also try to install the preview version of RobotCode, where the bug is allready fixed.

Thanks Daniel. Seems to be working fine.
Please see if we can optimize the process for RobotCode: Loadworkspace

This is consuming around 35% of my system CPU time.

But only a short time ;-)
I am working on that ....


How to invoke Flex delegate for FlexIdentityN node on Raspberry Pi

System information

Google Colab and Raspberry Pi 4

FlexIdentityN Tensorflow Lite Custom Ops Error
Hello,
For our project we tried to build an Image Classification Model using a CNN to detect 4 categories of waste. The link to the full model code is shared below.
https://colab.research.google.com/drive/1aAaQ7kq2BDYRlspmM-N2Uuh6CZkQGRNb?usp=sharing
We used Tensorflow 1.15 instead of the latest Tensorflow 2.2 because I couldn’t get the validation split command in model.fit to work on Tensorflow 2 (Any explanation for this problem will be appreciated too). Looking at newer tutorials now, I believe we have to split the data into training and testing data, instead of using validation split, correct?
The model needs to be deployed on a Raspberry Pi 4 module. To do that whilst converting the model file to a .tflite file to run on the Raspberry Pi, we encountered this problem.
Errors
(1.
Some of the operators in the model are not supported by the standard TensorFlow Lite runtime. If those are native TensorFlow operators, you might be able to use the extended runtime by passing --enable_select_tf_ops, or by setting target_ops=TFLITE_BUILTINS,SELECT_TF_OPS when calling tf.lite.TFLiteConverter(). Otherwise, if you have a custom implementation for them you can disable this error with --allow_custom_ops, or by setting allow_custom_ops=True when calling tf.lite.TFLiteConverter(). Here is a list of builtin operators you are using: CONV_2D, FULLY_CONNECTED, MAX_POOL_2D, SOFTMAX. Here is a list of operators for which you will need custom implementations: IdentityN.
Traceback (most recent call last):
File "/tensorflow-1.15.2/python3.6/bin/toco_from_protos", line 8, in
sys.exit(main())
File "/tensorflow-1.15.2/python3.6/tensorflow_core/lite/toco/python/toco_from_protos.py", line 89, in main
app.run(main=execute, argv=[sys.argv[0]] + unparsed)
File "/tensorflow-1.15.2/python3.6/tensorflow_core/python/platform/app.py", line 40, in run
_run(main=main, argv=argv, flags_parser=_parse_flags_tolerate_undef)
File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 299, in run
_run_main(main, args)
File "/usr/local/lib/python3.6/dist-packages/absl/app.py", line 250, in _run_main
sys.exit(main(argv))
File "/tensorflow-1.15.2/python3.6/tensorflow_core/lite/toco/python/toco_from_protos.py", line 52, in execute
enable_mlir_converter)

Some of the operators in the model are not supported by the standard TensorFlow Lite runtime. If those are native TensorFlow operators, you might be able to use the extended runtime by passing --enable_select_tf_ops, or by setting target_ops=TFLITE_BUILTINS,SELECT_TF_OPS when calling tf.lite.TFLiteConverter(). Otherwise, if you have a custom implementation for them you can disable this error with --allow_custom_ops, or by setting allow_custom_ops=True when calling tf.lite.TFLiteConverter(). Here is a list of builtin operators you are using: CONV_2D, FULLY_CONNECTED, MAX_POOL_2D, SOFTMAX. Here is a list of operators for which you will need custom implementations: IdentityN.)

As of now, I have no explanation as to how the FlexIdentityN Layer is formed and why. Any explanation on that will be appreciated as well.
These Errors can be solved(?) Using the following code.
converter.target_ops = [tf.lite.OpsSet.TFLITE_BUILTINS,
                         tf.lite.OpsSet.SELECT_TF_OPS]

However the same IdentityN Error pops up on the Raspberry Pi 4 when running the code also shown in the Google Colab file. The Error on the Raspberry Pi is shown below.

The link to the full Raspberry Pi Code is below.
https://colab.research.google.com/drive/1ptbKJ5CmQDjnTChzEIJ-5uyjYaiNYWqg?usp=sharing
I’ve followed this tutorial on YouTube by Edje Electronics to install Tensorflow on the Raspberry Pi.
https://www.youtube.com/watch?v=aimSGOAUI8Y
The Tutorial automatically installs the latest version in a virtual environment. (Maybe the difference in tensorflow version could be a problem)
Thank You.

Hi Keegan007,
Since TFLite does not have IdentityN op, it is formed as FlexIdentityN to use the Tensorflow implementation.
How are you running your model on Raspberry?
There are some guide about this here: https://www.tensorflow.org/lite/guide/ops_select

Hi There,
We are checking to see if you still need help on this, as you are using an older version of tensorflow which is officially considered end of life . We recommend that you upgrade to the latest 2.x version and let us know if the issue still persists in newer versions. Please open a new issue for any help you need against 2.x, and we will get you the right help.
This issue will be closed automatically 7 days from now. If you still need help with this issue, please provide us with more information.


update admiral link to last release

Update links to point to the new admiral multi-version docs page.

@dgrassellyb I fixed these no worries


README shields

Describe the solution you'd like
I'd like to put some shields on the top of the README FILE such as a Licence, amount of Forks, how many people connected to the Dinosaur server, and so on.
Additional context
You can create the shield on the following website : https://shields.io/
It can be great to add the same style for each shields such as "for-the-badge".

@jvondermarck I'll take this one, can you assign it to me please?


openfhe: rotation index is statically known - use an attribute?

Hey, Noted in review https://github.com/google/heir/pull/696#discussion_r1636681052, openfhe.rot 's rotation index probably has to be statically known and it may be better to use an attribute.

Seems like it was my oversight. Let's do it!

Probably for consistency, I think bgv.rotate should also use an attr - again here we're expected statically known indices.
That probably moves the restriction from tensor_ext rotate to bgv rotate to mean a check that it must be constant in order to be translated to a ciphertext rotation. I think that makes sense. Tensor ext probably isn't aware that rotations must be known constants, and if it is, the lowering would look a little more like a blind rotate than a plain rotation operation.

cc @Maokami


opam installer installs too-old version of ocaml

I followed the instructions at http://opam.ocaml.org/doc/Install.html to install opam, i.e.
wget https://raw.github.com/ocaml/opam/master/shell/opam_installer.sh -O - | sh -s /usr/local/bin

but this installs ocaml 4.02.1 which is slightly too old, and fails to compile F*.
I actually have a suitable version of ocaml installed via my system's package manager (I'm on Fedora Linux) but it doesn't get used because opam puts its own directory first on the PATH.
I tried reordering the PATH to put the opam directory last, but then I get this error instead:
File "lib/ml/FStar_Char.ml", line 1:
Error: The files /usr/lib64/ocaml/pervasives.cmi
       and /home/robin/.opam/4.02.1/lib/batteries/batChar.cmi
       make inconsistent assumptions over interface CamlinternalFormatBasics
Command exited with code 2.
Compilation unsuccessful after building 22 targets (6 cached) in 00:00:00.
Makefile:93: recipe for target 'fstar.exe' failed

OCaml 4.02.1 is indeed too old to compile F*. For the second error you can try cleaning up src/ocaml-output with git clean -fdx.


[BugFix][Cherry-pick] Fix column case sensitive bug for mv view delta join rewrite for 3.0 (#19639)

fix column case sensitive bug for mv view delta join rewrite

What type of PR is this：

[ ] BugFix
[ ] Feature
[ ] Enhancement
[ ] Refactor
[ ] UT
[ ] Doc
[ ] Tool

Which issues of this PR fixes ：

Fixes #19617
Problem Summary(Required) ：

Fix column case sensitive bug for mv view delta join rewrite
Checklist:

[ ] I have added test cases for my bug fix or my new feature
[ ] This pr will affect users' behaviors
[ ] This pr needs user documentation (for new or modified features or behaviors)

[ ] I have added documentation for my new feature or new function

Bugfix cherry-pick branch check:

[ ] I have checked the version labels which the pr will be auto backported to target branch

[ ] 3.0
[ ] 2.5
[ ] 2.4
[ ] 2.3

run all

@Mergify rebase

@mergify rebase


Interface for editing checkbox answers

Right now, "no" checkbox answers are recorded by an absence of the key in the record. That means changing a "yes" checkbox answer to a "no" requires removing the key from the object. However, our edit code currently issues a PATCH rather than a PUT, and it's not clear if we can specify removing a field with a PATCH.
So, we might have to rewrite the code to support a full-object PUT to edit all questions. First stab in the edit-checkbox branch.

A PATCH with attr-to-remove: undefined doesn't seem to work properly

Closed with #618


Removing temporary file from PowerShell install command

Currently the command looks like this:
iwr https://deno.land/x/install/install.ps1 -useb -outf install.ps1; .\install.ps1 v1.0.0

We save the installer as a temporary file because we have no way of passing the version into the installer while piping, in contrast to the Shell version:
curl -fsSL https://deno.land/x/install/install.sh | sh -s v1.0.0

I propose to add a variable v. If the variable is set, the install.ps1 script will assume it's the Deno version that the user wants to install. If not, the script will work just as it works now.
So this method is similar to the "install latest" command:
iwr https://deno.land/x/install/install.ps1 -useb | iex

Only difference is the added variable assigment beforehand:
$v="v1.0.0"; iwr https://deno.land/x/install/install.ps1 -useb | iex

Example that demonstrates that the variable will be available to the invoked script:
> type v.ps1
write-host v=$v
> $v="v1.0.0"; type v.ps1 | iex
v=v1.0.0

I see two advantages:

The command is shorter.
We don't create a temporary file.

cc @ry

@bartlomieju Since https://github.com/denoland/deno_install/pull/133 has been merged, this can be closed.

Closed with https://github.com/denoland/deno_install/pull/133.


[Question]: Getting ORA-00933: SQL command not properly ended

Question Validation

[X] I have searched both the documentation and discord for an answer.

Question
Hi Experts,
I am trying to retrieve data from Oracle DB using NLSQLTableQueryEngine. The pipeline is generating the correct SQL query. But the problem is that it is terminating the generated query with semi-colon.
Due to this semi-colon, I am getting the following error:
[NodeWithScore(node=TextNode(id_='13aaaa04-30bb-4072-990e-eec801ce3784', embedding=None, metadata={}, excluded_embed_metadata_keys=[], excluded_llm_metadata_keys=[], relationships={}, text="Error: (cx_Oracle.DatabaseError) ORA-00933: SQL command not properly ended\n[SQL: SELECT id, name, country, entrydate from abctable where entrydate < '2023-05-01' order by entrydate;]\n(Background on this error at: https://sqlalche.me/e/20/4xp6)", start_char_idx=None, end_char_idx=None, text_template='{metadata_str}\n\n{content}', metadata_template='{key}: {value}', metadata_seperator='\n'), score=None)]
The reason of that is cx_oracle library doesnt execute SQL statements ending with semi-colons. Is there any way that I can prompt to not terminate queries with semi colon or may be change something in the code to fix it.
Looking forward for your help!
Thanks in advance.

You can try updating the text 2 sql prompt maybe, or including more instructions in your query.
https://docs.llamaindex.ai/en/stable/module_guides/models/prompts/usage_pattern.html#getting-and-setting-custom-prompts

Hi, I am getting exactly the same issue. The semicolon at the end will always fail the query and i noticed it is being added randomly. I tried making the suggested change to .\venv\Lib\site-packages\llama_index\indices\struct_store\sql_retriever.py and then recompiled the file to .pyc in the pycache folder. I reran the test but the changes doesn't seem to be picked. Can you share some lights?

this issue still happens using llama-index 0.10.37


New Edit Profile Interface

Design the Edit Profile section in the Settings Menu as per the design attached.
Interested people can message us here and we'll mail you the necessary drawable files

Can I work on this?  I would need help regarding those curved "edit profile"  background. Rest could be made. Also, what happens  on pressing the edit button? is there a popup or a different screen opens?

I am interested in working on this. Can i get assigned?

@root-ansh Okay, you may work on this. Drop a message on Gitter for the vector background.
@efguydan If Ansh is unable to complete or he decides to drop it then I'll assign it to you.

This looks interesting, and I would love to work on it! May I work on it?

@sakshampruthi  I will get it done by tomorrow night, if I couldn't then I will let you know

@sjain30, can I get assigned to this now?

Yes @efguydan please go ahead

@eashl003 you can also try. Although we'll be putting out more ui/ux issues soon. If you're interested you can try those.

Hello @sjain30 , what is the edit button expected to do? Open up a new screen?

Just make it editable there only


Fixed #23387 -- Error when saving inline formsets as new after a validation error

https://code.djangoproject.com/ticket/23387

buildbot, add to whitelist.

@tino I'd be happy to address @timgraham's comments and finish the ticket if you don't have the time right now.

@adamzap Sure go ahead! I'll have time to do it somewhere mid next week the earliest

Updated in https://github.com/django/django/pull/4559.


feat(nestjs-rxjs-redis): migrated to @nestjs-modules/ioredis

Codecov Report
Patch coverage has no change and project coverage change: -0.01 :warning:

Comparison is base (96288f4) 96.50% compared to head (25cd0ca) 96.49%.

:exclamation: Current head 25cd0ca differs from pull request most recent head 8bdaa04. Consider uploading reports for the commit 8bdaa04 to get more accurate results

:mega: This organization is not using Codecov’s GitHub App Integration. We recommend you install it so Codecov can continue to function properly for your repositories. Learn more
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #139      +/-   ##
==========================================
- Coverage   96.50%   96.49%   -0.01%
==========================================
  Files          56       56
  Lines         372      371       -1
  Branches       62       62
==========================================
- Hits          359      358       -1
  Misses          7        7
  Partials        6        6

Impacted Files
Coverage Δ

...js-rxjs-redis-service/nestjs-rxjs-redis.service.ts
100.00% <ø> (ø)

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


a demo library for calling a http login api

@makara
A simple demo as the PR. The code is a little, but what i read/write/think in the journey of learning new language and problem solving is more valuable. I recorded it for sharing.
(https://github.com/xavierchow/go-test/wiki/Memo-and-newbie-guide-for-Go-lang)

Thanks @xavierchow . We'll get back to you soon.
Meanwhile, I got a question for you:

The thing you pushed here is usually used in an environment without cookie support right? How do you keep the user logged in for the sub-sequential API requests?

@makara

The thing you pushed here is usually used in an environment without cookie support right? How do you keep the user logged in for the sub-sequential API requests?

Yes, that's why I left a TODO comment in my server code, since we have not decide how to access the resource protected by the authentication. There are some approaches commonly used:

http basic/digest way
token( cookie or bear token)

An awesome detail explanation is here
As I implemented the login with session enabled via cookie, I added a test case as an example here,  Yes the client may not be browser, but we can manipulate the cookie at the same way as browser does.

Done, closing.


[Bug]: Plausible Analytics missing from service-templates.json

Description
Plausible Analytics exists as a service: services/templates/plausibleanalytics.yaml
It is not however listed in templates/service-templates.json
Is there a reason for this?
Minimal Reproduction (if possible, example repository)
Install. Resources > +New
Exception or Error
No response
Version
v4.0.0-beta.130

It is not there, because of trademark issues. You can copy-paste it to the docker compose type of deployments, and it will work.

It is not there, because of trademark issues. You can copy-paste it to the docker compose type of deployments, and it will work.

Thanks. Yes that's what I did in the end - it worked fine apart from a little intervention needed because of this bug: https://github.com/coollabsio/coolify/issues/1449


Uncomment BS Specific Styles

Any reason this lines are not uncommented?

Looking at the blame view for that file, it's intentional. Traces back to https://github.com/twbs/bootstrap/pull/19018 where we're trying to avoid messing up folks' styles given some user feedback. I imagine we left the commented out code in there as a reminder.


Windows (current release) 'Not responding' in application header

When local transcription is occurring the application header with MLVET has '(Not Responding)', which usually indicates the app is crashing or on its way there. The time it took seemed reasonable for transcription but I was worried it was crashing during so not great for UX

Issue already exists here https://github.com/chloebrett/mlvet/issues/327


thread 'main' has overflowed its stack

I got this thread 'main' has overflowed its stack error while using darklua 0.14.0
I was trying to combine all my luau files generated from roblox-ts but when I combine it with
Luau.LuauCeption.Compiler.0.648.luau this error appears.

By using a PE editor and changing the SizeOfStackReserve in the optional header, I was able to get it running successfully though so I will use that as a workaround for now.


build: Make release installers work

Use proper version of set-version
Call homebrew update directly
Set up wix installer PR

@fundthmcalculus Bump. Progress on this?

We haven't released the SDK in a while, and given that winget doesn't handle peer dependencies (MSVCRT in our case) yet, we can't really make this work. I'd rather finish this work, but it's a priority call.

This is for the CLI? I'd say deprioritize in that case.

It is for the CLI, let's close it.


Misreported Result

Username snopcosta  played against username henriqkg. This was misreported as a 2-0 win for henriqkg. It was actually a 2-1 win for snopcosta.

j_meka is fixing this now on the Discord (pennydreadfulmagic.com/discord). You can always report these there and a mod will handle.


⚠ Bofrost.fr has degraded performance

In ee5e5d6, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 832 ms

Resolved: Bofrost.fr performance has improved in dcef244.


Fix Distributor script

Tokens are not transferred to the bidders, even though the rest of the logic is performed (calculations, events) and the transaction does not fail.

Bug was not part of the contract. It was a bug in testing.


js: Add tests for modals

Codecov Report

Merging #324 (9204ac1) into main (957acd3) will increase coverage by 0.41%.
The diff coverage is 50.00%.

@@            Coverage Diff             @@
##             main     #324      +/-   ##
==========================================
+ Coverage   50.28%   50.70%   +0.41%
==========================================
  Files         128      128
  Lines        3474     3473       -1
==========================================
+ Hits         1747     1761      +14
+ Misses       1727     1712      -15

Impacted Files
Coverage Δ

ui/src/network/resources.js
100.00% <ø> (ø)

ui/src/shared/modal.js
11.84% <0.00%> (ø)

ui/src/network/modals.js
94.44% <100.00%> (+78.65%)
: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 957acd3...9204ac1. Read the comment docs.


Is it possible to ractive.set() DOM element?

I wonder if it is possible in theory at all. I want to use ractive.set() to include jquery element (vs waiting for ractive to render template, and then include jquery element)
Is this is something possible to do at all?

Can you give a pseudo code example to better explain what it is you would like to be able to do?

I.e. something along these lines:
var view = new Ractive({
  el: 'body',
  template: '
{{{{ widget }}}}
'
});

var $el = jQuery('Click me');
$el.click(function() { $(this).text('Clicked!'); return false; });

view.set('widget', $el); ///or view.set('widget', $el[0]);

$el.click(); // At this point link's text should be changed to 'Clicked'

I.e. I want equivalent of of $('body').append($el), but done via ractive.set(), and keep ability to interact with $el outside of ractive. Hope this make sense..

Sure thing, just use a decorator (see http://jsfiddle.net/71sg2oad/):
Ractive.decorators.append = function(node, $el){
    function append(){
        if($el){
            node.appendChild($el.get(0));
        }
    }

    append();

    return {
        teardown: function(){
            // any clean-up
        },
        update: function($update){
            $el = $update
            append();
        }
    }
}

var view = new Ractive({
  el: 'body',
  template: '

'
});

var $el = jQuery('Click me');
$el.click(function() { $(this).text('Clicked!'); return false; });

view.set('$el', $el);

$el.click(); // At this point link's text should be changed to 'Clicked'

This is awesome! Thank you!


no matches found: audiostretchy[all]

I am trying to install audiostretchy with all deps like defined in Readme, but getting error
zsh: no matches found: audiostretchy[all]...

Surround it in single quotes: pip install 'audiostretchy[all]'


i found some err in "Ghost/core/client/app/html/themes.html"

the stylesheet location you use a absolutely path:
file:///Users/John/Sites/Ghost/core/built/assets/vendor.css
and
file:///Users/John/Sites/Ghost/core/built/assets/ghost.css

Those files are used as the basis to build out other pages in Ember - the asset paths don't need to be correct :wink:


op-reth: import receipts issue

Describe the bug
v1.0.0 is able to import blocks but fails on importing receipts
op-reth import-receipts-op --datadir=/data /data/artifacts/receipts.rlp --chain=optimism
2024-07-18T18:13:40.384976Z  INFO Initialized tracing, debug log directory: /root/.cache/reth/logs/optimism
2024-07-18T18:13:40.390848Z  INFO reth 1.0.0-dev (83d412da7) starting
2024-07-18T18:13:40.400622Z  INFO Opening storage db_path="/data/db" sf_path="/data/static_files"
2024-07-18T18:13:40.650732Z  INFO Verifying storage consistency.
2024-07-18T18:13:46.415034Z  INFO Importing receipt file chunk first_receipts_block=0 total_receipts_chunk=1124594
Error: trying to append data to Receipts as block #0 but expected block #1

Location:
    /app/bin/reth/src/commands/import_receipts_op.rs:151:9

Steps to reproduce
Following the Guide from https://reth.rs/run/sync-op-mainnet.html
I first downloaded the bedrock data using the link in the docs
I downloaded and ran https://github.com/testinprod-io/op-geth/blob/pcw109550/bedrock-db-migration/migrate.sh with the following arguments 105235063 /data /data/artifacts to export the bedrock data
Initially I tried to import blocks using v1.0.2 but that failed, I am openning another ticket for that
I reverted back to v1.0.0 and was able to import blocks
upon attempting to import receipts
Node logs
2024-07-18T18:32:11.757749Z  INFO Initialized tracing, debug log directory: /data/log/optimism
2024-07-18T18:32:11.760620Z  INFO reth 1.0.0-dev (83d412da7) starting
2024-07-18T18:32:11.761542Z  INFO Opening storage db_path="/data/db" sf_path="/data/static_files"
2024-07-18T18:32:11.949484Z  INFO Verifying storage consistency.
2024-07-18T18:32:15.402124Z  INFO Importing receipt file chunk first_receipts_block=0 total_receipts_chunk=1124594
Error: trying to append data to Receipts as block #0 but expected block #1

Location:
    /app/bin/reth/src/commands/import_receipts_op.rs:151:9
root@0146c804e2f8:/app# cat /data/log/optimism/reth.log
2024-07-18T18:32:11.757806Z  INFO reth::cli: Initialized tracing, debug log directory: /data/log/optimism
2024-07-18T18:32:11.760671Z  INFO reth::cli: reth 1.0.0-dev (83d412da7) starting
2024-07-18T18:32:11.760692Z DEBUG reth::cli: Chunking receipts import chunk_byte_len=1000000000
2024-07-18T18:32:11.761564Z  INFO reth::cli: Opening storage db_path="/data/db" sf_path="/data/static_files"
2024-07-18T18:32:11.949508Z  INFO reth::cli: Verifying storage consistency.
2024-07-18T18:32:11.992187Z DEBUG reth::cli: Initializing genesis chain=optimism genesis=0x7ca38a1916c42007829c55e69d3e9a73265554b586a499015373241b8a3fa48b
2024-07-18T18:32:11.992285Z DEBUG reth_db_common::init: Genesis already written, skipping.
2024-07-18T18:32:13.143251Z DEBUG downloaders::file: new bytes were read from file max_chunk_byte_len=1000000000 prev_read_bytes_len=0 new_read_bytes_target_len=1000000000 new_read_bytes_len=1000000000 next_chunk_byte_len=1000000000 remaining_file_byte_len=184491441548
2024-07-18T18:32:15.403275Z  INFO reth::cli: Importing receipt file chunk first_receipts_block=0 total_receipts_chunk=11245

### Platform(s)

Linux (x86)

### What version/commit are you on?

v1.0.0-v1.0.2 83d412da7 d5993937 ffb44e62

### What database version are you on?

2

### Which chain / network are you on?

optimism

### What type of node are you running?

Archive (default)

### What prune config do you use, if any?

n/a

### If you've built Reth from source, provide the full command you used

cargo build --profile max-perf --features jemalloc,asm-keccak,optimism --locked --bin op-reth

### Code of Conduct

- [X] I agree to follow the Code of Conduct

are you importing receipts on top of blocks? did you run any commands in-between the block and receipt import?

no commands run in between,
import blocks using op-reth versions between beta8 and 1.0.0-> success
import receipts fails using any version up to 1.0.3 supporting the import-receipts-op command with the above error

alright, @Rjected do you have the fix you made for this easily accessible? the one where you check if first block number is 1 and if so insert and empty vec of receipts at start of chunk - otherwise I will try and recycle the commit from past prs.


docs: cleanup readme

This reformats the README file with GitHub recognized code blocks & equally spaced Markdown table.

Sorry, I need a re-review since I didn't originally sign the commit & needed to resolve a merge conflict.

Sorry, I need a re-review since I didn't originally sign the commit & needed to resolve a merge conflict.

Looks like there's still artifacts from a merge conflict in the README. In particular, have a look at the inputs table.


[enhancement] Support Move Binary Version 7

No longer using binary Move file specification, just calling sui move build...


korrel8r plugin to openshift console

Patternfly-based plug-in to openshift console.

Change of plan: not a plugin.

korrel8r will be a separate resource/operator
korrel8r CR provides list of configured stores
special instance used by console if present: configured with same stores used by console.


Flush 100-continue messages

Closes #704

Thanks for contributing! Unfortunately, I'm here to tell you there were the following style issues with your Pull Request:

Commit: eb03ce060abe76cd0a897c1263ea7338c47c5b67
Commits must be in the following format: %{type}(%{scope}): %{description}

Guidelines are available at https://github.com/hyperium/hyper/blob/master/CONTRIBUTING.md

This message was auto-generated by https://gitcop.com

@sfackler Thanks!


Designing a cylindrical neighborhood.

In the Kernel function definition, the neighborhood is defined by a radius r and the domain of the definition is a sphere. Is it possible to change this shape to a cylinder?
If yes how can it be done?

Hi @ARITRA2296,
Yes, everything is possible, you just need to find the way to implement it. Therefore the question is more: how difficult it would be, and how good are you at python :)
First of all, I would say you will have a much easier time coding this in the more recent PyTorch implementation of KPConv.
If you are ok with it, could you open an issue on the PyTorch GitHub and I will try to give you directions for this implementation?  Just so you know before you get into this, it could be quite hard to implement, there might be some tricks that we could find to make it simpler, but overall you will have to be quite good at python and even C++ for the neighborhoods

Hi @HuguesTHOMAS
Thank you so much for reverting back.
I shall open this issue in the PyTorch implementation. If can guide me on how and where to change the code that would be really great!


Suggestions to improve the readme

Thanks for developing this really useful project!
I'm struggling to do some of the basics, and I was hoping you could update the readme for more novice programmers. Basically I'd love a worked example of how to feed in more than one address at a time (and ideally, how to write the output to a file), e.g. via the command line.
Here's what I've managed so far, using the current instructions (to give you an idea of how inexperienced people can screw it up):
I followed the instructions and typed ./address_parser at the command line (I'm on Mac) to access the interactive shell, and if I type in single addresses, it parses them very nicely.
However, I can't get it to parse a load of addresses in one go. I assumed the way to do this would be to write a bash script, something like:
cd libpostal
cd src
./address_parser
18 Smith Road, London, UK
35 King St, New York, NY, USA
123 Example Lane, China

But that doesn't work. I also can't run any commands that would write the outputs to disk while inside the parser (it just assumes the commands are addresses).
I also tried to use libpostal via R.  It takes 30 seconds to parse the two addresses provided in the example for postal_parse:
> system.time(postal_parse(c("Quatre vignt douze Ave des Champs-Élysées",
"sept rue des freres lumiere, Rueil-Malmaison")))
   user  system elapsed
  1.634   2.088  30.412

Is the R package known to be this slow, or has something gone wrong on my end?

Hi Luke,
So the command-line parser doesn't really have a batch mode. It's easy to add but the JSON it outputs would be slightly more unwieldy than the command line interface's pseudo-JSON to preserve ordering of the components (somethings like "Red Lion Pub, 123 High Street, Hadrian House, London" would return [{"label": "house", "value": "red lion pub"}, {"label": "house_number", "value": "123"}, {"label": "road", "value": "high street"}, {"label": "house", "value": "hadrian house"}, {"label": "city", "value": "london"}] - also note that the label house was repeated twice, so any one-value-per-component expectation won't cut it for some of the more complex addresses).
As far as the R binding, I doubt it's actually that slow (haven't profiled the R binding though, just helped the author get it working, but still it's a thin wrapper and libpostal should take microseconds, not seconds). There's a one-time setup cost to load the libpostal models from disk into memory. This should only be called once the first time the extension is loaded, so it's possible that the 30 second call above is taking setup cost into account, and that would be amortized over a larger data set or repeated calls to the same function. If making the call a second time is equally slow or it scales linearly with the number of addresses in the input, that might be an issue with the R binding and worth flagging on that repo.
./al

Hi there,
Thanks for the feedback! I checked a slightly longer call to the R function, and it does indeed seem to scale linearly with the number of addresses that one adds to the call:
> system.time(postal_parse(c("Quatre vignt douze Ave des Champs-Élysées",
+                            "sept rue des freres lumiere, Rueil-Malmaison",
+                            "Red Lion Pub, 123 High Street, Hadrian House, London",
+                            "123 Example Lane, China",
+                            "18 Smith Road, London, UK")))
   user  system elapsed
  3.820   4.765  83.713

So, I'll flag it on that repo. Do you happen to know which of the other bindings are working properly? Python maybe?
Cheers

Ohhhhh I see, those aren't the official R bindings. A user wrote that version as a stopgap measure before the official R bindings were released. That implementation is indeed linear in the number of setup/teardown calls because it's pure R, just calls the command client and parses the output.
The correct Rstats bindings (listed in this repo's docs) call the C API directly and can be found here: https://github.com/ironholds/poster.

Thanks for the reply, that clears things up.
The poster package almost works! The normaliser works great (and it's lightning fast), but the parser seems to be broken unfortunately (it's already been neatly flagged on that page).
Thanks for the help!


star2lte-PixelPlusUI-Rishik-AKA-TPSRISHIKop

star2lte-PixelPlusUI-Rishik-AKA-TPSRISHIKop

Please don't spam our system

sorry sir i didn't saw this


False Positives?

I was able to integrate this into my website and it works well...EXCEPT, it seems to register a lot of scans when there are no bar codes or qr codes on the camera.  Is there a way to prevent this from happening?
I turned off barcode scanning, since I am only using QR codes, but still seems to trigger randomly. The output of the scans seems to be small integers (1, 3, etc.) and occasionally random strings such as "fren". Based on this I made a regex pattern recognition to determine if the scan is a false positive and not beep or produce an error message.
However, for the sake of being a perfectionist, would like it not to register a scan at all - even if no one will notice.
Also, is there any way to control when the "beep" gets played, or to omit audio altogether? I would ideally like to use that instead of an audio event like I am doing now, since it is instant, but with the false positives, I just made a dummy mp3 file that is silent as the beep, then use my own events to trigger the audio.

hello, I'm going to try.

i was not able to get it to work, my browser

I also notices, that some codes are read false. Does this library verify the check sums of the codes? For example when reading this code: https://upload.wikimedia.org/wikipedia/commons/thumb/d/d0/QR_code_for_mobile_English_Wikipedia.svg/1200px-QR_code_for_mobile_English_Wikipedia.svg.png
which should result to http://en.m.wikipedia.org I once saw http://en.m.wikipedi!.org - so an exclamation mark instead of the letter "a"...

The EAN code for which I could reproduce the false positives multiple times is:
Code:

Read:<PHONE_NUMBER>052

The Wikipedia-QR-Code:

Sporadically decoded to:
http://%n.m.wikipedia.org
instead of
http://en.m.wikipedia.org

Another false positive, same code: http://en.m.wikipedca.org
So all errors with a low hamming distance. Remains the question, whether checksums are checked...

Hello,
I'm also getting false positives.
I thought this shouldn't be happening with QR codes.
Any idea about this?


Bump @openzeppelin/contracts from 4.7.2 to 4.7.3 in /files/orchestrate

Bumps @openzeppelin/contracts from 4.7.2 to 4.7.3.

Release notes
Changelog
Commits

updated-dependencies:

dependency-name: "@openzeppelin/contracts" dependency-type: direct:development ...

Signed-off-by: dependabot[bot]<EMAIL_ADDRESS>

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: joshuafernandes:x: dependabot[bot]You have signed the CLA already but the status is still pending? Let us recheck it.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you all sign our Contributor License Agreement before we can accept your contribution.1 out of 2 committers have signed the CLA.:white_check_mark: joshuafernandes:x: dependabot[bot]You have signed the CLA already but the status is still pending? Let us recheck it.


[WebXR 2019] XRPose/XRViewerPose

XRPose/XRViewerPose need to be implemented, replacing XRDevicePose.
frame.getViewerPose(), frame.getPose() need to be implemented on XRFrame
pose.emulatedPosition
XRRigidTransform

See https://github.com/immersive-web/webxr-polyfill/issues/51 for more information on this effort, and development goals.

@jacobcdewitt is taking a look at this

Closed by #71


$field->toMostReadable() not using contrast values from blueprint

The contrast list from the blueprint is not being used.
The function always returns #000 or #FFF.
My blueprint:
    backgroundcolor:
      type: colors
      contrast:
        - '#112233'
        - '#778899'

Can you please check if this is still an issue in version 1.7.0? Thanks!

Just checked: It works sometimes.
When I use it in a normal fields section, it works.
But I am trying to use it as a setting inside a layout field. And in that case, it still only returns #FFF and #000.
I guess it does not find those layout settings in the blueprint?


SA1118 Anonymous method exception in documentation does not match behavior

The documentation states that anonymous methods are excepted from this rule. The following code violate this rule using StyleCopAnalyzers but not StyleCop.
                this.dispatcher.Invoke(
                    DispatcherPriority.Send,
                    new Action(
                        () =>
                        {
                            try
                            {
                                DoStuff();
                                tcs.SetResult(null);
                            }
                            catch (Exception e)
                            {
                                tcs.SetException(e);
                            }
                        }));

It looks like you found a case where StyleCop "classic" wasn't following its own rules. Technically the second argument here is an object initializer expression which happens to have an anonymous method as its first argument.
I created issue #1597 with a proposed solution to this discrepancy.

Now that proposal #1597 is accepted and awaiting implementation, I'm going to mark this issue as a duplicate of it so it doesn't get lost. :smile:


Data inside renderItem is shared with other items

Current behavior
Hello, I have faced a strange bug.
Data inside the renderItem function is shared between each others.
For example, I have a state showSquare which is only true when index === 0. You will see inside the video, the square will be present on the indexes 0, 3, 6 and it can continue like that if I add data.
It happens every 3 items.
https://user-images.githubusercontent.com/34245352/210756986-3d4649c9-54a3-49e5-9e4a-4281eba18270.mp4
Expected behavior
The square should be present only on the first index.
To Reproduce
You can use this repository to reproduce the bug, I use it to record the bug.
https://github.com/adscud/flash-list-bug
Platform:

[X] iOS
[X] Android

Environment
    "@shopify/flash-list": "1.3.1", // ⚠ IT ALSO HAPPENS WITH THE `1.4.0`
    "expo": "~47.0.9",
    "expo-status-bar": "~1.4.2",
    "react": "18.1.0",
    "react-dom": "18.1.0",
    "react-native": "0.70.5",
    "react-native-web": "~0.18.9"

⚠ IT ALSO HAPPENS WITH THE 1.4.0

I have the same problem, what was the fix? Cheers


[travis] Add go 1.8 and 1.9 to travis tests

This PR adds Go 1.8 and 1.9 to the versions of Go we test against in Travis.

Coverage decreased (-0.2%) to 94.039% when pulling 2b11aa85c37382cc129a02ae41d9dc9ea4ed9006 on jeromefroe/add-go-18-and-19-to-travis into 93000766bf6dfba2d2eb94ebb29c28cd81a26d62 on master.

Coverage decreased (-0.2%) to 94.039% when pulling 5d39e35a7a770fa2990b4b63d0c60992a586522b on jeromefroe/add-go-18-and-19-to-travis into 93000766bf6dfba2d2eb94ebb29c28cd81a26d62 on master.


Change in the rmt lib

There is a new PR that modify the rmt lib : https://github.com/espressif/arduino-esp32/pull/6369
You will be maybe impacted?

Thanks for the heads up of the pending change. I have glanced over the changes and have the impression, that FastAccelStepper will not be impacted. The lib uses not so much the fancy rmt API, but instead accesses the registers directly. For me it is easier to understand, what is going on. Besides, it gives more freedom, how the rmt is used and FastAccelStepper‘s use is bit atypical.


VIPM GIT Product Name Mismatch

The Product name in VIPM that shows up in the package manager is "DCAF Examples".
The VIPM name should match the GIT name or have some way to associate the two.

Renamed Repo


[BUG] Files starting with dot are not resolved correctly

Hi,
It seems that resolving fails if the exports map has a file that start with dot (.). For example aws-cdk-lib has an export like this.
If I understood correctly, the bug is in index.js on line 65.
  I took a stab at fixing it with https://github.com/lukeed/resolve.exports/pull/20

Thanks @ErikMikkelson


Ensure progress bar percentages have leading zero

In this screenshot:

The top percentage should read 03.33 instead of 3.33.

Enforced in Pull Request #14


Introduce [ltr, rtl] layout direction service

Similar to what the Dir directive does, but will also capture "dir" attributes outside the Angular app.
cc: @jelbourn

@EladBezalel would you be interested in working on this? I have some thoughts in mind for it

@jelbourn sure! i'm always up to RTL stuff :D

Simpler solution on #3600


GC GCE Builder Images

Only keep the 5 latest builder images.

Working after creating 6 new images, only 5 remain.


Add a standalone node to testnet deployments

Is your feature request related to a problem? Please describe.
We need pd to work out of the box. But we don't test this anywhere, because we wrap it up in a bunch of infrastructure that hides broken behavior: #3281
Describe the solution you'd like
Add a node to the deployment that runs a full node the way we expect users to be able to: pd start --grpc-auto-https mydomain.com and cometbft start, no load-balancing, no reverse proxies, etc.

This is a good idea. As background, I've actually been running a discrete fullnode on separate infra, but failed to do so for 64. Aside from testnets, it's important that we replicate this functionality for preview, so that we can catch bugs like https://github.com/penumbra-zone/penumbra/pull/3650 before release. However, it's complicated in that we must preserve the contents of the ACME cache, currently defined as <pd_home>/rustls_acme_cache: https://github.com/penumbra-zone/penumbra/blob/v0.64.2/crates/bin/pd/src/main.rs#L487-L488 Most of our preview logic is a full wipe and reset, and we'll need to be a bit more careful to avoid getting a domain banned from the ACME ratelimits.

Added a workflow for this on preview. I'm going to run it ad-hoc a few times, and if no problems—like ratelimit triggers—then I'll move it to prod ACME API and make it part of the automatic deployments.

The automatic preview deploy is triggering too early, before the newly created network's RPC endpoints are returning. For most of our deploys, that's not a problem, because they'll automatically retry until successful. For the "standalone" config, however, that doesn't leverage the same orchestration, we need to be more explicit.
Two improvements come to mind: ensure that the RPC endpoints are honoring the readiness state of the fullnodes behind them: right now, any fullnode in the deployment is instantly added to the RPC backend pool, but we should gate admission into the pool on formal readiness, meaning the internal rpc endpoint is returning OK. We could also instruct the deploy flow to block until all pods are ready, which would resolve the problem of the standalone deploy firing too early, but not address the intermittent RPC downtime during chain resets on preview.

This work is basically complete, although I haven't documented the new endpoints anywhere. I'll stick those in the wiki before closing.
One major omission is that we don't have automatic handling of point-releases for these standalone nodes. That's fine: we're more focused on upgrades right now (#4087), which requires a lot of manual maintenance. Will circle back with a more automated setup for point releases when there's time, otherwise I'll handle that manually for the next few point releases.

This work is done. We now have a standalone node, serving pd directly, exercising its auto-https logic, for both testnet and preview:

https://solo-pd.testnet.plinfra.net/
https://solo-pd.testnet-preview.plinfra.net/

Using a separate domain as a precaution to avoid banning cert issuance on the for-now more commonly used domain, penumbra.zone. There are some shortcuts here: we don't ingest metrics from these hosts, point-releases don't roll out to them automatically. They're SSH-accessible to the PL team, so they also serve as "always-on" boxes. One change I haven't yet made that I'd very much like to is an optional flag to store the acme cert info in a separate directory, which would vastly simplify using the https logic for pd in a lot more cases.
The broad strokes of work described here is accomplished, so I'm closing the ticket.


Problem of Data Parallel Model,  program didn't end when reached global step

I got a problem when using EPL data parallel Model.
The num worker is set to 3 and each worker had its own TF data record  input and Model save_dir. The global step is set to 3500 for each  worker. It seems normal when  global step was below 3500, but the program not  end when reached 3500.  Seems like the chief worker 0 didn't  know other worker  was end。

Could you provide a example and your script?


Tooltip scheduleupdate not working as expected

components: Tooltip
reactstrap version ^8.5.0
react version 16.9.23

What is happening?
I'm trying to use the tooltip to display a loading spinner, then when an image is loaded change the content to display said image
What should be happening?
When the image loads, and the tooltip component receives a new prop value true for asyncLoaded, the schedule update is executed and the tooltip position recalculated.
What actually happens
The tooltip body is moved to the top left of the screen instead of pointing to the original trigger.
Code
This is the code where i create my tooltip
const tooltipProps = {
    tooltipTrigger: <SmallImage />, // The trigger is a thumbnail version of the image that should load inside the tooltip
    isLink: !isEmpty(linkUrl), // This let's my custom tooltip decide if the trigger is also an anchor or not
    triggerLink: `${parsedDomain}/uploadedfile/${imageId}`, // anchor link
    tooltipBody: <BigImage />, // Image that should be loaded inside the tooltip
    placement: PLACEMENT['top'],
    container: tooltipRef, // ref of the anchor I'm using, this is only so I'm able to re'style the width of the tooltip, same wrong behaviour occurs even with the default trigger configuration
    asyncLoaded: imageLoaded, // State that let's the Tooltip know when to trigger the scheduleUpdate
    isAsync: true,
  };

  return imageId ? (
    <Image>
       // custom tooltip anchor so it's easier to re-style the tooltip container
      <CustomTooltip {...tooltipProps} />
    </Image>
  ) : null;

And here is my ASyncBody component that triggers the scheduleUpdate:
const AsyncBody: React.FC<any> = ({ scheduleUpdate, children, loaded }) => {
  useLayoutEffect(() => {
    if (loaded) {
        scheduleUpdate();
    }
  }, [loaded, scheduleUpdate]);

  return children;
};

Could anyone help me figure out why the re-positioning is not working correctly? Or is it just a bug no1 cares about?
Kind regards

Is your tooltip target still in the DOM?  Are you able to post a repro on a site like CodeSandbox?

Is your tooltip target still in the DOM? Are you able to post a repro on a site like CodeSandbox?

Hey there, thanks for you reply :)
Yeah I doesn't depend on any variables so it should be there, I also tried simply using a timeout to call the scheduleUpdate (meaning no state changes in the parent) and still the same happens.
Even using the default Tooltip portal

Im pretty sure the issue simply has to do with the image content, because if I change it to text and use timeouts the tooltip re-renders in the appropriate position :(

Also, after the scheduleUpdate is triggered, and the tooltip appears in the wrong position, I can hover out and in over the element, and the position is corrected... I'm clueless as to why this happens

Ok it seems the problem was related to the function I was using to render the trigger, wrapping this function in a useCallback solved my issue 😅 Thanks for the help

Hey @Geddard,
I am facing the same problem and tried to comprehend your solution. Can you maybe provide some example?
Thanks for your help!

Hey @Geddard,
I am facing the same problem and tried to comprehend your solution. Can you maybe provide some example?
Thanks for your help!

hey @himynameissebbo, as I described I think the problem was that another part of the component was triggering a whole component re-render, and in this second round the trigger ref was not loaded fast enough, maybe?
So what I did was wrap all the functions related to the rendering into useCallback.
So my main component looks like this:
export const TransformedImage = ({
  originalAccessor,
  data,
  fieldConfig: { domain, thumbnail, alt, linkUrl },
}: TransformParams) => {
  const imageId = get(data, originalAccessor);
  const parsedDomain = !isEmpty(domain) ? `//${domain}` : `//`;
  const parsedThumbnail = thumbnail.replace(REPLACER_TOKEN, imageId);
  const [thumbLoaded, setThumbLoaded] = useState<boolean>(false);
  const [imageLoaded, setImageLoaded] = useState<boolean>(false);
  const tooltipRef = useRef<HTMLElement>(null);

  const ImageLoader = (isLoaded: boolean, image: JSX.Element) => (
    <Loader>
      <SpinnerWrapper>
        <Spinner type="grow" color="dark" style={{ display: isLoaded ? 'none' : 'block' }} />
      </SpinnerWrapper>
      {image}
    </Loader>
  );

  const BigImage = useCallback(
    () =>
      ImageLoader(
        imageLoaded,
        <BigImg src={`${parsedDomain}/uploadedfile/${imageId}`} alt={alt} onLoad={() => setImageLoaded(true)} />
      ),
    [alt, imageId, imageLoaded, parsedDomain]
  );

  const SmallImage = useCallback(
    () =>
      ImageLoader(
        thumbLoaded,
        <Img
          src={`${parsedDomain}/uploadedfile/thumbnail${parsedThumbnail}`}
          alt={alt}
          onLoad={() => setThumbLoaded(true)}
        />
      ),
    [thumbLoaded, alt, parsedDomain, parsedThumbnail]
  );

  const tooltipProps = {
    tooltipTrigger: <SmallImage />,
    isLink: !isEmpty(linkUrl),
    triggerLink: `${parsedDomain}/uploadedfile/${imageId}`,
    tooltipBody: <BigImage />,
    placement: PLACEMENT['right'],
    container: tooltipRef,
    asyncLoaded: imageLoaded,
    isAsync: true,
  };

  return imageId ? (
    <Image>

      <CustomTooltip {...tooltipProps} />
    </Image>
  ) : null;
};

and this is what I did in the body of the tooltip component I created
const withAsync = (scheduleUpdate: () => void) => (
    <AsyncBody scheduleUpdate={scheduleUpdate} loaded={!!asyncLoaded}>
      {tooltipBody}
    </AsyncBody>
  );

  return (
    <>
      <Trigger {...triggerProps}>{tooltipTrigger}</Trigger>
      <Tooltip
        container={container}
        placement={placement}
        autohide={false}
        isOpen={tooltipOpen}
        target={id}
        toggle={toggle}
      >
        {isAsync ? ({ scheduleUpdate }) => withAsync(scheduleUpdate) : tooltipBody}
      </Tooltip>
    </>
  );


Modified to match transaction implementation.

The following has been implemented and we would appreciate it if you could check again.

Adjustment of indentation
Correction of paths

@scottphc
Thank you for the confirmation and merge.
When do you plan to deploy this one?


turn on notifications for failed workflows

just wondered why 30 minutes old data wasn't fetched already...and i realized the workflow had an error.
notification available?

this is fixed.


Broken import in route definition causes webpack to return code 2 and break the build

I ran into this while refactoring a container component that was being used in a route. For example:
return [
    {
      path: '/:id',
      name: 'foo',
      getComponent(nextState, cb) {
        const importModules = Promise.all([
          System.import('containers/DoNotExist'),
        ]);

        const renderRoute = loadModule(cb);

will cause the build to crash (ELIFECYCLE from npm). Digging into the npm-debug.log, I saw the following:
11 info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>12 verbose lifecycle<EMAIL_ADDRESS>unsafe-perm in lifecycle true
13 verbose lifecycle<EMAIL_ADDRESS>PATH: <redacted>
14 verbose lifecycle<EMAIL_ADDRESS>CWD: <redacted>
15 silly lifecycle<EMAIL_ADDRESS>Args: [ '-c',
15 silly lifecycle   'cross-env NODE_ENV=production webpack --config internals/webpack/webpack.prod.babel.js --color -p' ]
16 silly lifecycle<EMAIL_ADDRESS>Returned: code: 2  signal: null
17 info lifecycle<EMAIL_ADDRESS>Failed to exec build script
18 verbose stack Error<EMAIL_ADDRESS>build: `cross-env NODE_ENV=production webpack --config internals/webpack/webpack.prod.babel.js --color -p`
18 verbose stack Exit status 2

Is there a way to catch bad System.import statements within routes or provide a better error log for this specific error?

I confirm that this is issue is real.
In my case I had the follwoing
const importModules = Promise.all([
          System.import('containers/HomePage/sagas'), // <-- this file don't exist
          System.import('containers/HomePage'),
        ]);

Same problem here:
All tests pass without any errors but npm run build outputs an error:
SUMMARY:
✔ 43 tests completed
npm info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>npm info ok
npm info lifecycle<EMAIL_ADDRESS><EMAIL_ADDRESS>
><EMAIL_ADDRESS>build /opt/web
> cross-env NODE_ENV=production webpack --config internals/webpack/webpack.prod.babel.js --color -p

 [992] multi main 28 bytes {0} [built]
    + 1075 hidden modules

npm info lifecycle<EMAIL_ADDRESS>Failed to exec build script
npm ERR! Linux 4.4.0-42-generic
npm ERR! argv "/usr/local/bin/node" "/usr/local/bin/npm" "run" "build"
npm ERR! node v6.3.1
npm ERR! npm  v3.10.3
npm ERR! code ELIFECYCLE
npm ERR<EMAIL_ADDRESS>build: `cross-env NODE_ENV=production webpack --config internals/webpack/webpack.prod.babel.js --color -p`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>build script 'cross-env NODE_ENV=production webpack --config internals/webpack/webpack.prod.babel.js --color -p'.
npm ERR! Make sure you have the latest version of node.js and npm installed.
npm ERR! If you do, this is most likely a problem with the react-boilerplate package,
npm ERR! not with npm itself.
npm ERR! Tell the author that this fails on your system:
npm ERR!     cross-env NODE_ENV=production webpack --config internals/webpack/webpack.prod.babel.js --color -p
npm ERR! You can get information on how to open an issue for this project with:
npm ERR!     npm bugs react-boilerplate
npm ERR! Or if that isn't available, you can get their info via:
npm ERR!     npm owner ls react-boilerplate
npm ERR! There is likely additional logging output above.

npm ERR! Please include the following file with any support request:
npm ERR!     /opt/web/npm-debug.log

The weird thing that this is the first time I get this error on current project.

Ugh that's a really annoying bug!
I thought eslint-plugin-import lints those imports too, but apparently not. @benmosher could support for System.import be added to eslint-plugin-import?

Oo, that would be cool. I'm 0% familiar with System.import, but I'd accept a PR adding it here: https://github.com/benmosher/eslint-plugin-import/blob/master/utils/moduleVisitor.js
That visitor is what no-unresolved uses to discover+lint filenames for remote modules. I suspect a checkCommon could be cloned+transformed into a checkSystem pretty readily, by someone familiar.

Any progress on this issue?

Closing due to inactivity, but if there's any progress on this please comment


Unable to Access Docker Container on Local Machine After Setup

Hi there,
I want to run the setup inside a Docker container and access it from my local machine. I am able to successfully query Snowflake tables using DuckDB inside the Docker container, but when I try to access the service locally (outside the container), I encounter issues.
Setup Script (setup_universql.sh):
#!/bin/bash

# Define variables
IMAGE="buremba/universql"
CONTAINER_NAME="universql_container"
PORT="8084"
SOURCE_DIR=$(pwd)  # Use the current directory
TARGET_DIR="/usr/app"
CACHE_DIR="/usr/app/cache"

# Ensure ACCOUNT is set via environment variable
if [[ -z "$ACCOUNT" ]]; then
  echo "Error: ACCOUNT environment variable is not set."
  echo "Please export ACCOUNT before running this script."
  exit 1
fi

# Ensure AWS environment variables are set
if [[ -z "$AWS_ACCESS_KEY_ID" || -z "$AWS_SECRET_ACCESS_KEY" || -z "$AWS_DEFAULT_REGION" ]]; then
  echo "Error: AWS environment variables are not set."
  echo "Please export AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY, and AWS_DEFAULT_REGION before running this script."
  exit 1
fi

# Pull the Docker image
echo "Pulling Docker image: $IMAGE"
docker pull $IMAGE

# Run the container in detached mode
echo "Running container..."
docker run -d --name $CONTAINER_NAME \
    -p 8084:8084 \
    --mount type=bind,source=$SOURCE_DIR,target=$TARGET_DIR \
    $IMAGE snowflake --account $ACCOUNT --cache-directory $CACHE_DIR

# Exec into the container and install AWS CLI
echo "Installing AWS CLI..."
docker exec -it $CONTAINER_NAME apt update
docker exec -it $CONTAINER_NAME apt install -y awscli

# Configure AWS CLI with environment variables
echo "Configuring AWS CLI..."
docker exec -it $CONTAINER_NAME aws configure set aws_access_key_id "$AWS_ACCESS_KEY_ID"
docker exec -it $CONTAINER_NAME aws configure set aws_secret_access_key "$AWS_SECRET_ACCESS_KEY"
docker exec -it $CONTAINER_NAME aws configure set default.region "$AWS_DEFAULT_REGION"

echo "Setup complete!"

Setup Instructions:
export ACCOUNT="XXX"
export AWS_ACCESS_KEY_ID="XXX"
export AWS_SECRET_ACCESS_KEY='XXX'
export AWS_DEFAULT_REGION="us-east-1"

chmod +x setup_universql.sh
./setup_universql.sh

Code that Works Inside the Container:
try:
    print("TRY 4 localhostcomputing.com")
    conn = snowflake.connector.connect(
        host='localhostcomputing.com',
        port='8084',
        user='XXX',
        password='XXX',
        account='XXX',
    )
except Exception as e:
    print("FAIL 4 localhostcomputing.com")

Issue:
When I try to access the service locally (outside the container), I have tried several configurations for the host in the code:
localhost
localhostcomputing.com
Container name: universql-server
<IP_ADDRESS>
But none of these work.
Can you assist with the correct steps or configuration to access the Docker container from my local machine?

Thanks for the report @soumilshah1995 ! This limitation makes it harder to run Universql in a container. One solution I think of using cloudflared to create a public tunnel, which should make Universql accessible in a public network including the Docker's host machine. I have a prototype that I'm hoping to ship this week.

@buremba, I'm really excited about this! We'd love to have a Docker setup, as we plan to deploy on Kubernetes. The project is fantastic, with very well-written code. Looking forward to the prototype!

@soumilshah1995 That's a lot! I fixed the issues connecting Docker from your host machine. You should be able to connect localhostcomputing.com domain (which resolves to <IP_ADDRESS>) from your host machine.
Additionally, I added optional --tunnel cloudflared arguments if you would like to create a tunnel that will make your service publicly accessible.
If you want to deploy to Kubernetes, you can assign --host <IP_ADDRESS>, which will make Universql run in HTTP mode so that you can terminate the SSL in your load balancer. Are you using EKS or on-premise Kubernetes? I would love to hear more about your use case!

is it main branch ?

It looks good to me. That will be enough to access Unversql from Kubernetes but you will need a public URL to connect from your local environment. If you have a public domain, you can pass SSL keys or you can optionally pass --tunnel cloudflared to use Cloudflare tunnel which will create the public URL for you.


Add META-INF to allow ServiceLoader to find RscCompat rule: fix #484

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.Shane Delmore seems not to be a GitHub user. You need a GitHub account to be able to sign the CLA. If you have already a GitHub account, please add the email address used for this commit to your account.You have signed the CLA already but the status is still pending? Let us recheck it.


Wrong syntax highlighting in case of a method has an optional parameter

RC2:

Fixed in https://github.com/Microsoft/visualfsharp/pull/2148


On interstitial dismiss not trigger

Hi,
I'm using Ionic, and the event of the interstitial dismiss is never trigger or i guess, certainly, i'm catching the wrong way.
I try this
 document.addEventListener("onInterstitialDismiss", function(e){
    	console.log("dismiss");
    });

and this
$scope.$on('onInterstitialDismiss', function(data) {
        console.log("Dismiss");
    });

I would like that someone had the same issue can help me.
It's really a great plugin, thank you for all this work !
See ya :-)

please check wiki:
https://github.com/floatinghotpot/cordova-admob-pro/wiki/1.5-Events

Thank you for you quick answer.
I try this, Loaded is call but Dismiss is never call and i don't know why.
            document.addEventListener('onAdDismiss', function(data) {
                if (data.adType == 'interstitial') {
                    alert("Ad interstitial Dismiss");
                }
            });

            document.addEventListener('onAdLoaded', function(data) {
                if (data.adType == 'interstitial') {
                    alert("Ad interstitial loaded");
                }
            });

What's your steps to reproduce your issue?
onAdDismiss only fire when the interstitial Ad is displayed and clicked to close.

So I have a template, and when I enter in this template I'm showing the interstitial.
   $scope.$on('$ionicView.beforeEnter', function() {
        Ads.showInterstitial();
    });

And in the app.js I have this code
 document.addEventListener('onAdDismiss', function(data) {
                if (data.adType == 'interstitial') {
                    alert("Ad interstitial Dismiss in app.js");
                }
            });

            document.addEventListener('onAdLoaded', function(data) {
                if (data.adType == 'interstitial') {
                   alert("Ad interstitial loaded in app.js");
                }
            });

The code about the ads is
prepareInterstitial: function() {
            if (window.AdMob) AdMob.prepareInterstitial({
                adId: admobid.interstitial,
                isTesting: false,
                autoShow: false
            });

        },
        showInterstitial: function() {
            if (window.AdMob) AdMob.showInterstitial();
            this.prepareInterstitial();
        }

And with this code when the app is loaded a first alert appears.
If I go to the template of the interstitial, the ads show, when i close it a new alert of loaded appears but not for the dismiss.


Urgent: Loss of BTC during Atomicals-js Transaction

Dear Atomicals Developer,
I hope this message finds you well. and I am writing to bring to your attention an issue I encountered while using Atomicals-js on December 1st for a Dmint NFT transaction.
Regrettably, despite setting the gas fee at 101 satsbyte , an unexpected loss occurred, resulting in the transfer of some  BTC to an unfamiliar BTC address: bc1p. The associated transaction hash is 0808.i can send you more specific transaction details via direct message！
Atomicals-js reported the following error: “Error: Excessive fee detected. Hardcoded to 500000 satoshis. Aborting due to protect funds. Contact developer.” Despite paying a gas fee exceeding the limit, the transaction went through, resulting in the loss of funds.
I have sent a private message detailing the situation and seeking assistance. Numerous community members have reported similar issues, indicating a bug that leads to an overpayment of BTC during transactions.
I kindly request your prompt attention to this matter, as the community is growing concerned about potential losses. Your assistance in resolving this issue and potentially refunding the excess BTC would be greatly appreciated.
Thank you for your understanding and support.
Sincerely

Hello, I've encountered the same issue, resulting in a loss of funds. The funds went to the intermediate address bc1p9hwz5cle4vmlhx8x3y7dzvk0l2qgwjdyfmf2lae0z3cm8shhv8ds2lxwa8. Could you tell me who controls this address? Is it your team?

我也遇到和你一样的情况，以下内容是我咨询其他开发者给出的答复，仅供参考！
嗯。。。恐怕不行 因为这个是commit transaction，在commit
tx里头是没有包含lockHash的，而这个「中转」地址是靠time，nonce等一系列信息计算得出，而这些信息接下来传给了reveal
tx，由reveal tx写入隔离见证。因此你给出来的tx bytes仅是包含commit tx的输入输出信息，除了收款地址之外，没有包含「原相」信息
无法恢复原相，就无法计算正确的地址。很遗憾，这笔交易无法给你找回来。除非你能找到reveal tx的bytes。
但是从你的情况看，应该是在进行到获取收款地址utxo的时候，就崩坏了。
laohuangniu @.***>于2023年12月3日 周日下午6:27写道：

Hello, I've encountered the same issue, resulting in a loss of funds. The
funds went to the intermediate address
bc1p9hwz5cle4vmlhx8x3y7dzvk0l2qgwjdyfmf2lae0z3cm8shhv8ds2lxwa8. Could you
tell me who controls this address? Is it your team?
—
Reply to this email directly, view it on GitHub
https://github.com/atomicals/atomicals-js/issues/102#issuecomment-1837436222,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A3Z4YQKYBUMRM6DUQAM4PBLYHRH2ZAVCNFSM6AAAAABAD5RW36VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZXGQZTMMRSGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

我也遇到和你一样的情况，以下内容是我咨询其他开发者给出的答复，仅供参考！ 嗯。。。恐怕不行 因为这个是commit transaction，在commit tx里头是没有包含lockHash的，而这个「中转」地址是靠time，nonce等一系列信息计算得出，而这些信息接下来传给了reveal tx，由reveal tx写入隔离见证。因此你给出来的tx bytes仅是包含commit tx的输入输出信息，除了收款地址之外，没有包含「原相」信息 无法恢复原相，就无法计算正确的地址。很遗憾，这笔交易无法给你找回来。除非你能找到reveal tx的bytes。 但是从你的情况看，应该是在进行到获取收款地址utxo的时候，就崩坏了。 laohuangniu @.>于2023年12月3日 周日下午6:27写道：
…
Hello, I've encountered the same issue, resulting in a loss of funds. The funds went to the intermediate address bc1p9hwz5cle4vmlhx8x3y7dzvk0l2qgwjdyfmf2lae0z3cm8shhv8ds2lxwa8. Could you tell me who controls this address? Is it your team? — Reply to this email directly, view it on GitHub <#102 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/A3Z4YQKYBUMRM6DUQAM4PBLYHRH2ZAVCNFSM6AAAAABAD5RW36VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMZXGQZTMMRSGI . You are receiving this because you authored the thread.Message ID: @.>

Thank you. It looks like I need to learn more about BTC programming.

其实如果你记得当时运行的完整命令并且保留了当时 mint 的 json 文件，靠枚举time与nonce是可以尝试找回的。如果损失较大的话我可以帮你试试。
https://www.blockchain.com/explorer/ 这个区块链浏览器可以查看 commit tx 广播到网络的时间戳，如果你的本机时间正确的话，减去几秒延迟，大概得到找到正确nonce时的本地时间。然而计算nonce时用的time的值是 5000 个nonce更新一次，按照我本地运行原版程序每秒枚举 500 个nonce计算，大概是 10 秒更新一次，就算平均5秒更新延迟。网络延迟算 2 秒的话，平均要枚举 7 个time，最坏情况 12 个time。
而nonce的取值范围在[0,10000000 + 5000]，，大约需要 (10000000 / 500 / 60 / 60 ≈ 5.56) 个小时对一个time的值枚举完所有nonce。也就是说平均约不到2天可以找回，最坏情况也不到3天。当取得正确的 time 和 nonce 值后，你可以手动构造一笔交易将资金转出。
然而需要提醒的是，转到中转地址的钱，在程序正确的情况下，几乎是全部被 reveal tx 当 gas 烧掉的，只会剩下一点点（也就是mint 到的 NFT 或者 TF 对应的 sats 金额）作为output。当你重新构造一个交易去动用中转地址的钱的时候，也需要向链上写入几乎同样的隔离见证数据，在 satsbyte 相同的情况下，你也只能得到一点点的回款。如果构造的 satsbyte 是当时的一半，那么可以拿回大约一半的钱。当然如果当初因为某种原因转入了额外的钱，还是能拿回来的。
以上仅为个人观点。
In fact, if you remember the complete command you ran at the mint time and retained the JSON file, you could attempt to recover by enumerating time and nonce. If your loss is significant, I can try to help you with it.
The blockchain explorer at https://www.blockchain.com/explorer/ allows you to get the timestamp of when the commit transaction was broadcast to the network. If your local computer's time is correct, subtracting a few seconds of delay should give you an approximate local time for when you found the correct nonce. However, the time value used for computing the nonce is updated once every 5000 nonce attempts. Based on my local runs of the original program, which enumerates around 500 nonce values per second, the time value is updated roughly every 10 seconds, which means we can estimate an average delay of 5 seconds. Allowing for a network delay of 2 seconds, you would, on average, need to enumerate 7 different time values, with the worst-case scenario being 12 time values.
The range for nonce is [0,10000000 + 5000], and it would take approximately (10000000 / 500 / 60 / 60 ≈ 5.56) hours to enumerate all nonce values for a single time value. This means that on average, you could recover the information in less than 2 days, and in the worst-case scenario, it would be less than 3 days. Once you have obtained the correct time and nonce values, you can manually construct a transaction to transfer the funds out.
However, it's important to note that the funds transferred to the intermediary address are, in the case of a correctly functioning program, almost entirely consumed by the gas for the reveal transaction, leaving only a small amount (the amount of sats corresponding to the minted NFT or TF). When you reconstruct a transaction to access the funds at the intermediary address, you will also need to write almost the same amount of SegWit data to the blockchain. If the satoshis per byte (satsbyte) cost is the same, you will only be able to recover the small portion of the funds. If the constructed transaction has half the satsbyte cost of the original, then you could potentially recover about half of your funds. Of course, if for some reason extra money was transferred in initially, that could still be recovered.
The above is just my personal opinion.

我有一笔electron的卡中间了，应该找回来还是划算的

其实如果你记得当时运行的完整命令并且保留了当时 mint 的 json 文件，靠枚举time与nonce是可以尝试找回的。如果损失较大的话我可以帮你试试。
https://www.blockchain.com/explorer/ 这个区块链浏览器可以查看 commit tx 广播到网络的时间戳，如果你的本机时间正确的话，减去几秒延迟，大概得到找到正确nonce时的本地时间。然而计算nonce时用的time的值是 5000 个nonce更新一次，按照我本地运行原版程序每秒枚举 500 个nonce计算，大概是 10 秒更新一次，就算平均5秒更新延迟。网络延迟算 2 秒的话，平均要枚举 7 个time，最坏情况 12 个time。
而nonce的取值范围在[0,10000000 + 5000]，，大约需要 (10000000 / 500 / 60 / 60 ≈ 5.56) 个小时对一个time的值枚举完所有nonce。也就是说平均约不到2天可以找回，最坏情况也不到3天。当取得正确的 time 和 nonce 值后，你可以手动构造一笔交易将资金转出。
然而需要提醒的是，转到中转地址的钱，在程序正确的情况下，几乎是全部被 reveal tx 当 gas 烧掉的，只会剩下一点点（也就是mint 到的 NFT 或者 TF 对应的 sats 金额）作为output。当你重新构造一个交易去动用中转地址的钱的时候，也需要向链上写入几乎同样的隔离见证数据，在 satsbyte 相同的情况下，你也只能得到一点点的回款。如果构造的 satsbyte 是当时的一半，那么可以拿回大约一半的钱。当然如果当初因为某种原因转入了额外的钱，还是能拿回来的。
以上仅为个人观点。
In fact, if you remember the complete command you ran at the mint time and retained the JSON file, you could attempt to recover by enumerating time and nonce. If your loss is significant, I can try to help you with it.
The blockchain explorer at https://www.blockchain.com/explorer/ allows you to get the timestamp of when the commit transaction was broadcast to the network. If your local computer's time is correct, subtracting a few seconds of delay should give you an approximate local time for when you found the correct nonce. However, the time value used for computing the nonce is updated once every 5000 nonce attempts. Based on my local runs of the original program, which enumerates around 500 nonce values per second, the time value is updated roughly every 10 seconds, which means we can estimate an average delay of 5 seconds. Allowing for a network delay of 2 seconds, you would, on average, need to enumerate 7 different time values, with the worst-case scenario being 12 time values.
The range for nonce is [0,10000000 + 5000], and it would take approximately (10000000 / 500 / 60 / 60 ≈ 5.56) hours to enumerate all nonce values for a single time value. This means that on average, you could recover the information in less than 2 days, and in the worst-case scenario, it would be less than 3 days. Once you have obtained the correct time and nonce values, you can manually construct a transaction to transfer the funds out.
However, it's important to note that the funds transferred to the intermediary address are, in the case of a correctly functioning program, almost entirely consumed by the gas for the reveal transaction, leaving only a small amount (the amount of sats corresponding to the minted NFT or TF). When you reconstruct a transaction to access the funds at the intermediary address, you will also need to write almost the same amount of SegWit data to the blockchain. If the satoshis per byte (satsbyte) cost is the same, you will only be able to recover the small portion of the funds. If the constructed transaction has half the satsbyte cost of the original, then you could potentially recover about half of your funds. Of course, if for some reason extra money was transferred in initially, that could still be recovered.
The above is just my personal opinion.

I understand. I will study a bit and then try to recover, although without the reveal gas, there may only be a few sats left. It's a rare learning opportunity.

Now the tool will log the actual time and nonce when making transaction calculations, which will help to recover the incomplete txs. Please upgrade to the latest code base and keep saving logs if such an exception occurs.
现在 CLI 已经作出了一些调整，会在计算出结果后输出真实的 time 和 nonce 来帮助恢复未完成交易。可以更新到最新代码并且在发生这类错误时保存完整的日志输出方便后续恢复。

感谢开发者夜以继日的更新迭代，但是我的丢失在中转钱包的btc，恐怕再也找不到回来了，我花了几天时间，甚至导出12月1号当天 1GB大小的docker
logs输出日志寻找我的交易记录，我可以找到别人交易的time和nonce，但是我始终无法找到自己的time和nonce，无奈只能放弃。
这是我的交易哈希：0808083fe95de500c0fdeb79b709d202e05eb4273ec84b89ffa54330ef2a70d2
谨此纪念作为dmint协议第一批吃螃蟹的勇士！
Alex Li @.***>于2023年12月8日 周五上午8:37写道：

Now the tool will log the actual time and nonce when making transaction
calculations, which will help to recover the incomplete txs. Please upgrade
to the latest code base and keep saving logs if such an exception occurs.
现在 CLI 已经作出了一些调整，会在计算出结果后输出真实的 time 和 nonce
来帮助恢复未完成交易。可以更新到最新代码并且在发生这类错误时保存完整的日志输出方便后续恢复。
—
Reply to this email directly, view it on GitHub
https://github.com/atomicals/atomicals-js/issues/102#issuecomment-1846319692,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A3Z4YQJRSVNMHAQJLDWJBBDYIJOKZAVCNFSM6AAAAABAD5RW36VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQNBWGMYTSNRZGI
.
You are receiving this because you authored the thread.Message ID:
@.***>

事到如今，只能死马当活马医，感恩大佬百忙之中抽空帮我。
交易哈希：0808083fe95de500c0fdeb79b709d202e05eb4273ec84b89ffa54330ef2a70d2
执行命令：yarn cli mint-item "#scientists" "118" "D:\atomicals\item-118.json" --satsbyte=101
json文件请见附件：
item-118.json
如果我没有猜错的话，当时打的应该是这个118。
但是，如果不是118，则以下几个json文件是备选；
item-220.json
item-261.json
item-299.json
item-318.json
item-383.json
item-394.json

@atlaslabsapp
已发邮件！

@atlaslabsapp 大神您好，我想请教一下按这个思路如果reveal后能被索引吗，我发现我之前打的atom也有一些是这样，如果能找回就好了

The  same question. Check the tx : https://mempool.space/tx/aabbccb82ecb8af2b77570aff150206110453c2a30b61e560b3dbc26e0bb413d.
Commint tx address: https://mempool.space/address/bc1pehzyqrnpjfv9y3jl2sl6z5clt62agnqcjzsu2me5cunht4ctk33sgns54l
With out RevealTx.


$PSScriptRoot unpopulated when script missing the .ps1 file extension

Prerequisites

[X] Write a descriptive title.
[X] Make sure you are able to repro it on the latest released version
[X] Search the existing issues.
[X] Refer to the FAQ.
[X] Refer to Differences between Windows PowerShell 5.1 and PowerShell.

Steps to reproduce
Create a script utilising $PSScriptRoot, running via crunchbang instead of file association.
Expected behavior
PS> $pwd.Path
/home/hashbrown
PS> gc testScript
#!/bin/pwsh
$PSScriptRoot
PS> ./testScript
/home/hashbrown
PS>

Actual behavior
PS> $pwd.Path
/home/hashbrown
PS> gc testScript
#!/bin/pwsh
$PSScriptRoot
PS> ./testScript

PS>

Error details
No response
Environment data
Name                           Value
----                           -----
PSVersion                      7.4.2
PSEdition                      Core
GitCommitId                    7.4.2
OS                             Fedora Remix for WSL
Platform                       Unix
PSCompatibleVersions           {1.0, 2.0, 3.0, 4.0…}
PSRemotingProtocolVersion      2.3
SerializationVersion           <IP_ADDRESS>
WSManStackVersion              3.0

Visuals

Is this a duplicate of #21402 ?

Looks like it.

They need to update the title with the real cause of the issue; the calling name ($args[0] in other languages, eg $0 in bash) is missing the .ps1 is the cause.
Seems it's not so much the name of the actual script itself.
Keeping it "Symbolic links can change..." is impossible to search if you're closer to the real problem à la "...script missing .ps1 extension".
To add; I think what's really responsible is that $MyInvocation has .MyCommand listed as the whole script as a raw string, instead of the script as a file, when the extension is missing.
If MyCommand isn't a file it cannot have a path.

Dup #4217

Can't dupe a closed-due-to-inactivity issue.
"if this is a bug please try to reproduce on the latest version of PowerShell and reopen a new issue and reference this issue if this is still a blocker for you"

#21402 did have a work around, creating a shell script without the extension adjacent to the powershell script with ps1
#!/bin/sh -e
exec pwsh -File "$0.ps1" "$@"

instead of pushing input&output streams through an intermediary

Just so you know, the exec means no fork occurs and pwsh replaces sh with the same process id, environment, file descriptors etc. There is no intermediate.

#!/bin/sh -e

It's more bourne itself, I don't want to have to look up the intricacies of $@ et cetera and any caveats involved with explicitly using pwsh's -File, even if it turns out there are none for either. It's much simpler to just rename the script for now.


readonly mode should not allow arbitrary file listing or listing sensitive project variables/env values

Is your feature request related to a problem? Please describe.
rill CLI currently starts a server that allows listing files (e.g., .env and allows retrieval of (potentially) sensitive project variables, like postgresql URL with username/passwords)
Describe the solution you'd like
Readonly mode should only display dashboards and allow basic export data.
Describe alternatives you've considered
Additional context
A developer could browser to a website, while using rill developer CLI, (rill start) that makes an XHR to the developer's machine via fetch('http://localhost:9009/v1/instances/default?sensitive=true') to grab the values and possibly gain access to sensitive information. This could leak sensitive information

@begelundmuller related to what we discussed previously.

So there are two problems here:

The regular experience does not apply CORS and CSP policies that guard against XHR to localhost from other websites. Changing it to only allow requests from localhost may break the experience for people who self-host local Rill today.
The --readonly flag does not block access to endpoints that expose access to variables or the local file system.

Since the local Rill experience is not really designed for self-hosting (even thought it's possible), we will prioritize problem 2 separately. However, we should fix the CORS and CSP issue immediately.
@Kavinjsir The problem here is basically that the current CORS policy allows calls from all origins. The changes needed are:

Only allow calls from the HTTP host, which is localhost:9009 by default (replacing port 9009 with the port passed to --port).
Support additional CORS origins with a rill start --allowed-origins host1,host2,... flag to not break self-hosted instances of Rill.
Investigate and maybe add a CSP policy for the local UI. We have one for the cloud UI, but not the local one. I'm not entirely sure what if anything it should contain – maybe browser defaults are sufficient.

Here are some pointers for code to edit:

The entrypoint for the rill start command is here: https://github.com/rilldata/rill/blob/b67474d7b4fd3770f21999f0c3e96a3e86c216b7/cli/cmd/start/start.go#L25
When running rill start, it initializes and starts the runtime's HTTP server with a few additional local endpoints mounted. It currently configures the allowed origins to * here: https://github.com/rilldata/rill/blob/b67474d7b4fd3770f21999f0c3e96a3e86c216b7/cli/pkg/local/app.go#L380
The actual code that implements CORS is defined in the runtime's HTTP server here: https://github.com/rilldata/rill/blob/b67474d7b4fd3770f21999f0c3e96a3e86c216b7/runtime/server/server.go#L228

After making the changes, you should test that the app still works on localhost, and that XHR requests from other domains to localhost fail with CORS errors.


Update documentation for computetools.py

Pull Request
Add documentation to computetools.py
Documentation for compute tools is not complete. Mostly need to add docstrings for the FiniteDifference class.
This pull request addresses #54

[x] make sure you are pulling from a dev branch on your fork
[x] check for code linting

Merging this should close #54

@padamson I think this is ready for you to review/merge.