Add a license file

So I can link to it. Thanks!

Do @mjackson and @ryanflorence want to be on the copyright line?

@timdorr for the same reason I left it

@eknuth Here's your link:
https://opensource.org/licenses/MIT

Sorry for the confusion, but I need a license file in your repository that i can link to as a public attribution that the router is indeed using the MIT license. package.json and readme are one thing, but the license file is what I need.
We are using your awesome routing module in several projects at New Relic. I appreciate the work you have done. If there is anything I can do to make this happen, just let me know.

Sorry for closing so quickly, @eknuth. Hopefully you've got what you need now :)


Add a simple cluster test script.

Hi @brendandburns, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

It looks like you're a Microsoft contributor (Brendan Burns). If you're full-time, we DON'T require a Contribution License Agreement. If you are a vendor, please DO sign the electronic Contribution License Agreement. It will take 2 minutes and there's no faxing! https://cla.microsoft.com.

TTYL, MSBOT;

@brendandburns - I've merged this change.  @weinong - please look at my two minor comments as you work on Jenkins.


Safety-tuned model for "hello world" quickstart command

Kudos to the project that I was able to very quickly and easily install/run a basic example following the instructions from the huggingface mlx-community page!
However, both that page and the README in this repo give the quickstart command: python -m mlx_lm.generate --model mistralai/Mistral-7B-v0.1 --prompt "hello"
This command, probably owing to the (intentionally) non-safety-tuned nature of Mistral-7B, reproducibly (on my machine) generates a forum post fragment about "cutting" / self-harm, which seems like a non-ideal experience. Even if others don't get this exact generation, various "unfriendly" outputs are probably possible with a non-safety tuned model.
Suggested fix: the quickstart / "hello world" command could choose from any number of safety-tuned models instead of "bare metal" Mistral-7B.

HuggingFaceH4/zephyr-7b-beta is a fine-tune of mistralai/Mistral-7B-v0.1, seems it has not been explicitly RHLF'ed for safety but has at least been chat/instruction-tuned, so for innocuous prompts at least it seems nicer. Other criteria:

hosted by an org, not an individual account
OSS license (MIT), no need to specially request weights/etc
already uses safetensors

python -m mlx_lm.generate --model HuggingFaceH4/zephyr-7b-beta  --prompt "hello" gives me
Prompt: <|user|>
hello</s>
<|assistant|>

Hello, how may I assist you today? Please let me know what you're looking for, and I'll do my best to provide you with helpful information. You can ask me anything related to technology, science, history, and more. I'm here to answer your questions and provide you with accurate and up-to-date information. Let's get started!
==========

zephyr, open-hermes-mistral or just mistral-instruct


How to test ServiceBus Trigger? Create ServiceBusMessage in unit tests

Is your question related to a specific version? If so, please specify: no
What binding does your question apply to, if any? (e.g. Blob Trigger, Event Hub Binding, etc)
ServiceBus
Question
How to create ServiceBusMessage in unit tests?
Could you add examples for unit testing bindings other than http?
I'm getting "does not accept parameters" error when I try to create the ServiceBusMessage.

Unless I'm missing something in my code, in order to test Service Bus trigger functions, ServiceBusMessage needs to be mocked?
from unittest.mock import Mock
import azure.functions as func

def test_your_function():
    mock_msg = Mock(spec=func.ServiceBusMessage)
    mock_msg.get_body.return_value = b"Your mock message body"

    # Call your Azure function
    result = your_function(mock_msg)

I'm wondering why HTTP Request has constructor but ServiceBusMessage doesn't?


Link to private repository found

On file /certification-tool/frontend/docs/development/Test_Harness_Frontend_Development_Environment_Setup_Windows/Test_Harness_Frontend_Development_Environment_Setup_Windows.adoc
Private link at line number 89:
https://github.com/CHIP-Specifications/chip-certification-tool-frontend/tree/develop
Can we replace the private link with the link to the public repository?
https://github.com/project-chip/certification-tool-frontend/tree/main

Addressed in this PR:
Updates doc repo link #8


Lift is freezing with Postgres when non standard port is used

Backtrace, after waiting a while:
Error: Error in lift engine for rpc listMigrations:
  thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: ConnectionError(Error(Some("error connecting to server: Connection refused (os error 61)"))

stack backtrace:
   0: backtrace::backtrace::trace::h862903ac52cf58ce (0x10e5cd8ae)
   1: backtrace::capture::Backtrace::new_unresolved::hb838890310508129 (0x10e5cca78)
   2: failure::backtrace::internal::InternalBacktrace::new::hbdea59428e164bec (0x10e5cc419)
   3: <failure::backtrace::Backtrace as core::default::Default>::default::h9577f3a4e995077c (0x10e5cc605)
   4: <failure::error::error_impl::ErrorImpl as core::convert::From<F>>::from::h4d07df56971b73db (0x10e1c772d)
   5: prisma_query::connector::postgres::PostgreSql::new::h413358e50dc533a4 (0x10e1e2fba)
   6: sql_migration_connector::SqlMigrationConnector::postgres_helper::hb687846233117d88 (0x10e1662a0)
   7: sql_migration_connector::SqlMigrationConnector::exists::hcbffc19b3c042435 (0x10e1653ef)
   8: migration_core::connector_loader::load_connector::hcd8a949dd5611bbb (0x10e076249)
   9: migration_core::migration_engine::MigrationEngine::init::h5a6429317c6e4260 (0x10e06b778)
  10: <F as jsonrpc_core::calls::RpcMethodSimple>::call::h6e069197e6f3babd (0x10e0b1ad8)
  11: <F as jsonrpc_core::calls::RpcMethod<T>>::call::h8b6fef1ab8ef20ba (0x10e057b9c)
  12: <futures::future::lazy::Lazy<F, R> as futures::future::Future>::poll::h5ef5874cf77881d7 (0x10e06a982)
  13: <futures::future::then::Then<A, B, F> as futures::future::Future>::poll::h80fed1dfafe2a57a (0x10e058360)
  14: <futures::future::map::Map<A, F> as futures::future::Future>::poll::he446a6b868c6556a (0x10e073c9f)
  15: <futures::future::either::Either<A, B> as futures::future::Future>::poll::he5d0fb6984529d00 (0x10e06ac10)
  16: futures::task_impl::std::set::h372284ab71bba6f7 (0x10e0a816f)
  17: <std::thread::local::LocalKey<T>>::with::h5153996dbd9d4602 (0x10e0aad16)
  18: futures::future::Future::wait::hff1c28893df49fb7 (0x10e0737ea)
  19: <jsonrpc_core::io::IoHandler<M>>::handle_request_sync::h91d7fd7e20b983ba (0x10e054d3f)
  20: migration_core::rpc_api::RpcApi::handle::h77f23d4b4ddc65ed (0x10e0b717b)
  21: migration_engine::main::h431600cedbc9116a (0x10e02eb3d)
  22: std::rt::lang_start::{{closure}}::h7cf2cabe6e9ed7ab (0x10e02e926)
  23: std::panicking::try::do_call::h20c95c457c762d5f (0x10e5e57d8)
  24: ___rust_maybe_catch_panic (0x10e5e947f)
  25: std::rt::lang_start_internal::he82d111f45e8971a (0x10e5e62be)
  26: _main (0x10e02eb99))', src/libcore/result.rs:997:5
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
   1: std::sys_common::backtrace::_print
   2: std::panicking::default_hook::{{closure}}
   3: std::panicking::default_hook
   4: std::panicking::rust_panic_with_hook
   5: std::panicking::continue_panic_fmt
   6: rust_begin_unwind
   7: core::panicking::panic_fmt
   8: core::result::unwrap_failed
   9: sql_migration_connector::SqlMigrationConnector::postgres_helper
  10: sql_migration_connector::SqlMigrationConnector::exists
  11: migration_core::connector_loader::load_connector
  12: migration_core::migration_engine::MigrationEngine::init
  13: <F as jsonrpc_core::calls::RpcMethodSimple>::call
  14: <F as jsonrpc_core::calls::RpcMethod<T>>::call
  15: <futures::future::lazy::Lazy<F, R> as futures::future::Future>::poll
  16: <futures::future::then::Then<A, B, F> as futures::future::Future>::poll
  17: <futures::future::map::Map<A, F> as futures::future::Future>::poll
  18: <futures::future::either::Either<A, B> as futures::future::Future>::poll
  19: futures::task_impl::std::set
  20: <std::thread::local::LocalKey<T>>::with
  21: futures::future::Future::wait
  22: <jsonrpc_core::io::IoHandler<M>>::handle_request_sync
  23: migration_core::rpc_api::RpcApi::handle
  24: migration_engine::main
  25: std::rt::lang_start::{{closure}}
  26: std::panicking::try::do_call
  27: __rust_maybe_catch_panic
  28: std::rt::lang_start_internal
  29: main

Same is true for MySQL when I try to run prisma2 lift up
Datamodel that will initialize the db:

datasource db {
  provider = "mysql"
  url      = "mysql://root:Harshit00@localhost:5432/issue_60"
}

enum Priviliages {
  ADMIN
  USER
}

model User {
  id          String      @id @default(cuid())
  username    String      @unique
  password    String
  age         Int         @default(18)
  priviliages Priviliages
}

Database Changes:

Migration            Database actions           Status

20190628202848-init  1 CreateTable statements.

You can get the detailed db changes with prisma2 lift up --verbose
Or read about them in the ./migrations/MIGRATION_ID/README.md
Error: Error in lift engine for rpc applyMigration:
  thread 'main' panicked at 'Connecting to MySQL failed: ConnectionError(Error(Some("DriverError { Could not connect to address `localhost:5432\': Connection refused (os error 61) }"))

