basic_pub_sub not closing connection

Description
I was looking to make a PR to amqprs and before I started working I decided to runt the regression test. The basic_pub_sub example test is not closing the channel, which is causing the program to live forever. I am checked out onto the main branch.
Command
RUST_LOG=trace cargo run --example basic_pub_sub --all-features

Output
2024-07-18T19:56:39.886695Z TRACE mio::poll: registering event source with poller: token=Token(0), interests=READABLE | WRITABLE
2024-07-18T19:56:39.887858Z TRACE amqprs::net::split_connection: 530 bytes read from network
2024-07-18T19:56:39.887954Z TRACE amqprs::net::split_connection: RECV on channel 0: Start(MethodHeader { class_id: 10, method_id: 10 }, Start { version_major: 0, version_minor: 9, server_properties: FieldTable(470, {ShortStr(12, "cluster_name"): S(LongStr(19, "rabbit@987bfe21cd2d")), ShortStr(11, "information"): S(LongStr(57, "Licensed under the MPL 2.0. Website: https://rabbitmq.com")), ShortStr(8, "platform"): S(LongStr(17, "Erlang/OTP 25.3.2")), ShortStr(7, "product"): S(LongStr(8, "RabbitMQ")), ShortStr(7, "version"): S(LongStr(7, "3.11.15")), ShortStr(12, "capabilities"): F(FieldTable(199, {ShortStr(16, "per_consumer_qos"): t(true), ShortStr(18, "connection.blocked"): t(true), ShortStr(15, "direct_reply_to"): t(true), ShortStr(22, "consumer_cancel_notify"): t(true), ShortStr(28, "authentication_failure_close"): t(true), ShortStr(10, "basic.nack"): t(true), ShortStr(18, "publisher_confirms"): t(true), ShortStr(26, "exchange_exchange_bindings"): t(true), ShortStr(19, "consumer_priorities"): t(true)})), ShortStr(9, "copyright"): S(LongStr(55, "Copyright (c) 2007-2023 VMware, Inc. or its affiliates."))}), mechanisms: LongStr(29, "AMQPLAIN PLAIN RABBIT-CR-DEMO"), locales: LongStr(5, "en_US") })
2024-07-18T19:56:39.888026Z TRACE amqprs::net::split_connection: SENT on channel 0: StartOk(MethodHeader { class_id: 10, method_id: 11 }, StartOk { client_properties: FieldTable(142, {ShortStr(7, "version"): S(LongStr(3, "0.1")), ShortStr(8, "platform"): S(LongStr(4, "Rust")), ShortStr(15, "connection_name"): S(LongStr(25, "AMQPRS000@localhost:5672/")), ShortStr(7, "product"): S(LongStr(6, "AMQPRS")), ShortStr(12, "capabilities"): F(FieldTable(25, {ShortStr(22, "consumer_cancel_notify"): t(true)}))}), machanisms: ShortStr(5, "PLAIN"), response: LongStr(13, "\0user\0bitnami"), locale: ShortStr(5, "en_US") })
2024-07-18T19:56:39.888569Z TRACE amqprs::net::split_connection: 20 bytes read from network
2024-07-18T19:56:39.888584Z TRACE amqprs::net::split_connection: RECV on channel 0: Tune(MethodHeader { class_id: 10, method_id: 30 }, Tune { channel_max: 2047, frame_max: 131072, heartbeat: 60 })
2024-07-18T19:56:39.888596Z TRACE amqprs::net::split_connection: SENT on channel 0: TuneOk(MethodHeader { class_id: 10, method_id: 31 }, TuneOk { channel_max: 2047, frame_max: 131072, heartbeat: 60 })
2024-07-18T19:56:39.888621Z TRACE amqprs::net::split_connection: SENT on channel 0: Open(MethodHeader { class_id: 10, method_id: 40 }, Open { virtual_host: ShortStr(1, "/"), capabilities: ShortStr(0, ""), insist: 0 })
2024-07-18T19:56:39.931179Z TRACE amqprs::net::split_connection: 13 bytes read from network
2024-07-18T19:56:39.931223Z TRACE amqprs::net::split_connection: RECV on channel 0: OpenOk(MethodHeader { class_id: 10, method_id: 41 }, OpenOk { know_hosts: ShortStr(0, "") })
2024-07-18T19:56:39.931474Z DEBUG amqprs::net::reader_handler: register channel resource on connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:39.931518Z  INFO amqprs::api::connection: open connection AMQPRS000@localhost:5672/
2024-07-18T19:56:39.931616Z DEBUG amqprs::net::reader_handler: callback registered on connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:39.931643Z DEBUG amqprs::net::reader_handler: register channel resource on connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:39.931978Z TRACE amqprs::net::split_connection: SENT on channel 1: OpenChannel(MethodHeader { class_id: 20, method_id: 10 }, OpenChannel { out_of_band: ShortStr(0, "") })
2024-07-18T19:56:39.932031Z TRACE amqprs::net::writer_handler: connection 'AMQPRS000@localhost:5672/ [open]' heartbeat deadline is updated to Instant { tv_sec: 8536, tv_nsec: 373637032 }
2024-07-18T19:56:39.932700Z TRACE amqprs::net::split_connection: 16 bytes read from network
2024-07-18T19:56:39.932733Z TRACE amqprs::net::split_connection: RECV on channel 1: OpenChannelOk(MethodHeader { class_id: 20, method_id: 11 }, OpenChannelOk { channel_id: LongStr(0, "") })
2024-07-18T19:56:39.932747Z TRACE amqprs::net::reader_handler: server heartbeat deadline is updated to Instant { tv_sec: 8566, tv_nsec: 374353268 }
2024-07-18T19:56:39.932832Z  INFO amqprs::api::connection: open channel 1 [open] of connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:39.932888Z TRACE amqprs::api::channel::dispatcher: starts up dispatcher task of channel 1 [open] of connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:39.934051Z DEBUG amqprs::api::channel::dispatcher: callback registered on channel 1 [open] of connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:39.934216Z TRACE amqprs::net::split_connection: SENT on channel 1: DeclareQueue(MethodHeader { class_id: 50, method_id: 10 }, DeclareQueue { ticket: 0, queue: ShortStr(21, "amqprs.examples.basic"), bits: 2, arguments: FieldTable(0, {}) })
2024-07-18T19:56:39.934252Z TRACE amqprs::net::writer_handler: connection 'AMQPRS000@localhost:5672/ [open]' heartbeat deadline is updated to Instant { tv_sec: 8536, tv_nsec: 375859900 }
2024-07-18T19:56:39.934703Z TRACE amqprs::net::split_connection: 42 bytes read from network
2024-07-18T19:56:39.934720Z TRACE amqprs::net::split_connection: RECV on channel 1: DeclareQueueOk(MethodHeader { class_id: 50, method_id: 11 }, DeclareQueueOk { queue: ShortStr(21, "amqprs.examples.basic"), message_count: 0, consumer_count: 2 })
2024-07-18T19:56:39.934732Z TRACE amqprs::net::reader_handler: server heartbeat deadline is updated to Instant { tv_sec: 8566, tv_nsec: 376340539 }
2024-07-18T19:56:39.934866Z TRACE amqprs::net::split_connection: SENT on channel 1: BindQueue(MethodHeader { class_id: 50, method_id: 20 }, BindQueue { ticket: 0, queue: ShortStr(21, "amqprs.examples.basic"), exchange: ShortStr(9, "amq.topic"), routing_key: ShortStr(14, "amqprs.example"), nowait: false, arguments: FieldTable(0, {}) })
2024-07-18T19:56:39.934908Z TRACE amqprs::net::writer_handler: connection 'AMQPRS000@localhost:5672/ [open]' heartbeat deadline is updated to Instant { tv_sec: 8536, tv_nsec: 376515447 }
2024-07-18T19:56:39.935381Z TRACE amqprs::net::split_connection: 12 bytes read from network
2024-07-18T19:56:39.935390Z TRACE amqprs::net::split_connection: RECV on channel 1: BindQueueOk(MethodHeader { class_id: 50, method_id: 21 }, BindQueueOk)
2024-07-18T19:56:39.935397Z TRACE amqprs::net::reader_handler: server heartbeat deadline is updated to Instant { tv_sec: 8566, tv_nsec: 377005396 }
2024-07-18T19:56:39.935471Z TRACE amqprs::net::split_connection: SENT on channel 1: Consume(MethodHeader { class_id: 60, method_id: 20 }, Consume { ticket: 0, queue: ShortStr(21, "amqprs.examples.basic"), consumer_tag: ShortStr(21, "example_basic_pub_sub"), bits: 0, arguments: FieldTable(0, {}) })
2024-07-18T19:56:39.935494Z TRACE amqprs::net::writer_handler: connection 'AMQPRS000@localhost:5672/ [open]' heartbeat deadline is updated to Instant { tv_sec: 8536, tv_nsec: 377102035 }
2024-07-18T19:56:39.935893Z TRACE amqprs::net::split_connection: 34 bytes read from network
2024-07-18T19:56:39.935901Z TRACE amqprs::net::split_connection: RECV on channel 1: ConsumeOk(MethodHeader { class_id: 60, method_id: 21 }, ConsumeOk { consumer_tag: ShortStr(21, "example_basic_pub_sub") })
2024-07-18T19:56:39.935907Z TRACE amqprs::net::reader_handler: server heartbeat deadline is updated to Instant { tv_sec: 8566, tv_nsec: 377515624 }
2024-07-18T19:56:39.936013Z TRACE amqprs::api::channel::basic: starts task for async consumer example_basic_pub_sub on channel 1 [open] of connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:39.936020Z  INFO amqprs::api::channel::dispatcher: register consumer example_basic_pub_sub
2024-07-18T19:56:39.936026Z TRACE amqprs::net::split_connection: SENT on channel 1: PublishCombo(Publish { ticket: 0, exchange: ShortStr(9, "amq.topic"), routing_key: ShortStr(14, "amqprs.example"), bits: 0 }, ContentHeader { common: ContentHeaderCommon { class: 60, weight: 0, body_size: 117 }, basic_properties: BasicProperties { property_flags: [0, 0], content_type: None, content_encoding: None, headers: None, delivery_mode: None, priority: None, correlation_id: None, reply_to: None, expiration: None, message_id: None, timestamp: None, message_type: None, user_id: None, app_id: None, cluster_id: None } }, ContentBody { inner: [10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 123, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 34, 112, 117, 98, 108, 105, 115, 104, 101, 114, 34, 58, 32, 34, 101, 120, 97, 109, 112, 108, 101, 34, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 34, 100, 97, 116, 97, 34, 58, 32, 34, 72, 101, 108, 108, 111, 44, 32, 97, 109, 113, 112, 114, 115, 33, 34, 10, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 125, 10, 32, 32, 32, 32, 32, 32, 32, 32] })
2024-07-18T19:56:39.936072Z TRACE amqprs::net::writer_handler: connection 'AMQPRS000@localhost:5672/ [open]' heartbeat deadline is updated to Instant { tv_sec: 8536, tv_nsec: 377680484 }
2024-07-18T19:56:40.936840Z  INFO amqprs::api::channel: close channel 1 [closed] of connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:56:40.937412Z TRACE amqprs::net::split_connection: SENT on channel 1: CloseChannel(MethodHeader { class_id: 20, method_id: 40 }, CloseChannel { reply_code: 200, reply_text: ShortStr(0, ""), class_id: 0, method_id: 0 })
2024-07-18T19:56:40.937631Z TRACE amqprs::net::writer_handler: connection 'AMQPRS000@localhost:5672/ [open]' heartbeat deadline is updated to Instant { tv_sec: 8537, tv_nsec: 379234178 }
2024-07-18T19:57:09.889517Z TRACE amqprs::net::split_connection: 8 bytes read from network
2024-07-18T19:57:09.889551Z TRACE amqprs::net::split_connection: RECV on channel 0: HeartBeat(HeartBeat)
2024-07-18T19:57:09.889564Z TRACE amqprs::net::reader_handler: server heartbeat deadline is updated to Instant { tv_sec: 8596, tv_nsec: 331172526 }
2024-07-18T19:57:09.889577Z DEBUG amqprs::net::reader_handler: received heartbeat on connection 'AMQPRS000@localhost:5672/ [open]'
2024-07-18T19:57:10.939137Z TRACE amqprs::net::split_connection: SENT on channel 0: HeartBeat(HeartBeat)
2024-07-18T19:57:10.939208Z DEBUG amqprs::net::writer_handler: sent heartbeat over connection 'AMQPRS000@localhost:5672/ [open]'

