THRIFT-4326 Allow safer reuse of BufferedTransport instances in Ruby

Addresses THRIFT-4326.
The problem
In the case where a single Thrift::BufferedTransport instance is re-used across multiple service calls, certain kinds of malformed responses from one service call can 'leak' into subsequent calls and cause them to fail with a Thrift::ProtocolException.
The most easily reproducible example is when a service returns a well-formed Thrift response for the first service call, but with N extra bytes of garbage tacked onto the end.
In such a case, the initial service call will be handled just fine (at least when using the compact protocol), however, the next N service calls that go through the same Thrift::BufferedTransport instance will fail with a Thrift::ProtocolException. This happens because the BufferedTransport doesn't re-set the @rbuf instance variable until the read buffer is fully exhausted, so each of the N subsequent service calls will attempt to read one byte identifying the protocol from the remaining buffer, and will get some bogus value from the garbage bytes at the end of the response from the initial service call.
This can also happen if reading from @rbuf is interrupted part-way through, while @index is still pointing to the middle of the read buffer (e.g. due to a Ruby timeout exception).
Proposed solution
Re-setting the @rbuf instance variable to an empty byte buffer upon every call to #flush addresses this problem, and is conceptually similar to what happens in HttpClientTransport#flush (where @inbuf and @outbuf are both always reset).

Thanks @jeking3! I'v just rebased and pushed, so hopefully that'll make CI happy.

@benweint excellent, I'll keep an eye on these.

Sadly we're seeing a lot of timeouts in the Travis environment.  I see one build job stopped responding for 10 minutes and another timed out of a test.

@benweint could you do be a favor and do an empty amend (git commit --amend, and then don't change anything) and force push?  This will generate a new build.  It's build job 4 I am most interested in seeing pass as it runs the ruby tests.

Sure thing - I've done that and it looks like it did kick off another build.

If you could rebase one more time and force push, I found out why build jobs 3 and 4 became unstable - I moved nodejs testing from job 3 to 4 in my last PR, and I just undid that.  Sorry about all this...

Yup, done. No worries - I know how big hairy test suites go :)

Of course now I see job 2 is failing in nodejs as well.  Spectacular!  Well, let's see how this fares.  If we can get job 4 to pass that would be ideal.  If this one doesn't work I'll run it locally myself in docker and validate it before merging.

@benweint would you be able to rebase on master?  The CI build issues should be resolved now.

Yup, rebased!

Ugh, clearly we STILL have some build issues.  They are in js though.  I'll pull your commit into my local system and try to reproduce this build issue and/or get a clean set of cross tests so I can commit this.  Thanks for your patience.

@benweint so this error is reproducible in the ubuntu-xenial docker image, and it looks like it is related to ruby and wasn't happening before, so it's likely related to these changes.
===============================================================================
*** Following 2 failures were unexpected ***:
If it is introduced by you, please fix it before submitting the code.
===============================================================================
server-client:          protocol:         transport:               result:
rb-nodejs               json              buffered-ip              failure(1)
rb-nodejs               binary            buffered-ip              failure(1)
===============================================================================

Ah, interesting! It looks like the nodejs tests are using a Ruby server as part of some integration testing? I'll see if I can repro this failure locally and figure out what's up. Thanks!

Ok, I've finally figured out how to reproduce that test failure locally on macOS. For posterity, here's what I did:
PATH="/usr/local/opt/bison/bin:$PATH" ./configure --with-openssl=/usr/local/opt/openssl --with-boost=/usr/local --without-lua --without-csharp --without-c_glib --without-erlang --without-php --without-cpp --without-haskell
make -j3 precross
test/test.py --server rb --client nodejs

After doing that, the tests that use a BufferedTransport on the Ruby server side fail. Since I'm only dealing with Ruby on the client side in my usage, I didn't realize that BufferedTransport can be used to wrap a server socket as well (this is what the Ruby TestServer.rb is doing when testing a buffered transport).
The issue stems from my misunderstanding of the semantics of #flush. In the nodejs -> Ruby cross test, I think the node client writes multiple requests to the socket before the Ruby server responds to any of them. The Ruby server calls #flush after each response to flush the write buffer, but my change drops the read buffer as well, discarding the buffered requests before they've been processed.
I'm going to close this and think about whether there's a better way to accomplish what I'm after.


Feat: Inform users when they use a non-unique configure pipeline name and fail

When specifying configure workflows as a list of Pipelines, the Works corresponding to that list will named in accordance to the name of the Pipeline. As a result, the names Pipeline for a given Promise or Resource Request must be unique and the Workflow should not run until this issue is resolved
Given a Promise with the following configure workflows:
// my-promise.yaml

workflows:
    resource/promise:
      configure:
      - apiVersion: platform.kratix.io/v1alpha1
        kind: Pipeline
        metadata:
          name: configure-me
          namespace: default
        spec:
          containers:
          - image: ghcr.io/syntasso/kratix-marketplace/a-configure-pipeline:v0.1.0
            name: configure-a-pipeline
      - apiVersion: platform.kratix.io/v1alpha1
        kind: Pipeline
        metadata:
          name: configure-me
          namespace: default
        spec:
          containers:
          - image: ghcr.io/syntasso/kratix-marketplace/b-configure-pipeline:v0.1.0
            name: configure-b-pipeline

When I run kubectl apply -f my-promise.yaml
Them I an immediately informed the via the terminal that the configure workflow is invalid because the configure-me Pipeline name is duplicated
And the configure workflow does not run

while this seems a good move (i guess we will eventually create a pipeline controller), for this bug specifically we could change the work name format (adding a workflow index, for example).

Just to ensure I'm on the right page, do you mean adding an index in addition to using the pipeline name to inform the name of the work or continuing to use the existing naming convention (with the promise name) and appending an index to that

yeah, or something like that
(but tbh as i thought about that further, it probably makes sense to stop name clashes right now since it will be problematic anyway when we create a real pipeline crd)

This is already implemented:
Error from server (Forbidden): error when creating "example.yaml": admission webhook "vpromise.kb.io" denied the request: duplicate pipeline name "test" in workflow "promise" action "configure"
https://github.com/syntasso/kratix/blob/main/api/v1alpha1/promise_webhook.go#L113-L115
Closing


SQFormScrollableCard title variant

We have a use case where we need the title on a scrollable card to be an h5 instead of the hard coded h4.

Closed in #471


unable to use ng-click

Hello Everyone.
I'm trying to have buttons on toaster , but I'm unable to use ng-click not onClick .
I'll update my findings here :)
Regards,

You can't do that and I never got around adding it.


[FLINK-6477][web] Waiting the metrics retrieved from the TaskManagers

problem:
Flink web page of Taskmanager metrics can not display normal, when we first login.
analysis:
The web-frontend communicates with the backend for requesting metrics, and the metrics retrieved from the TaskManagers. The first call to load metrics starts a new metrics update, and gets nothing as a result. now we wait to get the result and response to the web-frontend.

-1.
You may end up blocking the netty thread for up to 10 seconds.

@zentol This is just an exception possible, in the normal scene will not happen, BTW, whether the update interval  reduced to 1s will be better

No it will happen very easily. Some TM does down, bam webUI is frozen for 10 seconds.
That's too much of an "if" for something that has a workaround; you can refresh the page after all, or not effectively disable the web-refresh interval.
The update interval is set to 10 seconds by design to keep the additional stress on the network as well as the JM/TM to a minimum. Especially in larger deployments reducing the interval could have a noticeable effect; the current policy however is that the metric system should not incur any noticeable overhead.


Eliah Kagan: Watch asicworlds.com

Eliah Kagan requests the watch of the watch_keyword asicworlds\.com. See the MS search here and the Stack Exchange search here.

asicworlds\.com has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Approved by Makyen in Charcoal HQ


Symbol not found: _CFTimeZoneCopyDefault for simple example on MacOS.

Hi! I'm running into the following issue with abseil on MacOS. Please let me know if you have suggestions for things to try.
Environment

MacOS 10.13.6
bazel version$ bazel version
INFO: Invocation ID: cacd095e-84ff-432a-afb8-c56fe7aaad9d
Build label: 0.22.0
Build target: bazel-out/darwin-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Mon Jan 28 13:00:18 2019<PHONE_NUMBER>)
Build timestamp:<PHONE_NUMBER>
Build timestamp as int:<PHONE_NUMBER>

g++ --versionConfigured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 10.0.0 (clang-1<IP_ADDRESS>)
Target: x86_64-apple-darwin17.7.0
Thread model: posix

InstalledDir: /Library/Developer/CommandLineTools/usr/bin
Code for Reproducing
I can reproduce this with the following three files.
The hello_world.cc file:
#include "absl/time/clock.h"
#include "absl/time/time.h"

int main() {
  absl::Time t = absl::Now();
  absl::FormatTime(t);

  return(0);
}

The WORKSPACE file:
load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive")

http_archive(
    name = "com_google_absl",
    strip_prefix = "abseil-cpp-master",
    urls = ["https://github.com/abseil/abseil-cpp/archive/master.zip"],
)

The BUILD file:
cc_binary(
  name = "hello_world",
  deps = ["@com_google_absl//absl/time"],
  srcs = ["hello_world.cc"],
)

Instructions for Reproducing
First I build with
$ bazel build //:hello_world
INFO: Invocation ID: df8ad84b-2691-4fea-b26c-08998d0cb391
INFO: Analysed target //:hello_world (0 packages loaded, 0 targets configured).
INFO: Found 1 target...
Target //:hello_world up-to-date:
  bazel-bin/hello_world
INFO: Elapsed time: 0.142s, Critical Path: 0.00s
INFO: 0 processes.
INFO: Build completed successfully, 1 total action

Then I run it with
$ ./bazel-bin/hello_world
dyld: lazy symbol binding failed: Symbol not found: _CFTimeZoneCopyDefault
  Referenced from: /Users/rnishihara/abseil-example/./bazel-bin/hello_world
  Expected in: flat namespace

dyld: Symbol not found: _CFTimeZoneCopyDefault
  Referenced from: /Users/rnishihara/abseil-example/./bazel-bin/hello_world
  Expected in: flat namespace

Abort trap: 6

which produces the error above.

This may be related to #283 because the example above is broken by commit 256be563447a315f2a7993ec669460ba475fa86a (it works on the prior commit).

http_archive(
name = "com_google_absl",
strip_prefix = "abseil-cpp-master",
urls = ["https://github.com/abseil/abseil-cpp/archive/master.zip"],
)

I don't recommend using master.zip to implement living at head.  You also aren't going to know what commit you are using. Can you update to the latest version and let us know if this is still an issue?

@shaindelschwartz - I think we need the same fix in Bazel that we used for CMake in #283.