stack backtrace:
   0: backtrace::backtrace::trace::h862903ac52cf58ce (0x106f4aa7e)
   1: backtrace::capture::Backtrace::new_unresolved::hb838890310508129 (0x106f49c48)
   2: failure::backtrace::internal::InternalBacktrace::new::hbdea59428e164bec (0x106f495e9)
   3: <failure::backtrace::Backtrace as core::default::Default>::default::h9577f3a4e995077c (0x106f497d5)
   4: prisma_query::connector::mysql::Mysql::new_from_url::hf4590b8974d5da91 (0x106a3cfc1)
   5: sql_migration_connector::SqlMigrationConnector::mysql_helper::h319c71c7919ed40a (0x10699ed95)
   6: sql_migration_connector::SqlMigrationConnector::new::hb98877956af14210 (0x10699d93e)
   7: migration_core::connector_loader::load_connector::h529c0b25a920f1c8 (0x1068dc0f2)
   8: migration_core::migration_engine::MigrationEngine::init::ha45c0a4cfc0cfb7f (0x1068d9fe8)
   9: <F as jsonrpc_core::calls::RpcMethodSimple>::call::hd2624a075befb389 (0x106922ed9)
  10: <F as jsonrpc_core::calls::RpcMethod<T>>::call::hedb19f7be90fdf6e (0x1068c65ac)
  11: <futures::future::lazy::Lazy<F, R> as futures::future::Future>::poll::h3b5b85445d8d74a6 (0x1068d91f2)
  12: <futures::future::then::Then<A, B, F> as futures::future::Future>::poll::hcf279068325be644 (0x1068c6bb0)
  13: <futures::future::map::Map<A, F> as futures::future::Future>::poll::h0b0e8198a896ad62 (0x1068e234f)
  14: <futures::future::either::Either<A, B> as futures::future::Future>::poll::hc887be37d832628e (0x1068d9480)
  15: futures::task_impl::std::set::ha48ca7ca98878fb4 (0x106916aff)
  16: <std::thread::local::LocalKey<T>>::with::hbf7a040c89d328cc (0x1069196a6)
  17: futures::future::Future::wait::h6c47660a8ddc59a4 (0x1068e1fda)
  18: <jsonrpc_core::io::IoHandler<M>>::handle_request_sync::h94618f706a6d72eb (0x1068c358f)
  19: migration_core::rpc_api::RpcApi::handle::h347c3a0308f3fa33 (0x106925b0b)
  20: migration_engine::main::h56cf3725d9ba3fee (0x10689d38d)
  21: std::rt::lang_start::{{closure}}::hb4827f207a9be37a (0x10689d336)
  22: std::panicking::try::do_call::h20c95c457c762d5f (0x106f63c28)
  23: ___rust_maybe_catch_panic (0x106f684bf)
  24: std::rt::lang_start_internal::he82d111f45e8971a (0x106f6470e)
  25: _main (0x10689d3e9))', src/libcore/result.rs:997:5
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
   1: std::sys_common::backtrace::_print
   2: std::panicking::default_hook::{{closure}}
   3: std::panicking::default_hook
   4: std::panicking::rust_panic_with_hook
   5: std::panicking::continue_panic_fmt
   6: rust_begin_unwind
   7: core::panicking::panic_fmt
   8: core::result::unwrap_failed
   9: sql_migration_connector::SqlMigrationConnector::mysql_helper
  10: sql_migration_connector::SqlMigrationConnector::new
  11: migration_core::connector_loader::load_connector
  12: migration_core::migration_engine::MigrationEngine::init
  13: <F as jsonrpc_core::calls::RpcMethodSimple>::call
  14: <F as jsonrpc_core::calls::RpcMethod<T>>::call
  15: <futures::future::lazy::Lazy<F, R> as futures::future::Future>::poll
  16: <futures::future::then::Then<A, B, F> as futures::future::Future>::poll
  17: <futures::future::map::Map<A, F> as futures::future::Future>::poll
  18: <futures::future::either::Either<A, B> as futures::future::Future>::poll
  19: futures::task_impl::std::set
  20: <std::thread::local::LocalKey<T>>::with
  21: futures::future::Future::wait
  22: <jsonrpc_core::io::IoHandler<M>>::handle_request_sync
  23: migration_core::rpc_api::RpcApi::handle
  24: migration_engine::main
  25: std::rt::lang_start::{{closure}}
  26: std::panicking::try::do_call
  27: __rust_maybe_catch_panic
  28: std::rt::lang_start_internal
  29: main

Also, postgres is running locally on port 5431

Fixed in: https://github.com/prisma/prisma/commit/9bcad048f26c23f5f23f73c4680cb56be05a4925
This will ship with preview3.

Fix is also available in the current alpha

@mavilein I still have problem even using<EMAIL_ADDRESS>binary version: 4f33077038a490e4b2c1c260f109309e4a447181
at first I was trying to using a existing db with tables in different schemas and the I get this error Cannot read property 'fields' of undefined
So I created a entire blank db with only one simple table and then still have the problem "Error in lift engine"
There's some other information I can provide to help identify it ?!
I am running it on macOSX with "PostgreSQL 10.5+tjap-20180921 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 4.8.2 20140120 (Red Hat 4.8.2-16), 64-bit"
^CiMac-de-Herbert:prisma2 herbertpimentel$ psql
-bash: psql: command not found
iMac-de-Herbert:prisma2 herbertpimentel$ prisma2 init app
✔ Connected to database
✔ Connected to database
Select the schema you want to introspect
──────────────────────────────────────────────────
◉ public              1 tables, 16.384 KB
New schema Or enter a name for a new schema
──────────────────────────────────────────────────
❯  Introspect          Error in lift engine:
❮  Back                (Database credentials)

@herbertpimentel thanks a lot for letting is know! Can you turn the env var DEBUG=* and report the output in a separate issue? That would help us a lot!

Fixed in latest version. We still have this issue in Photon, we track it here https://github.com/prisma/photonjs/issues/156


multiple xml file in contexts foler may cause unpredictable results in raplaserver

Scenario:
1 backup "rapla.xml" to "rapla - kopie.xml"
2. modify rapla.xml
2. Launch raplaserver.bat
Check log file:
13:47:40.641 [main] INFO  DeploymentManager.addApp o.e.jetty.deploy.DeploymentMa
nager - Deployable added: D:\rapla-binary-1.8.4\rapla-binary-1.8.4\contexts\rapl
a - kopie.xml
The use of "rapla - kopie.xml" by raplaserver was not exepected.

just tested. Works here.  Did you also modify the context path of rapla and rapla - kopie