I determined it had something to do with the rabbitmq setup. I got it working here: https://github.com/LockedThread/amqprs/tree/feat/remove-bitnami. Will make PR and discuss after https://github.com/gftea/amqprs/pull/141

I cannot reproduce this.
see the run https://github.com/gftea/amqprs/actions/runs/10037852879/job/27738546051?pr=142

I cannot reproduce this. see the run https://github.com/gftea/amqprs/actions/runs/10037852879/job/27738546051?pr=142

weird, I will re-assess later


Unable to locate package libignition-math6-dev

When I installing Gazebo dependencies
sudo echo $BASE_DEPENDENCIES $GAZEBO_BASE_DEPENDENCIES | tr -d '\' | xargs sudo apt-get -y install

It hints that
E: Unable to locate package libignition-math6-dev

and I used apt-cache search libignition-math*
There only are 2 options
libignition-math-dev - Ignition Robotics Math Library - Development files
libignition-math6-6 - Ignition Robotics Math Library - Shared library

Did you add the OSR Foundation repository?   That is:
sudo sh -c 'echo "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable lsb_release -cs main" > /etc/apt/sources.list.d/gazebo-stable.list'
sudo wget https://packages.osrfoundation.org/gazebo.key -O - | sudo apt-key add -
sudo apt-get update

I second this issue. Here is my screenshot:

There is a typo in my instructions.  Somehow the " ` " got pasted as a " ' " -- which is a completely different thing:  the first should invoke the command, while the second quotes the command within it.
Anyway, look at your line 7:   "Err:7 ...  lsb_release Release".   Again, instead of executing the command "lsb_release" you added the word "lsb_relsease" as the name of your release in apt.   You need to edit the file /etc/apt/sources.list.d/gazebo-stable.list and fix it with what lsb_release returns as your distro (jammy).

This solves the issue, thanks!

i got the same issues but nothing happed.
Err:3 http://packages.osrfoundation.org/gazebo/ubuntu-stable lsb_release Release
404  Not Found [IP: <IP_ADDRESS> 80]
this is my gazebo-stable.list
deb http://packages.osrfoundation.org/gazebo/ubuntu-stable lsb_release -cs main


ManualEnsemble class for specifying all comms in an Ensemble

This PR slightly changes the way we split a large Ensemble into multiple smaller Ensembles, either in the SliceJacobiPC or in the nonlinear Gauss-Seidel iterations.
firedrake.Ensemble essentially has two responsibilities:

Make sure we have three comms on each rank, a global_comm, a spatial_comm, and an ensemble_comm. Currently, firedrake.Ensemble does this by taking a global_comm and splitting it into a Cartesian product of comms, providing a spatial_comm and an ensemble_comm from this product.
Wrap mpi4py calls so that we can send firedrake.Functions from one spatial_comm to another across the ensemble_comm with a simple API and some sanity checks.

Creating a split ensemble involves intercepting the logic in 1 to make sure the comms in the split ensemble relate properly to the comms in the larger ensemble. Specifically, the split ensemble needs three communicators:

A global_comm split from the global_comm of the larger ensemble
An ensemble_comm split from the global_comm or ensemble_comm of the larger ensemble
A spatial_comm that is the same as the spatial_comm from the larger ensemble so we can use the same mesh with both Ensembles.