This has to do with cctz not lining "-framework Foundation".  It wasn't fixed in Bazel before because it looked like the default CROSSTOOL defines this already, but taht may only be in certain versions of Bazel.  This change has to go through cctz, so I will open a corresponding pull request there

@JonathanDCohen, if you have patches that might fix it, I can give them a try. I've also had trouble reproducing it on other people's laptops.

@robertnishihara please check my patch to cctz.

@JonathanDCohen I suspect I'm doing something wrong, I tried the following.

Clone abseil and switch the WORKSPACE file in my example above to use
local_repository(
  name = "com_google_absl",
  path = "/Path/to/abseil-cpp",
)

instead of http_archive. This compiles and reproduces the original error.

Apply your patch to cctz/BUILD to abseil-cpp/absl/time/internal/cctz/BUILD.bazel.

Attempt to recompile my minimal example. This step failed with errors that look unrelated to your change.
~/abseil-example$ bazel build //:hello_world
INFO: Invocation ID: a4e24b10-932d-4e92-8546-94b7bd5a94d3
ERROR: /private/var/tmp/_bazel_rnishihara/3f926b72c4342b26f2cfe542346a4646/external/com_google_absl/absl/time/internal/cctz/BUILD.bazel:55:1: no such package '@com_google_absl//': BUILD file not found on package path and referenced by '@com_google_absl//absl/time/internal/cctz:time_zone'
ERROR: /private/var/tmp/_bazel_rnishihara/3f926b72c4342b26f2cfe542346a4646/external/com_google_absl/absl/time/internal/cctz/BUILD.bazel:55:1: no such package '@com_google_absl//': BUILD file not found on package path and referenced by '@com_google_absl//absl/time/internal/cctz:time_zone'
ERROR: /private/var/tmp/_bazel_rnishihara/3f926b72c4342b26f2cfe542346a4646/external/com_google_absl/absl/time/internal/cctz/BUILD.bazel:55:1: no such package '@com_google_absl//': BUILD file not found on package path and referenced by '@com_google_absl//absl/time/internal/cctz:time_zone'
ERROR: /private/var/tmp/_bazel_rnishihara/3f926b72c4342b26f2cfe542346a4646/external/com_google_absl/absl/time/internal/cctz/BUILD.bazel:55:1: no such package '@com_google_absl//': BUILD file not found on package path and referenced by '@com_google_absl//absl/time/internal/cctz:time_zone'
ERROR: Analysis of target '//:hello_world' failed; build aborted: no such package '@com_google_absl//': BUILD file not found on package path
INFO: Elapsed time: 0.083s
INFO: 0 processes.
FAILED: Build did NOT complete successfully (0 packages loaded, 0 targets conf\
igured)

What's the right way to try out your patch?

We unfortunately use our own fork of cctz internally so you would have to manually put that patch in (absl/time/cctz)
However https://github.com/google/cctz/pull/102 fixes the problem and has been merged, and there should be a new cctz release and subsequent abseil daily release soon.  So you should get the patch in reasonably soon once we do our next daily release.

Update:  We're having issues bring the change to cctz back into our internal code base, so I'm trying to find a workaround for it.  @robertnishihara have you been able to confirm the change mae to cctz works?


added executable containing country data for Italy only

This file contains @row 591 the sole country data for Italy. It is intentionally un-minified to allow visual inspection.
The size of its minified version is 19k, compared to 208k for the official minified dist version.
The file works correctly in processing Italian phone numbers (NB - I have used so far only the methods formatNational and isValidNumberForRegion). It is likely that it will crash in case of invocations related to absent countries.
The advantages in using such a smaller localized file inside a webpage are huge.
I am obviously NOT proposing to put this file in your repo :-)
The real issue is now: given that this spike works, how to go about producing versions of national data for the various countries and how to get them included in the final localized executables?
Willing to discuss alternatives here. I have also opened an issue in the i18n/libphonenumber repo to hear from the authors. See https://github.com/googlei18n/libphonenumber/issues/829

That does look good, I like the direction! I think my default desire would be to have a series of files like IT.js and US.js which are used to individually load the data in.
If you set the outputmode to script in build.xml we could probably see this as reasonable-to-read code:
https://github.com/nathanhammond/libphonenumber/blob/master/build.xml#L21
Or maybe change optimization level:
https://github.com/nathanhammond/libphonenumber/blob/master/build.xml#L20
We can then start trying to figure out how to compile this thing such that it exposes a method to register countries into its data object. :)

Going to work using your optimisation tips. I'll let you know.

I am facing a mistery:

it is possible to remove references to metadatalite.js and metadatafortesting.js from task compile-libphonenumber inside build.xml
it is NOT possible to remove BOTH files from the i18n/phonenumbers directory

At least one of them is needed in the directory, otherwise the python code complains "missing provider for (i18n.phonenumbers.metadata)", in spite of the fact that metadata.js is present. Apparently metadata.js is not the provider for i18n.phonenumbers.metadata.
All three files metadata.js, metadatalite.js and metadatafortesting.js, contain the rows
/**
 * @fileoverview Generated metadata for file
 * ../resources/PhoneNumberMetadata.xml
 * @author Nikolaos Trogkanis
 */

goog.provide('i18n.phonenumbers.metadata');

This fact is potentially very disturbing because metadatalite.js and metadatafortesting.js both redefine i18n.phonenumbers.metadata.countryCodeToRegionCodeMap and i18n.phonenumbers.metadata.countryToMetadata to contain a lot of diverse regional data, while I am trying to reduce the import to the bare minimum of a metadata_IT.js that contains a tiny subset of the data.
All this having already realised that this solution won't fit the case we want to create a library for two countries.

Step 2 - I am enclosing the compiled minified executable for Italy.

I have gotten to the end of all this. There is a build.xml and a node script that solve the problem.

Okay, so I'm going to spend a day soon getting an approach to this merged. First step is landing your code that generates all of the metadata_[CC].js files as part of the build process. (https://gist.github.com/Muzietto/62c3fc5a1c285f091654)
Once I get that landed I'll wire up a build command that builds for every country code.

Let me know if you need clarifications or assistance in any form.

Splitting of metadata is now in place. Since it is so cheap, rather than use ant to trigger each country I just have it generate all of them. See commit https://github.com/nathanhammond/libphonenumber/commit/010ebe273bd0107eec6f8a84cc072c4df585c742.

I've now integrated the entire thing into the build process and am committing individual country code files into the dist folder. Can you confirm that these work for you? If so we can close this PR. :smile:

I have copied your libphonenumber_IT.js file locally into my server, and the webpage created is working correctly.
:+1:

Thank you for your work in proving that it was possible, and for the code to learn from! Next steps at some point are:

package the metadata separately from the logic.
dynamically load the metadata.
allow for custom builds of sets of countries.

 All new code I write for this I'll handle via branches with PRs to master. I ask that you do the same. :)

Thank you. It's an honor. Next step is gonna be the asYouTypeFormatter. Possibly before the end of the year I should come up with some implementation.


RunAsNonRoot can be inherited from PodSecurityContext

Current check covers only Container SecurityContext, but RunAsNonRoot, RunAsUser, RunAsGroup and SELinuxOptions are all inherited from the PodSecurityContext unless they are defined explicitly container-wise.
Please consider adding PodSecurityContext to the list of checked values.
Ref:
https://github.com/Shopify/kubeaudit/blob/87446f2a54a1c25e280697468fdfbf1b39d98517/cmd/runAsNonRoot.go#L10

What's the difference between https://github.com/Shopify/kubeaudit/issues/123 and this? Asking because you 👍 'd the other and opened this.

PodSecurityPolicy and PodSecurityContext are different things :)


Bug: Incorrect behavior when pressing Enter with non-English keyboard input

Installation Method
ubuntu docker compose
Environment

Open WebUI Version: v0.4.4

Ollama (if applicable): v0.4.4

Operating System: Ubuntu 23.10

Browser (if applicable): Edge 130.0.2849.80

Confirmation:

[x] I have read and followed all the instructions provided in the README.md.
[x] I am on the latest version of Open WebUI.
[ ] I have included the browser console logs.
[ ] I have included the Docker container logs.
[x] I have provided the exact steps to reproduce the bug in the "Steps to Reproduce" section below.

Expected Behavior:
In non-English input mode, after typing a word, pressing Enter should select the word, and pressing Enter again should submit the prompt to wait for the result.
Actual Behavior:
When pressing Enter after typing an English word using a non-English keyboard layout, the system immediately calls the language model instead of selecting the word or allowing further editing.
Description
Bug Summary:
In non-English input mode on Mac, pressing Enter after typing an English word triggers the language model call immediately instead of selecting the word and requiring another Enter press to submit the prompt.
Reproduction Details
Steps to Reproduce:

Switch your Mac keyboard input method to a non-English language (e.g., Chinese).
Open the Open WebUI application.
In the prompt input field, type an English word using the keys on your Mac keyboard.
Press the Enter key.

Logs and Screenshots
Screenshots/Screen Recordings (if applicable):
e.g.

It will submit [fa s ta pi] and call llm, but I just want type word [fastapi].
Additional Information
It seems to be related to recent commits, such as this judgment method. This issue does not exist in version 0.4.0.

Good catch, Fixed on dev!

@tjbck There is anathor bug about In non-English input mode with the prompt completion


chore(deps): bump

Applied mkpr on undefined
sed s/"mock-repository-provider": "^.*"/"mock-repository-provider": "^5.5.9"/

Coverage remained the same at 87.526% when pulling cd2f28d4b529ce72f5039e41dd4dc589c327702b on mkpr/1 into 7ea3d37ad6edcca06d9f5f47cb5db1d61dbd8548 on master.

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


feat: add standalone MPR postgres module

Introduce new module credo-ts-message-pickup-repository-pg
This module implements the MessagePickupRepository interface from @credo-ts to manage messaging in live mode. It uses PostgreSQL as the storage backend for all messaging operations and introduces a publish/subscribe system to support multiple instances sharing the same database.
This approach centralizes all database operations for a DIDComm Mediator, simplifying its implementation and ensuring seamless scalability across multiple instances.
Resolve issue #40

Also don't forget to add an entry in release-please-config.json:
    "packages/postgres": {
      "release-type": "node"
    }

And .release-please-manifest.json:
"packages/postgres": "0.0.1"
It also would be good to add in tsconfig.json, under compilerOptions:
<EMAIL_ADDRESS>["packages/postgres/src"]

The module has already been tested with basic functionality in a Didcomm Mediator instance with good results.


Add PIPware KPIs artifacts

This checklist is used to make sure that common guidelines for a pull request are followed.

[ ] The PR has modified HISTORY.rst describing any customer-facing, functional changes. Note that this does not include changes only to help content. (see Modifying change log).

@PIPwareInfo Please sign the CLA when you get the chance, thanks!

Hi @dougelliott . SIgned