Hi Chris,
Found the missing piece. I had only rapla - kopie.xml.
This means that jetty takes whatever it finds in the folder. :-(


Gravity blocks aren't properly exiting the end portal

Spark link
https://spark.lucko.me/AzMYr1hcF9
Expected behavior
Something is up with entities coming thru the end portal. If you look you can see that they are not coming out in the middle like normal. This is causing dupers not to work.
Observed/Actual behavior
https://cdn.discordapp.com/attachments/762750140250718220/997426244129914981/Base_Profile_2022.07.15_-_<IP_ADDRESS>.mp4 As you can see here the sand isn't coming out of the exact center
Steps/models to reproduce
enable sand duping and go to the end platform with a sand duper running
Purpur version
1724
Agreements

[X] I am running the latest version of Purpur available from https://purpurmc.org/downloads.
[X] I have searched for and ensured there isn't already an open issue regarding this.
[X] My version of Minecraft is supported by Purpur.

Other
No response

Problem has been ongoing from version 1697 to current version 1725, all previous versions had the blocks teleporting in the middle like they should be

This is caused from an update in CraftBukkit. Recreate your duper on CraftBukkit and report the issue to them.


Docs links

Replaces #140
Adds more docs links for all products and uses a temporary fix the OME Files docs - the current OME Files docs at docs.oo.org are ONLY the C++ docs, the full bundle is only hosted on www-legacy so far or bundled in the download. A proper fix needs putting in place for 0.5.0, which @sbesson is on the case of but for now better to point at a legacy URL that has all the content than a 404 or only part of the docs.

No more docs or downloads links broken anyway and aside from a couple of links that are genuinely timing out when I tested them, all the other failures are just flakiness. Just investigating whether we can set the checker to just check docs.oo.org and downloads.oo.org before I give up and disable the external checker again completely.

Travis doesn't like the option from the htmlproofer docs for some reason so I've just disabled the external checker again so I can get this built on snoopy for review.

https://snoopycrimecop.github.io/www.openmicroscopy.org/ome-files/ etc updated for review

:+1: LGTM and deployed as this is an obvious 404 in our website.


Incorrect type conversion for (int)((uint32)(m))

Issue with go2hx Translation: Incorrect Type Conversion
Source Go Code
package main
import "fmt"
func main() {
    var local_int int = 1
    var m int = -1
    fmt.Printf("local_int before the loop: %d\n", local_int)
    m = 15 - ((int)((uint32)(m )))
    fmt.Printf("m before the first loop: %d\n", m)
    for ; m < 15; m++ {
        local_int = 0
    }
    fmt.Printf("local_int after the first loop: %d\n", local_int)
}

Output of the Go Code
local_int before the loop: 1
m before the loop: -4294967280
local_int after the loop: 0

Translated Haxe Code
package _internal;
function main():Void {
    var _local_int:stdgo.GoInt = (1 : stdgo.GoInt);
    var _m:stdgo.GoInt = (-1 : stdgo.GoInt);
    stdgo._internal.fmt.Fmt.printf(("local_int before the loop: %d\n" : stdgo.GoString), stdgo.Go.toInterface(_local_int));
    _m = ((15 : stdgo.GoInt) - (((_m : stdgo.GoUInt32) : stdgo.GoInt)) : stdgo.GoInt);
    stdgo._internal.fmt.Fmt.printf(("m before the loop: %d\n" : stdgo.GoString), stdgo.Go.toInterface(_m));
    stdgo.Go.cfor((_m < (15 : stdgo.GoInt) : Bool), _m++, {
        _local_int = (0 : stdgo.GoInt);
    });
    stdgo._internal.fmt.Fmt.printf(("local_int after the loop: %d\n" : stdgo.GoString), stdgo.Go.toInterface(_local_int));
}

Output of the Haxe Code
local_int before the loop: 1
m before the loop: 16
local_int after the loop: 1

Description of the Issue
The primary issue with the go2hx translation lies in the handling of type conversions for the variable m. In the original Go code, m is cast from int to uint32 and back to int, resulting in a large negative value (-4294967280). This allows the subsequent loop (for ; m < 15; m++) to execute correctly, updating local_int to 0.
However, in the translated Haxe code, the same type conversions incorrectly set _m to 16. This prevents the loop from executing, leaving _local_int unchanged at 1 after the loop. The root cause appears to be that go2hx does not correctly map Go's int to Haxe's GoInt64 on a 64-bit system, leading to improper interpretation of the converted value. Consequently, the loop condition fails, and the intended modifications within the loop do not occur.
This discrepancy indicates a flaw in the go2hx translator's type conversion logic, particularly when handling signed and unsigned integer casts on 64-bit architectures.
Steps to Reproduce

Run the Source Go Code:

Observe the correct output where local_int is updated after the loop.

Translate the Go Code to Haxe using go2hx:

Use the provided translated Haxe code.

Execute the Translated Haxe Code:

Notice that m is incorrectly set to 16, and the loop does not execute, leaving local_int unchanged.

Expected Behavior
The translated Haxe code should replicate the behavior of the original Go code, resulting in local_int being updated to 0 after the first loop.
Actual Behavior
In the Haxe translation:

m is set to 16 instead of -4294967280.
The loop does not execute because 16 is not less than 15.
local_int remains 1 instead of being updated to 0.

Suggested Fix
Ensure that the go2hx translator correctly maps Go's int type to Haxe's GoInt64 on 64-bit systems. This involves accurately handling the casting between signed and unsigned integers to preserve the intended binary representation and resulting values.

Thank you @Yeaseen - this is exactly the type of thoughtful, detailed, and helpful feedback that go2hx needs.
I know it should not be relevant, but for completeness, could I please ask which Haxe target you tested on?
This may be an important fundamental bug. If so, fixing this will resolve other problems elsewhere in the system. It may also relate to the size of "int"/"stdgo.GoInt" in the generated code.
I'm out today, but will look in more detail tomorrow.

Thank you for your response.
The Haxe target was version 4.3.4
Looking forward to your detail.

Hello @Yeaseen
go2hx simulates a 32 bits environment regardless of Haxe target for simplicity, i.e int is equal to int32 under the hood.
However explicit int64 or uint64 declaration is allowed.
This type of behavior is spec compliant and follows standard practice of another compiler gopherjs
To have the same behavior as a 64 bits system you can add a type alias of int to int64:
type int int64

Lastly Haxe targets are the compiler targets that Haxe code compiles into, such as into python, js, c++ etc.
I hope this resolves your current issue!
I am also open to changes in this behavior in the form of a ci passing pull request supporting int64 as the type alias of int for 64 bits systems/targets.


Notarize OSX binary before release

https://developer.apple.com/developer-id/
via @gaborfodor, @mmalohlava

Is this what is causing my MBP to refuse running waved? Am trying to evaluate 0.15.0 as a way to deliver data science products, this is a major roadblock.

@mschmill - The majority of Wave developers are on OSX, and this is not a show-stopper. Refer to https://support.apple.com/en-us/HT202491, specifically "If you want to open an app that hasn’t been notarized or is from an unidentified developer".


updating a record breaks mongodb query for other open mongodb connections in node server

I have a node server with an open mongodb connection for the life time of the server. Now if I update some record in some collection using mongo-express, my nodejs server's already open mongodb connection fails to query that collection. After that I tried to update other record in same collection using mongo-express, and mongo-express failed to update record and showed me 'That document is not valid!' error.

Closing as inactive


CustomAppsList small but useful Feature: Please allow to have # comments in this file

Hello
Thanks a lot for sharing your great work!, your Tool makes Windows much more useful.
Is your feature request related to a problem? Please describe.

I have created a CustomAppsList file,
but for many Apps I had to google for information to decide if I want to keep or remove it
therefore, I have added comments to the CustomAppsList file
The comments helps very much to easily review this list at any time later 😀
If I use Win11Debloat to remove the Apps in my CustomAppsList, then it tries to find and remove the comment-lines, too

Describe the solution you'd like
It would be great if you could add a simple rule while reading the CustomAppsList file:

Each Line will be handled by Trim()
If the 1st Character is #, then the line will be remmoved

Describe alternatives you've considered
I could pre-process the CustomAppsList file before calling Win11Debloat, but then your great Quick method does no longer work 😢
Additional context
I guess that other users would be happy with this small additional feature, too 😃
Thanks a lot, kind regards,
Thomas

Heya,
I'll see if I can squeeze this in soon as this seems like a useful feature :)

This has been added as of dbab8e3! The CustomAppsList file now supports # comments just like Appslist.txt


NIFI-3494 GenerateTableFetch Some JDBC Drivers Have Trouble With Name vs Label

A tiny change to support JDBC drivers that are too helpful.
For all changes:

[x] Is there a JIRA ticket associated with this PR? Is it referenced
in the commit message?

[x] Does your PR title start with NIFI-XXXX where XXXX is the JIRA number you are trying to resolve? Pay particular attention to the hyphen "-" character.

[x] Has your PR been rebased against the latest commit within the target branch (typically master)?

[x] Is your initial contribution a single, squashed commit?

For code changes:

[ ] Have you ensured that the full suite of tests is executed via mvn -Pcontrib-check clean install at the root nifi folder?
[ ] Have you written or updated unit tests to verify your changes?
[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file, including the main LICENSE file under nifi-assembly?
[ ] If applicable, have you updated the NOTICE file, including the main NOTICE file found under nifi-assembly?
[ ] If adding new Properties, have you added .displayName in addition to .name (programmatic access) for each of the new properties?

For documentation related changes:

[ ] Have you ensured that format looks appropriate for the output in which it is rendered?

Note:
Please ensure that once the PR is submitted, you check travis-ci for build issues and submit an update to your PR as soon as possible.

+1 LGTM, ran unit tests and contrib-check, ran on live NiFi against Oracle, MySQL, and Postgres DBs. Thank you for the contribution! Merging to master


Somewhat breaks VS Code's Intellisense/ability to look things up

Unfortunately, using this plugin, I lose the ability to open up header files in my project. And things like namespaces are no longer highlighted by IDE either. I'm using the blue theme, if that matters at all.

I came into the same problem...

I will fix that soon. @LeonineKing1199 @lcy-seso  Thanks.


select with value very slow to enumerate.

When I have a <select> element on my page (and it has a label 'Country'), and I select an option by value:
  $('#my_select').value = 'US'

Capybara takes over 20 seconds to assert that this is selected using:
  expect(page).to have_select('Country', selected: 'US')

I narrowed it down to the line https://github.com/jnicklas/capybara/blob/master/lib/capybara/query.rb#L118 where the query was './/option'
If i put 'selected' on the option, Capy is fast, but when using DOM API, it's slow.
Any help you can provide will be appreciated.
Regards,
Rasheed Abdul-Aziz  && Bebe Peng

@squeedee

If you can provide an example that reproduces we will look into it, otherwise I don't see how this is possible, unless maybe your page is ridiculously large. have_select will time out in 5 seconds (by default), so there is no way it should be taking 20 seconds

We will try to produce an easily reproducible example. The timeout is not hit because the time taken by Capybara::Result.new does not relinquish control to synchronize. When it's done, it matches, so no exception, so the test passes (despite being 20 seconds after the start of the match).
The page is not ridiculously large, the query is contextualized to the select that matches in the outer query (outer query is where it finds the select via its label element). The number of options is not large, so the xpath query is fast. The result from the xpath query has approx. 250 option nodes, which are passed to Result.new, where things come to a crawl. That's as far as we investigated. Will work on a sample for you.

What driver are you using? and if selenium, which version?  (2.45 has a serious performance bug in it which can cause major test slowdowns - unfortunately 2.46 has not been released).  So having 250 option nodes, each of which has to be queried for whether or not it's selected could take some time, but it really shouldn't be 20 seconds, although with the 2.45 performance issue in selenium maybe it would.  Unfortunately we can't change the query to  './/option[@selected]' since xpath only queries against the attributes in the document, not the properties - this means that if a selection is changed after the document is loaded the results of the xpath query would not be correct.  Technically it could be possible to swap to a css query of  'option:checked' which would be evaluated against properties but that then brings up browser support issues.

We are using selenium-webdriver 2.45.... :( We'll see if selenium edge makes a difference.

FYI - the releveant selenium issues are
https://code.google.com/p/selenium/issues/detail?id=8551
https://github.com/SeleniumHQ/selenium/issues/383

selenium-webdriver 2.46.1 has been released --  please let me know if that improves your situation

Yeah the new release for selenium totally helped! We're down to 6 secs. Thanks so much for your help. :)

@bebeng Would it be possible for you to run it using the selected_optimization branch and see what the time is then please?

Here are all the combos tried again:
Selected_optimization + Selenium 2.45.0 = ~5.5 secs
Selected_optimization + Selenium 2.46.1 = ~4 sec
Capybara 2.4.4 + Selenium 2.45.0 = ~23 sec
Capybara 2.4.4 + Selenium 2.46.1 = ~7 sec

So the optimization saves about 25% with the non-broken selenium on selects with a large number of options, not sure it's worth it for the added code complexity.  Will have to think about it.
Thanks


Add chrisjohnst's file

created a branch, created a file and made a commit, and opened a pull request

created a branch, created a file and made a commit, and opened a pull request

Update


雷达图显示错误

Version
4.8.0

Steps to reproduce
设定option为
option = {
    radar: {
        indicator: [{
                name: 'a',
                max: 13
            },
            {
                name: 'b',
                max: 1,
                min: 0,
                color: 'red'
            },
            {
                name: 'c',
                max: 16000
            },
            {
                name: 'd',
                max: 30000
            },
            {
                name: 'e',
                max: 38000
            },
            {
                name: 'f',
                max: 52000
            },
            {
                name: 'g',
                max: 25000
            },
        ]
    },

    "series": [{
        "type": "radar",
        "data": [{
            "name": "t",
            "value": [
                3,
                1,
                1,
                53,
                66,
                18,
                0.0121
            ]
        }]
    }]
};

雷达图会超过边界
What is expected?
解决bug
What is actually happening?
解决bug

Is Anybody here?

Yes, It's a bug, we will look into it.

Has any results?

help help help~~~~~~~~~~~~~~~~~~~~~~~~~

sos~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

Set lineStyle.join to be 'round'.


Update to support PHP 8. Bump PHP 7.2 to 7.4.

Hello,
This PR adds support for PHP 8 and bumps the required minimum PHP 7 version to 7.4, since 7.2 is no longer even in security support.
Let me know if you have questions!

Can confirm this appears to work. There's no test suite to run, but every request I've made seems to go through just fine.

Can we get a release created for this update? The last release was in 2019.

We're not using releases anymore, because prod env is just sync'd with last commit on master, making it easier to push changes without having to create a release for each change we want to push, as updating prod env is nothing more than just git pull on the prod server.

I'm not sure I follow. If I try to follow the readme and do a composer require, I get an old 2019 release. How would I be able to get the latest code to use if no releases are generated? Could the documentation be updated to show this?

Hi @PiousVenom, if you want the latest branch with PHP 7.4|8.0 support, you'd want to specify dev-master as your package version when installing, or edit your composer.json to specify such.
i.e. composer require xivapi/xivapi-php dev-master


⚠ ClamAV has degraded performance

In a5c9718, ClamAV (https://spamassassin.apache.org/) experienced degraded performance:

HTTP code: 200
Response time: 196 ms

Resolved: ClamAV performance has improved in 335f3d7.


improvements

omit failed submissions
save submissions of specified language
include question_id in folder name

Sure, you can make the changes! Thank you!

Changes are now in the the main branch and a new release was created (v2.0.0).
Thank you for the feature suggestion!
Closing this pull request now.


Small pep8 and python 2.6 fixes

adding pep8 check and fixes.
adding license in script.
adding {0} in string for String.format to work with python 2.6.

Thanks!


tf.data.experimental.service throws error when using with TPUs

Please make sure that this is a bug. As per our
GitHub Policy,
we only address code/doc bugs, performance issues, feature requests and
build/installation issues on GitHub. tag:bug_template
System information

Have I written custom code (as opposed to using a stock example script provided in TensorFlow):
Yes, I put an example to reproduce the issue below

OS Platform and Distribution (e.g., Linux Ubuntu 16.04):
$ uname -a Linux james-tpu 4.19.0-10-cloud-amd64 #1 SMP Debian 4.19.132-1 (2020-07-24) x86_64 GNU/Linux

Mobile device (e.g. iPhone 8, Pixel 2, Samsung Galaxy) if the issue happens on mobile device:
N/A

TensorFlow installed from (source or binary):
binary

TensorFlow version (use command below):
v2.3.0-rc2-23-gb36436b087 2.3.0

Python version:
3.7.3

Bazel version (if compiling from source):
N/A

GCC/Compiler version (if compiling from source):
N/A

CUDA/cuDNN version:
N/A

GPU model and memory:
N/A

Describe the current behavior
Errors out with 2020-09-10 22:59:13.294374: E tensorflow/core/common_runtime/eager/context.cc:678] Failed to register function remotely due to Failed to register dataset: failed to connect to all addresses see full log below
Describe the expected behavior
I wouldn't expect an error for this code.
Standalone code to reproduce the issue

Code
import logging

import tensorflow as tf
import numpy as np

logging.getLogger('tensorflow').setLevel(logging.DEBUG)

def get_dataset(dispatcher, batch_size):
  fake_data = np.zeros((128, 256, 256), dtype=np.float32)
  ds = tf.data.Dataset.from_tensor_slices(fake_data)
  ds = ds.repeat()
  ds = ds.batch(batch_size)
  ds = ds.apply(tf.data.experimental.service.distribute('parallel_epochs', dispatcher.target, job_name='data_job'))
  return ds

def run(strategy, batch_size):
  data_dispatcher = tf.data.experimental.service.DispatchServer(port=0)
  dispatcher_address = data_dispatcher.target.split("://")[1]
  worker = tf.data.experimental.service.WorkerServer(
    port=0, dispatcher_address=dispatcher_address)

  per_replica_batch_size = batch_size // strategy.num_replicas_in_sync
  dataset = strategy.experimental_distribute_datasets_from_function(
    lambda _: get_dataset(
      data_dispatcher,
      per_replica_batch_size,
    )
  )
  ds_iterator = iter(dataset)

  @tf.function(input_signature=[tf.TensorSpec([256, 256], dtype=tf.float32)])
  def step_fn(inputs):
    return

  @tf.function
  def train_step(iterator):
    strategy.run(step_fn, args=(next(iterator),))

  for _ in range(10):
    train_step(ds_iterator)

def setup_strategy(tpu=False):
  resolver = tf.distribute.cluster_resolver.TPUClusterResolver(tpu='james-tpu')
  tf.config.experimental_connect_to_cluster(resolver)
  tf.tpu.experimental.initialize_tpu_system(resolver)
  return tf.distribute.TPUStrategy(resolver)

if __name__ == '__main__':
  strategy = setup_strategy()
  batch_size = 64
  run(strategy, batch_size)

Other info / logs Include any logs or source code that would be helpful to
diagnose the problem. If including tracebacks, please include the full
traceback. Large logs and files should be attached.

Logs
2020-09-10 22:59:07.877313: I tensorflow/core/platform/cpu_feature_guard.cc:142] This TensorFlow binary is optimized with oneAPI Deep Neural Network Library (oneDNN)to use the following CPU instructions in performance-critical operations:  AVX2 FMA
To enable them in other operations, rebuild TensorFlow with the appropriate compiler flags.
2020-09-10 22:59:07.882757: I tensorflow/core/platform/profile_utils/cpu_utils.cc:104] CPU Frequency:<PHONE_NUMBER> Hz
2020-09-10 22:59:07.883041: I tensorflow/compiler/xla/service/service.cc:168] XLA service 0x3aa2460 initialized for platform Host (this does not guarantee that XLA will be used). Devices:
2020-09-10 22:59:07.883156: I tensorflow/compiler/xla/service/service.cc:176]   StreamExecutor device (0): Host, Default Version
2020-09-10 22:59:07.889580: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:301] Initialize GrpcChannelCache for job worker -> {0 -> <IP_ADDRESS>:8470}
2020-09-10 22:59:07.889626: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:301] Initialize GrpcChannelCache for job localhost -> {0 -> localhost:31299}
2020-09-10 22:59:07.904477: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:301] Initialize GrpcChannelCache for job worker -> {0 -> <IP_ADDRESS>:8470}
2020-09-10 22:59:07.904533: I tensorflow/core/distributed_runtime/rpc/grpc_channel.cc:301] Initialize GrpcChannelCache for job localhost -> {0 -> localhost:31299}
2020-09-10 22:59:07.905018: I tensorflow/core/distributed_runtime/rpc/grpc_server_lib.cc:405] Started server with target: grpc://localhost:31299
INFO:tensorflow:Initializing the TPU system: james-tpu
INFO:tensorflow:Initializing the TPU system: james-tpu
INFO:tensorflow:Clearing out eager caches
INFO:tensorflow:Clearing out eager caches
INFO:tensorflow:Finished initializing TPU system.
INFO:tensorflow:Finished initializing TPU system.
INFO:tensorflow:Found TPU system:
INFO:tensorflow:Found TPU system:
INFO:tensorflow:*** Num TPU Cores: 8
INFO:tensorflow:*** Num TPU Cores: 8
INFO:tensorflow:*** Num TPU Workers: 1
INFO:tensorflow:*** Num TPU Workers: 1
INFO:tensorflow:*** Num TPU Cores Per Worker: 8
INFO:tensorflow:*** Num TPU Cores Per Worker: 8
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:localhost/replica:0/task:0/device:CPU:0, CPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:localhost/replica:0/task:0/device:CPU:0, CPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:localhost/replica:0/task:0/device:XLA_CPU:0, XLA_CPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:localhost/replica:0/task:0/device:XLA_CPU:0, XLA_CPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:CPU:0, CPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:CPU:0, CPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:0, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:0, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:1, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:1, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:2, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:2, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:3, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:3, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:4, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:4, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:5, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:5, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:6, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:6, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:7, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU:7, TPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU_SYSTEM:0, TPU_SYSTEM, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:TPU_SYSTEM:0, TPU_SYSTEM, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:XLA_CPU:0, XLA_CPU, 0, 0)
INFO:tensorflow:*** Available Device: _DeviceAttributes(/job:worker/replica:0/task:0/device:XLA_CPU:0, XLA_CPU, 0, 0)
2020-09-10 22:59:13.294374: E tensorflow/core/common_runtime/eager/context.cc:678] Failed to register function remotely due to Failed to register dataset: failed to connect to all addresses
This shouldn't happen, please file a bug to tensorflow team.
Traceback (most recent call last):
  File "/usr/lib/python3.7/runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "/usr/lib/python3.7/runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "/home/jamesbartlett/train/pixieml/pixieml/models/transformer/minimal_example.py", line 54, in <module>
    run(strategy, batch_size)
  File "/home/jamesbartlett/train/pixieml/pixieml/models/transformer/minimal_example.py", line 30, in run
    ds_iterator = iter(dataset)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/input_lib.py", line 1199, in __iter__
    enable_legacy_iterators)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/input_lib.py", line 1752, in _create_iterators_per_worker
    worker_devices)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/input_lib.py", line 1609, in __init__
    devices)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/input_lib.py", line 1448, in __init__
    self._make_iterator()
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/input_lib.py", line 1619, in _make_iterator
    self._dataset, self._devices, source_device=host_device)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/data/ops/multi_device_iterator_ops.py", line 547, in __init__
    dataset.element_spec)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/data/ops/multi_device_iterator_ops.py", line 54, in __init__
    init_func_concrete = _init_func.get_concrete_function()
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 2939, in get_concrete_function
2020-09-10 22:59:13.297630: W tensorflow/core/distributed_runtime/eager/remote_tensor_handle_data.cc:76] Unable to destroy remote tensor handles. If you are running a tf.function, it usually indicates some op in the graph gets an error: Failed to register dataset: failed to connect to all addresses
    *args, **kwargs)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 2906, in _get_concrete_function_garbage_collected
    graph_function, args, kwargs = self._maybe_define_function(args, kwargs)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 3213, in _maybe_define_function
    graph_function = self._create_graph_function(args, kwargs)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/function.py", line 3075, in _create_graph_function
    capture_by_value=self._capture_by_value),
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/func_graph.py", line 991, in func_graph_from_py_func
    expand_composites=True)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/util/nest.py", line 635, in map_structure
    structure[0], [func(*x) for x in entries],
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/util/nest.py", line 635, in <listcomp>
    structure[0], [func(*x) for x in entries],
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/func_graph.py", line 942, in convert
    x = ops.convert_to_tensor_or_composite(x)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 1622, in convert_to_tensor_or_composite
    value=value, dtype=dtype, name=name, as_ref=False)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 1661, in internal_convert_to_tensor_or_composite
    accepted_result_types=(Tensor, composite_tensor.CompositeTensor))
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 1467, in convert_to_tensor
    return graph.capture(value, name=name)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/func_graph.py", line 624, in capture
    return self.capture_eager_tensor(tensor, name)
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/func_graph.py", line 721, in capture_eager_tensor
    graph_const = constant_op.constant(tensor.numpy(), dtype=tensor.dtype,
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 1063, in numpy
    maybe_arr = self._numpy()  # pylint: disable=protected-access
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/framework/ops.py", line 1031, in _numpy
    six.raise_from(core._status_to_exception(e.code, e.message), None)  # pylint: disable=protected-access
  File "<string>", line 3, in raise_from
tensorflow.python.framework.errors_impl.UnavailableError: Failed to register dataset: failed to connect to all addresses
Error in atexit._run_exitfuncs:
Traceback (most recent call last):
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/distribute/tpu_strategy.py", line 540, in async_wait
    context.async_wait()
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/context.py", line 2319, in async_wait
    context().sync_executors()
  File "/usr/local/lib/python3.7/dist-packages/tensorflow/python/eager/context.py", line 658, in sync_executors
    pywrap_tfe.TFE_ContextSyncExecutors(self._context_handle)
tensorflow.python.framework.errors_impl.UnavailableError: Failed to register dataset: failed to connect to all addresses
2020-09-10 22:59:13.375822: W ./tensorflow/core/distributed_runtime/eager/destroy_tensor_handle_node.h:57] Ignoring an error encountered when deleting remote tensors handles: Invalid argument: Unable to find the relevant tensor remote_handle: Op ID: 30, Output num: 0
Additional GRPC error information from remote target /job:worker/replica:0/task:0:
:{"created":"@1599778753.375752373","description":"Error received from peer ipv4:<IP_ADDRESS>:8470","file":"external/com_github_grpc_grpc/src/core/lib/surface/call.cc","file_line":1056,"grpc_message":"Unable to find the relevant tensor remote_handle: Op ID: 30, Output num: 0","grpc_status":3}