The main issue here is that we need the spatial_comm of the split ensemble to be the same comm as the spatial_comm of the large ensemble, not just congruent. This means that we can't just make the smaller global_comm for the split ensemble and reuse the existing firedrake.Ensemble.__init__.
Previously I made a new EnsembleConnector class (terrible name, it connects existing spatial_comms, it doesn't connect different Ensembles). This class inherited from firedrake.Ensemble but overrode __init__, taking a global_comm and a specific spatial_comm, then created a new ensemble_comm by splitting the provided global_comm. To go with this is a split_ensemble function that takes in a large ensemble, splits it's global_comm, and passes the split global_comm and the spatial_comm to the new EnsembleConnector.
This works fine for our case but has a couple of issues (other than the naming issues that already plague Ensemble).

The main issue is that it mixes up responsibilities. The split_ensemble function does some, but not all of task 1, making sure we have three viable comms. It sorts out the global_comm and spatial_comm but not the ensemble_comm, which is left to the EnsembleConnector.
It is specific to the case of already having the spatial_comm but not the ensemble_comm (what about the case where I already have the ensemble_comm but not the spatial_comm, or already have both).

This PR changes to having a ManualEnsemble class that inherits from firedrake.Ensemble but just takes three comms and checks that they look like a global/spatial/ensemble comm set (i.e. they look like a cartesian product of comms). It essentially is only doing task 2, wrapping mpi4py calls, and trusts that the three provided comms are a valid set to use.
The split_ensemble function now does all of task 1, taking in a larger Ensemble, splitting the global_comm and the ensemble_comm, and passing these plus the original spatial_comm to ManualEnsemble.
ManualEnsemble is simpler and more general than EnsembleConnector was (also more of a footgun, but I've tried to add enough checks), and split_ensemble now takes care of all of the logic of splitting an Ensemble, rather than just some of it.

@JDBetteridge this PR is just the split_ensemble function and the ManualEnsemble class, the create_ensemble is just a convenience function not used here.


PTROYALEKINGS Family

name: PT ROYALE KINGS
key: pt-rk
color: black
emblem: A_Char_King_01
info:
  description: >
    The **PT ROYALE KINGS Family** is a Portuguese clan family and counts with 5 different clans. Each one for different types of players. **PT ROYALE KINGS** is our main ladder clan and **PT ROYALE KINGS 2** is our main clan focused on war. With the large influx of players we saw the need to create 3 more clans: **PT ROYALE KINGS 3** (War), **PT ROYALE KINGS 4** (War/Ladder) and **PT ROYALE KINGS 5** (Ladder).
clans:
  - name: PT ROYALE KINGS
    tag: GG0YYCJ
  - name: PTROYALEKINGS 2
    tag: PVRCVY29
  - name: PTROYALEKINGS 3
    tag: GGRU0ULL
  - name: PTROYALEKINGS 4
    tag: Q9CL0GCQ
  - name: PTROYALEKINGS 5
    tag: GC0GYVLJ

Family URL https://royaleapi.com/clan/family/pt-rk/clans
name: PT ROYALE KINGS
key: pt-rk
color: black
emblem: A_Char_King_01
info:
logo: https://imgur.com/rxg3HuM
description: >
The PT ROYALE KINGS Family is a Portuguese clan family and counts with 5 different clans. Each one for different types of players. PT ROYALE KINGS is our main ladder clan and PT ROYALE KINGS 2 is our main clan focused on war. With the large influx of players we saw the need to create 3 more clans: PT ROYALE KINGS 3 (War), PT ROYALE KINGS 4 (War/Ladder) and PT ROYALE KINGS 5 (Ladder).
**Apply on Discord**

social:
- discord: https://discord.gg/BRSRwJk
clans:

name: PT ROYALE KINGS
tag: GG0YYCJ
name: PTROYALEKINGS 2
tag: PVRCVY29
name: PTROYALEKINGS 3
tag: GGRU0ULL
name: PTROYALEKINGS 4
tag: Q9CL0GCQ
name: PTROYALEKINGS 5
tag: GC0GYVLJname: PT ROYALE KINGS
key: pt-rk
color: black
emblem: A_Char_King_01
info:
description: >
The PT ROYALE KINGS Family is a Portuguese clan family and counts with 5 different clans. Each one for different types of players. PT ROYALE KINGS is our main Ladder clan and PT ROYALE KINGS 2 is our main clan focused on Clan War Leagues. With the large influx of players we saw the need to create 3 more clans: PT ROYALE KINGS 3 (War), PT ROYALE KINGS 4 (Ladder) and PT ROYALE KINGS 5 (Evo).
clans:
name: PT ROYALE KINGS
tag: GG0YYCJ
name: PTROYALEKINGS 2
tag: PVRCVY29
name: PTROYALEKINGS 3
tag: GGRU0ULL
name: PTROYALEKINGS 4
tag: Q9CL0GCQ
name: PTROYALEKINGS 5
tag: GC0GYVLJ


Fix failing calls to the TFS object model in powershell 4

…hosted agent

LGTM

I will merge this manually


Create your own theme - detailed walkthrough

Added header + <!--more-->
Added pictures to public/screenshots
Rename pictures to 2020-05-26-name.png
Link to ![](/public/screenshots/2020-05-26-name.png)
use $CONVOS_HOME

I do not changed the links from md to html because it is a lot of work and I see on some other blog posts that it is not mandatory.
Not tested, please :

check rendering
double check that no image is missing
read again to double check content

I pushed correction according you review, please check again

Sorry for the late reply. I'm going to merge this PR now.

👍 👍


add WithSecure Elements data connector

Required items, please complete
Change(s):

Add WithSecure Elements via Connector data connector

Reason for Change(s):

Add new data connector for WithSecure Elements solution

Version Updated:

No

Testing Completed:

Need help

Checked that the validations are passing and have addressed any issues that are present:

See guidance below

Guidance <- remove section before submitting

Before submitting this PR please ensure that you have read the following sections and filled out the changes, reason for change and testing complete sections:
Thank you for your contribution to the Microsoft Sentinel Github repo.

Details of the code changes in your submitted PR.  Providing descriptions for pull requests ensures there is context to changes being made and greatly enhances the code review process.  Providing associated Issues that this resolves also easily connects the reason.

Change(s):

Updated syntax for XYZ.yaml

Reason for Change(s):

New schema used for XYZ.yaml
Resolves ISSUE #1234

Version updated:

Yes
Detections/Analytic Rule templates are required to have the version updated

The code should have been tested in a Microsoft Sentinel environment that does not have any custom parsers, functions or tables, so that you validate no incorrect syntax and execution functions properly.  If your submission requires a custom parser or function, it must be submitted with the PR.

Testing Completed:

Yes/No/Need Help

Note: If updating a detection, you must update the version field.

Before the submission has been made, please look at running the KQL and Yaml Validation Checks locally.
https://github.com/Azure/Azure-Sentinel#run-kql-validation-locally

Checked that the validations are passing and have addressed any issues that are present:

Yes/No/Need Help

Note: Let us know if you have tried fixing the validation error and need help.

References:

Guidance for Detection checks
General contribution guidance
PR validation troubleshooting

Hi @HubertSzymanski5
Can you please provide the sample data in .json or .csv format
Thanks

Hello!
I've added sample data in CEF.
https://github.com/Azure/Azure-Sentinel/blob/8d98c4628504c28b22e2ec1b5769dfa1080302e4/Sample Data/CEF/WithSecureViaConnectorSampleData.txt
Should I reformat it to .csv?

Hi @HubertSzymanski5 please add in .csv or .json format. That would be more helpful. Thanks

Hello!
I've updated PR with
sample data in csv as well.

@HubertSzymanski5 Thanks for update. we are checking and update you ASAP.

@v-laanjana : Could you please provide an update on this.

@v-mchatla sure will update ASAP

Sample data ingested

Logo looking good

@HubertSzymanski5 : Please resolve the below comments
In DataConnector please replace the text from azure sentinel to microsoft sentinel whereever it is applicable and version also change to 1.0.0

Please make sure whether it is EPP or EEP for below screenshot correct it

Hi @HubertSzymanski5
Please address @v-mchatla comments.
Thanks

Hi!
Sorry I missed notification previously.
I've made requested changes.
I have a question: do I need to specify some property in data connector json to actually use uploaded logo? I couldn't find that in docs.

Hi @HubertSzymanski5 No, We don't have to add any property.
@v-mchatla Can you please look and approve.

@v-mchatla Can you please  have look.

@HubertSzymanski5 : Please replace the text from azure sentinel to Microsoft sentinel wherever it is applicable still we could see azure sentinel in .md file

@v-spadarthi my bad! Done ;)

@HubertSzymanski5 : Thank you for the fixing the comments.
Could you please move the Data connector under Solution folder like below.
For example:
https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Citrix ADC/Data Connectors
If you need any help over here, please let us know.

Hi!
I moved everything from DataConnectors/WithSecure to Solutions/WithSecure/Data Connectors → connector JSON and MD files.

We are checking with PM team

We are checking with PM team once we get update from them will update you

@HubertSzymanski5 : We got update from PM team, they are suggesting to add some analytics and/or a workbook.Thanks!

@HubertSzymanski5 : Could you please check with<EMAIL_ADDRESS>for this they are suggesting adding some analytics and/or a workbook. Thanks!

Hi!
So we contacted with Eric :) I was away and seems that Serge Haumont sent an email.
They agreed that for now we would like to go with Data Connector only and then create Analytics Rules and Workbooks as we need to prepare them and understand how can we make them as valuable as possible. :)

@HubertSzymanski5 : Thanks for the update.
Could you please create a solution package by using V2 tool
Please follow the below URL and do the package creation. Thanks!
Azure-Sentinel/README.md at master · Azure/Azure-Sentinel (github.com)

@HubertSzymanski5 : Please create a package by using below URL. Thanks!
Azure-Sentinel/README.md at master · Azure/Azure-Sentinel (github.com)

@HubertSzymanski5 : Please create a package by using below URL. Thanks!
Azure-Sentinel/README.md at master · Azure/Azure-Sentinel (github.com)

Hi! Sorry I had few days off.
I'll jump right to it.
Is there anything else I should do?

Hi,
So I've wanted to ask if You have instructions for Linux, but I saw there is PowerShell for Linux.
After all seems like the script createSolutionV2.ps1 doesn't work it tries to download some files to C:\ as on attached screenshot

Can You please help with that issue?

@HubertSzymanski5 : First you need to create a Solution input file and keep it in under solution/Data folder after that we need to create a Package.
For example, refer this solution https://github.com/Azure/Azure-Sentinel/tree/master/Solutions/Agari
while creating package you need to keep the Solution input file in below folder path
C:\GitHub\Azure-Sentinel\Tools\Create-Azure-Sentinel-Solution\V2\input
After that you need to point to below and run the createSolutionV2.ps1

Yes, I've created those two files. I have few questions to those, but first I wanted to make it work.
Is this path C:\GitHub\... hardcoded? I use Ubuntu and there is no C:\. I thought script will use that basePath from input file.
Is there any way to make it work on Linux / Ubuntu?

@HubertSzymanski5 : The base path is not hardcoded you can provide your path and do the package creation.

@v-spadarthi That's good info, thank You, but how can I do that?
In Tools/Create-Azure-Sentinel-Solution/input I've created my Solution_WithSecureElementsViaConnector.json file as it's in instruction. Then there is this BasePath property. In my file it looks like this:

And it gives that error as I posted above.

@HubertSzymanski5 : We will check and provide you an update.