Playground prod build is having a warning about bundle size being too much(> 4000kb)

This is a limit we have configred in vite. See if we should just increase it or split into chunks if possible.

pri: 1, estimate: 1


@conda-forge-admin,please add bot automerge

Hi! This is the friendly automated conda-forge-webservice.
I just wanted to let you know that I added bot automerge in conda-forge/openscm-units-feedstock#6.


403 Error

Hello, when I try to connect to my server with this library it throws a 403 error:
Fatal error: Uncaught Exception: { "errors": [ { "code": "AccessDeniedHttpException", "status": "403", "detail": "An error was encountered while processing this request." } ] } in /home/absolutg/public_html/query/pterodactyl/vendor/hcgcloud/pterodactyl-sdk/src/MakesHttpRequests.php:121 Stack trace: #0 /home/absolutg/public_html/query/pterodactyl/vendor/hcgcloud/pterodactyl-sdk/src/MakesHttpRequests.php(95): HCGCloud\Pterodactyl\Pterodactyl->handleRequestError(Object(GuzzleHttp\Psr7\Response)) #1 /home/absolutg/public_html/query/pterodactyl/vendor/hcgcloud/pterodactyl-sdk/src/MakesHttpRequests.php(21): HCGCloud\Pterodactyl\Pterodactyl->request('GET', 'api/application...') #2 /home/absolutg/public_html/query/pterodactyl/vendor/hcgcloud/pterodactyl-sdk/src/Actions/ManagesServers.php(32): HCGCloud\Pterodactyl\Pterodactyl->get('api/application...') #3 /home/absolutg/public_html/query/pterodactyl/index.php(6): HCGCloud\Pterodactyl\Pterodactyl->server('ddca964e') #4 {ma in /home/absolutg/public_html/query/pterodactyl/vendor/hcgcloud/pterodactyl-sdk/src/MakesHttpRequests.php on line 121

My Code:
<?php
require_once("vendor/autoload.php");

$pterodactyl = new \HCGCloud\Pterodactyl\Pterodactyl('API_KEY_HIDDEN', 'URL_HIDDEN');

$server = $pterodactyl->server('SERVER_ID_HIDDEN');

$egg = $pterodactyl->egg($nest_id, $egg_id);
$server = $pterodactyl->createServer([
    "external_id" => $external_id,
    "name" => $name,
    "user" => $user_id,
    "egg" => $egg_id,
    "pack" => 0,
    "docker_image" => $egg->dockerImage,
    "skip_scripts" => false,
    "environment" => [],
    "limits" => [
        "memory" => $memory,
        "swap" => $swap,
        "disk" => $disk,
        "io" => $io,
        "cpu" => $cpu
    ],
    "feature_limits" => [
        "databases" => $databases,
        "allocations" => $allocations
    ],
    "startup" => $egg->startup,
    "description" => "",
    "deploy" => [
        "locations" => [$location_id],
        "dedicated_ip" => false,
        "port_range" => []
    ],
    "start_on_completion" => true
]);

echo $server;
?>

I have been unable to find out how to resolve it, please help me.
Thanks,
Tommy Vange

Hello, please check your api key, it should be an Application API generated from http://your.panel/admin/api.

I was making a user API key. Thank you!


Side navigation work

Bundles common side nav functionality for #133.
Side navigation as an include for the styleguide, plus getting closer to #137.

:dancer:


Review and build: RTDeTR decoder

RTDeTR decoder implementation detr_layers/decoder.py needs to be validated with actual architecture.
Please feel free to submit a PR!

This issue has been resolved.


When I update a value in a box, where will the value be updated, in memory or locally?

1.Opening a box will load the local storage into memory. Then I update the value. When the app process is forced to close unexpectedly, has the modified value been stored from memory to local? Or is it released with the shutdown of the process?
2.Opening a box will load the local storage into memory. When I update the value, is the value of the local storage directly updated, or is the value updated in memory? If it is an updated value in memory, when will it be stored from [updated value in memory] to [local storage]?

I had knowed.


Reorganize documentation to become more modeller oriented

What:

Reorganize the home page to become a better entry point for modellers.
Add a Concepts page to provide a more elaborate explanation of the concepts.

Why
the current documentation has a strong developer and technical reference orientation (=good), but lacks a conceptual introduction.
How

[ ] reorganize home page https://deltares.github.io/Ribasim/ into table of contents:

introduction

Conceptualization (physical-control-allocation layer)

Development planning

About the code

Downloads

[ ] add https://deltares.github.io/Ribasim/concepts page. Table of contents:

Water balance in time & space

Control concepts

Equations

Allocation

Respective related tasks:

[ ] move section 3 of https://deltares.github.io/Ribasim/ to Concepts page
[ ] add descriptive section
[ ] move water balance equations from https://deltares.github.io/Ribasim/core/equations.html to Concepts page
[ ] add descriptive explanation including sequence digram of nested allocation
[ ]  move Allocation section from https://deltares.github.io/Ribasim/core/allocation.html to Concepts page

Parking lot for the sequence diagram explaining the nested allocation and interaction with the main loop
sequenceDiagram

participant boundary
participant basin
participant user
participant allocation_subNetwork
participant allocation_mainNetwork

user->>allocation_subNetwork: demand
par
   allocation_subNetwork-->>allocation_mainNetwork: demand inventory at inlets
end
boundary->>allocation_mainNetwork: source availablility
basin->>allocation_mainNetwork: source availablility
allocation_mainNetwork-->>allocation_mainNetwork: allocate to inlets
allocation_mainNetwork->>allocation_subNetwork: allocated
par
   allocation_subNetwork-->>allocation_subNetwork: allocate to users
end
allocation_subNetwork->>user: allocated
user->>basin: abstracted

Parking lot

Just to be clear, make sure you keep the mermaid syntax. In Quarto we use this rather than a PNG render, see https://github.com/Deltares/Ribasim/blob/605e5b9b20eea77cd29ab3f39f06f7bfe6933571/docs/core/index.qmd#L15-L39.

No worries, if you go to edit mode in the comment you get the mermaid syntax for both figures. Github does the rendering to a picture

Conceptual differences with other model codes
Ribasim 9 versus Ribasim 7
Ribasim 7 is a heuristic water allocation model where prioritized water demands are met from preferential sources such as inflows or surface water reservoirs (i.e. dams). Nodes in the network typically do not have a storage component (except for reservoir nodes or natural lakes). typical timesteps therefore are 10-day, by-monthly or monthly as this allows a drop of water to reach the end of the network within the timestep. Ribasim 7 allows flow direction in one-way only (ie downstream), while demands can be propagated upstream to reservoirs or diversions. Ribasim 7 allows various formulations to compute water demand for agriculture or plublic water supply, while it also offers a reservoir node with hydropower oriented operations. The water distribution is primarily derived by matching source availability with demands given reservoir rules (flood control-target and firm levels) and hedging rules) local flow-based control options for diversions and bifurcations.
Ribasim 9 deviates from this paradigm as its water balance is not driven by a demand-allocation matching algorith. Instead it is driven by a numerical scheme that solves the water balance equation for a chain of basins (buckets) with storages which are connected by elements that determine the flow exchange between the basins based on Qh-relations, resistance (i.e. a head difference) or control rules. This numerical scheme chooses its internal timestepping. Compared to Ribasim 7, Ribasim 9 allows much more flexibility to define control rules. Ribasim 9 also deviates on the allocation paradigm as its allocation algorithm primarily is focussed on deciding where water abstractions need to be reduced - in the rule-based simulation - to keep sufficient water in the system for high-prioirity users.
Also in terms of water demand, Ribasim 9 deviates from Ribasim 7, as the kernel is given a user/abstraction demand, either via a preprocessed timeseries, or via an online coupling with other models (e.g. unsaturated zone or groundwater models).
Ribasim 9 versus D-Hydro