Was able to reproduce the issue with TF v2.3. Please find the gist of it here. Thanks!

Hi @JamesMBartlett, to help isolate if this is an issue with tf.data or with tpu, can you confirm that your code runs without TPUs using the default strategy tf.distribute.get_strategy ?

Yeah the error goes away with the default strategy, although there's a bug with my minimal example where I specified the wrong input shape, so you get the following error: ```ValueError: Python inputs incompatible with input_signature:
inputs: (
Tensor("IteratorGetNext:0", shape=(None, 256, 256), dtype=float32))
input_signature: (
TensorSpec(shape=(256, 256), dtype=tf.float32, name=None))

Can you provide a fix so that the code runs without error when using the default strategy?

This code errors if you run with variable tpu = True on line 59, and doesn't error if tpu = False:
import logging

import tensorflow as tf
import numpy as np

logging.getLogger('tensorflow').setLevel(logging.DEBUG)

def get_dataset(dispatcher, batch_size):
  fake_data = np.zeros((128, 256, 256), dtype=np.float32)
  ds = tf.data.Dataset.from_tensor_slices(fake_data)
  ds = ds.repeat()
  ds = ds.batch(batch_size)
  ds = ds.apply(tf.data.experimental.service.distribute('parallel_epochs', dispatcher.target, job_name='data_job'))
  return ds

def run(strategy, batch_size):
  data_dispatcher = tf.data.experimental.service.DispatchServer(port=0)
  dispatcher_address = data_dispatcher.target.split("://")[1]
  worker = tf.data.experimental.service.WorkerServer(
    port=0, dispatcher_address=dispatcher_address)

  per_replica_batch_size = batch_size // strategy.num_replicas_in_sync
  dataset = strategy.experimental_distribute_datasets_from_function(
    lambda _: get_dataset(
      data_dispatcher,
      per_replica_batch_size,
    )
  )
  ds_iterator = iter(dataset)

  @tf.function(input_signature=[tf.TensorSpec([None, 256, 256], dtype=tf.float32)])
  def step_fn(inputs):
    pass

  @tf.function
  def train_step(iterator):
    strategy.run(step_fn, args=(next(iterator),))

  for _ in range(10):
    train_step(ds_iterator)

  print('Finished, stopping data workers...')
  del ds_iterator
  del dataset
  data_dispatcher._stop()
  worker._stop()
  print('Stopped')

def setup_tpu_strategy():
  resolver = tf.distribute.cluster_resolver.TPUClusterResolver(tpu='james-tpu')
  tf.config.experimental_connect_to_cluster(resolver)
  tf.tpu.experimental.initialize_tpu_system(resolver)
  return tf.distribute.TPUStrategy(resolver)

if __name__ == '__main__':
  tpu = False
  if tpu:
    strategy = setup_tpu_strategy()
  else:
    strategy = tf.distribute.get_strategy()
  batch_size = 64
  run(strategy, batch_size)

@aaudiber do you have any thoughts here? The error is "Failed to register function remotely due to Failed to register dataset".

@rxsang is that the full error? The real cause should be included as "Failed to register dataset: " (error message created here)

I think the full error is 2020-09-10 22:59:13.294374: E tensorflow/core/common_runtime/eager/context.cc:678] Failed to register function remotely due to Failed to register dataset: failed to connect to all addresses This shouldn't happen, please file a bug to tensorflow team.
However it is not that informative.

@JamesMBartlett I think the problem is in the target passed in
ds = ds.apply(tf.data.experimental.service.distribute('parallel_epochs', dispatcher.target, job_name='data_job'))

dispatcher.target will return something like "grpc://localhost:39263". This works when the client runs on the local machine (non-TPU case), but when the TPU tries to register the dataset with "localhost:39263", it hits "Failed to register dataset: failed to connect to all addresses". Can you try setting a specific port and using an IP address accessible from the TPU?
Something like
data_dispatcher = tf.data.experimental.service.DispatchServer(port=5050)
...
ds = ds.apply(tf.data.experimental.service.distribute('parallel_epochs', "grpc://<ip_address>:5050, job_name='data_job'))

I can confirm that if I use grpc://<ip_address>:5050 then my minimal example works.

Thanks for confirming James! I will submit a change to include the dispatcher address in the error message, to help diagnose this type of issue.

I can confirm that if I use grpc://<ip_address>:5050 then my minimal example works.

How did you determine the IP for the TPU VM? Does it work in Colab TPU?
Does it work without dataset = strategy.experimental_distribute_datasets_from_function or with strategy.experimental_distribute_dataset?


Tree view isn't sorted

Please select the area your Bug applys to. (Multiple selections are Possible)

[x] UI
[ ] Workbench
[ ] Publishing
[ ] Pods
[ ] Markdown
[ ] Hierarchy
[ ] Graph
[ ] Misc (Choose this if your not sure)

Describe the bug
The tree view shows hierarchies in a random order
To Reproduce
Steps to reproduce the behavior:

Go to 'Dendron Tree View'
Open a vault
See error

Expected behavior
I'd expect the tree view to sort the hierarchies alphabetical in ascending order.
Screenshots

Desktop (please complete the following information)

OS: Windows
Dendron Version 0.35.1
VSCode Version 1.55.0

This is a duplicate of #440.

an update on the tree view. we're planning on creating a dedicated dendron panel using a custom webview to accommodate custom ordering as well as additional functionality (eg. drag and drop assets). this will most likely be an end of april to may item but in the meanwhile, we're going to create an index command to help people create index notes. See https://github.com/dendronhq/dendron/issues/603 for more details and please let me know if you have any suggestions :)

closing this so we can track it in #440


add client_wait_for_response option to some method calls

This is a part of a potential way of addressing https://trello.com/c/LABe8BKA
The pattern it introduces is something I like to call async-not-async. It's simply allows a user of the apiclient to perform a highly simplified form of async http request by ignoring the response from the server. It does this by setting the read timeout to something tiny and allowing that timeout to happen. It relies on the fact that web server stacks tend not to readily propagate "the client is gone" information, and a request will continue to be processed fully, even after the client has given up.
In the case we're proposing to use it it gives us basically all the advantages of true async but also all the perils: how easy it is to launch hundreds of requests in a couple of milliseconds without considering how the recipient will deal with it. Pushed too far, what we'd effectively end up doing is using our http servers' connection buffers as a not-very-good task queue, which could lead to healthcheck failures.
Why prefix the kwarg with client_? Because previously all arguments passed to apiclient methods implied they were referring to server options. This is the first relating to client behaviour, and the distinction could start to get ambiguous if and when we start doing things like adding a server-side option to the api's update_service endpoint to instruct it to perform its daisychained index request to the search-api without waiting for the response.

I've also added the wait_for_index option to DataAPIClient.update_service() which in turn uses the above, wait_for_response, option.

Ok, this does not work IRL, though I think I know what I've got to do to fix it, so don't bother testing quite yet...

What commands are we going to issue as client_wait_for_response in production?

Currently the only one planned is SearchAPIClient.index(), but had there been an easy existing mechanism to add is as a common option across all calls, I might have added it to everything. But there wasn't.

Ok it works now, but when used in this way it emits a bunch of log events to the effect that the request failed. Which it kinda didn't. I'll see what I can do.

This works "fully" now, only through a lot of investigation into what exceptions requests really lets through to the caller. Short answer: it varies. And a lot of them wrap other exceptions in slightly non-standard ways so I've had to build a method _iter_exceptions_by_cause to find these exceptions in the most flexible way possible.

I will try and make some time today to test this out locally (with the corresponding API branch).


A Scan has a failure.. Please approve to proceed

Issue created for following Workflow.

WorkflowName
Workflow#
BranchName
TriggerEvent
LastCommitUser

build-test
46
refs/heads/main
push
Yog4Prog

Found an Issue while performing SCA Scan
:point_right: You are required to Approve (or) Reject the issue
Approve or Reject by commenting in the below section with any of the following keywords
:green_book:  Approved Keys: approved approve lgtm goahead proceed yes
:closed_book: Reject Keys: denied deny reject rejected no abort cancel exit
:point_right: Note: If left uncommented the issue will be closed after the timeout period and the workflow will be marked unsuccessful.

Approval waiting period elapsed. Approval request is automatically closed and workflow status is marked to Failed.


Add watch for secrets

Description
Adding a watch for tigera-management-cluster-connection in tigera-operator / tigera-system namespace.
For PR author

[ ] Tests for change.
[ ] If changing pkg/apis/, run make gen-files
[ ] If changing versions, run make gen-versions

For PR reviewers
A note for code reviewers - all pull requests must have the following:

[ ] Milestone set according to targeted release.
[ ] Appropriate labels:

kind/bug if this is a bugfix.
kind/enhancement if this is a a new feature.
enterprise if this PR applies to Calico Enterprise only.

@tmjd Do you mind taking a look at this ?


adjust to the screen shot.

In the screenshot "Cross-device Synchronization", "Live Browser Reloading" and "Build in HTTP Server" are all talking about browser-sync? It's good to merge these three sections into one and add other modules this one is using.

We are using browsersync to power all these things but the page is largely aimed to let people know the features the kit offers and those are all features. The list isn't pointing out the modules used since I don't believe that's how view web starter kit.
If anyone else thinks we should change this please reopen.


Issue with webpack

I can't seem to get this working with webpack. Any suggestions?

Do you have any more information about your problems? Any error messages or logs? How do you integrate it? Which part do you require or include?


Set default ordering for Task Results admin (#93)

CI issues are now fixed in main. Rebase and tests should pass.

@RealOrangeOne I have rebased and made force push. BTW it is master not main

BTW it is master not main

Yeah this keeps tripping me too, I've already converted my muscle memory to expect a main branch 😅


Possible connections leak in kafka scaler

Report
There appears to be a connections leak in the kafka scaler.
Scenario:
We had keda working fine with a kafka scaler.  The MSK cluster ran out of disk space which caused it to be unaccessible to keda.  We resolved the disk space issue by scaling the broker storage.  After this keda appears to have returned to normal, however one of the MSK brokers was reporting an unusually high amount of connections and requests from the keda metrics apiserver (thousands of requests and connections in a 5m period).  upon restart of the apiserver pod, the connection and request count goes back to normal (<30 conn/requests in a 5m period to the brokers)
We have two different keda deployments pointing to this MSK cluster (watching different consumer groups).  Both behaved the same way.  This is a problem we've been trying to root cause for 2wks now and only today were able to track down the source of the connections to keda.  I have cloudwatch graph of the past 2wks where we tried rebooting brokers, etc. but nothing seemed to eliminate the tcp connections until today when we rebooted the two keda metrics apiserver pods.
I can try and obtain the logs from these pods if it may be useful.  But they may be extremely verbose and large (we have trace logging enabled still as we only recently started using keda and were having issues properly configuring scaled objects for kafka).  Please lmk what may be useful for troubleshooting this further if this has not been enough data.
Expected Behavior
Interruptions in kafka server availability do not inadvertantly degrade the clusters performance upon renewal of service
Actual Behavior
Once the cluster was restored, the increase in connections from the scaler caused the MSK cluster to be in an extremely poor state.  These specific brokers(instance types) are not designed to handle the thousands of connections the apiserver was throwing at it.
Steps to Reproduce the Problem

See description

Logs from KEDA operator
See description
KEDA Version
2.7.1
Kubernetes Version
1.21
Platform
Amazon Web Services
Scaler Details
Apache Kafka
Anything else?
No response

Thanks for reporting this!
To clarify, you can see those connections only in KEDA Metrics Server not in the Operator, right? We need to track down, whether this is bad behavior in KEDA or whether the problem is in the Sarama client itself 🤔

1 SO and thousands of connections? 🤔 That's not good. Would be great if we can somehow isolate the problem and have reproducer that doesn't depend on your setup, Strimzi or something like that.

1 SO and thousands of connections? 🤔 That's not good. Would be great if we can somehow isolate the problem and have reproducer that doesn't depend on your setup, Strimzi or something like that.

Technically for the kafka cluster, there were two SOs pointing at it.  Two different k8s clusters with the SO above running with only the topic and consumer group being different.

Yeah. And until there aren't any problems with the broker you don't see any rise in the number of connections, right?

Correct.  Until we ran out of storage space on the brokers, the connection count from the apiserver was minimal.

Are you able to somehow reproduce the problem? It would be awesome if you can do so. There's one part of code which could be the potential problem, though I'd need to have a way how to reproduce the problem to clarify that I am right and that the proposed fix works as expected.

Sorry, no.  We do not have a test environment where I can reproduce this issue.  This happened on a semi-important system and we cant have another outage like this.

Just for a reference adding the link to the potential problem:
https://github.com/kedacore/keda/blob/af80d84b4e95536bde4d3b4ee51785214d01dac9/pkg/scaling/cache/scalers_cache.go#L209
        sb := c.Scalers[id]
	ns, err := sb.Factory()
	if err != nil {
		return nil, err
	}

	c.Scalers[id] = ScalerBuilder{
		Scaler:  ns,
		Factory: sb.Factory,
	}
	sb.Scaler.Close(ctx)

	return ns, nil

->
        defer sb.Scaler.Close(ctx)
        sb := c.Scalers[id]
	ns, err := sb.Factory()
	if err != nil {
		return nil, err
	}

	c.Scalers[id] = ScalerBuilder{
		Scaler:  ns,
		Factory: sb.Factory,
	}

	return ns, nil

I'm trying to replicate this issue but I cannot do it. Could you give me any tip to reproduce this? I'm trying dropping the cluster connection but I can't see any connection leak. I'm deploying a MSK and I'll try to replicate disk issues, but maybe you can give me some tips

I have tried the same, locking the disks filling them (with KEDA connected all the time) and I haven't been able to reproduce your issue, once I have solved the issues with disks increasing the disk size, KEDA has started again without any huge increase of connections. I'd need more info about how to reproduce it to continue.
I have tried with a kafka cluster deployed using strimzi


rancher-wins repeatedly fails and is unable to restart

Rancher Server Setup

Rancher version: 2.5.10

Describe the bug
We began seeing multiple nodes with nginx-proxy going into a crashloop when attempting to backup certain files. The nginx-proxy container would fail over and over until eventually it stopped the rancher-wins service.
To Reproduce

Wait for the rancher-wins pod to fail and restart
watch container go into CrashLoopBackoff
Check log and see error:

FATA[2021-12-21T15:41:36-06:00] rpc error: code = Internal desc = could not rename binary: could not remove existing target file c:\etc\nginx\rancher-wins-nginx.exe: remove c:\etc\nginx\rancher-wins-nginx.exe: Access is denied.

Result
rancher-wins failed and is unable to successfully restart
Expected Result
rancher-wins is able to restart without external intervention
Screenshots

Additional context
https://jira.suse.com/browse/SURE-3865

This is impacting us on a Sev 2 support ticket with SUSE.  Will be watching to see folks getting assigned, etc.

Ross has filed an incredibly detailed report on Jira ticket @mharrah

Closing for now.


Incorrect lighting when the main light is missing

This behaves exactly as in URP Toon Shader.
Additionally, it's no longer a problem after the support for the ambient lighting was added.


ScRNA tutorial updates 2022

Wherein I am updating all 3 (now 4) single cell tutorials with the latest tools
Also hoping to use this Github "File change' view to go through and do the same for the Spanish versions (although some text changes will be sketchy - would love help here!)

[ ] Alevin tutorial
[ ] Combining datasets tutorial
[ ] Filter, plot & explore tutorial
[ ] Jupyter tutorial
[ ] Spanish - Alevin
[ ] Spanish - combining
[ ] Spanish - filter
[ ] Spanish - Jupyter

Hi! I need these initial 3 tutorials sorted for testing this week in advance of training next week. Can I please get a review?

Yep, I can review.

OK all sorted I think? :)


Severity verbose bit and disposing vkInstance.

Describe the bug
Including VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT in the instance MESSAGE_SEVERITY_BITMASK member
causes a null pointer exception when exiting application.
To Reproduce
Steps to reproduce the behavior:

Chapter: Any
Go to: Instance.java.
Include VK_DEBUG_UTILS_MESSAGE_SEVERITY_VERBOSE_BIT_EXT in the MESSAGE_SEVERITY_BITMASK member.
Run and close the application.
See error

Expected behavior
Application closes successfully.
Screenshots
None
Please complete the following information):

OS: Linux amd64 (Fedora 38)
Java version: 20.0.1+9
Lwjgl version:  3.3.2

Additional context
Removing debugUtils.pfnUserCallback().free(); from Instance.cleanup() seem to stop the error,
however the callback then leaks.

Just inverted the order of freeing the callback. Thanks for reporting!


mat-input field lagging in displaying text.

What is the expected behavior?
while enter the text it will visible with in milliseconds.
What is the current behavior?
lagging display text it take 2 to 3 seconds to visible in mat-input field
What are the steps to reproduce?
steppers  in the particular step put mat-input this problem coming
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
angular - 5.2.0,
Material - 5.2.4,
typescript - "2.4.2"
Is there anything else we should know?

Please provide steps to reproduce your issue.


Markdown containing [elements] hard crashes

As seen failing ci.
Due to the way CustomizableTextContainer handles [] surrounded elements, conflicts are seen when parsing markdown. Simply escaping all [ ] to [[ ]] (as implied by the code in CustomizableTextContainer) does not work as it breaks other markdown elements.
As part of the fix, this testcase should also wait for the online load to complete before passing, as it currently doesn't.

#2014 Find out and fixed this issue (use MarkdownTextFlowContainer instead TextFlowContainer in FencedCodeBlock)
.
And #2042 create CodeTextFlowContainer instead of use MarkdownTextFlowContainer in FencedCodeBlock
.
#2042 contained code in #2014(fix crash issue)

Closing as already resolved in https://github.com/ppy/osu-framework/pull/2403, test case now waits for online request to finish as per https://github.com/ppy/osu-framework/pull/2618 as well.

Closing as already resolved in https://github.com/ppy/osu-framework/pull/2403, test case now waits for online request to finish as per https://github.com/ppy/osu-framework/pull/2618 as well.


use off-policy dqn to train policy for lunar lander v3

change from cart pole to lunar lander for dqn

There is a jupyter notebook for this now 1_Deep_Q_Learning.ipynb


Top Priority Issue

The top priority option doesn't seem to work for me on my S8 Android 7 (Nougat). Even if this option is enables, it still gets pushed to the bottom by other notifications.

Same issue overexpression here. S8+

This should have been fixed with this last update. Also please consider trying quick settings tiles available after installing this app. Thank you for the support!


Update the camera controller be nullable

Make the CameraController be nullable

@hud10837 After thinking again, and review the [API guideline](After reviewing the API guideline, I feel we don't align with Swift for this case.), I feel we don't need to make a change to align with Swift in this case. Thanks


fix: use set title to remove process exited msg

:tada: This PR is included in version 1.1.8 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Image size problem

I am trying to use gwcNet to test other datasets in kiiti. But the size of image  is 1392＊512．
When i run the program, i got error message: assert top_pad > 0 and right_pad > 0.
I find that:
top_pad = 384 - h
right_pad = 1248 - w
assert top_pad > 0 and right_pad > 0

Is the image size must be lower than 1248*384 ?
What will happen, if i comment the 'assert top_pad > 0 and right_pad > 0' like:
＃assert top_pad > 0 and right_pad > 0

Thank you very much.

You can update the code to
top_pad = int(ceil(h / 32.) * 32) - h   # from math import ceil
right_pad = int(ceil(w / 32.) * 32) - w

The padding is to pad the input to an integer multiple of h and w

I try your code, it runs good :).

# pad to size 1248x384
#top_pad = 384 - h
#right_pad = 1248 - w
#assert top_pad > 0 and right_pad > 0

top_pad = int(np.ceil(h / 32.) * 32) - h   # from math import ceil
right_pad = int(np.ceil(w / 32.) * 32) - w

assert top_pad >= 0 and right_pad >= 0

But when i run an image which size is 1280*720. I catch an error:

saving to predictions/0000000000.png (720, 0)

So i modify the code:
#disp_est = np.array(disp_est[top_pad:, :-right_pad], dtype=np.float32)

if right_pad == 0:
    disp_est = np.array(disp_est[top_pad:, :], dtype=np.float32)
else:
    disp_est = np.array(disp_est[top_pad:, :-right_pad], dtype=np.float32)

It runs good finally!
Thank you !


Uploading and processing new HiRISE images

We're preparing for the next set of images we'd like to put on the site. @astopy we'd want uploaded and cut into tiles:
ESP_040246_0935
ESP_039969_0935
ESP_039824_0935
ESP_039547_0935
ESP_039468_0935
ESP_038822_0935
ESP_038625_0930
ESP_038492_0935
ESP_038215_0935
ESP_038149_0935
ESP_038110_0930
ESP_037964_0935
ESP_040311_0940
ESP_040193_0940
ESP_037977_0940
ESP_037976_0940
@astopy when you have time could you run the processing and upload scripts?

@mschwamb It looks like the HiRISE site may have changed since the last time we ran this. Could you just confirm which image link we should be downloading from here: http://hirise.lpl.arizona.edu/ESP_040246_0935
At the moment the download script is getting the RGB colour non-map projected JPEG file (http://hirise-pds.lpl.arizona.edu/PDS/EXTRAS/RDR/ESP/ORB_040200_040299/ESP_040246_0935/ESP_040246_0935_RGB.NOMAP.browse.jpg) but it seems to be expecting to grab a j2k/jp2 file. Should it be downloading the last file in the "JP2 Extras" section (http://hirise-pds.lpl.arizona.edu/download/PDS/EXTRAS/RDR/ESP/ORB_040200_040299/ESP_040246_0935/ESP_040246_0935_RGB.NOMAP.JP2)?

@astopy my understanding is the JP2 is processed because it is higher resolution than the browse.jpg Yep RGB.NOMAP.JP2 is what we want. Thanks for checking

@mschwamb Thanks. I've run into another problem now -- the way the image metadata (i.e. acquisition date, coordinates, etc.) is marked up on the site has changed, so now it's all in one big table cell (instead of each item being in a separate cell). That's going to make it a lot harder to scrape the metadata. Before I start working on that, do we actually need all of that in Ouroboros? Or would it be good enough to just have the original name/download link to match them up later?

I actually have code to scrape meta-data from PDS summary files. So if you give me the column names you need I can provide that.

@michaelaye it might be better to provide @astopy with the code so we've got one pipeline, but that's up to @astopy. I think the P4 scripts are python if I recall correctly.

Unfortunately the scripts are actually Ruby, but @michaelaye if you could share your code that'd be great and I'll find a way to adapt it.

Sorry, didn't see your reply. I still need to know which meta data columns are required, because some of them have several versions flying around and i need to make sure that i point you to the correct index file for that. it's unfortunately not as simple as pointing to a meta-data file for RGB.NOMAP.JP2s, because those don't exist.

@michaelaye  should be the following for the non-map image
"coords":[-85.759,106.051],"location":{"standard":"http://www.planetfour.org/subjects/standard/5501938669736d5fdd000000.jpg"},"metadata":{"acquisition_date":"2013-01-03T00:00:00Z","emission_angle":1.0,"lat_centered":-85.759,"lng_east":106.051,"local_mars_time":" 6:01 PM","name":"ESP_030184_0940","north_azimuth":130.0,"phase_angle":68.2,"sub_solar_azimuth": 37.5,"time":null}

I put a gist here:
https://gist.github.com/702fff89930de42822d26e14fb182160
In my planetpy tools (pip install planetpy) there's a module called 'pdstools'.
In there I wrote highly generalized PDS index readers, that wrap the Python Parameter Value Language module PVL (The syntax for Planetary Data System label files). Relevant functions are in https://github.com/michaelaye/planetpy/blob/master/planetpy/pdstools.py
But possibly it's just more efficient for you that you just quickly parse the specific data files yourself:
Download cumulative RDR index and label file here:
http://hirise-pds.lpl.arizona.edu/PDS/INDEX/RDRCUMINDEX.LBL
http://hirise-pds.lpl.arizona.edu/PDS/INDEX/RDRCUMINDEX.TAB
The label file has the column names for the .TAB file, but in PVL format. The .TAB file is a fixed format text file. You can read out the column names and the column specification (i.e. start and end byte for each column) below, in case you can feed them to a Ruby text parser.
If this is all too much, we also can agree on a format and I can do the parsing for you and provide the results.
Meg, I don't remember why we parse so many of those metadata items, if we don't include them in the classification data file? Where are they being used?

@michaelaye that info is in the daily  mongo database dumps we get sent. We don't normally get it in csv since it changes only a few times a year and adding the info to each classification would make the database bigger. What columns were chosen was before I formally joined the science team. Given how close we are on the first paper, I think it would be better if you spend your time on that and @astopy tries to adapt your code. Do you agree?

Well, 95% of the work was already done last night, I just had to update my tools to meet standards, so it would have been stupid not to finish it already, in case @astopy decides, that to be efficient he just takes my CSV output. I updated the gist and added a csv file with the metadata for this data run, should all be there.

Great, thanks @michaelaye. Unfortunately I'm pretty much out of time to get this imported into Ouroboros before our Christmas break here, as today's our last working day and I've got some data already being imported for another project that won't finish in time.
I'll be able to finish this up in the first week of January, so hopefully the current data will last until then.

@astopy - thanks. we're good on the live data front. Happy Holidays. Enjoy your much deserved holiday break!

@michaelaye Thanks again. I've integrated your script into the data import tools here: https://github.com/zooniverse/planet-four/blob/master/data-import/fetch_metadata.py
@mschwamb New data should be ready either today or Monday.

@mschwamb The data's in now!


Add support for vulkan backend

For running Models please add vulkan backend, pytorch has this and you can use wgpu for that too.

See also https://github.com/huggingface/candle/issues/1810


Assert that alpn_selected is NULL before we assign it

The alpn_selected value in the session should be NULL before we first
populate it if this is a new session. We assert to make sure it is.
This is an alternative approach to #5550.

Pushed. Thanks.


feat: foundry framework support and OZ bump version

Hey @wslyvh, I hope this message finds you well.
In the course of utilizing nexth, I recognized an opportunity to extend its compatibility beyond its current framework. Specifically, I've been employing Foundry as my primary framework for Solidity, and saw great potential in integrating it with nexth's capabilities.
I'm excited about the prospect of sharing these enhancements with you and the broader nexth community.
Here's an outline of the key changes:

Foundry support
OZ Bump version to 5.0.0
Typo on Message.ts test

Hi @jpgonzalezra this is great! Thank you for submitting a PR 🙏
I've been meaning to try out Foundry, but haven't found the time for it yet. So its' great to see a contribution here!
I wonder a little bit if it makes sense to combine these in the same branch tho.
I doubt you want to use both Hardhat and Foundry simultaneously while building, right?
Should we keep 1 branch for hardhat contract and a separate branch for Foundry?
What are your thoughts?

Thank you for the prompt response. I think you're right; it doesn't make much sense to have both frameworks together. We could proceed as follows, if you agree:
We can keep Hardhat as the default on the main branch, create a "foundry" branch with the implementation for Foundry, and document this in the readme.
main -> Hardhat only
foundry -> Foundry only
My only concern is that it might be challenging to keep both branches updated. What are your thoughts on this?

Hmm, you're right. That's fair!
Maybe a better approach could be to just create another package and keep them side by side. So we'd end up with
/packages/app
/packages/hardhat
/packages/foundry
If both hardhat and foundry have the same example, with similar commands and output, it's up to devs to pick their preference and delete the other.

Great, I like this approach much better. I start working on it right now 💪

Awesome! Sounds good :)

@wslyvh I think it's a bit better now. We could work from this point with your feedback to improve the PR. I've left some comments to see what you think 🙌

Hi @jpgonzalezra sorry for the delay as I was working on some other priorities. Left some comments on a few of your questions. Hope that makes sense! But should be good to merge either way

Hi @wslyvh no problem, this part of the year is terrible, a lot of work. fFnish the comments, let me know if you would like to modify anything else 💪

Looks good! Thanks again for contributing. Exciting to finally have Foundry as part of the stack


Support AzureIngressAllowdTargets to handle several agics managing a shared agw

Is your feature request related to a problem? Please describe.
I deployed several cluster during the last months and usualy I use agic with shared agw. We found problems because the clusters handles prohibited target but the humans from one team may buy new domain and add to the agw and they must notify to the another teams that a new domain have to be added to the prohibited target list.
Describe the solution you'd like
It will be great if the cluster use a method based in allowed target because only the cluster have to know what domains manages and is not necesary that the other cluster know it.
I have some free time and I think that I can add support to allowed targets if this feature is usefull. I am no sure if this feature should replace the prohibited target in the future but I think that both could work together.
What do you feel about this?

How is this not implemented yet? Impossible to work with multiple clusters and teams without this..

I will start this feature ASAP


Wechaty supports Official Account (公众号) now!

Implemented https://github.com/wechaty/wechaty/issues/1016

We have published a blog to announce the official account support, read more from https://wechaty.js.org/2020/11/06/wechaty-puppet-oa-released-en/


Consider a different strategy of looking up the index for an equation

As shown in https://github.com/bankofcanada/ModelBaseEcon.jl/pull/41 and https://github.com/bankofcanada/StateSpaceEcon.jl/pull/39 it is currently very easy to hit a bottleneck by calling the _index_of_var function in e.g. a loop.
Instead, I think would perhaps be useful to cache the eq -> index lookup in the model. This requires keeping this cache up to date if e.g. equations are added and removed but it should not be too difficult.

Thanks for the suggestion.
Done in commit d9cdc09676270d8259ef99bcb3da58d9a1b565e2 in #35


build: upgrade all the things

Oops, I accidentally already created a PR.
To do:

[ ] Discuss: fix eslint no-useless-escape issues removes regexp escapes. However the existing ESLint config specifically disables this rule. Is there a reason the escapes are actually needed? In that case:

revert my commit
disable no-useless-escape in the new eslint config

[x] move codecov SaaS to reparate PR
[x] fix errors
[x] discuss: fetch is now available in Node.js, and the shim-fetch.js from lib-font is no longer being used. This causes all tests to fail, because local paths are treated differently. I'm not sure if this is a breaking change, or if the fromPath function is already broken in Node 22 in the current release.

Update: I investigated the use of fromPath and fromDataBuffer. fromPath is uses in Node.js only, and fromDataBuffer is used in the browser mainly. Making fromPath Node.js only makes sense to me. For browser support I suggest adding a new fromURL API.

Thanks Robbert! 🙏
I think there's something wrong with the linter/prettier, as running npm run prettier makes changes we don't want, like " → '. Likewise for npm run lint-fix.
Also npm run lint gives ERROR: "lint:prettier" exited with 1. 🤔
The rest of the changes look reasonable to me, but I'd love an extra pair of eyes on this. Maybe @Ryuno-Ki would like to do the honors?


Fix menu flashing on full page reload

Fixes #284
Pull request checklist

[x] Your code contains tests relevant for code you modified - No tests needed here
[x] You have linted and tested the project with bin/check

Looks great, thanks for the contribution!


Heating degree days / cooling degree days

Description of the issue
Heating and cooling degree days are important concepts to describe heating and cooling demand of buildings.
Ideas of solution
If you already have ideas for the solution describe them here
Workflow checklist

[ ] I discussed the issue with someone else than me before working on a solution
[ ] I already read the latest version of the workflow for this repository
[ ] The goal of this ontology is clear to me

I am aware that

[ ] every entry in the ontology should have a definition
[ ] classes should arise from concepts rather than from words

Eurostat's definitions:

Heating degree day (HDD) index is a weather-based technical index designed to describe the need for the heating energy requirements of buildings.
Cooling degree day (CDD) index is a weather-based technical index designed to describe the need for the cooling (air-conditioning) requirements of buildings.

a little further down, the definition is a bit more detailed, including the reference temperature

Heating Degree Days (HDD) index:  the severity of the cold in a specific time period taking into consideration outdoor temperature and average room temperature (in other words the need for heating). The calculation of HDD relies on the base temperature, defined as the lowest daily mean air temperature not leading to indoor heating. The value of the base temperature depends in principle on several factors associated with the building and the surrounding environment. By using a general climatological approach, the base temperature is set to a constant value of 15°C in the HDD calculation.

Cooling degree days (CDD) index:  the severity of the heat in a specific time period taking into consideration outdoor temperature and average room temperature (in other words the need for cooling). The calculation of CDD relies on the base temperature, defined as the highest daily mean air temperature not leading to indoor cooling. The value of the base temperature depends in principle on several factors associated with the building and the surrounding environment. By using a general climatological approach, the base temperature is set to a constant value of 24°C in the CDD calculation.


WEBAPP-104: Breadcrumbs scrolled to the end

This pull request belongs to an issue on our bugtracker.
You can find it there by looking for an issue with the key which is mentioned in the title of this pull request.
It starts with the keyword WEBAPP.

You could also add flow type checking to some more files


How to turn off the lines supporting IF

How can this be turned off?

This is a VS Code feature, and not a feature specific to Code for IBM i.
See this possible answer. https://stackoverflow.com/a/54488167/4763757


feat: Teleport DOT between Statemint and Polkdot

Thank you for your contribution to the KodaDot - One Stop Shop for Polkadot NFTs.
👇 __ Let's make a quick check before the contribution.
PR Type

[x] Feature

Needs QA check

@kodadot/qa-guild please review

Context

[x] Closes #6540
Teleport DOT from Statemint to Polkdot
tx: https://assethub-polkadot.subscan.io/xcm_message/polkadot-4b577bee7cc388bc291b5210472061f89131a33b
Teleport DOT from Polkdot to Statemint
tx: https://assethub-polkadot.subscan.io/xcm_message/polkadot-f34f6cc60aaff122fd6a79aa65753bc4b8e84d3c

Please note that the Existential Deposit on asset hub is 0.1 dot

Existential Deposit: The amount deposited to the recipient will be net the calculated cross-chain fee. If the recipient address is new, the amount deposited should be greater than the Existential Deposit
ref: https://wiki.polkadot.network/docs/build-protocol-info#existential-deposit

Did your issue had any of the "$" label on it?

[x] My DOT address: Payout

Screenshot 📸

[x] My fix has changed UI

Copilot Summary

🤖 Generated by Copilot at b16850c
This pull request adds support for multiple origin chains for the teleport feature, allowing users to transfer NFTs between Kusama, Polkadot, and Statemint. It refactors the Teleport.vue component and updates the useChain.ts and teleport.ts utils to handle the different chains and currencies. It also modifies the teleport.receiveValue translation string to dynamically display the currency symbol.

🤖 Generated by Copilot at b16850c

We're sailing across the polkadot seas
With teleport we can move our money with ease
We've got KSM, DOT, and STATEMINT too
So pull on the rope and sing out the value

Wrong decimals on balance:

i would rename Dot here because we are referring to the chain and not the token:

Ahp to Polkadot:
https://assethub-polkadot.subscan.io/tx/0xb570eae0cf0bc384b944d12f34ca37c49eac7ee0e7cd1eb723cc9f017b529e16?tab=xcm_transfer ✔
Polkadot to Ahp -> https://polkadot.subscan.io/tx/0x8705da52c61178aa20532c4053d443011c977821a5a86dca8ec9237976ba75c0 ✔
@Jarsen136 lmk if you want to mess with ED, and I'll open an issue. (related: #7213)

Wrong decimals on balance:

✅ FIXED

i would rename Dot here because we are referring to the chain and not the token:

I would wait for #7263 to merge first because they are related, and then I will update its name.

@Jarsen136 lmk if you want to mess with ED, and I'll open an issue. (related: #7213)

It's the same issue as #7213, so it could be solved there instead of creating a new issue.

Wrong decimals on balance:

✅ FIXED

i would rename Dot here because we are referring to the chain and not the token:

I would wait for #7263 to merge first because they are related, and then I will update its name.

@Jarsen136 lmk if you want to mess with ED, and I'll open an issue. (related: #7213)

It's the same issue as #7213, so it could be solved there instead of creating a new issue.

okie, ty!

i would rename Dot here because we are referring to the chain and not the token:

I would wait for #7263 to merge first because they are related, and then I will update its name.

I changed my mind. The naming for Polkdot could be updated here. Thank you for pointing out. @prury

I saw this in one of your pics

Otherwise, I think it is time to update teleport as well; there are too many chains for this v1. :D

I saw this in one of your pics

✅ Fixed. It's a compatibility issue that only happens on Firefox.

pay 30 usd

😍 Perfect, I’ve sent the payout
💵 $30 @ 4.04 USD/DOT ~ 7.426 $DOT
🧗 16SjUbGKSdjCdWTy3NNT3JxbRVGGqD4mwkHpc6BD9U2Rp29Z
🔗 0x72f07ad7d422b05ee0341eef5e86dbef85ac8de6a30dbf512932b0ff096e6ea1
🪅 Let’s grab another issue and get rewarded!
🪄 github.com/kodadot/nft-gallery/issues


[BUG] Adapt to the latest API changes of libgrape-lite

Describe the bug
Following compilation failure will occur after the latest commit of libgrape-lite
[ 33%] Built target gs_proto
Scanning dependencies of target run_string_oid
[ 35%] Building CXX object CMakeFiles/run_string_oid.dir/test/run_string_oid.cc.o
[ 37%] Linking CXX executable run_pregel_app
[ 37%] Built target run_pregel_app
Scanning dependencies of target projected_graph_benchmarks
[ 38%] Building CXX object CMakeFiles/projected_graph_benchmarks.dir/benchmarks/projected_graph_benchmarks.cc.o
In file included from /__w/GraphScope/GraphScope/analytical_engine/benchmarks/projected_graph_benchmarks.cc:28:0:
/__w/GraphScope/GraphScope/analytical_engine/benchmarks/apps/bfs/bfs.h: In instantiation of ‘void gs::benchmarks::BFS<FRAG_T>::PEval(const fragment_t&, gs::benchmarks::BFS<FRAG_T>::context_t&, gs::benchmarks::BFS<FRAG_T>::message_manager_t&) [with FRAG_T = gs::ArrowProjectedFragment<long int, long unsigned int, grape::EmptyType, grape::EmptyType>; gs::benchmarks::BFS<FRAG_T>::fragment_t = gs::ArrowProjectedFragment<long int, long unsigned int, grape::EmptyType, grape::EmptyType>; gs::benchmarks::BFS<FRAG_T>::context_t = gs::benchmarks::BFSContext<gs::ArrowProjectedFragment<long int, long unsigned int, grape::EmptyType, grape::EmptyType> >; gs::benchmarks::BFS<FRAG_T>::message_manager_t = grape::ParallelMessageManager]’:
/opt/graphscope/include/grape/worker/parallel_worker.h:96:5:   required from ‘void grape::ParallelWorker<T>::Query(Args&& ...) [with Args = {long int}; APP_T = gs::benchmarks::BFS<gs::ArrowProjectedFragment<long int, long unsigned int, grape::EmptyType, grape::EmptyType> >]’
/__w/GraphScope/GraphScope/analytical_engine/benchmarks/projected_graph_benchmarks.cc:55:3:   required from ‘void RunApp(std::shared_ptr<_Tp>, const grape::CommSpec&, const grape::ParallelEngineSpec&, const string&, Args ...) [with GRAPH_T = gs::ArrowProjectedFragment<long int, long unsigned int, grape::EmptyType, grape::EmptyType>; APP_T = gs::benchmarks::BFS<gs::ArrowProjectedFragment<long int, long unsigned int, grape::EmptyType, grape::EmptyType> >; Args = {long int}; std::string = std::basic_string<char>]’
/__w/GraphScope/GraphScope/analytical_engine/benchmarks/projected_graph_benchmarks.cc:108:76:   required from here
/__w/GraphScope/GraphScope/analytical_engine/benchmarks/apps/bfs/bfs.h:83:5: error: no matching function for call to ‘grape::DenseVertexSet<long unsigned int>::Init(grape::VertexRange<long unsigned int>&, uint32_t)’
     ctx.curr_inner_updated.Init(inner_vertices, thread_num());
     ^~~
In file included from /opt/graphscope/include/grape/grape.h:30:0,

also see #762


Help! connect to device

How can I connect to device if I only have mac address value? Thanks a lot!

If you know the information of the device beforehand then you can create a BluetoothDevice object yourself and use that to connect.
Simple example:
BluetoothDevice myDevice = BluetoothDevice(
   id: DeviceIdentifier("MAC address"),
   type: BluetoothDeviceType.le,
   name: "Device Name",
),
FlutterBlue.instance.connect(mydevice);

Thanks for your answer but I can not create a BluetoothDevice object by your ways!
This is why: DeviceIdentifier("MAC address") - Only static members can be accessed in initializers.

Thanks for your support <3

On iOS you cannot connect to a device via mac address - they are not exposed to the users (https://stackoverflow.com/a/2971250/4312184). As I know, the only way to do it is to store device mac address inside an advertisement manufacturer data. At least we do it with our devices and everything working good.

If I got MAC address from advertisement manufacture data and then saved that address, I still need scan and filter results through comparing advertisement manufacture data with the saved MAC address, and then connect device on iOS? I can’t connect device directly with MAC address? Thanks!

I am using ^0.7.2 version and when I run on apple device my app, the logs don't show me the mac address, but I know the device mac address to connect to, the code above doesn't work for me. How can in create device in connect to it? Thank you.

I am using ^0.7.2 version and when I run on apple device my app, the logs don't show me the mac address, but I know the device mac address to connect to, the code above doesn't work for me. How can in create device in connect to it?
Problem: BluetoothDevice doesn't have a default constructor.
Thank you.

I'm also in trouble

Does anyone have any idea how to solve this issue, I also want to connect to a specific device, and there is no longer the constructor in the BluetoothDevice class.


fix(Accordion, Collapsible): use separate id for content

aria-controls needs to point to the ID of AccordionContent, not that of AccordionToggle
added contentId prop on AccordionItem context, update content/toggle components
move v-bind on CollapsibleContent to end, allows custom ID passed from AccordionContent to override the rootContext one

Thanks for catching that @dougwollison ! However I realized since we are using Collapsible component underneath, we don't need to explicitly set the id for content.


Show multiple octicons on repo list

I suppose it's more of a proposal, unsure if we want that for every icon, but personally I'd like a mirror one to be always shown for example.

There are some mixed tabs/spaces.

Need to discuss if this is correct approach; multiple icons can be shown only on explore lists.


[stable/traefik] Give traefik access to secrets, as in its official repo

See https://github.com/containous/traefik/commit/ca5bbab20a661b3b3810aeba84f2169322c88fd4
Traefik pod may end up in an error loop otherwise.

I'd also like to update traefik to 1.3.3 (released 3 days ago). Which chart version should that be?

ping @viglesiasce :–)

ping @lachie83 @mgoodness @unguiculus :–)

LGTM cc @viglesiasce  @lachie83

Actually... let's close this in favor for #1485, which includes this fix among other things.