@v-spadarthi  I think I found what was wrong.
First of all on master input file is not empty and contains other solutions files (I think those should be removed):
https://github.com/Azure/Azure-Sentinel/tree/master/Tools/Create-Azure-Sentinel-Solution/input
and for V2:
https://github.com/Azure/Azure-Sentinel/tree/master/Tools/Create-Azure-Sentinel-Solution/V2/input
Then nothing showed, but it's because there is some mismatch in https://github.com/Azure/Azure-Sentinel/blob/master/Tools/Create-Azure-Sentinel-Solution/V2/README.md.
As it states

And then:

I assume path in former should be \Tools\Create-Sentinel-Solution\V2\input. So I moved it there
After that it seems script runs, as for now it has not finished, but runs :)

I think I managed to create this package.
In separate commit I removed files from input directories (and I haven't uploaded my input file to prevent issues for others).
Please ignore PS. above. All the tests were fine later on - only first run was printing everything to console. Rest had nice simple output with message what went wrong.
Please take a look and let me know if there is anything to do.
What I wanted to ask before is about support section.
WithSecure doesn't have public support email address. All issues should be sent via form on our support page.
Therefor I removed email from support and went just with link, is that possible?

@HubertSzymanski5 : Please add the Input file under Solutions/WithSecureElementsViaConnector/Data folder and keep it here
below are looking good.
Create UI definition looking good

Main template looking good

Arm-ttk also running fine

Thank You @v-spadarthi.
Input file added.

Approved and merged since Suresh's has approved the PR

Hi!
Can You tell me when it will be visible? So far I cannot see this in portal.

@HubertSzymanski5 : Please read the below document and publish your solution
https://github.com/Azure/Azure-Sentinel/blob/master/Solutions/README.md
If still need any further support, feel free to reach out us.


Add Markdown support to questions in tickets

Looks like a super quick fix to this would be to do meteor add markdown and then wrap all question text in the {{#markdown}} ... {{/markdown}} helper. However, two issues I see with this. One is that is doesn't allow users to preview the markdown that they're typing, I think something a bit more complex would be needed for that. Additionally, I don't think the markdown package allows for LaTeX which would be cool to have. Perhaps that could be fixed just by adding MathJax, though.

This library might be a good option for user input.


Correctly handle absence of JavaScript

The engine variable may be `null. Show a warning and disable the corresponding UI elements.

I'm encountering this issue with OpenJDK 16. I then read this version of OpenJDK removed the JavaScript engine, so I tried v11 but receive the error Unable to locate script class: HashDB.java. Any help is much appreciated! I'd love to get this working on Ghidra v 10.1.5.

This can be reproduced by running a lookup whilst running Ghidra under any of the following:
OpenJDK 64 Bit Version 16.0.1 2021-04-20
As documented here the Nashorn script engine has been removed, which was the provider for the "JavaScript" engine type. They've done this as they were having trouble maintaining it and keeping it compatible with ECMAScript standards.
Unfortunately the following code shows that in OpenJDK 15+ there are actually no engine candidates at all.
import java.util.List;

import javax.script.ScriptEngine;
import javax.script.ScriptEngineFactory;
import javax.script.ScriptEngineManager;

public class ListEngines {
  public static void main(String args[]) {
    ScriptEngineManager manager = new ScriptEngineManager();
    List<ScriptEngineFactory> factories = manager.getEngineFactories();
    for (ScriptEngineFactory factory : factories) {
      System.out.println(factory.getEngineName());
      System.out.println(factory.getEngineVersion());
      System.out.println(factory.getLanguageName());
      System.out.println(factory.getLanguageVersion());
      System.out.println(factory.getExtensions());
      System.out.println(factory.getMimeTypes());
      System.out.println(factory.getNames());
    }
  }
}

My current thoughts are:

Add a small indicator to the project/readme to just say "tested with OpenJDK xxxxxx" or just a note to say the plugin doesn't function with OpenJDK 15+
Update code to account for when the engine is null, and perhaps print a message to just say "ScriptEngine is not present in your java instance, transformations not supported"

Have been researching alternatives to the nashorn script engine. it's all a bit messy but will update if I find a simple replacement that can be slotted straight in.

I've moved to jython to handle the transform, but i can't say whether or not it's a good idea: https://github.com/OALabs/hashdb-ghidra/compare/main...matthw:hashdb-ghidra:main
i'm running into some issues, where the ghidra data types can't be browsed anymore because of some null references.
can't really say if it's because of my change (but why ?) or linked to the ghidra version bump (10.2.2).


turn scripts into mise tasks

The scripts should be converted into mise tasks
Related #1567

@jdx
Does this mean moving things under the .mise directory?
https://mise.jdx.dev/tasks/script-tasks.html

yeah

if you take this on, I'd probably start with just 1. Trying to do all of them at once is probably too likely to cause problems.

Thanks for the advice. I'll start by focusing on one task at a time and go from there.

Looking at these scripts, it seems some of them are used specifically in (and would only work in the context of) the github workflows while some others should be used inside the packaging containers. I am not sure moving them as mise tasks is a good idea in the cases. IMO it would be better to move them in dedicated folders of the .github and packaging folders, respectively.

I'm wanting to clean up some old issues and I think this one just doesn't have enough value to stick around so I'm closing.


Update notebooks for optimization level 0

A change in terra is that the simulator will now perform optimization level 1, which will have unintended effects for some of the ignis circuits (most notably the characterization circuits).

Informations

Qiskit Ignis version:
Python version:
Operating system:

What is the current behavior?
Steps to reproduce the problem
What is the expected behavior?
Suggested solutions

Maybe we should add barriers to the characterization circuits

https://github.com/Qiskit/qiskit-ignis/pull/245


fix: set timestamps when creating achievements

Achievements are being created with null timestamps because a call to the method withTimestamps is needed https://laravel.com/docs/10.x/eloquent-relationships#retrieving-intermediate-table-columns

Nice one, had completely forgot about this.


Healthcheck example

What version of Traefik are you using (traefik version)? 1.1.2-rancher1
What is your environment & configuration (arguments, toml...)? KVM with one rancher server and one frontend node and one backend node
What did you do?
created my own catalog templates:
https://github.com/ohmydocker/ohmydocker-catalog/tree/master/templates/meanshop-traefik
with this healthcheck:
services:
  meanshop-nginx:
    scale: 1
    health_check:
      port: 80
      interval: 30000
      initializing_timeout: 360000
      unhealthy_threshold: 9
      strategy: none
      healthy_threshold: 2
      response_timeout: 9000

What did you expect to see?
traefik serving my stuff
What did you see instead?
"initializing" and constant purging and rebooting of my containers
original issue here
and recently opsforge had this issue which I believe is related.
Are there any known working good examples of a healthcheck?  Or perhaps a simple hello world template with which to test traefik?
EDIT: I moved this version into its own directory to explore other methods
https://github.com/ohmydocker/ohmydocker-catalog/tree/master/templates/meanshop-traefik
I updated the link above as well and got rid of the extraneous ones

@timoreimann Can you explain exactly what you are trying to do? Traefik doesn't have anything to do with Rancher health checks.
In other words, if your health check works correctly without traefik it will continue to work correctly when you are running traefik in that environment. Health checks run directly against the internal ip/port of the container.

I wasn't using healthchecks at all until I tried to get traefik to work. And according to the readme:
WARNING: Only services with healthy state are added to traefik, so health checks are mandatory.

I merely want to serve my containers content through a single port 80 or 443 portal.  Apparently, I need a working healthcheck.   Which leads to the continuous rebooting situation as described in my post here.  I also, noticed another issue here, while that one does not mention traefik, it does indicate I'm not alone in this bizaar behavior.
So traefik, might not have anything to do with the healthcheck, it certainly depends on it working.  Does anyone have a working 'hello world' example that I can compare against my own for sanity's sake?

@SantoDE can you possibly help?

I have a helloworld example that is both working on one ranch, and broken in another.  I think I have an issue that is outside the context of traefik.
for reference here is a tiny example with which to test traefik out:
https://github.com/ohmydocker/ohmydocker-catalog/tree/master/templates/traefik-helloworld

@joshuacox, it sounds like you actually using this project rather than the official rancher provider integration within traefik (just added in v1.2.0). FWIW, the official rancher provider does not require rancher healthchecks for traefik to function.
That said, the issue you are having is entirely within your rancher-compose configuration. As an example, here's the health check I'm using for one of my services:
version: '2'
services:
  web:
    scale: 3
    start_on_create: true
    health_check:
      healthy_threshold: 2
      response_timeout: 2000
      port: 5000
      unhealthy_threshold: 3
      initializing_timeout: 60000
      interval: 2000
      strategy: recreate
      reinitializing_timeout: 60000

yes indeed I am using rawmind's image from the community repo, I was not aware there was another method.  Is there documentation for the official rancher provider?

@joshuacox, you can find the rancher provider docs here: https://github.com/containous/traefik/blob/v1.2/docs/toml.md#rancher-backend

Are you certain when you say that "the issue you are having is entirely within your rancher-compose configuration"?  Because I now have another rancher environment up and everything appears to be working correctly.  I think the other environment has something wrong with it, but I am entirely open to suggestions if you actually saw something wrong with my rancher-compose?  And anyone else I recommend you use rawmind's template, there is nothing wrong with it at all imho.

after destroying that env and recreating I have had no issues.  I'm closing here, if anyone has suggestion for improvements I welcome issues and pull requests for this https://github.com/ohmydocker/ohmydocker-catalog/tree/master/templates/traefik-helloworld


Enforce max rows in join limit on joined rows with left input as well

Currently, the maxRowsInJoin query option (https://docs.pinot.apache.org/users/user-guide-query/query-options#supported-query-options) / max_rows_in_join join hint (https://docs.pinot.apache.org/users/user-guide-query/multi-stage-query/operator-types/hash_join#max_rows_in_join) is only applied to the in-memory hash table built from the join's right input.
This patch applies the limit to the actual joined rows as well (i.e., after matching rows in the left input). This is important because without a default limit, an accidental large CROSS JOIN like query can cause servers to crash.
If the limit is reached while joining rows from the left input with the hash table built from the right input, the join overflow mode is checked.
By default (THROW), an exception is thrown and the query fails. If the join overflow mode is BREAK, then we early terminate the left input and return the joined rows.
Note that this enforcement is done on a per operator basis, so the total number of rows emitted in a join operation across all workers can still be more than the limit.
The documentation will also be updated to reflect this change in the enforcement of the max rows in join limit.

Codecov Report
Attention: Patch coverage is 0% with 53 lines in your changes missing coverage. Please review.

Project coverage is 0.00%. Comparing base (59551e4) to head (b64c842).
Report is 971 commits behind head on master.

Files with missing lines
Patch %
Lines

...pinot/query/runtime/operator/HashJoinOperator.java
0.00%
53 Missing :warning:

:exclamation:  There is a different number of reports uploaded between BASE (59551e4) and HEAD (b64c842). Click for more details.
HEAD has 53 uploads less than BASE

Flag
BASE (59551e4)
HEAD (b64c842)

integration
7
1

integration2
3
1

temurin
12
1

java-21
7
1

skip-bytebuffers-true
3
0

skip-bytebuffers-false
7
1

unittests
5
0

unittests1
2
0

java-11
5
0

unittests2
3
0

integration1
2
0

custom-integration1
2
0

Additional details and impacted files
@@              Coverage Diff              @@
##             master   #13922       +/-   ##
=============================================
- Coverage     61.75%    0.00%   -61.76%
=============================================
  Files          2436     2511       +75
  Lines        133233   138790     +5557
  Branches      20636    21329      +693
=============================================
- Hits          82274        0    -82274
- Misses        44911   138790    +93879
+ Partials       6048        0     -6048

Flag
Coverage Δ

custom-integration1
?

integration
0.00% <0.00%> (-0.01%)
:arrow_down:

integration1
?

integration2
0.00% <0.00%> (ø)

java-11
?

java-21
0.00% <0.00%> (-61.63%)
:arrow_down:

skip-bytebuffers-false
0.00% <0.00%> (-61.75%)
:arrow_down:

skip-bytebuffers-true
?

temurin
0.00% <0.00%> (-61.76%)
:arrow_down:

unittests
?

unittests1
?

unittests2
?

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

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


Add Automation Calculator

TODO:

[x] Add Ansible Analytics to navbar
[x] only superuser can see the navbar item
[x] Add special unique EmptyStates
[x] use API to decide ErrorStates correctly/ Clean empty states
[x] update ErrorStates buttons to navigate to Settings - removed for now
[x] Automation Calculator table
[x] Automation Calculator chart https://www.npmjs.com/package/react-json-chart-builder/v/1.14.3 - there's still some dep problems
[x] Automation Calculator summary
[x] translations - done-ish
[x] pagination
[x] sorting
[x] filtering

Only superadmin can access this page and sees Analytics -> Reports in nav bar.
How it looks right now:

Depends on https://github.com/ansible/awx/pull/13652
Fixes https://issues.redhat.com/browse/AA-1536
Fixes https://issues.redhat.com/browse/AA-1537

@marshmalien Fixed! Given the deadline it was decided that auditor will not be allowed to see this page yet. They will after API is fixed in a follow-up PR.

@vidyanambiar All code comments fixes. Thanks for suggestions :)
As for the skeleton toolbar it's on purpose from my point of view. It's populated from API so if it fails I have no data to populate it and it stays as loading state. But I can ask UX for correct pattern. I believe there's no pattern for this case in the codebase yet. I'm open to the suggestion :)

@vidyanambiar @mabashian is this PR ready to be merged, I believe one edge case situation is not resolved but it is not blowing up or anything. It just needs UX related issue.


Print duty hours on who is on duty? command

Use case.
When somebody asks
@cibot who is on duty?

cibot replies with the duty person name

But it's also very useful to display current duty hours, both for client transparency and own checking "what duty time do I have now?".
Reply example
<DUTY_ENGINEER_NAME> on duty today. Duty hours: from XXX to YYY (UTC)

will be available in 0.7.0


Setup Prometheus for alerting rules and as alert manager

[ ] Setup Prometheus for alerting rules and as alert manager
[x] Remove dependencies to sockshop

Removal of dependencies has been moved to a dedicated issue #657

Research done. Results are committed to a feature branch https://github.com/keptn/examples/tree/feature/612/prometheus-alerting
Alerting has to be tuned to meet the actual use case and is only for demo purposes here.
The alert can be fired by generating a little bit of load on containers in the sockshop-dev namespace, e.g., with
hey -z 5m http://carts.sockshop-dev.DOMAIN.xip.io/


neonavigation: 0.7.0-1 in 'melodic/distribution.yaml' [bloom]

Increasing version of package(s) in repository neonavigation to 0.7.0-1:

upstream repository: https://github.com/at-wat/neonavigation.git
release repository: https://github.com/at-wat/neonavigation-release.git
distro file: melodic/distribution.yaml
bloom version: 0.9.1
previous version for package: 0.6.0-1

costmap_cspace

No changes

joystick_interrupt

No changes

map_organizer

No changes

neonavigation

No changes

neonavigation_common

No changes

neonavigation_launch

No changes

obj_to_pointcloud

No changes

planner_cspace
* planner_cspace: add MoveWithToleranceAction server (#433 <https://github.com/at-wat/neonavigation/issues/433>)
* planner_cspace: fix typo (#436 <https://github.com/at-wat/neonavigation/issues/436>)
* planner_cspace: implement motion primitive algorithm for speed-up (#431 <https://github.com/at-wat/neonavigation/issues/431>)
* Contributors: Daiki Maekawa, Naotaka Hatao

safety_limiter

No changes

track_odometry

No changes

trajectory_tracker
* trajectory_tracker: calculate correct curvature at the end of path (#435 <https://github.com/at-wat/neonavigation/issues/435>)
* trajectory_tracker: fix test initialization timeout (#432 <https://github.com/at-wat/neonavigation/issues/432>)
* Contributors: Atsushi Watanabe, Naotaka Hatao

Holding for sync


Prefix and Suffix

Is your feature request related to a problem? Please describe.
For example when working with path uris you may want to end or start the path with /, except when it already does not have such prefix or suffix. This may be necessary to normalize base paths coming from user input or from configs.
Describe the solution you'd like
A conditional Prefix() and Suffix() method that would add suffix/prefix in case it does not exist.
In some languages/libraries these are also called str_start, str_cap, str_finish etc..
Describe alternatives you've considered
I have done this in couple of projects, but I'd rather use some good existing/common library instead of copy-pasting utilities package from project to project.
Additional context
I'd make a PR, but it requires an issue to exist as I read from contributions guidelines.
Proposed code examples:

import "strings"

// Prepend a string to a string if it does not already start with same string
func Prefix(str, prefix string) string {
	if strings.HasPrefix(str, prefix) {
		return str
	}

	return prefix + str
}

// Append a string to string if it does not already end with same string
func Suffix(str, suffix string) string {
	if strings.HasSuffix(str, suffix) {
		return str
	}

	return str + suffix
}

Is your feature request related to a problem? Please describe.
For example when working with path uris you may want to end or start the path with /, except when it already does not have such prefix or suffix. This may be necessary to normalize base paths coming from user input or from configs.
Describe the solution you'd like
A conditional Prefix() and Suffix() method that would add suffix/prefix in case it does not exist.
In some languages/libraries these are also called str_start, str_cap, str_finish etc..
Describe alternatives you've considered
I have done this in couple of projects, but I'd rather use some good existing/common library instead of copy-pasting utilities package from project to project.
Additional context
I'd make a PR, but it requires an issue to exist as I read from contributions guidelines.
Proposed code examples:
import "strings"

// Prepend a string to a string if it does not already start with same string
func Prefix(str, prefix string) string {
	if strings.HasPrefix(str, prefix) {
		return str
	}

	return prefix + str
}

// Append a string to string if it does not already end with same string
func Suffix(str, suffix string) string {
	if strings.HasSuffix(str, suffix) {
		return str
	}

	return str + suffix
}

You're welcome to make this  PR as a new feature.


Regex matching

Closes #49
I've also moved the configuration to the plugin directory, since that's where it should actually be.

That being said, I'm leaning towards a callback, i'll try an implementation tmrw

OK.. Should I close this PR?

That being said, I'm leaning towards a callback, i'll try an implementation tmrw

OK.. Should I close this PR?

Leave open for now.

https://github.com/RRethy/vim-illuminate/commit/b3727c125efe5aace5ae861b85fd9e9df41b01b7


Convert binding to N-API

Heavy work in progress of replacing NAN with N-API.
Attempting to combine the prior work https://github.com/boingoing/node-sass/pull/1 with the drift in master, namely #2128 #2298.
Fixes #1988

This is getting pretty close. There's a segfault in one of the tests I still need to debug.
It's worth noting this unwinds the work @stefanpenner's to implement Nan::ObjectWrap (#2128) largely because I couldn't get my head around how to make Napi::ObjectWrap<T> work. May this is something you're interested in looking at again @stefanpenner?

This potentially unwinds @kkoopa's work to propagate async context (#2295) because I couldn't find the equivalent in N-API.

I have it compiling and running most of the tests. There is a segfault that seems semi random. I'll need to investigate.
I've update the the install scripts to use the N-API version instead of module version. Have confirmed binary compiled Node 10 executes on Node 6, 8, 9, 10. Although 9 displays an annoying warning that people will definitely files issues about because...

I've resolved the segfault. All tests are passing locally (OSX) on all Node LTS and current.
We'll need to rejig CI a bit since the binary no longer builds on Node < 10.

We have our first green N-API builds
https://travis-ci.org/sass/node-sass/builds/404487187
Just for kicks the current hacked CI setup shows that binaries built on Node 10 work on other LTS Node.

@nschonni note this means we probably can't have node-gyp fallback to build

No, the node-pre-gyp handles napi vs the module version in it's download and fallback

Sorry what I mean is that with N-API we can no longer compile the binary on Node < 10. So if the download fails there's no point node-pre-gyp falling back to build locally.

Ah, gotcha, but I think it is backported to v6 & v8. I think older stuff may be able to have support through https://github.com/nodejs/node-addon-api/blob/master/doc/setup.md but I'm not :100:

In my experiments binaries built on 10 run back until 6, but I couldn't get
it to build on < 10 because the have different napi versions. I could be
missing something though
On Tue., 17 Jul. 2018, 2:14 am Nick Schonning<EMAIL_ADDRESS>wrote:

Ah, gotcha, but I think it is backported to v6 & v8. I think older stuff
may be able to have support through
https://github.com/nodejs/node-addon-api/blob/master/doc/setup.md but I'm
not 💯
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/sass/node-sass/pull/2440#issuecomment-405301642, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAjZWEVhL0lhyjPYXpGzE9DtAqzfK9nUks5uHLvogaJpZM4VGwiO
.

I have a call with some napi folk later in the week. I'll get some
clarification
On Tue., 17 Jul. 2018, 2:29 am Michael Mifsud<EMAIL_ADDRESS>wrote:

In my experiments binaries built on 10 run back until 6, but I couldn't
get it to build on < 10 because the have different napi versions. I could
be missing something though
On Tue., 17 Jul. 2018, 2:14 am Nick Schonning<EMAIL_ADDRESS>wrote:

Ah, gotcha, but I think it is backported to v6 & v8. I think older stuff
may be able to have support through
https://github.com/nodejs/node-addon-api/blob/master/doc/setup.md but
I'm not 💯
—
You are receiving this because you were assigned.
Reply to this email directly, view it on GitHub
https://github.com/sass/node-sass/pull/2440#issuecomment-405301642, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAjZWEVhL0lhyjPYXpGzE9DtAqzfK9nUks5uHLvogaJpZM4VGwiO
.

It's worth noting this unwinds the work @stefanpenner's to implement Nan::ObjectWrap (#2128) largely because I couldn't get my head around how to make Napi::ObjectWrap work.

As long as the memory leak scripts I wrote, don't demonstrate a leak we should be ok

@xzyfer I can try and find some time later this week, to see if this regresses any of the issues I saw earlier.
Switching to the napi is nice, as it is much nicer then NaN. But we should be sure not to regress on those leaks.

As long as the memory leak scripts I wrote, don't demonstrate a leak we should be ok

I can try running them locally as a verification.

I can try and find some time later this week, to see if this regresses any of the issues I saw earlier. Let me know if I should.

This would be great. I'm not planning to change the N-API implementation at the moment.

Assuming supported nodes support the needed napi's

It supports our reduced Node support as of v5 which is where I'd hope to land this.

Looking at https://nodejs.org/api/n-api.html#n_api_n_api_version_matrix, I think the minimum version supported has to be raised to 6.14.
Maybe TravisCI should be adjusted to test on the minimum supported version of each LTS line?

Hey @realityking, a couple updates from today

I had call with some of the N-API folks this morning, and
had a chat with @nschonni

It's now my expectation that we'll only rollout the N-API binding to Node 10+. Requiring minimum Node versions is simply too fragile. So moving forward we will be using nan for Node < 10 and N-API for Node 10+.

That's very interesting

Requiring minimum Node versions is simply too fragile

Is that because npm doesn't bail out when the the minimum node version isn't met, instead just printing a warning?

Partly, but largely because the typical user of node-sass either isn't in
control of their node version or doesn't know how/why to change versions.
It also introduces another barrier to adoption. We're really focused on
making the installation process more forgiving. It's the single largest
source of issues.
On Fri., 20 Jul. 2018, 5:20 pm Rouven Weßling<EMAIL_ADDRESS>wrote:

That's very interesting
Requiring minimum Node versions is simply too fragile
Is that because npm doesn't bail out when the the minimum node version
isn't met, instead just printing a warning?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/sass/node-sass/pull/2440#issuecomment-406511594, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AAjZWP-u1P-0nvqGgHBMnViGrR-Oveodks5uIYSggaJpZM4VGwiO
.

Node.js team has added support for N-API on Node 6 and Node 8, what difference does that make for users to use N-API or nan? If the concern is about users using older versions, they can keep using node-sass@4 (SEMVER major are about breaking changes after all), I don't really see the point of keeping nan when we could use N-API everywhere.

Picking this up again as we plan to drop support for Node < 10 in the next semver major.

Is anyone still working on this 👋


support alternate cc versions

Signed-off-by: Gregory Hill<EMAIL_ADDRESS>

This seems to not work. I get this error when building with 1.29 (hint: to try, you should remove the Cargo.lock file)
$ rustup run 1.29.0 cargo test
    Updating registry `https://github.com/rust-lang/crates.io-index`
error: unable to get packages from source

Caused by:
  failed to parse manifest at `/home/steven/.cargo/registry/src/github.com-1ecc6299db9ec823/cc-1.0.61/Cargo.toml`

Caused by:
  editions are unstable

Caused by:
  feature `edition` is required

this Cargo does not support nightly features, but if you
switch to nightly channel you can add
`cargo-features = ["edition"]` to enable this feature

IIRC that version limit is there because cc moved to edition 2018 in v1.0.41.

I think we can only do this once our MSRV supports "editions".


create separate function to register an image into atlas space

it would be useful to have a function that can take a registration dir as input and a moving image (in either func or anat space for that fly) and register the image into atlas space.

actually would be nice to be able to arbitrarily go to/from any of the spaces (func, anat, or atlas).


[Bug]: Oxygen can doesn't work when set to Charge Armor or Charge Inventory

Minecraft Version
1.19.2
Mod Loader and Version
Forge-43.2.3
Ad Astra! Version
1.12.1
Addon Mod Version (This Mod)
1.9
The details
If I have a normal Oxygen Can full with oxygen and change it to Charge Armor or Charge Inventory, the Oxygen Can empties but it doesn't charge the Space Suit with oxygen.
I tested this in a dedicated server.

I checked it working now.
Did you test on venus or mercury?
There need 'Netherite Oxygen Can'
Check tempurator range in tooltip

I just experienced this same behavior in ATM8.  I am in lunar orbit space station, setting the regular oxygen cans to fill my armor just makes them drain immediately


feat: add _id label to all hypershift operator metrics

What this PR does / why we need it:
This PR adds the _id label to all the hypershift operator metrics that didn't have it yet.
For ROSA, this significantly facilitates promql queries on metrics coming from the hypershift operator and hosted clusters, as the hosted cluster metrics also contain the same _id label.
Currently, to combine metrics from HC and the hypershift operator in a query, we need to aggregate another metric containing both _id and exported_namespace. With this change, we can directly aggregate through _id.
Which issue(s) this PR fixes
Fixes #HOSTEDCP-1183 (note the ticket isn't groomed yet)
Checklist

[ ] Subject and description added to both, commit and PR.
[ ] Relevant issues have been referenced.
[ ] This change includes docs.
[x] This change includes unit tests.

/approve
ptal cc @csrwng

/retest

/lgtm


安装完所需库后 执行ui.py报错

flet用的0.4.0版本
python3.9 ./ui.py
LSOpenURLsWithRole() failed with error -10825 for the file /Users/min/.flet/bin/flet-0.4.0/Flet.app.
Exception in thread Thread-1:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/threading.py", line 980, in _bootstrap_inner
self.run()
File "/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/threading.py", line 917, in run

有更多报错信息吗，看不出来


bower install: The "main" field cannot contain minified files

bower cookieconsent#*     invalid-meta The "main" field cannot contain minified files
I reckon the package should have only non-minified files in "main", no one has this issue as well?
Is this on purpose?

You are right, the spec for bower.json["main"] does say that you shouldn't be pointing to minified files.
It will have been ignorance on our part that we linked to the minified files, but I'm not sure it's something I'd particularly rush to change.
The documentation states that you can only have 1 file of each extension (.js, .css, etc), but we seem to have setup the compilation for the CSS so it concatenates several files together then minifies, which would give us no single file to target.
As such, unless anyone has any better ideas other than migrating to SCSS purely to satisfy bower (something I am not enthusiastic to do :P), I think leaving it be is probably the best course of action.


Add Basic Component - Strong

According to the conclusion of weekly meeting No. 2, we will leave HTML native strong tag for the strong component.


Make job submission browsable in api (probably, through creating a ModelViewSet)

Won't do, moved server to aiohttp. UI for job submission is available through frontend and also might be made available with Swagger.


i18n(es): add install-and-setup.mdx

Description (required)
Add new install-and-setup translation for es.

Related issues & labels (optional)

Suggested label: i18n

#8415

Hello! Thank you for opening your first PR to Astro’s Docs! 🎉
Here’s what will happen next:

Our GitHub bots will run to check your changes.
If they spot any broken links you will see some error messages on this PR.
Don’t hesitate to ask any questions if you’re not sure what these mean!

In a few minutes, you’ll be able to see a preview of your changes on Vercel 🥳

One or more of our maintainers will take a look and may ask you to make changes.
We try to be responsive, but don’t worry if this takes a few days.

Lunaria Status Overview
🌕 This pull request will trigger status changes.

Learn more
By default, every PR changing files present in the Lunaria configuration's files property will be considered and trigger status changes accordingly.
You can change this by adding one of the keywords present in the ignoreKeywords property in your Lunaria configuration file in the PR's title (ignoring all files) or by including a tracker directive in the merged commit's description.

Tracked Files

Locale
File
Note

es
install-and-setup.mdx
Localization added, will be marked as complete.

Warnings reference

Icon
Description

🔄
The source for this localization has been updated since the creation of this pull request, make sure all changes in the source have been applied.


cant run in windows

it causes a error in startup
C:\Users\pro>pyvim
Traceback (most recent call last):
  File "c:\python37\lib\site-packages\pkg_resources\__init__.py", line 2798, in get_entry_map
    ep_map = self._ep_map
  File "c:\python37\lib\site-packages\pkg_resources\__init__.py", line 2756, in __getattr__
    raise AttributeError(attr)
AttributeError: _ep_map

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "c:\python37\lib\runpy.py", line 193, in _run_module_as_main
    "__main__", mod_spec)
  File "c:\python37\lib\runpy.py", line 85, in _run_code
    exec(code, run_globals)
  File "C:\Python37\Scripts\pyvim.exe\__main__.py", line 9, in <module>
  File "c:\python37\lib\site-packages\pyvim\entry_points\run_pyvim.py", line 34, in run
    editor = Editor()
  File "c:\python37\lib\site-packages\pyvim\editor.py", line 80, in __init__
    self.styles = generate_built_in_styles()
  File "c:\python37\lib\site-packages\pyvim\style.py", line 37, in generate_built_in_styles
    return dict((name, get_editor_style_by_name(name)) for name in get_all_styles())
  File "c:\python37\lib\site-packages\pyvim\style.py", line 37, in <genexpr>
    return dict((name, get_editor_style_by_name(name)) for name in get_all_styles())
  File "c:\python37\lib\site-packages\pygments\styles\__init__.py", line 88, in get_all_styles
    for name, _ in find_plugin_styles():
  File "c:\python37\lib\site-packages\pygments\plugin.py", line 63, in find_plugin_styles
    for entrypoint in iter_entry_points(STYLE_ENTRY_POINT):
  File "c:\python37\lib\site-packages\pkg_resources\__init__.py", line 656, in <genexpr>
    for entry in dist.get_entry_map(group).values()
  File "c:\python37\lib\site-packages\pkg_resources\__init__.py", line 2801, in get_entry_map
    self._get_metadata('entry_points.txt'), self
  File "c:\python37\lib\site-packages\pkg_resources\__init__.py", line 2499, in parse_map
    raise ValueError("Entry points must be listed in groups")
ValueError: Entry points must be listed in groups

I'm not sure what went wrong here. It's supposed to run fine on Windows.
(But it's some time ago that I tried running it on Windows.)

@golam71 I'm late to the party here but I can confirm this works for me under Windows with:

Python 3.10.4 64-bit
Windows 10
PyVim 3.0.3 and prompt_toolkit 3.0.38

I integrated this into my encrypted notes viewer/editor/search tool https://github.com/clach04/puren_tonbo/issues/34

I suppose it was because of python 3.7


BUG: open + close + open fails

Did you check docs and existing issues?

[X] I have read all the docs.
[X] I have searched the existing issues.
[X] I have searched the existing discussions.

Neovim Version (nvim -v)
NVIM v0.9.5
Operating System / Version
MacOS 14.4.1
Describe the Bug
Neotree fails with:
[Neo-tree ERROR] debounce  filesystem_navigate  error:  .../packer/start/neo-tree.nvim/lua/neo-tree/ui/renderer.lua:1036: Vim:E95: Buffer with this name already exists

Screenshots, Traceback

Steps to Reproduce
Run the following commands:

:Neotree
:q
:Neotree

Expected Behavior
Reopen neotree
Your Configuration
https://github.com/hackaugusto/dotfiles/blob/d00d42654a07715dde52013a029bfb60cd12c245/.config/nvim/init.lua

A. Are you on the latest commit / release?
B. Could you try this option and set it to true?
https://github.com/nvim-neo-tree/neo-tree.nvim/blob/16d1b194376bf1fc2acd89ccb3c29ba8315bfcea/lua/neo-tree/defaults.lua#L13

Duplicate of

https://github.com/nvim-neo-tree/neo-tree.nvim/issues/1415


userland rootscript does not wait for userland

Currently code for checking if we are not in setupassistant is only in package installation if/else branch.
When there is no package in userland section of installapplications.json (only rootscripts), installapplications.py does not wait for user to log in. Rootscripts in userland section  are executed during setup assistant as if they were in setupassistant section.
Is there a reason for this or should we improve the code?
I created PR #49 with simple change to deal with this. (I did not study entire installapplications.py source code).

Definitely a bug.
Thanks,
Erik Gomez

From: Michal Moravec<EMAIL_ADDRESS>Sent: Tuesday, April 23, 2019 5:44:23 AM
To: erikng/installapplications
Cc: Subscribed
Subject: [erikng/installapplications] userland rootscript does not wait for userland (#48)
Currently codehttps://github.com/erikng/installapplications/blob/699e3ab550193892216bb0bc247a6211515f1d31/payload/Library/Application Support/installapplications/installapplications.py#L641 for checking if we are not in setupassistant is only in package installation if/else branch.
When there is no package in userland section of installapplications.json (only rootscripts), installapplications.py does not wait for user to log in. Rootscripts in userland section are executed during setup assistant as if they were in setupassistant section.
Is there a reason for this or should we improve the code?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/erikng/installapplications/issues/48, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABLL6GGIA2QZ2CB5ANSYK3LPR3SAPANCNFSM4HHWXUEA.

Now addressed in new version


Digatal Network Marketing

nader79zubaid.wordpress.com

https://github.com/Nader-Zubaid/fetch

https://github.com/Anthony-Gaudino/jekyll-multiple-languages-plugin/issues/97#

Www.Google.com


Bad link

The link in the see also section to the guidance on Onboarding Windows 10 machines returns a 404 error.  The link should point here:
Windows 10 and 11 - https://docs.microsoft.com/en-us/microsoft-365/compliance/device-onboarding-overview?view=o365-worldwide
macOS(Preview) - https://docs.microsoft.com/en-us/microsoft-365/compliance/device-onboarding-macos-overview?view=o365-worldwide

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 76da4eda-4ccf-ff34-6a48-d9c5553c2ed6
Version Independent ID: 7e887aff-1b85-1651-2bff-63425c54ae63
Content: Using  Endpoint data loss prevention - Microsoft 365 Compliance
Content Source: microsoft-365/compliance/endpoint-dlp-using.md
Service: o365-seccomp
GitHub Login: @chrfox
Microsoft Alias: chrfox

@mastood, thanks for the report and giving the correct link, i added a correct link in this article.
@chrfox , Please merge #7873 if it is correct.

@mastood Thank you very much for the contribution and updating the documentation with PR. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


demo

Hello, can you provide a demo script to display the visualization results?

We will not provide the demo script since my co-author who wrote it is too busy at the moment. The inference results contains everything one would need to write such a script

Okay, thank you

I wonder have u ever make it ?


Add namespaced feature

This PR:
Allows the user to scope external-dns to just one namespace. Not only filtering by namespace, but also limiting the permissions to just that namespace.
The change comes from upstream. Towards https://github.com/giantswarm/roadmap/issues/411

Checklist

[x] Added a CHANGELOG entry

note, this is merging against main-v3


Camera: test double threshold for horizontal look-ahead

The current camera rig relies on the player's mouse cursor position, or on the joystick's orientation, weighted by the character's velocity (I think).
This works well enough, but I'd like to try a different approach for horizontal lookahead: have a double threshold system as in some platform games:

There's a safe frame in which the camera focus doesn't move
If the character moves forward, in the direction the camera is looking, the camera soon moves with it to give the player a good forward vision
there's a second distance/threshold backwards so that you have to backtrack a little more for the camera to switch focus to the other side

I think it's not necessary now we have camera anchors. The lookahead mechanism works well enough.


Project build ignores changes in node_modules imports

TypeScript Version:  3.8.1-rc

Search Terms: tsc project build --build -b node_modules declarations
Code
Demo project is here: https://github.com/aslatter/ts-demo-project-ref
This demo project contains:

src/node_modules/some_import.d.ts - an example dependency defining a const enum
src/index.ts - an example project file using the above enum

The following script will checkout the demo project, build "v1", switch to "v2" and build "v2", both builds using "npx tsc --build".
git clone https://github.com/aslatter/ts-demo-project-ref
cd ts-demo-project-ref
git checkout v1
npm install
npx tsc --build --verbose
git checkout v2
npx tsc --build --verbose

Expected behavior:
"v2" and "v1" contain different definitions for the const enum. I expected the second build to update the generated "index.js" to reflect the changes in some_import.d.ts.
Actual behavior:
The const-enum in node_modules changes, but that change is not picked-up by tsc --build, leading to incorrect behavior at runtime.
After running through the above:
some_import.d.ts
export const enum MyEnum {
    Foo = 15,
    Bar = 20,
}

index.js
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
function main() {
    console.log(10 /* Foo */);
}
exports.main = main;

I expected the console.log invocation to be console.log(15 / Foo /);, to match the declaration.

--build mode assumes that a project is up to date if its specified inputs are up-to-date relative to their outputs. Additionally, all outputs must have prespecified inputs (this is subtle). For files which don't produce outputs (e.g. .d.ts), the assumption is that those files don't affect the up-to-dateness of the build, so it's acceptable if those files aren't specified at all.
This means that a change in a file that isn't prespecified (e.g. is in node_modules and gets picked up via an import) can't be detected by the "is the build up to date check" - the up-to-date check has to be fast to be useful, and so we don't spend the CPU cycles to parse the entire set of input files to determine what other files should be included, so we don't even know that a .d.ts file changed.
Options available:

I believe you could add this .d.ts file to your files list and we'd correctly detect it as out-of-date
Enable --isolatedModules, which adds additional checks that prevent you from getting into this situation
Just run --build --force after running npm ci (probably good policy regardless)

For our part, we ended up tweaking the particular testing-utility which was prone to this sort of thing (the utility intentionally compares different commits in our git repo, and we weren't nuking the work-tree completely in-between).
Thanks for taking a look at this.


How to configure the geo-replication we have two datacenters

Expected behavior
Tell us what should happen
Actual behavior
Tell us what happens instead
Steps to reproduce
How can we reproduce the issue
System configuration
Pulsar version: 2.3.1
I am having some trouble in setting the geo-replication. I have two datancenters and i am succuessful in producing and consuming the messages in each data center individually and wanted to set up a geo-replication, where i am not able to understand what i have to pass the --allowed-clusters parameter in the command pulsar-admin properties create my-tenant \   --admin-roles my-admin-role \   --allowed-clusters us-west,us-east,us-cent in this example they gave us-west, east, cent but how these are different from the clusternames we gave while configuring. Again if i give the cluster names of both the DC's i am getting `Invalid cluster Id:
I tried looking this document https://github.com/yahoo/pulsar/blob/master/docs/GeoReplication.md but getting 404 not found. Can anyone help on this?

@gopalvd
You can checkout the geo documentation here: http://pulsar.apache.org/docs/en/administration-geo/
If you want to enable geo-replication, you need a global zookeeper. so both two data centers can share the same namespace policy (with the replicated clusters). I guess the exception you got is due to you don't configure the two clusters with a global zookeeper.
If you don't have a global zookeeper cluster, you can still do geo-replication. you just need to let each data center know how to communicate with the other data center. I have created a gist with a tutorial for geo-replication without a global zookeeper:
https://gist.github.com/sijie/79364497eaa349bf58d9fb760561f930
hope this helps!

@gopalvd does my last comment help?

Yes.. we were able to implement the geo-replication successfully and we are trying the security authentication now. We need to configure the TLS server for that. Working on that. But thanks alot for the help on the geo-replication.

@gopalvd Glad that your problem is resolved.


only using 1 core ?

Hello,
recently i was testing the speed of my pivpn with the rpi 3.
and was watching the cpu usage with ''Htop'' and i saw that only 1 core was being used and was maxed out
can i enable more cores so i can get more performance ?
may thanks,
Joris

@terminalcat that's not PiVPN Related but yes OpenVPN related ..
I wonder how exactly you evaluated this ... since you clearly misunderstanding the relationship between PiVPN and OpenVPN ...
anyway ... the best place to ask this kind of questions are in OpenVPN IRC Chanel, in OpenVPN GitHub page and so on ...


Rammsteins albums and songs doesnt show up.

Checklist:

[x] I have checked that there are no issues with similar or the same content
YOU SHOULD CHECK CLOSED ISSUES AS WELL

[ ] I have checked the FAQ (https://github.com/MarshallOfSound/Google-Play-Music-Desktop-Player-UNOFFICIAL-/wiki/FAQ) and the answer I am looking for is not there

[ ] I have double checked and can reproduce the issue

First off. Thanks for your work! much appreciated! like really, THANK YOU!
OS: Windows 10 pro
GPMDP Version: latest 20/7/2020 (sry cant find)
Issue Descriptions: Rammsteins albums, and there for, songs/collection doesnt show up in desktop player, but are available in browser.
Steps to Reproduce: search Rammstein.
best wishes!

AFAIK, this is a licensing issue of Google Music and has nothing to do with the app. It is available through youtube music beta.

Sounds right, definitely a licensing issue.


Fix GCC ubsan warnings in x86_64 complex dot and gemv_t kernels

by replacing a left shift with the equivalent multiplication by 2
(to avoid invoking undefined behavior when the value happens to be less than zero, as seen in the BLAS tests).

better += better;


[Bug] TypeError: studio_freight_react_lenis__WEBPACK_IMPORTED_MODULE_6_.default is not a constructor

Hi, I'm a student who studies FrontEnd.
I faced a type error here.
First, I tried this code that
import Lenis from "@studio-freight/react-lenis";

let lenis;
const SmoothScroll = () => {
  lenis = new Lenis({
    lerp: 0.1,
    smooth: true,
  });

  const ScrollFn = (time: any) => {
    lenis.raf(time);

    requestAnimationFrame(ScrollFn);
  };
  requestAnimationFrame(ScrollFn);
};

I ran the dev server and I got a message that
TypeError: studio_freight_react_lenis__WEBPACK_IMPORTED_MODULE_6_.default is not a constructor
After this error occurred, I changed the code that was written on the example.
export * from "@studio-freight/react-lenis";
import { ReactLenis, useLenis } from "@studio-freight/react-lenis";

const SmoothScroll = () => {
    function update(time: any) {
        lenisRef.current?.lenis?.raf(time * 1000);
    }
    gsap.ticker.add(update);

    return () => gsap.ticker.remove(update);
};

but it doesn't operate also.
And I made the custom hook file that is written the same code.
It is also too.
I use the Next.js 14 by using Typescript, Tailwind.
How can I do?

"@studio-freight/react-lenis" has been deprecated in favor of "lenis".
Please be sure it's up to date and read the documentation.

Thank you for your response!
But I faced another error "GSAP target not found. https://gsap.com Error Component Stack".
I used that code on your README.md but I think that gsap object cannot be detected.
This is the code that was studied.
const lenisRef = useRef(null);
gsap.registerPlugin(ScrollTrigger);

useEffect(() => {
  const dom = {
    columns: document.querySelector(".section-col"),
    columnWraps: document.querySelectorAll(".section-col .column-wrap"),
    items: document.querySelectorAll(".section-cols .col-item"),
  };

  const SmoothScroll = () => {
    function update(time: any) {
      lenisRef.current?.lenis?.raf(time);
    }

    gsap.ticker.add(update);

    return () => gsap.ticker.remove(update);
  };

  const ScrollAni = () => {
    gsap
      .timeline({
        scrollTrigger: {
          start: 0,
          end: "max",
          scrub: true,
        },
      })
      .addLabel("start", 0)
      .to(
        dom.columns,
        {
          ease: "none",
          startAt: { scale: 1.2 },
          scale: 1,
        },
        "start"
      )
      .to(dom.items, {
        scrollTrigger: {
          start: 0,
          end: "top top",
          scrub: true,
        },
        ease: "power4.inOut",
        startAt: {
          opacity: 0,
          filter: "brightness(300%)",
        },

        opacity: 1,
        filter: "brightness(100%)",
        yoyo: true,
        repeat: 1,
      })
      .to(
        dom.columnWraps,
        {
          ease: "none",
          yPercent: (pos) => pos * -15,
        },
        "start"
      );
  };
  SmoothScroll();
  ScrollAni();
}, []);

Sorry, I forgot the root option!
I changed to this code it works nicely!!
Thank you for your response!! XD


Contribute a TiDB template

TiDB is a MySQL-compatible HTAP database. There is also a TiDB Cloud .
I'd like to contribute a TiDB template, is there anything I need to do before submit a pr?

Greetings, there is no real requirements just that it works. There may be some updates needed in cloudflare-docs, I am transferring this issue since the templates now live in workers-sdk