This is my suggestion for the update of the Home page (https://deltares.github.io/Ribasim/)

I like it, I do have some comments:
Notes:

'either by controlling the inflow or outflow, or by controlling a water level'. We do support level control by PID control or discrete control, but we do not support flow control (other than setting flow rates directly by aforementioned control mechanisms). Trying to control flow lead to some nasty bugs and conceptual problems.
Regarding the first figure of the allocation layer: updating a setpoint is an interesting one. It is not especially dificult to do, but I do want to point out that this is conceptually different from what control has done upto this point, because updating a setpoint of discrete control changes the control rules themselves. We have to think about validation rules for this.
'and the rule-based simulation will determine the actual abstraction.' I think this is conceptually easiest to understand, but:

Whether a user can abstract depending on the level of the abstraction basin is handled with reduction factors in the physical layer
Basin target levels are yet to be properly implemented in allocation (https://github.com/Deltares/Ribasim/issues/564)

Regarding the second figure:

As discussed with @visr, users are also allowed to be part of the main network directly. It is a matter of what we think is clearer whether we include this in the figures or whether it is mentioned in text only.
In case 'par' stands for parallel: in theory these processes can be done in parallel (if JuMP/Highs indeed also support this), but in practice this is not yet done. We should have a technical discussion with @visr and/or @Hofer-Julian about what is required to support this, and whether for instance the Julia tests can still be run in parallel if the tests themselves run parallel processes.


Explicitly invoking completion after @bind- displays incorrect completion list

Repro steps:

Open a .razor file, type <input @bind-, dismiss the completion list
Explicitly invoke completion via ctrl+j

Expected: completion list is filtered
Actual: completion list is unfiltered, and committing the @bind-value item results in @bind-bind-value.

Note: this scenario needs to be reviewed when fixing issue as well - <form asp-$$ (ASP.NET Core Web App):

Related to https://github.com/dotnet/razor-tooling/issues/6134


Fix premature fopen() call in mbedtls_entropy_write_seed_file #3175

Signed-off-by: Victor Krasnoshchok<EMAIL_ADDRESS>Description
The PR fixes potential seed file corruption in case if path param of mbedtls_entropy_write_seed_file is equal to MBEDTLS_PLATFORM_STD_NV_SEED_FILE (or vice versa; i.e. the same file is used to read from and to write to).
Status
READY
Requires Backporting
No
Migrations
NO
Steps to test

Define MBEDTLS_ENTROPY_NV_SEED in the active config (config.h);
Edit test_suite_entropy.data in such a way to make entropy_seed_file define the same name as MBEDTLS_PLATFORM_STD_NV_SEED_FILE (seedfile by default);
Build and run test_suite_entropy target - NV-file related tests should pass.

This PR is the 2.16 backport of https://github.com/ARMmbed/mbedtls/pull/3616.

This PR is the 2.16 backport of #3616. I am removing the "ready for merge" label to make sure that we wait for the second backport and merge only when all 3 PRs are ready.


Meshes whose textures were marked as "Sky Textures" can't be captured nor replaced

Tested in U2 and Sonic Adventures DX.
If one mark the sky texture as such, captures won't contain the meshes and even if you handwrite a replacement for that mesh_HASH, the replacement won't take place.
Tested with the latest dxvk build #235, but has been happening for a couple months.
Steps for the missing mesh in the capture:

Launch any compatible game
Find the sky texture and categorize it as such
Capture frame in USD
Open it in OV, the mesh won't be there.

Steps for testing the replacement not working:

Launch any compatible game
Don't mark as sky texture yet
Capture the mesh, setup a replacement for it. I've made a sphere mesh with a HDR map all setup: Models.zip
If it works in game, now categorize the texture as sky texture and the replacement won't work anymore.

Bonus:

If you slap a sun light in the mesh, it won't cross the dome even explicitly setting the mesh to single sided and to not cast shadows (See the attached mesh).

Expected behaviour

Objects whose textures have been marked as "Sky Texture" could be captured and replaced as any other.
Replaced sky meshes would still count as "miss rays" by the raytracing shader, thus, being more physically precise and also saving performance.
The sun would light up the scene as usual, even if its not a custom directional light, just the game's original light translated to the runtime.

Hi @Ekozmaster , can you please file a bug for the capture issue and a separate bug for the replacement issue in the  https://github.com/NVIDIAGameWorks/rtx-remix project? An an example with a specific application and logs could be helpful.

Hi, @nv-ajaus , sure, though, I won't be at home until monday 13th.
The steps mentioned + attached zip didn't reproduce the issue?
For the replacement issue:
You can hop on our NFSU2 repo and set it up on the game as in the README, then proceed to just mark the current sky texture as sky and the issue happens. The game swaps sky texture every ~5 minutes.
It currently has a replacement for the sky mesh and a hdri texture (the ones in the attached zip), but once one categorize them as sky texture, the replacements are ignored and the default original mesh + texture is rendered.
This is really bad for us because, not being able to set those expensive replacements as sky means the whole world is enclosed in an emissive sphere which bounces light all around and significantly impacts performance, rather than considering that as "miss rays" for the raytracing shader as far as I understand.
As for the capture issue:
Really any game with a sky being rendered has this issue, the generated capture.usd has no sky defined if it was categorized as such. Tried with U2, Sonic & SuperTuxKart 🐧 . By cloning our U2 repo, this should also happen. Just have to mark the sky as sky texture and make a capture of the scene. The sky won't be present in OV

Hi @Ekozmaster , since it's been a while, I'm going to close this issue for now. If you want to continue working on these issues, and you have the time, can you please file a github issue for the replacement problem and a github issue for the capture problem on the https://github.com/NVIDIAGameWorks/rtx-remix/issues page?


ActiveField form group has-error class missing when model attribute name is tabular (prefix [])

What steps will reproduce the problem?
Use tabular as attribute name for field:
<?= $form->field($model, '[0]attributeOfModel')->textInput() ?>

Set form enableClientValidation to false.
What is the expected result?
If there is an error on attributeOfModel, this should add an has-error class to container div (with 'form-group' class)
What do you get instead?
The 'has-error' class is not added.
Additional info
The problem is in addErrorClassIfNeeded of yii\widget\ActiveField class, because it checks hasErrors method on attribute and not on cleared attribute name.
This will fix:
    protected function addErrorClassIfNeeded(&$options)
    {
        // This get correctly attribute name when attribute name is tabular.
        $attributeName = yii\helpers\BaseHtml::getAttributeName($this->attribute);

        if ($this->model->hasErrors($attributeName)) {
            Html::addCssClass($options, $this->form->errorCssClass);
        }
    }

Q
A

Yii version
<IP_ADDRESS>

PHP version
7.1.14

Operating system
Centos 7

Thank you for the report. Would you like to create a Pull Request?

I've published the pull request: https://github.com/yiisoft/yii2/pull/15805

Fixed in #15805


feature request: integrating with the os_units crate

I'd like to suggest integrating my os_units crate into the x86_64 crate.
Descriptions
The os_units crate provides two types: Bytes and NumOfPages. These types are interactive because of two methods: Bytes::as_num_of_pages and NumOfPages::as_bytes. Note that Bytes::as_num_of_pages returns the number of pages that is more than the bytes the instance of Bytes contains.
Advantages
Some methods will have more explicit return types. For example, Page implements Sub<Self>. However, the return type is u64, and it doesn't provide the information whether the number represents the bytes of pages or the number of pages (at first, I thought it was former). The users can read the docs (by the way, there is no information of its return type except the source code), but returning NumOfPages will prevent bugs because of the mismatch of types.
Drawbacks
The users will have to call as_usize (or as_u64 to match with the address types) each time, increasing the size of the code.
Notes
These two types use usize, not u64. However, changing the type to u64 will be better because this crate mainly uses it.

I don't think we would really need the Bytes type. For example, when subtracting two VirtAddrs, it's fairly clear that the returned u64 is a number of bytes. I don't know if there is some other reason to have it.
However, having a NumPages<S: PageSize> type is more interesting. Where else would this be used other than in the Add/Sub implementations for Page<S> and PhysFrame<S>?

EDIT: If the arithmetic ops are the only reason to have a NumPages type, it might make more sense to just not have a Sub impl for Page, and just explicitly have bytes_between/pages_between methods.

I think this is a great improvement. Actually, I couldn't find any methods that can use the NumPages type. Can I send a PR?

EDIT: If the arithmetic ops are the only reason to have a NumPages type, it might make more sense to just not have a Sub impl for Page, and just explicitly have bytes_between/pages_between methods.

I think this is a great improvement. Actually, I couldn't find any methods that can use the NumPages type. Can I send a PR?

I would want to get @phil-opp's input from a design perspective. If we added methods like pages_between/bytes_between, then it would make sense to remove the Page<S>: Sub<Self> implementation. However, if we did that, would we still want to keep the Page<S>: Add<u64> and Page<S>: Sub<u64> implementations? It seem like we should either allow all of:
let page1 = Page::containing_address(...);
let page2 = Page::containing_address(...);
let diff: u64 = page2 - page1; // Page<S>: Sub<Self> (would be replaced by pages_between)
let next_page = page1 + 1; // Page<S>: Add<u64>
let prev_page = page2 - 1; // Page<S>: Sub<u64>

or none of it. All three implementations run the risk of ambiguity between a number of bytes and a number of pages.

Some early thoughts:
I agree that Add<u64>/Sub<u64> and Sub<Self> methods are connected and that we should either keep all or none of them.
I'm not sure if I like the naming of pages_between and bytes_between. It sounds like it returns the absolute value of the difference, i.e. always a positive value. So users might assume that x.pages_between(y) == y.pages_between(x) in all cases, which is probably not how we plan to implement it.
Also, if we go with bytes/pages_between, we should probaby also implement some Bytes and NumberOfPages wrappers so that we can still implement Add and Sub (otherwise we would have to add explicit add_bytes/add_pages methods). One potential problem with that could be that the meaning of NumberOfPages kind of differs depending on the page size of the page you add it too.

I agree with @phil-opp's comments above. Personally I don't find the existing implementations that confusing. Especially if we add a Step implementation for Page and PhysFrame, it seems nice that adding 1 corresponds to a step in a range.


feat: add multi file capabillity

Checklist:

[x] I have read freeCodeCamp's contribution guidelines.
[x] My pull request has a descriptive title (not a vague title like Update index.md)
[x] My pull request targets the master branch of freeCodeCamp.
[x] All the files I changed are in the same world language, for example: only English changes, or only Chinese changes, etc.

I've been concentrating on the early HTML challenges, which it works nicely for.  It also handles JavaScript challenges partially.  If you click on the tab it shows the editor and everything works as expected, but it doesn't show by default (yet).
React challenges are not handled at all, though it should be relatively easy to add support for them.

@raisedadead  Ideally I think /client should depend on /utils and /curriculum, but /curriculum should only depend on /utils.  That way it should be easier to reason about and easier to drop in a new /client if and when that's desirable.
So, as I've been going through this, I've been trying to disentangle /curriculum and /client a bit, putting various things in /utils. It's still a WIP, but my tentative plan is to cherry pick out those refactors into a separate PR, for ease of reviewing.  Does that sound reasonable?

Hey @moT01 to make things a little easier to manage, I've opened my own PR with these and a few more changes: https://github.com/freeCodeCamp/freeCodeCamp/pull/39223


Update Library text to use consistent date format

There are dates on the Blog page, and regardless, the site should be using the internationally standard RFC 2822 date format.


1.0.0 is broken

Trying your example code but importing 1.0.0 instead or relative path, then it doesnt trigger any updates.

ok, i will fix it!

Great! I tried it out and works. Thanks.


5.0.18 Variants API changes feel like a step backwards: Just me?

I'm struggling to see the value in moving theme values out of a centralized file and inline into components. I give benefit of the doubt where it's due, but maybe some visual examples would help explain the advantages?
In practice, this feels like it facilitates competing props and "boolean traps", but to be honest, I'm just shooting from the hip here.
Can you shed some light on the decisions made here, @jxnblk? 🙏

I think this blog post goes into more detail about the rationale FWIW https://jxnblk.com/blog/a-conceptual-look-at-theming/

Thanks for the context. I can definitely see the vision and reasoning now.

I'm wondering about primitives/extension, default values from theme, and React within and without the context of the new variants API.
Example:
// primitives/Text.jsx

import styled from '@emotion/styled';
import {
  colorStyle,
  compose,
  system,
  textStyle,
  typography,
} from 'styled-system';
import shouldForwardProp from '@styled-system/should-forward-prop';
import {Box} from './Box';

const whiteSpace = system({whiteSpace: true});
const textDecoration = system({textDecoration: true});

const styleProps = compose(
  colorStyle,
  textDecoration,
  textStyle,
  typography,
  whiteSpace
);

export const Text = styled(Box, {
  shouldForwardProp,
})(
  {
    label: 'text-primitive',
  },
  styleProps
);

Text.defaultProps = {
  as: 'span',
  fontFamily: 'sans',
};

Old way
// Heading.jsx

import * as React from 'react';
import {Text} from '../primitives/Text';

export const Heading = (props: Props) => {
  const {as = 'h2', size = 'medium', children, color = 'text.default'} = props;

  return (
    <Text
      color={color}
      as={as}
      fontFamily="system"
      margin={0}
      textStyle={headingStyles[size]}
      {...props}
    >
      {children}
    </Text>
  );
};

New way

export const VariantHeading = styled(Text)(
 {fontFamily: 'headings'}, // doesn't work without @styled-system/css to pick up theme values
  variant({
    scale: 'fonts',
    prop: 'size',
    variants: {
      small: {
        fontSize: 2,
        lineHeight: 1,
        fontWeight: 2,
      },
      medium: {
        fontSize: 3,
        lineHeight: 1,
        fontWeight: 2,
      },
      large: {
        fontSize: 5,
        lineHeight: 3,
        fontWeight: 1,
      },
      xlarge: {
        fontSize: 6,
        lineHeight: 3,
        fontWeight: 0,
      },
    },
  })
);

What about React props handling/rendering logic, etc?
How does this new API allow for setting of default styles (not even default props), that are based on theme values? Does it require @styled-system/css?


504 errors require computer restart

Checks

[X] I understand project setup issues should be asked on StackOverflow or in GitHub Discussions.
[X] I updated to latest http-proxy-middleware.

Describe the bug (be clear and concise)
Firstly, Thank You!
Frequently my team requires restarting our computer to solve all our requests resolving to a 504. We have been following this thread which seems to accurately describe and diagnose the problem. I have a very detailed post of our latest findings and figured belongs here.
https://github.com/netlify/create-react-app-lambda/issues/19
This could very well be a OS/System issue, but I want your eyes on it /// see if you've seen it.
Best,
Richard Miles
Step-by-step reproduction instructions
https://github.com/netlify/create-react-app-lambda/issues/19

Expected behavior (be clear and concise)
Non 504 errors.
How is http-proxy-middleware used in your project?
All request proxy to apache Wordpress.

What http-proxy-middleware configuration are you using?
simple routing.

What OS/version and node/version are you seeing the problem?
Monterey 12.2.1

Additional context (optional)
No response

https://github.com/chimurai/http-proxy-middleware/blob/master/README.md#nodejs-17-econnrefused-issue-with-ipv6-and-localhost-705

https://github.com/chimurai/http-proxy-middleware/issues/705

Is your issue related to node17+ new dns lookup behaviour for localhost?

In react v18 the behavior has changed to allow DNS to resolve ipv4 or ipv6 in any order, ie use first provided by OS. With macOs 12.4 (21F79) I believe ipv6 is the default regardless of order provided in your hosts file. This may have more or less been random, chosen at restart, but the links provided go into this in more detail.
My apache configuration was not setup to receive traffic from ipv6. Adding the listener as follows and restarting apache fixed this issue without a restart.
httpd.conf
Listen <IP_ADDRESS>:8080
Listen [::1]:8080

This solves // completes my research. Hopefully this info I've added here will help the next person. :)

Thanks for getting back and sharing your research and solution! 🚀


Loaders: PDF and Text

This is a WIP PR that attempts to provide an interface for loading text-based content from files.

I did a test run with Qdrant:
qdrant.create_default_schema
qdrant.add_loader Loader::PDF

path = File.join "/Users/andrei/Downloads/Exhibit-A.pdf"
qdrant.add_data path: path

qdrant.similarity_search(query:)

It worked! But I think we should really flesh out this end to end flow... in follow-up PRs.


Maven 4.0 build compatability

Is your feature request related to a problem? Please describe.
The maven build emits warnings which I believe could lead to issues running the build with maven 4.0
Describe the solution you'd like
Upgrade or fix the plug-ins we use.
Additional context
mvn clean install -Dmaven.plugin.validation=VERBOSE logs
[WARNING]
[WARNING] Plugin validation issues were detected in 4 plugin(s)
[WARNING]
[WARNING]  * org.commonjava.maven.plugins:directory-maven-plugin:1.0
[WARNING]   Declared at location(s):
[WARNING]    * io.kroxylicious.testing:testing-parent:0.5.0-SNAPSHOT (pom.xml) @ line 502
[WARNING]   Used in module(s):
[WARNING]    * io.kroxylicious.testing:testing-parent:0.5.0-SNAPSHOT (pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-api:0.5.0-SNAPSHOT (api/pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-impl:0.5.0-SNAPSHOT (impl/pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-junit5-extension:0.5.0-SNAPSHOT (junit5-extension/pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-integration-test:0.5.0-SNAPSHOT (integration-test/pom.xml)
[WARNING]   Plugin issue(s):
[WARNING]    * Plugin should declare these Maven artifacts in `provided` scope: [org.apache.maven:maven-builder-support:3.8.1, org.apache.maven:maven-model-builder:3.8.1, org.apache.maven:maven-core:3.8.1, org.apache.maven:maven-repository-metadata:3.8.1, org.apache.maven:maven-plugin-api:3.8.1, org.apache.maven:maven-resolver-provider:3.8.1, org.apache.maven:maven-settings:3.8.1, org.apache.maven:maven-artifact:3.8.1, org.apache.maven:maven-settings-builder:3.8.1, org.apache.maven:maven-model:3.8.1]
[WARNING]
[WARNING]  * org.apache.maven.plugins:maven-compiler-plugin:3.10.1
[WARNING]   Declared at location(s):
[WARNING]    * org.apache.maven:maven-core:3.9.2:default-lifecycle-bindings @ line -1
[WARNING]   Used in module(s):
[WARNING]    * io.kroxylicious.testing:kroxylicious-junit5-extension-bom:0.5.0-SNAPSHOT (kroxylicious-junit5-extension-bom/pom.xml)
[WARNING]   Plugin issue(s):
[WARNING]    * Plugin should declare these Maven artifacts in `provided` scope: [org.apache.maven:maven-plugin-api:3.2.5, org.apache.maven:maven-model:3.2.5, org.apache.maven:maven-core:3.2.5, org.apache.maven:maven-settings:3.2.5, org.apache.maven:maven-model-builder:3.2.5, org.apache.maven:maven-repository-metadata:3.2.5, org.apache.maven:maven-aether-provider:3.2.5, org.apache.maven:maven-settings-builder:3.2.5, org.apache.maven:maven-artifact:3.2.5]
[WARNING]
[WARNING]  * org.apache.maven.plugins:maven-javadoc-plugin:3.5.0
[WARNING]   Declared at location(s):
[WARNING]    * io.kroxylicious.testing:testing-parent:0.5.0-SNAPSHOT (pom.xml) @ line 490
[WARNING]   Used in module(s):
[WARNING]    * io.kroxylicious.testing:testing-parent:0.5.0-SNAPSHOT (pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-api:0.5.0-SNAPSHOT (api/pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-impl:0.5.0-SNAPSHOT (impl/pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-junit5-extension:0.5.0-SNAPSHOT (junit5-extension/pom.xml)
[WARNING]    * io.kroxylicious.testing:testing-integration-test:0.5.0-SNAPSHOT (integration-test/pom.xml)
[WARNING]   Plugin issue(s):
[WARNING]    * Plugin depends on plexus-container-default, which is EOL
[WARNING]
[WARNING]  * org.apache.maven.plugins:maven-resources-plugin:3.3.0
[WARNING]   Declared at location(s):
[WARNING]    * org.apache.maven:maven-core:3.9.2:default-lifecycle-bindings @ line -1
[WARNING]   Used in module(s):
[WARNING]    * io.kroxylicious.testing:kroxylicious-junit5-extension-bom:0.5.0-SNAPSHOT (kroxylicious-junit5-extension-bom/pom.xml)
[WARNING]   Mojo issue(s):
[WARNING]    * Mojo resources:resources (org.apache.maven.plugins.resources.ResourcesMojo)
[WARNING]      - Implements `Contextualizable` interface from Plexus Container, which is EOL.
[WARNING]    * Mojo resources:testResources (org.apache.maven.plugins.resources.TestResourcesMojo)
[WARNING]      - Implements `Contextualizable` interface from Plexus Container, which is EOL.
[WARNING]
[WARNING]
[WARNING] Fix reported issues by adjusting plugin configuration or by upgrading above listed plugins. If no upgrade available, please notify plugin maintainers about reported issues.
[WARNING] For more or less details, use 'maven.plugin.validation' property with one of the values (case insensitive): [BRIEF, DEFAULT, VERBOSE]

I think some of these warning might actually have started with 3.9.
https://github.com/kroxylicious/kroxylicious/issues/429

I thought I had seen the issue before but I failed to find it before raising

Oh wait crossing projects.
Yes I think the warning comes from maven 3.9

The passage of time for the win. We have naturally upgraded everything the warnings have gone.


Add Global Path Prefix Setter

Notice
If you need support or clarification regarding the usage of Drogon in your project, visit the official Drogon support channel at gitter
Please create a new issue only if you think you have found a bug or if have a feature request/enhancement.
Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
Describe the solution you'd like
A clear and concise description of what you want to happen.
I've checked all the interfaces in the HttpAppFramework and there doesn't seem to be an interface for setting the global path prefix.
This becomes important when we need to deploy an application to a sub-path of a domain, and we need to change this part of the prefix through the configuration.
Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.
Additional context
Add any other context or screenshots about the feature request here.
like NestJS:
https://docs.nestjs.com/faq/global-prefix

Temporarily, I can add an advice to achieve this.
For instance:
auto add_global_path_prefix_advice = [this](const HttpRequestPtr& req) {
    auto path_prefix = config_->http_global_path_prefix_;
    if (path_prefix.empty()) {
        return;
    }

    const auto& current_path = req->getPath();
    if (current_path.length() < path_prefix.length()) {
        return;
    }

    auto head_path = current_path.substr(0, path_prefix.length());
    if (head_path != path_prefix) {
        return;
    }

    auto after_path = current_path.substr(path_prefix.length());
    req->setPath(after_path);
};

app().registerPreRoutingAdvice(add_global_path_prefix_advice);

Adding a pre-routing advice is actually a good solution.
You can make it a plugin, in that case you can easily enable/disable the feature and change configs.


[BUG] Preventing keydown event capture when input is focused

Description
Expected Behavior:
When search input element is focused on the search page, keydown events should not be captured, allowing users to interact with the input without unintended side effects.
Actual Behavior:
Currently, when the search input is focused on the search page, keydown events are still being captured, which can lead to unexpected behavior and conflicts with user input.
Steps to Reproduce:

Open the linkfree.io
Navigate to the search page
Select any tags. (f.e. - javascript)
Focus on search input element.
Attempt to type right arrow(→) into the input and pagination will go next page

Screenshots
No response
Additional information
Would love to fix this

Could you please provide a video or screenshots as we are having trouble understanding what the problem is.

Could you please provide a video or screenshots as we are having trouble understanding what the problem is.

Yes, in the search page when search input is focused,  press right or left arrow key notice the pagination goes to different pages
https://github.com/EddieHubCommunity/LinkFree/assets/73095526/6f120617-d2e7-4f06-8f1a-70b4b604f2f3

on the search page when search input is focused, press right or left arrow key notice the pagination goes to different pages. I think this is the unexpected behaviour

Thank you for this clarification 👍 yes this is a bug, I will assign to you

@badrivlog you've a great work, but i didin't notice what you've done. so i also fixed same issue with my approach. so as i am  a beginner could you please cooperate with my PR. because it would be more motivatinal for contributing the upcoming issues

@badrivlog you've a great work, but i didin't notice what you've done. so i also fixed same issue with my approach. so as i am a beginner could you please cooperate with my PR. because it would be more motivatinal for contributing the upcoming issues

Hope you reply back with positive opinion

@KSSaiTeja I sent to you the Contributing Guide a few days ago and explained to you that this is not how collaboration is done on this project. You mentioned that you would read the Guide and follow our rules but you have not.  You mention that as a first time contributor you are finding this confusing - please let maintainers know what part of the Contributing Guide is not clear and we will be very pleased to explain this further.
I will be closing your PR https://github.com/EddieHubCommunity/LinkFree/pull/8691

@badrivlog please disregard the above messages and references to PR https://github.com/EddieHubCommunity/LinkFree/pull/8691

@badrivlog please disregard the above messages and references to PR https://github.com/EddieHubCommunity/LinkFree/pull/8691

please assign me this issue... i will work upon it. this is the last time please excuse me and give one oppurtunity to work on this.
As i have already worked on this, please consider that and i promise you i won't repeat this again..
due to this mistake another PR is also closed please dont do this..
Excuse me for this. I won't repeat again..
please assign me this

please assign me this issue... i will work upon it. this is the last time please excuse me and give one oppurtunity to work on this.
As i have already worked on this, please consider that and i promise you i won't repeat this again..
due to this mistake another PR is also closed please dont do this..
Excuse me for this. I won't repeat again..
please assign me this

@KSSaiTeja As explained to you before, the assignee of this issue has also already raised a pull request before yours. Please stop creating confusion, noise and extra work for everyone within the project


Document cli.js

There's no documentation for command-line interface cli.js in the README, but we should at least mention it.  At the same time, we should mention how to run it from a git clone, as described in https://github.com/Khan/KaTeX/issues/894#issuecomment-404758297

cli.js arguments seem to be outdated:
https://github.com/Khan/KaTeX/blob/9783ac1466186504f823076c708c04473f8b6761/cli.js#L53-L59


Fix broken links in ToC.

Changed 📝

Replaced all & in ToC and headers with and because they were not working properly.

LGTM. Thanks. <3


Register grpc metrics in main

This needs to be registered last after all other services have been
registred.
Signed-off-by: Michael Crosby<EMAIL_ADDRESS>

Codecov Report

Merging #1003 into master will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #1003   +/-   ##
=======================================
  Coverage   59.05%   59.05%
=======================================
  Files           5        5
  Lines         779      779
=======================================
  Hits          460      460
  Misses        205      205
  Partials      114      114

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 9b8e76e...c2dd40c. Read the comment docs.

LGTM

LGTM


Adds gravity artifact effect

About the PR
Adds an artifact effect which generates a gravity well similar to a singularity.
Media

[ ] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase TODO

Changelog

:cl:

add: Added gravity wells as a possible artifact effect.

any reason this is draft? looks fine

I was considering adding localized antigrav/highgrav effects and I also haven't gotten a video of it ready.

alright

@TemporalOroboros are you coming back to this

@TemporalOroboros are you coming back to this

Once the smooth gravity PR is merged, yes.

reopen once you got time


Adding internal padding changes the size of the icon

Filing this issue because I want to call some unexpected behavior.  We're using tailwind and @steeze-ui/svelte-icon in a sveltekit app.
When adding the padding tailwind classes, the icon size changes.
So <Icon class="w-6 h-6 pr-2" /> creates an icon with properties <Icon class="w-4 h-4 mr-2" />
Maybe it's WAI because we want the icon size to be constant, because technically w-6 h-6 pr-2 would have a width of w-8, but I wanted to file this issue because it does not behave like other libraries we use.

You need to learn the difference between padding and margin. This is also not at all related to this repo.


Add documentation in english

As some (or many) it@M projects use english as developer language, the README also should contain a section with usage instruction in english.
Example project:

Hi @eidottermihi, I would like to contribute.
Can you assign this issue to me?


Handling sparse categorical data

I am working with Bayesian Optimization. Before using it to guide the selection process of my real-world wet-lab chemical experiments where I'll have much more flexibility, I want to evaluate its effectiveness on a prior training dataset, where I retroactively use Bayesian Optimization to assess how it would have navigated the landscape. However, this training dataset (i.e., search space) is not the canonical use-case for Bayesian Optimization for the following reasons:

Some of the variables are categorical; to better represent the categorical variables rather than a simple one-hot encoding, I have provided embeddings in tSNE to better capture relative differences. The model, however, still ultimately should suggest one of the provided discrete categories.

It is sparse. For context, each row represents a different chemical mixture, where a single functional target value is measured for each mixture (i.e., 'target_value'). I have a total of 7 different variables to learn from, i.e.,

component1_structure (3 tSNE dimensions, but effectively categorical)

component1_ratio (1 dimension, continuous)

component1_weight (1 dimension, continuous)

component2_structure (2 tSNE dimensions, but effectively categorical)

component2_ratio (1 dimension, continuous)

component3_ratio (1 dimension, continuous)

component4_ratio (1 dimension, continuous)

This combinatorial space is theoretically very large. However, I only have 1801 different mixtures (i.e., combinations of these variables) with functional data; I want the model to strictly explore/suggest among these 1801 mixtures where I have functional data.

Rather than sequential optimization, each round of experiments will have multiple (i.e., 10) different mixtures to test. Hence, as described in this paper, I incorporate the Kriging believer algorithm. My goal is to demonstrate that Bayesian Optimization to search this training data is effective; hence, ultimately motivating using it for an actual real-world dataset dynamically (where the second constraint described above fortunately won't apply). Nevertheless, I want to conceive of a way to use Bayesian Optimization for this preexisting training data.

Here is an implementation example on Colab: https://colab.research.google.com/drive/19cY54d6M7jYl1fRDpL7oGVPF832JU247?usp=sharing
My current strategy as you'll see on the Colab is using a weighted distance metric to basically identify the unique point (among the 1801 not already selected) closest to what the model suggests. However, I have doubts this is a sound approach.
Suggestions on how to improve this strategy and/or code implementations would be very helpful.
Thanks in advance!

Hey @evancollins1,
this is a pretty complex situation. I'll just drop my 2 cents to every point you mentioned, since you didn't ask any specific question.

Some of the variables are categorical; to better represent the categorical variables rather than a simple one-hot encoding, I have provided embeddings in tSNE to better capture relative differences. The model, however, still ultimately should suggest one of the provided discrete categories.

If I'm understanding right, you're using tSNE on OHE categorical data, individually per feature? That doesn't sound very meaningful to me, intuitively. Wouldn't you just end up with singular clusters in the tSNE space, with each cluster equivalent to one category? Especially considering you're relying on distances between those clusters for the GP, which are devoid of meaning. Or maybe I misunderstand?

This combinatorial space is theoretically very large. However, I only have 1801 different mixtures (i.e., combinations of these variables) with functional data; I want the model to strictly explore/suggest among these 1801 mixtures where I have functional data.

I think how large this space is depends a lot on the cardinality of the categorical data. Just considering the continuous data, it doesn't sound too bad considering you have 1800 data points.

Rather than sequential optimization, each round of experiments will have multiple (i.e., 10) different mixtures to test. Hence, as described in this paper, I incorporate the Kriging believer algorithm. My goal is to demonstrate that Bayesian Optimization to search this training data is effective; hence, ultimately motivating using it for an actual real-world dataset dynamically (where the second constraint described above fortunately won't apply). Nevertheless, I want to conceive of a way to use Bayesian Optimization for this preexisting training data.

I looked at the asynchronous parallel optimization problem a bit when implementing the acqusition functions, and I found lying to be a much better strategy in practice than believing, so much so that I ended up dropping the believer from the PR despite having fully implemented it. You could also try Thompson Sampling, which is implemented in the notebook (though it is quite computationally expensive).

My current strategy as you'll see on the Colab is using a weighted distance metric to basically identify the unique point (among the 1801 not already selected) closest to what the model suggests. However, I have doubts this is a sound approach.

I'm curious how this weighted distance metric was derived. If you have a good idea on how to construct a meaningful distance function over your space, you could try using it as a kernel for the GP regressor. Similarly, if you don't have a good idea, it might be better to use the fitted GPs kernel as a distance metric.
I hope this is helpful.

Thank you @till-m for your answers (and patience with the post, as I understand it raised many questions). I am new to this field.
As for tSNE, more broadly, I thought that encoding categorical data in some representative latent space may be more informative than simple one-hot encoding, namely because the pairwise distances in latent space capture degree of similarity between the discrete categories. Is this reasoning valid? I was motivated by this paper but my implementation/reasoning may be invalid. I believe this package also encodes categorical data (e.g., chemical structures) in latent space, though didn't know how to implement this in this package.
As for the 1801 datapoint (i.e., chemical mixtures) search space I mentioned, I guess my question is if this bayes_opt package allows for the search space to be constrained?, i.e., select combinations of variables are the only options that the model can consider, meaning that the allowable search space is sparse. Practically speaking, I noticed how bayes_opt expects pbounds for each variable, such as below...
optimizer = BayesianOptimization(f=objective_function, pbounds=pbounds, verbose=2, random_state=987234)
... but what if not every combination of variables can be considered (i.e., only the 1801 specific combinations can be considered when selecting points).
Lastly, with respect to the weighted distance metric, how could I use it as a kernel for the GP regressor?
Appreciate your help!

To check, you want to do two things:

Evaluate BO as an approach to finding promising candidates by testing its performance on existing data
Apply BO in a practical setting, if (1) works well: Look for candidates and experimentally test them.

Is that correct?

As for tSNE, more broadly, I thought that encoding categorical data in some representative latent space may be more informative than simple one-hot encoding, namely because the pairwise distances in latent space capture degree of similarity between the discrete categories.

There is a chance I am missing something. Here's what I think you're doing: You have a categorical feature (e.g. fruit) with values (e.g. apple, banana and orange). You OH-encode it into 1, 0, 0, 0, 1, 0, 0, 0, 1 vectors respectively. The tSNE will then just assign all apples to one point, all bananas to a different point etc. There will not be a meaningful distance between them, because tSNE has no idea how similar apples are to bananas. It only knows that an apple is the same as another apple and that two apples differ the same amount from two bananas. It does not know whether an apple is more different to a banana than it is to an orange. This is more or less the same information that's present in the OHE (depending on the exact distance metric that you use to calculate the distance of the OHE vectors, if it's unweighted, then an apple is as different from a banana as it is from an orange). In short, without additional information this is not meaningful.

this paper
this package

I searched the paper for "tsne" and didn't find anything, if you point me to where they discuss the encoding I can have another look. I also didn't find exactly where the package talks about encoding.

As for the 1801 datapoint (i.e., chemical mixtures) search space I mentioned, I guess my question is if this bayes_opt package allows for the search space to be constrained?

If I understand correctly what you want, the way to go here is to evaluate the acquisition function on all viable points (i.e. the 1801 datapoints) and select the highest-value one. That's both much faster, easier, etc. than anything else. You will still need to set pbounds, since we did not foresee this case and I don't think the optimizer can be constructed without them. For what it's worth, this approach seems scientifically sound to me.

Lastly, with respect to the weighted distance metric, how could I use it as a kernel for the GP regressor? - is there example code somewhere that I could learn from?

See here for the sklearn docs on GPR kernels. How does the function look exactly?
Once you have defined your kernel object, you can call optimizer.set_gp_params(kernel=kernel) to use it.
If you have categorical features, the best way to deal with them AFAIK is to make the kernel aware of it, see here. The bad news is, this is not implemented in this library. You can sort-of monkeypatch it, but it's tricky. If you feel comfortable in python and want to do this, you can check out this comment.

Hi @till-m,
Thanks again for your thoughts!
Yes - you are correct that those are my two objectives.
For tSNE, to clarify, my tSNE embeddings were determined by analyzing 1024 data features (i.e., additional information) of the discrete categories. To continue the fruit analogy, I have feature data for 1024 different characteristics of the fruits, such that each discrete fruit category can be mapped in this 1024-dimensional space. I then use tSNE to reduce into 3 dimensions, with the idea being that pairwise distance in this space captures extent of similarity between two fruits.
As for my first objective of analyzing the preexisting dataset...

If I understand correctly what you want, the way to go here is to evaluate the acquisition function on all viable points (i.e. the 1801 datapoints) and select the highest-value one. That's both much faster, easier, etc. than anything else. You will still need to set pbounds, since we did not foresee this case and I don't think the optimizer can be constructed without them. For what it's worth, this approach seems scientifically sound to me.

...that's good to know that this approach is theoretically faster and easier. How would you recommend I set pbounds and enforce the model must select only from the discrete 1801 points? I understand the concept that the acquisition function needs to evaluate the 1801 points and select the highest one; do you have any code suggestions on implementing this in this package?

If you have categorical features, the best way to deal with them AFAIK is to make the kernel aware of it, see here. The bad news is, this is not implemented in this library. You can sort-of monkeypatch it, but it's tricky. If you feel comfortable in python and want to do this, you can check out this https://github.com/bayesian-optimization/BayesianOptimization/issues/191#issuecomment-629828879.

Lastly, thank you for pointing me to the resources for encoding categorical features. Is this package able to handle categorical variables like this example: temperature values where the acceptable set of temperatures is [10, 15, 20, 25, 30], i.e,. 10 to 30 degrees by intervals by 5.
Thanks in advance!

If the above does not do the trick and you think you might need more help with the data science part of the problem, feel free to let me know. It sounds like an interesting problem and wouldn't mind having a look at it to see if there's the possibility of some sort of collaboration, depending on the scope and direction of the project (I assume this is academic in nature?)

Thanks again for your response @till-m,

Moreover, if the optimizer suggests you sample a point that doesn't match neatly into one of the two categories -- which is likely to happen -- can you do that with your experiment?

This is a good point about decoding back to categorical space that I also considered. I'd be curious to hear your opinion about a sister package to this one called edbo that I've mentioned in my prior comments. In this example notebook for ebdo, they encode categorical variables using more descriptors. After reading the paper and code, however, I still was not sure how they decode back into categorical space (also raised in this issue here). If you have any quick thoughts on this that'd be great.

It sounds like an interesting problem and wouldn't mind having a look at it to see if there's the possibility of some sort of collaboration, depending on the scope and direction of the project

Great! Yes, this is academic. I'd be happy to chat more about this and discuss a potential collaboration. Feel free to send me an email at<EMAIL_ADDRESS>if you are interested and we can schedule a time to chat; thanks, looking forward to it

Hey @evancollins1,

This is a good point about decoding back to categorical space that I also considered. I'd be curious to hear your opinion about a sister package to this one called edbo that I've mentioned in my prior comments. In this example notebook for ebdo, they encode categorical variables using more descriptors. After reading the paper and code, however, I still was not sure how they decode back into categorical space (also raised in this https://github.com/b-shields/edbo/issues/23). If you have any quick thoughts on this that'd be great.

I'm not sure what descriptor is but if I am reading the EDBO paper right, they're using OHE for the categorical variables. With that it should be straightforward to map back to categories. But maybe I misread?

Feel free to send me an email at<EMAIL_ADDRESS>if you are interested and we can schedule a time to chat; thanks, looking forward to it

Excellent, I'll shoot you an email later :)


Document how imports work & avoid printing invalid JS in the error message

Suppose you have the following WIT:
package local:hello;
world hello {
  import foo: func() -> string;
  export hello: func(name: string) -> string;
}

and you want to create and componentize a JS module which provides that interface.
The first thing that trips you up is that nothing tells you want module specifier to use for the import. If you pick one at random:
import { foo } from '??';
export function hello(name) {
  return `hello ${name} here is your value: ${foo()}`;
}

That produces
Import '??' in source.js is not defined as a world import. Only component-defined imports can be used.
Unable to link the source code. Imports should be:

  import { default } from "foo";

which at least suggests that the module specifier should match the import name. (Though it's confusing that it says the error is in source.js given that my file is in fact named hello.js.) Great! Ideally that would be documented outside of the error message.
Unfortunately, the code it suggests is a syntax error (since default is not a valid identifier name in JS). You actually want a default import, as in:
import nameOfYourChoice from "foo";
export function hello(name) {
  return `hello ${name} here is your value: ${nameOfYourChoice()}`;
}

which does in fact work once you provide the right bindings, for example with JCO:
jco componentize hello.js --wit hello.wit -n hello -o hello.wasm
jco transpile hello.wasm --instantiation sync --out-dir out

can be run with
import fs from 'node:fs';
import { instantiate } from './out/hello.js';
let x = instantiate(
  n => new WebAssembly.Module(fs.readFileSync('out/' + n)),
  { foo: { default: () => 'xyz' } },
);
console.log(x.hello('alice'));

When handling resources, it also suggest invalid js code:
 . import { filesystemErrorCode, [method]descriptor.readViaStream, [method]descriptor.writeViaStream, [method]descriptor.appendViaStream, [method]descriptor.advise, [method]descriptor.syncData, [method]descriptor.getFlags, [method]descriptor.getType, [method]descriptor.setSize, [method]descriptor.setTimes, [method]descriptor.read, [method]descriptor.write, [method]descriptor.readDirectory, [method]descriptor.sync, [method]descriptor.createDirectoryAt, [method]descriptor.stat, [method]descriptor.statAt, [method]descriptor.setTimesAt, [method]descriptor.linkAt, [method]descriptor.openAt, [method]descriptor.readlinkAt, [method]descriptor.removeDirectoryAt, [method]descriptor.renameAt, [method]descriptor.symlinkAt, [method]descriptor.unlinkFileAt, [method]descriptor.isSameObject, [method]descriptor.metadataHash, [method]descriptor.metadataHashAt, [method]directoryEntryStream.readDirectoryEntry, [resourceDrop]descriptor, [resourceDrop]directoryEntryStream } from<EMAIL_ADDRESS>


Do not calculate position on hidden elements

If an slider is hidden on init, it will always set its min attribute as its value. This overwrites any default value that is set via the value attribute.
This commit will prevent a hidden element from calculating its position and instead rely on the defaults set.
This will also prevent any the onSlide and onSlideEnd callbacks from being run on a hidden element - however if it's hidden, these wouldn't be trigger-able anyway!

First of all thanks for your pr maybe I misunderstood you but I don't get your point.
Check this example it works fine for me.
The input[type="range"] is hidden on initialization and sets the correct attributes.
The problem is if you show the hidden element later somehow the ui of the slider is not correct and that's what you probably expect if it was initialized.

After further testing it only happens when an !important is on the hidden class as can be seen here:
http://codepen.io/anon/pen/YXqbvK
As the website I am using it on uses Bootstrap, hide and hidden both have !important in their classes. It looks like the "display: none !important" is overwriting the  rangeslider classes

@coderjp Why not use .is(':hidden')

Hello, I just sent a PR correcting this problem : https://github.com/andreruffert/rangeslider.js/pull/188


Release management and version tag

Hello
The project needs some basic release management and git tagging.
I.e. currently the docker image is pushed without any meaningful tags. Instead on a new release - corresponding git tagsshould be created and docker image should be oushed with a new tag.
This is critical to be able to pin a particular version when deploying this operator to k8s.

completely agree, we need this.
I think the easiest thing could be to use the commit hash to tag the image, that way we don't have the need to create a release yet.
wdyt? would that be useful?

Yes, definately it will help right now, to better manage pinned version of the project.

done, https://quay.io/repository/apicurio/apicurio-registry-kube-sync?tab=tags

Amazing, thnx !


Fixed typo for once flag description

Q
A

Bug fix?
yes

What's in this PR?
This PR fixes typo for the --once flag description
Why?
This PR fixes typo for the --once flag description
Checklist

[x] Code meets the Developer Guide
[ ] User guide and development docs updated (if needed)
[ ] Related Helm chart(s) updated (if needed)

 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.You have signed the CLA already but the status is still pending? Let us recheck it.


Copied dashboards do not work in MySQL except "Server sessions"

System information :

Operating system (distribution) and version Windows 10
DBeaver version 6.3.0 EE
Additional extensions

Connection specification:

Database name and version MySQL

Describe the problem you're observing:
Dashboards in MySQL except "Server sessions" dashboard:

are copied with empty field "Queries"
do not show any information if create them with using "Copy" function and filling field "Queries"

Steps to reproduce, if exist:

Open Dashboard panel>settings>manage
Select any Mysql Dashboard except "Server sessions"> press "Edit"> copy content of field "Queries"> close window "Edit"
3.Press "Copy" btn for the same Database> change data in "Name" field> insert copied data in field "Queries"> press "Ok"
add the default and the created dashboards in the panel and compare.

We don't support dashboards config editor for key/value based queries (like most of MySQL dashboards which are based on SHOW STATUS query).
We need to add this feature.

https://dbeaver.testquality.com defect D21. Do not remove or edit.


Pipeline monitoring metrics [WIP Draft]

Part of #83
Replaces #184.
See related research:
https://github.com/open-telemetry/oteps/pull/238
Changes
Describes four new metrics (3 collector, 1 SDK):

otelcol.receiver.items
otelcol.processor.items
otelcol.exporter.items
otelsdk.producer.items

and five new standard attributes:

otel.signal
otel.success
otel.outcome
otel.name
otel.pipeline

Feedback from semconv meeting:

Write the descriptive text, add in references to the yaml anchors--then generate will do the right thing.
Look at error.type attribute value space, it may be incorporated.


types(runtime-dom): cast to the correct eventType instead of any

I originally wrote these types but then found them to be misleading - It's not going to be just "KeyboardEvent" and there're many other possibilities.
For example you can do <div @click.ctrl="foo"/> . So to properly type it we'll need to use something like:
type Events = KeyboardEvent | MouseEvent | TouchEvent
{ ctrl: e => !(e as Events).ctrlKey }

and it's too verbose.
And after that I realized users can even do <div @input.ctrl="bar"/> - so I just gave up typing it.

The typings here are for the someone reading it to know this is suppose to be that type of event,

type Events = KeyboardEvent | MouseEvent | TouchEvent
{ ctrl: e => !(e as Events).ctrlKey }

doing this will also cause a bit annoyance because you will need to cast at every prop. replacing as any to the expected event, in my opinion makes more sense.

replacing as any to the expected event, in my opinion makes more sense.
But we're indeed expecting KeyboardEvent | MouseEvent  - both are valid usage.

<div @click.ctrl="foo"/>   Ctrl click
<div @keydown.a.ctrl="foo"/>  Ctrl+A

TouchEvent also has ctrlKey, so it's technically valid (though people may not actually use it)
If we really want type correctness, these should all be typed.

I see what you mean, this should be enough
type KeyedEvent = KeyboardEvent | MouseEvent | TouchEvent;
// ...
!(e as KeyedEvent).ctrlKey,


PageFactory and ExpectedConditions are Obsolete.

Since, the above are obsolete. DotNetSeleniumExtras can be used.
But the DotNet Client's Wiki for Appium has -
PageFactory.InitElements(context, screenOrPage , new AppiumPageObjectMemberDecorator());
Now, here error comes that -"PageFactory does not exist in the current context."
I'm trying to automate an Native App which is present on both Android & iOS Platforms.
Then How can we define elements for both iOS & Android to execute them in Parallel.
Kindly update the DotNet Client Documentation with Latest Appium 2.x.x. examples in a more easy way

@gshuchi, What appium dotnet client are you using?

Hey @Dor-bl. Thanks for checking this issue. Please find the Dependencies list of my project -

You are using an out of support version of this client. I suggest you update to version 5.x. Thing is page objects is obsolete on that version. Maybe you can try and find another alternative.

Appium.WebDriver 4.4.5 should be v5 rc https://www.nuget.org/packages/Appium.WebDriver/absoluteLatest#versions-body-tab
https://github.com/appium/dotnet-client?tab=readme-ov-file#v5-release-candidate

@Dor-bl @KazuCocoa Thanks a ton!


Wallet saving on Win 8 throwing an exception

Whilst testing on Win 8 I saw the following exception:
14:25:07.966 [Timer-3] DEBUG o.m.v.swing.HealthCheckTimerTask - Start of HealthCheckTimerTask
14:25:07.966 [Timer-3] DEBUG o.m.v.swing.HealthCheckTimerTask - Checking if wallets are dirty . . .
14:25:07.966 [Timer-3] DEBUG o.m.v.swing.HealthCheckTimerTask - Saving dirty wallet 'C:\Users\jim\Documents\petty-cash.wallet'...
14:25:07.966 [Timer-3] DEBUG org.multibit.file.FileHandler - Start of secureDelete
14:25:08.184 [Timer-3] DEBUG org.multibit.file.FileHandler - Result of delete of file 'C:\Users\jim\Documents\petty-cash.wallet' was true
14:25:08.184 [Timer-3] DEBUG org.multibit.file.FileHandler - End of secureDelete
14:25:08.184 [Timer-3] DEBUG org.multibit.file.FileHandler - Saving wallet file 'C:\Users\jim\Documents\petty-cash.wallet' ...
14:25:08.184 [Timer-3] ERROR o.m.v.swing.HealthCheckTimerTask - The new wallet "C:\Users\jim\Documents\petty-cash.wallet" could not be created. The error was "Cannot save wallet 'C:\Users\jim\Documents\petty-cash.wallet".
14:25:08.184 [AWT-EventQueue-0] DEBUG o.m.viewsystem.swing.StatusBar - StatusBar label = 'The new wallet "C:\Users\jim\Documents\petty-cash.wallet" could not be created. The error was "Cannot save wallet 'C:\Users\jim\Documents\petty-cash.wallet".'
14:25:08.184 [Timer-3] DEBUG o.m.v.swing.HealthCheckTimerTask - End of HealthCheckTimerTask
Also on start up MB Classic would load a rolling backup sometimes too.
Looks like the change to saving the file stats might have broken something (synchronised ?)
I didn't see any bitcoin being lost as the rolling backups worked but clearly it needs looking at

Made various changes to tighten up the wallet saving, mainly using a rename rather than a 'copy and secure delete' which was the proximal problem.
Tested on Mac and Win 8 ok.
Awaiting review and closing.

You can test these changes directly from an installer if you want.
I have created new installers and put them in:
https://multibit.org/releases/multibit-classic/multibit-classic-0.0.0/

Code review looks fine no errors seen from wallet. Logs do contain a lot of extra info from Bitcoinj though.
Closing.


[Suggestion] Rename mod to something more descriptive of the goal

100% up to you, but I think this mod would benefit from having a title more descriptive of it's goal. Like: Official Rule set, Rule as Written, or Table Top rules, and so on.
The word "rebalancing" could mean anything. It could aim to make the game easier, more difficult, more challenging, etc. And DnD, well, I hope players know that BG3 is about DnD ;)
I think it would make it easier for D&D table top player to find this mod and benefit from it.

I might rename it to RAW, that looks like a good name

There's a mod for Pathfinder: Kingmaker called "Closer to Tabletop" that did something similar. Succinct and to the point. Also, more understandable for outsiders. "RAW" sounds a bit too obscure and I didn't know what it meant until I read it up.
Great mods though, I really appreciate what you are doing. My first contact with 5e was Solasta and by extension I read up on BG3 only recently. Would indeed prefer if Larian made it closer to tabletop.

Done


Moveth mint resource account refactor

Summary
Bridge moveth module can now be published under resource account.
Changelog

Added admin role to allow adding minters
Configured addresses in Move.toml as an example of how addresses could be set up for resource account
Modified the complete_bridge_transfer function so anyone can call it. The logic of this should be checked against concrete bridge implementation.

Testing

Modified unit tests in module to use admin role for adding minter. All tests pass.
Tested publishing module under resource account and minting using CLI.

To reproduce publishing under resource account:
aptos move create-resource-account-and-publish-package --address-name default --seed 1234

To reproduce minting (assuming source address 0xe4... and resource account address 0x6a...:
aptos move run --function-id 0x6a05dca724278092fb96a8ff91e1b814092e4e2059e1769793cda8d48f199951::moveth::mint --args address:0xe4442499a19ba92b5901cb059bad46eb15c88ebf99bc4d18f7f17e8beea4a4b2 u64:5

Outstanding issues
Design or address configuration may need to be tweaked for concrete implementation with the other bridge components. More thorough testing of various module functions from CLI could be conducted.
I tested against Aptos testnet as Suzuka is under maintenance.
Currently the test test_complete_transfer_assets fails with error EALREADY_MINTER. I'll have another look at that in the morning unless anyone else debugs it first.

@0xmovses all unit tests now pass. The way I have Move.toml set up is
[package]
name = "bridge-modules"
version = "1.0.0"
authors = []

[addresses]
atomic_bridge = "<resource-account-address>"
moveth = "<resource-account-address>"
master_minter = "<resource-account-address>"
minter = "<source-address>"
admin = "<source-address>"
pauser = "0xdafe"
denylister = "0xcade"

[dev-addresses]
# moveth = "0xbeef"
# atomic_bridge = "0xfeef"
# master_minter = "0xbab"
# minter = "0xface"
# admin = "0xad"
# pauser = "_"
# denylister = "_"

@0xmovses I removed the misleading mint_to address which I had put in as kind of a kludge to solve the  error I was getting when adding a minter. To fix the EALREADY_MINTER error I commented out the redundant add_minter call in test_complete_bridge_transfer. It seems to me that test of client minting some MovETH to themselves is not neccesary.

I still get the error above, I think there is a step missing in the testing instructions https://github.com/movementlabsxyz/movement/pull/205#pullrequestreview-2179996421 let me know.

I still get the error above, I think there is a step missing in the testing instructions #205 (review) let me know.

You ran aptos init and it is still giving you that same "Unable to find config" error?

No I didn't run aptos init. Wasn't in the testing instructions, I'll try that. I think we should add some CI job that runs these tests, as we had a change in the MCR contracts that broke the settlment last week. Adding a job to CI that runs the tests would prevent this from happening.

So here's what I did
⋊> ~/m/m/p/b/move-modules on andygolay/moveth_mint_resource_account_refactor-2 ⨯ aptos init                                                                   15:45:44
Configuring for profile default
Choose network from [devnet, testnet, mainnet, local, custom | defaults to devnet]

No network given, using devnet...
Enter your private key as a hex literal (0x...) [Current: None | No input: Generate new key (or keep one if present)]

No key given, generating key...
Account 0x58.. doesn't exist, creating it and funding it with 100000000 Octas
Account 0x58.. funded successfully

---
Aptos CLI is now set up for account 0x58.. as profile default!  Run `aptos --help` for more information about commands
{
  "Result": "Success"
}

Then I ran the test command
aptos move create-resource-account-and-publish-package --address-name default --seed 1234
And I got this output
Do you want to publish this package under the resource account's address 0x6c18b5c30971d72c20be09b366711e01d95a56e47257a8cf4061221513a961ae? [yes/no] >
y
package size 12042 bytes
{
  "Error": "Simulation failed with status: CONSTRAINT_NOT_SATISFIED\nExecution failed with message: metadata and code bundle mismatch: unregistered dependency: '6a05dca724278092fb96a8ff91e1b814092e4e2059e1769793cda8d48f199951::moveth'"
}

Should I manually updating my Move.toml with the 0x58..  account generated?

0x6c18b5c30971d72c20be09b366711e01d95a56e47257a8cf4061221513a961ae

Yeah exactly. Each time I test it from CLI, I'll create a different seed and then manually update the addresses in Move.toml.
So if 0x6c18b5c30971d72c20be09b366711e01d95a56e47257a8cf4061221513a961ae is the resource account address for the seed you chose, then that can be the address for atomic_bridge, moveth, and master_minter as that is all under the resource account.
The 0x58... address created via aptos init is for the source account. I set it up to be the address for minter and admin. admin might be optional but it creates the possibility of some conveniences for deployers so I left it in for now.

Ok cool I'll try that, in the meantime I created this issue, so that we can test move modules in CI with automation. Something for later https://github.com/movementlabsxyz/movement/issues/211

:shipit: