[BUG][cert-csi] :  Function test MultiAttach don't  check data checksum over nonblock device

Bug Description
I am confused with code line 2650~2661 in perf-suites.go.  by design,  it need to compare checksum between original pod and other pods.  below code section seems don't run comparison.  the logic below i understand is to caculate checksum of  sum file. if the file exits, then it pass he verifcation.
if !mas.RawBlock {

	log.Info("Writing to Volume on 1st originalPod")
	file := fmt.Sprintf("%s0/blob.data", podconf.MountPath)
	sum := fmt.Sprintf("%s0/blob.sha512", podconf.MountPath)
	// Write random blob to pvc
	ddRes := bytes.NewBufferString("")
	if err := podClient.Exec(ctx, originalPod.Object, []string{"dd", "if=/dev/urandom", "of=" + file, "bs=1M", "count=128", "oflag=sync"}, ddRes, os.Stderr, false); err != nil {
		return delFunc, err
	}
	log.Info("Writer originalPod: ", originalPod.Object.GetName())
	log.Debug(ddRes.String())

	// Write hash sum of blob
	if err := podClient.Exec(ctx, originalPod.Object, []string{"/bin/bash", "-c", "sha512sum " + file + " > " + sum}, os.Stdout, os.Stderr, false); err != nil {
		return delFunc, err
	}

	log.Info("Checking hash sum on all of the other pods")
	for _, p := range newPods {
		writer := bytes.NewBufferString("")
		if err := podClient.Exec(ctx, p.Object, []string{"/bin/bash", "-c", "sha512sum -c " + sum}, writer, os.Stderr, false); err != nil {
			return delFunc, err
		}
		if strings.Contains(writer.String(), "OK") {
			log.Info("Hashes match")
		} else {
			return delFunc, fmt.Errorf("hashes don't match")
		}
	}

Logs
[root@registry ~]# ./cert-csi --debug functional-test multi-attach-vol --sc powerstore-ext4 --access-mode ReadOnlyMany
[2023-08-06 23:21:20]  INFO Starting cert-csi; ver. 0.8.1
[2023-08-06 23:21:20]  INFO Using EVENT observer type
[2023-08-06 23:21:20]  INFO Using default config
[2023-08-06 23:21:20]  INFO Successfully loaded config. Host: https://<IP_ADDRESS>:6443
[2023-08-06 23:21:20] DEBUG Creating new KubeClient
[2023-08-06 23:21:20]  INFO Created new KubeClient
[2023-08-06 23:21:20] DEBUG Created PersistentVolumeClaim client in functional-test namespace
[2023-08-06 23:21:20] DEBUG Created Pod client in functional-test namespace
[2023-08-06 23:21:20] DEBUG Created VA client in functional-test namespace
[2023-08-06 23:21:20] DEBUG Created Metrics client in functional-test namespace
[2023-08-06 23:21:20] DEBUG Created NodeClient
[2023-08-06 23:21:20]  INFO Using default number of pods
[2023-08-06 23:21:20] DEBUG VolumeAttachmentObserver started watching
[2023-08-06 23:21:20] DEBUG PersistentVolumeClaimObserver started watching
[2023-08-06 23:21:20] DEBUG Pod Observer started watching
[2023-08-06 23:21:20] DEBUG ContainerMetricsObserver started watching
[2023-08-06 23:21:20]  INFO Creating Volume
[2023-08-06 23:21:20] DEBUG Created PVC vol-multi-pod-test-rkww5
[2023-08-06 23:21:20]  INFO Attaching Volume to original pod
[2023-08-06 23:21:20] DEBUG Created Pod iowriter-test-lbg6r
[2023-08-06 23:21:20]  INFO Waiting for all pods in functional-test to be READY
[2023-08-06 23:21:20] DEBUG Waiting for pod iowriter-test-c7tgz to be ready
[2023-08-06 23:21:20] DEBUG Waiting for pod iowriter-test-lbg6r to be ready
... ...
[2023-08-06 23:21:30] DEBUG Waiting for pod iowriter-test-sxs87 to be ready
[2023-08-06 23:21:30] DEBUG Waiting for pod iowriter-test-tfb62 to be ready
[2023-08-06 23:21:30]  INFO All pods are ready in 10.013648481s
[2023-08-06 23:21:30]  INFO Creating new pods with original Volume attached to them
[2023-08-06 23:21:30] DEBUG Created Pod iowriter-test-8khl5
[2023-08-06 23:21:30] DEBUG Created Pod iowriter-test-v2qvn
[2023-08-06 23:21:30]  INFO Waiting for all pods in functional-test to be READY
[2023-08-06 23:21:30] DEBUG Waiting for pod iowriter-test-8khl5 to be ready
[2023-08-06 23:21:32] DEBUG Waiting for pod iowriter-test-8khl5 to be ready
[2023-08-06 23:21:34] DEBUG Waiting for pod iowriter-test-8khl5 to be ready
... ...
[2023-08-06 23:22:04] DEBUG Waiting for pod iowriter-test-v2qvn to be ready
[2023-08-06 23:22:04]  INFO All pods are ready in 34.022962375s
[2023-08-06 23:22:04]  INFO Writing to Volume on 1st originalPod
[2023-08-06 23:22:04]  INFO Executing command: [dd if=/dev/urandom of=/data0/blob.data bs=1M count=128 oflag=sync]
[2023-08-06 23:22:04] DEBUG Executing command: [dd if=/dev/urandom of=/data0/blob.data bs=1M count=128 oflag=sync]
[2023-08-06 23:22:06]  INFO Writer originalPod: iowriter-test-lbg6r
[2023-08-06 23:22:06] DEBUG 128+0 records in
128+0 records out
134217728 bytes (134 MB, 128 MiB) copied, 1.86752 s, 71.9 MB/s
[2023-08-06 23:22:06]  INFO Executing command: [/bin/bash -c sha512sum /data0/blob.data > /data0/blob.sha512]
[2023-08-06 23:22:06] DEBUG Executing command: [/bin/bash -c sha512sum /data0/blob.data > /data0/blob.sha512]
[2023-08-06 23:22:06]  INFO Checking hash sum on all of the other pods
[2023-08-06 23:22:06]  INFO Executing command: [/bin/bash -c sha512sum -c /data0/blob.sha512]
[2023-08-06 23:22:06] DEBUG Executing command: [/bin/bash -c sha512sum -c /data0/blob.sha512]
[2023-08-06 23:22:07] ERROR Suite MultiAttachSuite failed; error=command terminated with exit code 1
[2023-08-06 23:22:07] DEBUG PersistentVolumeClaimObserver finished watching
[2023-08-06 23:22:07] DEBUG Pod Observer finished watching
[2023-08-06 23:22:07] DEBUG VolumeAttachmentObserver finished watching
[2023-08-06 23:22:10] DEBUG ContainerMetricsObserver finished watching
[2023-08-06 23:22:10]  INFO FAILURE: MultiAttachSuite in 50.093522846s
[2023-08-06 23:22:10]  INFO Trying to connect to cluster...
[2023-08-06 23:22:10] DEBUG Creating new KubeClient
[2023-08-06 23:22:10]  INFO Created new KubeClient
[2023-08-06 23:22:10] FATAL During this run 0.0% of suites succeeded
Screenshots
No response
Additional Environment Information
No response
Steps to Reproduce
review code
Expected Behavior
the code should  caculate the data checksum on new pods and then compare if the sum is same as the value in blob.sha512
CSM Driver(s)
CSM for powerstore
Installation Type
helm 3.0
Container Storage Modules Enabled
No response
Container Orchestrator
K8s 1.24.4
Operating System
debian 11

Hi @vincent1chen , Can you please let us know that which Protocol you are using?

I tried with iscsi the test is successful for me. Below are the logs:
[root@master-1-QY58amanSV377 cert-csi]# ./cert-csi --debug functional-test multi-attach-vol --sc powerstore-ext4 --access-mode ReadOnlyMany
[2023-08-16 04:00:41]  INFO Starting cert-csi; ver. 0.8.1
[2023-08-16 04:00:41]  INFO Using EVENT observer type
[2023-08-16 04:00:41]  INFO Using default config
[2023-08-16 04:00:41]  INFO Successfully loaded config. Host: https://<IP_ADDRESS>:6443
[2023-08-16 04:00:41] DEBUG Creating new KubeClient
[2023-08-16 04:00:41]  INFO Created new KubeClient
[2023-08-16 04:00:41] DEBUG Created PersistentVolumeClaim client in functional-test namespace
[2023-08-16 04:00:41] DEBUG Created Pod client in functional-test namespace
[2023-08-16 04:00:41] DEBUG Created VA client in functional-test namespace
[2023-08-16 04:00:41] DEBUG Created Metrics client in functional-test namespace
[2023-08-16 04:00:41] DEBUG Created NodeClient
[2023-08-16 04:00:41]  INFO Using default number of pods
[2023-08-16 04:00:41]  INFO Creating Volume
[2023-08-16 04:00:41] DEBUG Pod Observer started watching
[2023-08-16 04:00:41] DEBUG PersistentVolumeClaimObserver started watching
[2023-08-16 04:00:41] DEBUG ContainerMetricsObserver started watching
[2023-08-16 04:00:41] DEBUG VolumeAttachmentObserver started watching
[2023-08-16 04:00:41] DEBUG Created PVC vol-multi-pod-test-x7pr2
[2023-08-16 04:00:41]  INFO Attaching Volume to original pod
[2023-08-16 04:00:41] DEBUG Created Pod iowriter-test-qxhkz
[2023-08-16 04:00:41]  INFO Waiting for all pods in functional-test to be READY
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-djr6h to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-jpsc8 to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-kdww9 to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-khrd9 to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-lcqdv to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-lkb7p to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-m9jqs to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-mk8pq to be ready
[2023-08-16 04:00:41] DEBUG Waiting for pod iowriter-test-qxhkz to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-djr6h to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-jpsc8 to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-kdww9 to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-khrd9 to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-lcqdv to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-lkb7p to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-m9jqs to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-mk8pq to be ready
[2023-08-16 04:00:43] DEBUG Waiting for pod iowriter-test-qxhkz to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-djr6h to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-jpsc8 to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-kdww9 to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-khrd9 to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-lcqdv to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-lkb7p to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-m9jqs to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-mk8pq to be ready
[2023-08-16 04:00:45] DEBUG Waiting for pod iowriter-test-qxhkz to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-djr6h to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-jpsc8 to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-kdww9 to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-khrd9 to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-lcqdv to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-lkb7p to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-m9jqs to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-mk8pq to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-qxhkz to be ready
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-t4xxz to be ready
[2023-08-16 04:00:47]  INFO All pods are ready in 6.020017993s
[2023-08-16 04:00:47]  INFO Creating new pods with original Volume attached to them
[2023-08-16 04:00:47] DEBUG Created Pod iowriter-test-j9ksz
[2023-08-16 04:00:47] DEBUG Created Pod iowriter-test-4p72n
[2023-08-16 04:00:47]  INFO Waiting for all pods in functional-test to be READY
[2023-08-16 04:00:47] DEBUG Waiting for pod iowriter-test-4p72n to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-4p72n to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-djr6h to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-j9ksz to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-jpsc8 to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-kdww9 to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-khrd9 to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-lcqdv to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-lkb7p to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-m9jqs to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-mk8pq to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-qxhkz to be ready
[2023-08-16 04:00:49] DEBUG Waiting for pod iowriter-test-t4xxz to be ready
[2023-08-16 04:00:49]  INFO All pods are ready in 2.019203442s
[2023-08-16 04:00:49]  INFO Writing to Volume on 1st originalPod
[2023-08-16 04:00:49]  INFO Executing command: [dd if=/dev/urandom of=/data0/blob.data bs=1M count=128 oflag=sync]
[2023-08-16 04:00:49] DEBUG Executing command: [dd if=/dev/urandom of=/data0/blob.data bs=1M count=128 oflag=sync]
[2023-08-16 04:00:51]  INFO Writer originalPod: iowriter-test-qxhkz
[2023-08-16 04:00:51] DEBUG 128+0 records in
128+0 records out
134217728 bytes (134 MB, 128 MiB) copied, 2.01924 s, 66.5 MB/s
[2023-08-16 04:00:51]  INFO Executing command: [/bin/bash -c sha512sum /data0/blob.data > /data0/blob.sha512]
[2023-08-16 04:00:51] DEBUG Executing command: [/bin/bash -c sha512sum /data0/blob.data > /data0/blob.sha512]
[2023-08-16 04:00:52]  INFO Checking hash sum on all of the other pods
[2023-08-16 04:00:52]  INFO Executing command: [/bin/bash -c sha512sum -c /data0/blob.sha512]
[2023-08-16 04:00:52] DEBUG Executing command: [/bin/bash -c sha512sum -c /data0/blob.sha512]
[2023-08-16 04:00:52]  INFO Hashes match
[2023-08-16 04:00:52]  INFO Executing command: [/bin/bash -c sha512sum -c /data0/blob.sha512]
[2023-08-16 04:00:52] DEBUG Executing command: [/bin/bash -c sha512sum -c /data0/blob.sha512]
[2023-08-16 04:00:53]  INFO Hashes match
[2023-08-16 04:00:53] DEBUG VolumeAttachmentObserver finished watching
[2023-08-16 04:00:53] DEBUG PersistentVolumeClaimObserver finished watching
[2023-08-16 04:00:53] DEBUG Pod Observer finished watching
[2023-08-16 04:00:56] DEBUG ContainerMetricsObserver finished watching
[2023-08-16 04:00:56]  INFO SUCCESS: MultiAttachSuite in 15.041563582s
[2023-08-16 04:00:56]  INFO Trying to connect to cluster...
[2023-08-16 04:00:56] DEBUG Creating new KubeClient
[2023-08-16 04:00:56]  INFO Created new KubeClient
[2023-08-16 04:00:56]  INFO During this run 100.0% of suites succeeded
[root@master-1-QY58amanSV377 cert-csi]#

@sakshi-garg1 , what i concern is the code logic blow.  if i understand the code correctly,  it calculate the  checksum and store it in file "sum" on original pod.  then on new pod,  it calculates the the hash of file sum. it didn't do any comparison in new pod.
log.Info("Checking hash sum on all of the other pods")
for _, p := range newPods {
	writer := bytes.NewBufferString("")
	if err := podClient.Exec(ctx, p.Object, []string{"**/bin/bash", "-c", "sha512sum -c " + sum**}, writer, os.Stderr, false); err != nil {
		return delFunc, err
	}
	**if strings.Contains(writer.String(), "OK") {
		log.Info("Hashes match")**
	} else {
		return delFunc, fmt.Errorf("hashes don't match")
	}
}

Hi @vincent1chen , I did some research over this and found that sha512sum -c is for comparing, well your concern also put me in doubt that where we are calculating the sha again and comparing so I performed below steps to verify that logic implemented is correct or not.
[root@master-1-eS6qj1hngsjdO ~]# cd adarsh/

[root@master-1-eS6qj1hngsjdO adarsh]# ls
auto.sh  fc-sc.yaml     main.go    pod-pvc-fc.yaml  pod.yaml           sc.yaml                 secret.yaml
ch.yaml  iscsi-sc.yaml  pod2.yaml  pod-pvc.yaml     pw-snapcalss.yaml  secondpvcfromsnap.yaml  volumeSnapshot.yaml

// **Generate the sha and store it**

[root@master-1-eS6qj1hngsjdO adarsh]# sha512sum auto.sh > sha
[root@master-1-eS6qj1hngsjdO adarsh]# cat sha
78543f7e296750f2a6841dc7038c4dc525f9f36c9241869e9758466bd0ed97dfec95b79ad7a3a29fb48dc7462eeb4c20113ac38635919e909c1f1a8792053664  auto.sh

// **Now try to copy this file to some diff folder/place**

[root@master-1-eS6qj1hngsjdO ~]# mkdir test
[root@master-1-eS6qj1hngsjdO ~]# cp adarsh/auto.sh ./test/.
[root@master-1-eS6qj1hngsjdO ~]# cd test/
[root@master-1-eS6qj1hngsjdO test]# ls
auto.sh

[root@master-1-eS6qj1hngsjdO test]# sha512sum -c ../adarsh/sha
auto.sh: OK

 // **I have changed the content here**

[root@master-1-eS6qj1hngsjdO test]# vi auto.sh

[root@master-1-eS6qj1hngsjdO test]# sha512sum -c ../adarsh/sha
auto.sh: FAILED
sha512sum: WARNING: 1 computed checksum did NOT match
[root@master-1-eS6qj1hngsjdO test]#

As per my understanding, In the code, we're attempting the same procedure by running the sha512sum -c command within the mountpath directory. This command will then perform a comparison against the stored SHA hash file.
If this explanation isn't sufficient, we can schedule a call to go over it together and ensure a clearer understanding of the question.

good explanation.  I understand it clearly.  the output of  "sha512sum -c"  get the file name from "sum" and perform the comparison against stored hash value.  the code has no problem.  thanks.


How to implement transfer learning in unseen dataset .?

Lets if any unseen data we add then i do not want to train whole data set by mixing old and new data....I want to train only unseen data and our final model must detect old label and new label after training on unseen label?

Hello, could you please rephrase your question?

@NatanBagrov Lets my 1st model train on A ,B,C class...In next time i want to train My pre-train 1st model by adding D class ...(Note: In second time training I do not want to train and mix all data...i just want to train new D class). Final model must detect A, B, C, D class.

I understand.
Please close the new issue you created, #922 .
To achieve that you will need to modify the head to include additional new classes (=kernels), in your example, it has original 3 kernels, then you need to change to 4 kernels. Also, I would freeze the entire backbone, neck and original part of the head, and fine-tune only the "new" kernels.
This is somehow similar to #892

@NatanBagrov Can you guide me How to modify the head to include additional new classes (=kernels) i found only  kernel_size=3 ...i have to change self.num_classes am i right ? is there any config yml file to change self.num_classes from yml file ?
Also how to freeze the entire backbone, neck and original part of the head can you guide me i am new here from where i have to freeze dynamically....shall we need to unfeeze also?

Hello, I will elaborate with general guidelines, and will leave the implementation to you.

If you change number of classes, you will not be able to re-use the checkpoint, so you need to do the modification after you have loaded the pre-trained checkpoint with the original number of classes.
I would create a wrapper, that will take the model (already loaded), and will expand cls_preds with the extended filters (=kernels), that is, use the filters of the original classes, but also add uninitialized ones for the new classes. Then it is fine to change num_classes.
To freeze parts of the model, you can read Torch documentation on how to achieve that.

Good luck!

@NatanBagrov after freeze the entire backbone, neck and original part of the head....how my  fine-tune  "new" kernels learns without  backbone, neck and original part of the head ? Shall i need to add some layer for that?


fix curl ssl issue on windows

On Windows with a Standard XAMPP installation the curl request returns a status of 0.
To fix this problem i added the latest bundle of CA root certificates from https://curl.haxx.se/ via
curl_setopt($curl, CURLOPT_CAINFO, dirname(FILE) . '/cacert.pem');

LGTM!
I can see that the added file is the latest https://curl.haxx.se/ca/cacert-2017-06-07.pem, thank you very much.

@azettl Released as version 1.2.0 👍
https://github.com/codacy/php-codacy-coverage/releases/tag/1.2.0

Thanks 👍


Support custom BreezeWiki instances

Currently, you're only able to select the public list of Breezewiki instances. This means if you're running a private / self-hosted instance or you prefer one not on that list (i.e. mine), you're unable to use that instance in this addon.

@ggtylerr Thanks for the suggestion. There is actually an old issue on this (https://github.com/KevinPayravi/indie-wiki-buddy/issues/131) that I previously declined, but am now re-opening. I'll see what I can do! Please follow that issue if you'd like to keep up to date on it.
If you'd like to have your mirror listed in IWB, I'd also be happy to add it, just let me know.

That'd be nice, but I'd also like custom instance support in case anyone wanted to use their own instance :)

Added in v3.2.0! Now available on Chrome, and should be available on Firefox within a few days after review.
See https://github.com/KevinPayravi/indie-wiki-buddy/issues/131 for more details.


Revert "Implement DPC++ sparse gemm and gemv primitives  (#2668)"

Reverting the PR that causes sporadic failures in test_gemm_dpc and test_gemv_dpc in private CI.

/intelci: run

http://intel-ci.intel.com/ef022c30-4eed-f160-aa82-a4bf010d0e2e

may be it makes sense to remove just tests from CI? due to as I understand we don't use this functionality in intelex yet, and, probably, it will be easier to investigate issues and merge fix instead of reverting the full big pr

@Alexandr-Solovev
PR #2745 was created to remove failing tests from the CI.


ROS2 foxy can't receive microros app string topic

Issue template

Hardware description: stm32f407
RTOS: freertos
Installation type: micro_ros_setup
Version or commit hash: foxy

Steps to reproduce the issue
make a string message and send it to ros2
Expected behavior
ros2 node can receive the message
Actual behavior
ros2 print nothing but the ros2 topic echo can.
Additional information

We need the code of both ROS 2 and micro-ROS app to check what is happening...

microros app is here https://github.com/Needrom/Microros-on-DIscovery-board/tree/main/freertos_apps/apps/motor_subscriber
sending with /test_string topic
and ros2 app is here
#include<memory>

#include"rclcpp/rclcpp.hpp"
#include"std_msgs/msg/string.hpp"

using std::placeholders::_1;

class MinimalSubscriber : public rclcpp::Node{
public:
	MinimalSubscriber()
	: Node("minimal_subscriber")
	{
		subscription_ = this->create_subscription<std_msgs::msg::String>(
		"test_string", 120, std::bind(&MinimalSubscriber::topic_callback, this, 		_1));
	}

private:
	void topic_callback(const std_msgs::msg::String::SharedPtr msg) const
	{
//        printf("%s line:%d \r\n", __func__, __LINE__);
	  RCLCPP_INFO(this->get_logger(), "I heard: '%s'", msg->data.c_str());
	}
	rclcpp::Subscription<std_msgs::msg::String>::SharedPtr subscription_;
};

int main(int argc, char *argv[]){
    rclcpp::init(argc, argv);
    rclcpp::spin(std::make_shared<MinimalSubscriber>());
    rclcpp::shutdown();
    return 0;
}

In micro-ROS you are creating a best-effort publisher and in ROS 2 you are creating a reliable subscriber, they won't match.
You have an example on how to create a best-effort subscriber in RCLCPP here and [this issue] is related(https://github.com/micro-ROS/micro_ros_setup/issues/236).

yes, it's.


suppresses %clay file-change printfs for initial filesystem

This is not a pressing issue -- consider it a UX feature request.
I've long found these printfs to be superfluous, but it's gotten much worse (imo) with the growth of userspace. This is really highlighted when you boot ships in :aqua.
The printfs are replaced with
clay: committed initial filesystem (hoon)

for base/1,  and
clay: committed initial filesystem (all)

for base/2

I think this is a good change.  lib/ph.hoon uses these printfs to guess when the ship has finished booting, which is why CI is failing.  You should be able to just switch the line that searches for "/base/2/web/"... to the new printf.

Thanks.
It looks like the %child-sync test hung again, but this time in the "push" build instead of the "pr" build. I don't think that's related to my changes, but it's hard to be sure. Any tips on debugging these?


FAQ follow-up

Follow up to #113
Signed-off-by: Andy Goldstein<EMAIL_ADDRESS>@julia-stripe @jvns @skriss @timoreimann @abiogenesis-now PTAL

looks great to me

LGTM

LGTM, merging.


Import manager does not import the same keys with different groups

When using the artisan command php artisan laralang:import (-R), it does not import any translations with the same key but different groups on different languages.

Should be fixed in latest commit cf4320ec38a22ffaf299ccd909abe57f1878e784


recursive coerce

I often wrap newtypes in newtypes and then I want to access the basetype. Example:
@newtype case class Secret(value: String)
@newtype case class Password(value: Secret)
@newtype case class AdminPassword(value: Password)

val adminPassword: AdminPassword = ???

// Access the basetype
println(adminPassword.value.value.value)

Something like adminPassword.coerce[String] would be nice, or maybe even adminPassword.underlying. As Coercible is a typeclass, I think with the correct derivation it should be possible to get something like it.
Opinions?

+1 to this. I found myself in the same situation and I think it's doable.


Get rid of operator/pkg/manifest

Originally this package was used because there was no performant prune operation available in the controller packages. Pruning now works better and it may be possible to use the k8s client libs in the controller packages to apply the manifest. This would avoid having two separate implementations of apply --prune in the codebase.

Fixed in https://github.com/istio/istio/pull/23165.


Allow categories to be specified as non-booleans, as long as there are only two

Right now all propensity score methods in dowhy throw an exception if the treatment data type is not boolean. This is far too restrictive, as underlying classifiers work just fine eg with integer 0 and 1 values, and even with floating point 0.0 and 1.0.
resolves https://github.com/microsoft/dowhy/issues/361

thanks for adding this PR. Looks good to me.
One question: Will it also work for floating point, 0.0 or 1.0? Not sure how the in [0,1] is interpreted.

Yes, as it casts the column to int before getting the unique values, so will work with booleans, ints, and floats, tested locally

@all-contributors please add @EgorKraevTransferwise for code


About open source

Nice work! Do you have plans to open source the data and code for this project?

thanks for watching! we just update the codebase.


Update dropdown chevron transition

As discussed in issue #293 I updated the dropdown chevron transition

Use transform scaleY
Change the duration to 150ms

Not sure if I should update the CHANGELOG.md as well. Please let me know if it's needed.

Hi! Thank you for your contribution. Yes, this change should be reflected in the changelog

The changelog is updated! 😄


Support Python 3.8 and Python 3.9

This won't slow down the build time thanks to the GitHub Actions parallelism.

Thanks @pquentin ! I am somehow surprised that none of the typing logic fails on 3.8-9 😄

@victorbenichoux Which makes me think, do you want to run lint on 3.8 and 3.9 too?

@victorbenichoux Which makes me think, do you want to run lint on 3.8 and 3.9 too?

We probably should, yes.

To be clear, the standard practice is to just pick a Python version to run the lint, but you may be worried that mypy returns different results on different Python verions given your advanced tricks

To be clear, the standard practice is to just pick a Python version to run the lint, but you may be worried that mypy returns different results on different Python verions given your advanced tricks

Ok, then let's not do that for now. Would you recommend to run lint with the latest version possibly? I will try to run it and see, in the meantime let's just merge this PR.

I went ahead and made the change.
Also, sorry for pushing to the main repo. I'll stop doing that!

I went ahead and made the change.
Also, sorry for pushing to the main repo. I'll stop doing that!

I' not sure it's bad, really. I like it better to be able to pull the branch easily TBH

But if the branch is in my fork, why do you care about it?
Also, this 2x more builds means 2x more risk. Case in point, one of the lints appears to be stalled

Great thanks @pquentin


The --fix for at-rule-conditional-no-parentheses removes the wrong parenthesis

It is replacing eg:
@if  (meta.type-of($item) == 'number') or list.index($values, $item) {}
@if  ($type == 'map') and (list.nth($token == '%value') {}

with
@if  meta.type-of($item) == 'number') or list.index($values, $item {}
@if  $type == 'map') and (list.nth($token) == '%value' {}

I would expect:
@if  meta.type-of($item) == 'number' or list.index($values, $item) {}
@if  $type == 'map' and list.nth($token) == '%value' {}

Looks like a bug!

I've been recently trying to fix this, but the problem is that the rules handles parens in a very simple way.
A proper fix would require some kind of parser for the if statements to be able to properly remove the parens around them.


[Suggestion] Holo-projektor blocks destroying grass

I noticed that the blocks the holo projector creates will not destroy grass, and so the structure is incomplete if there is grass on the floor.

The idea is that it is a hologram so would be blocked by grass/etc.  However I admit it is kindof annoying.  If it's not too much of a pain I'll look into changing that.  No garuntees though.


Use interface StatisticsReporter instead of SimpleStatisticsReporter class in UDPListener

@alexism @nelgau
To allow UDPListener to directly send metrics over TaggedMetricRegistry in jitney-proxy dropwizard application, we have to implement a PlogStatisticsReporter class in jitney-proxy project.  Listener class should have a StatisticsReporter instead of SimpleStatisticsReporter.
This PR contains all the changes to use interface StatisticsReporter instead of SimpleStatisticsReporter class.  Otherwise, we can use plog's python script to collect metrics.
Another alternative way is to implement a jitney-proxy customized UDP listener class, where we might disable all FourLetterCommands.

I think the Metrics management is not ideal.
StatisticsReporter aggregates metrics general purposes metrics (like unhandledObject, and exception, but also metrics specific to the UDP listener (foundHolesFromNewMessage), and the command framework (receivedUnknownCommand). This creates tight coupling between all parts of Plog, and the Listener implementations. Ideally metric collection would be independent.
The PR has it is makes this coupling worse by adding a dependency on Defragmenter.
minimum improvement
The SimpleStatisticsReporter currently does 2 things:

it aggregates metrics/counters by implementing StatisticsReporter
it formats and reports these metrics, see toJSON

An improvement would be to separate these concerns like so:

StatisticsReporter would be ideally named StatisticsRegistry/StatisticsCollector.
abstract the ability to provide metrics values in a new interface StatsProvider (this would be the new StatisticsReporter).
StatsProvider will have 2 methods:

getStats():JSONObject
addStatsProvider() which allow to compose StatsProvider's

Defragmenter and Handler would implement StatsProvider
SimpleStatisticsReporter could implement both StatsProvider, and StatisticsReporter. The implementation of getStats will be the current toJSON method, except that the Handler and Defragmenter will not be references, only the collection of  StatsProvider would b used.

long term solution
I would suggest using the Dropwizard metrics. The StatisticsReporter interface would go away. Classes would instead access the Metrics instance and report gauges, rates, etc. Various reporter could then be plugged on the Metrics registry. A JSON reporter will be used to implement the STAT command instead of the current SimpleStatisticProvider.toJSON implementation.

Thanks @alexism a lot for the comments, which make the StatisticsReporter much better than before.
Some further improvements

I think StatsProvider can be further improved by removing addStatsProvider() from it because Defragmenter and Handler do not add other StatsProviders.
Instead, we can add a BaseStatisticsReporter (abstract class), which have a list of StatsProviders and also an abstract addStatsProvider method.
SimpleStatisticsReporter extends BaseStatisticsReporter and implement addStatsProvider.
BaseStatisticsReporter will be used in UDPListener.

Some technical problems if using dropwizard metrics

In a StatisticsReporter based on Dropwizard (called DWStatisticsReporter), it increases the metrics whenever metrics/counters are incremented.  However, it is uncertain how CacheStats in a Defragmenter can be reported over DWStatisticsReporter.
If we ignore Handlers, such as KafkaHandler in DWStatisticsReporter, when STAT command is called, DWStatisticsReporter would not be able to report some KafkaHandler metrics, such as failedToSendMessageExceptions and seenMessages.

I suggest we still keep the plog's python script to collect metrics to unblock us to release the jitney local proxy.


🐞 [BUG] - No effect on clicking of resources,organization,faq tabs on the navbar on the contributors page.

Issue Verification

[X] I have verified that this is a new bug report.
[X] I'm interested in working on this issue
[X] I'm part of GSSOC organization

Describe the bug
No effect on clicking of resources,organization,faq tabs on the navbar on the contributors page.

Expected behavior
On click of these tabs the page must go back to home page.
Steps to reproduce
Assign this task to me and I can fix this issue.
Additional Context
No response

I dont get the issue, can you explain it more? what do you want to do, describe the problem, and more

Actually when I created this issue , contributors page was opening as a new page and in that page the tabs on the navbar were not working.
But now the contributors page is not a new page it is a section in the website so navbar is common and there is no problem now.

Can you check it again, its working alraedy. We remove the contributors.html and just included it in the index.html.


Node globals are unavailable

Describe the bug
I'm getting Response is not defined eventhough it's a Node global and the docs say the default environment is Node.js
https://nodejs.org/dist/latest-v18.x/docs/api/globals.html#response
I'm trying to convert the SvelteKit test suite to Vitest. We use Request, Response, etc. somewhat heavily
Reproduction
https://stackblitz.com/edit/vitest-dev-vitest-yux8px?file=test/basic.test.ts
System Info
latest vitest

Used Package Manager
npm
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

"System info" has a command that you need to run. Vitest doesn't change globals, you a probably running Node 16 which doesn't have this globals (stackblitz is running 16.17)

Ah, you're right: https://nodejs.org/dist/latest-v16.x/docs/api/globals.html#response
Thanks for the help and sorry for the false report!


Soundscrape chokes on WAV files

I didn't know that WAVs were even available on SoundCloud, but apparently so, and they break SoundScrape:
https://soundcloud.com/woolymammothmusic/woolymammoth-ella
$ soundscrape https://soundcloud.com/woolymammothmusic/woolymammoth-ella
Downloading: † ELLA †
[################################] 41817/41817 - 00:00:00
can't sync to an MPEG frame

Bump

Yeahhhh..

I don't even get the "can't sync" error with this one...
$ soundscrape https://soundcloud.com/woolymammothmusic/woolymammoth-ella Traceback (most recent call last):   File "/usr/local/bin/soundscrape", line 11, in <module>     sys.exit(main())   File "/usr/local/lib/python2.7/dist-packages/soundscrape/soundscrape.py", line 77, in main     process_soundcloud(vargs)   File "/usr/local/lib/python2.7/dist-packages/soundscrape/soundscrape.py", line 121, in process_soundcloud     response = requests.get(streams_url).json()   File "/usr/local/lib/python2.7/dist-packages/requests/models.py", line 812, in json     return complexjson.loads(self.text, **kwargs)   File "/usr/local/lib/python2.7/dist-packages/simplejson/__init__.py", line 516, in loads     return _default_decoder.decode(s)   File "/usr/local/lib/python2.7/dist-packages/simplejson/decoder.py", line 370, in decode     obj, end = self.raw_decode(s)   File "/usr/local/lib/python2.7/dist-packages/simplejson/decoder.py", line 400, in raw_decode     return self.scan_once(s, idx=_w(s, idx).end()) simplejson.scanner.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

The track has been removed from Soundcloud: https://soundcloud.com/woolymammothmusic/woolymammoth-ella

Ah, well I found a song with the same issue, then:
$ soundscrape https://soundcloud.com/marty-grimes-music/die-for-me-feat-kyle-christoph-andersson
Downloading: Die For Me (feat. KYLE & Christoph Andersson)
[################################] 9321/9321 - 00:00:04
can't sync to an MPEG frame

What's interesting, is regardless of the "can't sync to an MPEG frame" error that was thrown, the file seems to play just fine. Link: https://soundcloud.com/marty-grimes-music/die-for-me-feat-kyle-christoph-andersson

This may actually be a Mutagen error, or at least in our unspecified handling of Mutagen errors.

Works for Wavs now, but not M4As


Commission structures per store

Commission structures - I am planning on opening a store in Westville that runs on 30% commission.  Is there a way to create a commission structure “per store”?  Watercrest currently runs on 20% commission.  I also have one trader who is always 30%.  Is there a way to set up suppliers to override everything else and stick with one commission structure?  She reverts to 20% in November and December though. I’m doing all of this manually at the moment so no train smash if it’s not practical.

Have added a "Hard Gross Profit" field to Sites. If not null, each sale will have it's cost adjusted according to value.

No longer doing this


Background Music Issues

When I open the camera view controller, the music that is playing immediately stops. When I manage to get music and the camera running, switching the camera from back to front freezes the preview. Is there a reason for this? Thanks in advance!

Did you try allowBackgroundAudio = true ?

allowBackgroundAudio should be true by default. Are you able to submit your View Controller snippet so I can troubleshoot this further? Thanks
Andrew


Fix usage on a Rails/Rspec binstub (eg. rescue bin/rspec)

Actually, even if I think the code is kinda wonky, I'll make a PR to promote discussion. This is following #86.
This, combined with a custom vim-rspec rescue command hotkey, and I feel like a damn wizard.

Calling @ConradIrwin

Hey @joallard. Sorry for the long silence.
This change seems reasonable to me. Will merge — are you by any chance interested in fixing the tests? :)

Awesome! I'll take a look at them, probably report back in an issue or PR


Restart forever at Ubuntu 16.04 reboot

Hi,
Could someone help me this issue: https://stackoverflow.com/questions/38781819/use-systemd-to-start-a-script-at-ubuntu-16-04-boot ?

I know this isn't using systemd to start it but I have this in my crontab to start my forever scripts on reboot. Just in case this helps anyone.
@reboot /usr/bin/sudo -u USER /usr/local/bin/forever start -a -c /usr/local/bin/node --plain --silent --minUptime 1000 --spinSleepTime 1000  -l /home/USER/.forever/forever.log -o /home/USER/project/out.log -e /home/USER/project/err.log /home/USER/project/app.js

Nice.

Also check out https://github.com/zapty/forever-service

The suggestion of forever-service is overly complicated. The current init system on Ubuntu is systemd, which forever-service does not support. It's possible it could still work on modern Ubuntu, but just to run your app, all these layers end up involved: systemd -> upstart -> forever -> app.
The suggestion at iammoen to start forever at boot could work, but be clear that forever is unmanaged process in that case. If your app crashes, forever will restart it. If forever manages to crash, nothing will restart it. You have at least reduced the layers down to 3: systemd -> forever -> app.  (Because systemd still processes the crontab on modern Ubuntu).
You can further simplify the system and avoid the problem with Forever being unmanaged by just taking forever out of the loop and managing your Node.js apps with systemd directly. It can start your process at boot, restart it if it crashes, and show you the current app status withsystemctl status myapp. Now you've got minimal abstractions and minimal overhead with just systemd -> app.
systemd is core part of the system and worth understanding as long as you are managing the system. There's also no additional dependency since it's already there.
Ref: https://www.axllent.org/docs/view/nodejs-service-with-systemd/


"Content-Type" Header is added to the request even if no body set

Describe the bug
On endpoint spec a "Content-Type" Header is added to the request even if no body set.
To Reproduce

Given this OpenAPI document '

'/opportunities/{id}/quotations':
    post:
      summary: Request for a quotation
      operationId: post-opportunities-id-quotations
      responses:
        '201':
          description: quotation calculated
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Quotation'
              examples:
                example-1:
                  $ref: '#/components/examples/Quotation'
        '400':
          $ref: '#/components/responses/Error'
      description: |-
        ### Request for a quotation
      security:
        - OAuth 2: []
    parameters:
      - name: id
        in: path
        required: true
        schema:
          type: string
          format: uuid

Generate this CLI command on *.herokuapp.com

curl --request POST \   --url https://soregies-api-mock-testing.herokuapp.com/opportunities/e6459dee-0f27-11ec-82a8-0242ac130003/quotations \   --header 'Content-Type: application/json'

This CLI do an error because there is --header 'Content-Type: application/json' added to request but none set in the yaml tpl.

Expected behavior
Do not add the --header 'Content-Type: application/json' in the request when he is just wanted in the response.
Screenshots

Environment:

Library version: openapi: 3.0.0
OS: Windows 10
Browser: Firefox 91.0.2

Content types for HAR (which generates Request Sample) and fetch (for actually making a request when "Send Request" is pressed) are here:
https://github.com/stoplightio/elements/blob/main/packages/elements-core/src/components/TryIt/build-request.ts#L89
https://github.com/stoplightio/elements/blob/main/packages/elements-core/src/components/TryIt/build-request.ts#L222

I'm actually interested in a fix or workaround for this issue because I am trying to validate an API using Prism in proxy mode and requesting via Elements, unfortunately I can't get through basic validation due to this error:
{
  "type": "TypeError",
  "title": "Request with GET/HEAD method cannot have body",
  "status": 500,
  "detail": ""
}

Thank you for your help


VS Code becomes unresponsive using 1.13.1 within a few seconds of opening

VSCode Version: 1.13.1
OS Version: Ubuntu 16.04

Steps to Reproduce:

updated to 1.13.1
open up vs code, within a few seconds the IDE is unresponsive
and about a minute later a dialog pops up telling me it's become unresponsive offering to reopen/keep waiting or close.

rolling back to 1.13
UPDATE:
Rolling back to 1.13.0 resulted in the same error. when I renamed the file 1.13.1-shared.sock I was able to roll back. this file is located in home/.config/code.
Not sure what the sock file does or whether this is the cause of the issue, but renaming it for the moment did fix it.
Is anybody else seeing this error?

I saw the same thing after updating but the problem turned out to be the intellisense css extension I had installed I believe. Does it still happen with all the extensions disabled?

Thanks for the reply,
I will try it later, by disabling the css extension and see whether this fixes the issue.

cc @bpasero

I wonder if this issue is being caused by an installed extension. Can you try to run VS Code without extensions? From the command line (NOT the integrated terminal in Code), execute: code --disable-extensions and try your steps again to see if it reproduces. If you see it is an issue with the extension, please file it against the extension repository itself.

Having uninstalled the intellisense css extension I can confirm that vs code is now working again on 1.13.1. so clearly there is an issue with this extension

Please log an issue in the repo for the extension that is causing this.

how to disable the css ext?  when I open VSCode, it immediately crash. I have no choice to disable CSS ext, any another way?

@aisnote You can disable extensions from the Extensions viewlet

more details ？

@aisnote Go to the extensions viewlet (Ctrl+Shift+X or Cmd+Shift+X), find the extension you want to disable. Click on the gear icon next to it. You will get option to disable it

I am on Ubuntu 16.04, it's crashed immediately when I open VSCode, I have no choice to do as you mentioned.    @ramya-rao-a

@aisnote Then run VSCode via terminal like this: code --disable-extensions


machine id problem with docker image

Similar to #3, docker images tend to have the same machine id. As a result, the docker variant cannot really be used productively. It would be nice if this could be fixed, e.g. not relying on a machine id but a custom generated uuid at first startup.
Best regards
Matthias

+1
I moved away from the docker image and built my own node.js package as a result of this. For platform portability, agree with Matthias that simple uuid gen at startup and a flag set that uuid already gen'd should be implemented if possible.

Hello,
sorry to open this issue again.
With the latest update it is possible to assign a custom machine id through the config.ini:
customFieldId = true

Now since the correct procedure to upgrade a docker image is the following:

pull new version
rm old container
start new container

we have the issue that the Public ID changes after a docker field.cli image update:
For example, my ID now:  d253f921ba96bb62 my ID after stopping, removing the image and restarting: 19d1c6d3979c0b41.
What would now happen to specific node statistics, since the ID has changed?
Could something like this be a solution?
The Public ID should derive from a specific parameter in the config.ini. At that point it would not be possible to copy it for malicious purposes and it would still be unique, unless someone uses the same parameter key in the config.
All the best,
Antonio

Or maybe you could change the meaning of customFieldId.
Introduce a new parameter useCustomFieldId. This name fits more to a boolean value than customFieldId.
If useCustomFieldId is set, field.cli checks, if customFieldId is set. If not, it will generate a new one and store the value in a seperate file - or by modifying the config.ini and adding customFieldId with the respective value there.
If customFieldId is set, it should use this value.

Solved in my repo by adding a volume to /root, now the .carriota-field.id file is saved externally

@ioiobzit did you bind /root like this:
docker run -d --net host -p 21310:21310 --name field -v $(pwd)/field/root:/root romansemko/field.cli --pow --address my_donation_address --name my_name --customFieldId
And, by the way, could it be possible to add an example docker command to the readme like most other projects, maybe the command above?

Hi @joshirio I'm using docker compose in my project and attached the volumes like this:
  field.cli:
    image: romansemko/field.cli:latest
    container_name: iota_field.cli
    hostname: field.cli
    restart: unless-stopped
    volumes:
      - ./volumes/field/config.ini:/usr/src/field/config.ini:ro
      - ./volumes/field/root:/root
      - /etc/localtime:/etc/localtime:ro
    command: "--config /usr/src/field/config.ini"
    ports:
- "21310:21310"

Cheers!


SPTRIB_CIC_RELEASE_3_WA

Change description
*** DO NOT MERGE
Release 3 for WA branch
JIRA link (if applicable)
https://tools.hmcts.net/jira/browse/SPTRIBS-
Before merging a pull request make sure that:

[ ] tests have been updated / new tests has been added (if needed)
[ ] README and other documentation has been updated / added (if needed)

If this ticket will have any visible impact on users and is not behind a feature toggle, make sure that:

[ ] this ticket been reviewed by QA
[ ] the user story been signed off by the PO

Note that bug fixes, dependency updates and technical tasks do not directly impact the user experience and can be merged without QA and PO review.
If this user story cannot be immediately merged find a way to put it behind a feature toggle and get it merged.

closed due to unable to create case


[CU-86871rd70] Feature/reviews v2

@manuelurenah this still isn't quite ready to go. I figured now would be a good time to try and deprecate the ModelRank and ModelVersionRank tables, but things still aren't quite working as they should.


External Exception E0434352 using .NET Core

I have a simple project in .NET Core 8.0 and a simple test project in C++.
DLLCoreExportsDemo.zip
I have two simple exported functions
using System;
using System.Runtime.InteropServices;

namespace ExportsDemo
{
    public static class Exports
    {
        [DllExport(CallingConvention.StdCall)]
        public static Int32 DemoProc1()
        {
            return 1337;
        }

        [DllExport(CallingConvention.StdCall)]
        public static Int32 DemoProc2()
        {
            DateTime t = DateTime.Now;
            return 1338;
        }
    }
}

First function DemoProc1 is working, the second DemoProc2 is failing with the exception 0xE0434352.
#include <iostream>
#include <windows.h>

typedef int32_t(__stdcall* tDemoProc)();

int main()
{
    HINSTANCE hGetProcIDDLL = LoadLibraryA("ExportsDemo.dll");
    if (!hGetProcIDDLL) {
        std::cout << "could not load the dynamic library" << std::endl;
        return EXIT_FAILURE;
    }

    // resolve function address here
    tDemoProc DemoProc1 = (tDemoProc)GetProcAddress(hGetProcIDDLL, "DemoProc1");
    if (!DemoProc1) {
        std::cout << "could not locate the function" << std::endl;
        return EXIT_FAILURE;
    }

    tDemoProc DemoProc2 = (tDemoProc)GetProcAddress(hGetProcIDDLL, "DemoProc2");
    if (!DemoProc2) {
        std::cout << "could not locate the function" << std::endl;
        return EXIT_FAILURE;
    }

    // OK
    std::cout << DemoProc1() << std::endl;

    // Exception
    std::cout << DemoProc2() << std::endl;
}

Unhandled exception at 0x00007FF839C1B699 (KernelBase.dll) in UseDemo.exe: 0xE0434352 (parameters: 0xFFFFFFFF80070002, 0x0000000000000000, 0x0000000000000000, 0x0000000000000000, 0x00007FF81C9F0000).

Running on console
Unhandled exception: System.IO.FileNotFoundException: Could not load file or assembly System.Runtime, Version=<IP_ADDRESS>, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a or one of its dependencies. The system cannot find the file specified.

Both projects are configured as x64.
I have Use our IL Assembler and Rebase System Object: System.Runtime -> mscorlib enabled.

C:\>dotnet --list-runtimes

Microsoft.AspNetCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 8.0.11 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.AspNetCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.AspNetCore.App]
Microsoft.NETCore.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.15 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 8.0.11 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.NETCore.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.NETCore.App]
Microsoft.WindowsDesktop.App 3.1.32 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 5.0.17 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 6.0.36 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 8.0.11 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]
Microsoft.WindowsDesktop.App 9.0.0 [C:\Program Files\dotnet\shared\Microsoft.WindowsDesktop.App]

DllExport -version: v<IP_ADDRESS>858+c1cc52f
Used Visual Studio 2022 Version 17.12.1

Demo Project:
DLLCoreExportsDemo.zip

Hello Jiří,
Thank you for the detailed report!
I apologize for the inconvenience. Although modern .NET 8 is not supported yet (I implemented the Rebasing only for System object that's not enough for modern versions), I already started review the DllExport project this month as it was mentioned earlier on https://mastodon.social/@github3F
So I'm currently working on fixing the DllExport's bugs and supporting the new modern platforms for it. Step by step; I need to fix the most important things first and then continue such the Rebasing feature.
That is, something in progress but I won't talk about any deadlines, ETA, and so on, because unfortunatelly I'm not in a position to plan anything even a week in advance.
Normally it might be December, but I've been outside the norm for too long, so...

Side note to anyone who asks me about something on YouTube (because I get something also there from time to time):
Since Google continues to keep ~shadow block on my account (tf is going I don't know, but this 7+ years as far as I remember it), let me remind once again that not all of my comments may be published due to ...who knows the reason, and this cannot be controlled in any way in the admin panel. For example:

Therefore, don't wast your time on youtube; contact me here or mastodon or email see in profile or in source code, I don't know but ...

I close the issue as duplicate of a common support for modern .NET, for example #219, in order to get a clean to-do list
Feel free to continue here or there


scripts/dts/extract: reg.py: Flatten reg instead of props

Flatten reg instead of props
Signed-off-by: Erwan Gouriou<EMAIL_ADDRESS>

Codecov Report

Merging #11258 into topic-EDTS will decrease coverage by 0.16%.
The diff coverage is n/a.

@@              Coverage Diff               @@
##           topic-EDTS   #11258      +/-   ##
==============================================
- Coverage       53.27%   53.11%   -0.17%
==============================================
  Files             215      218       +3
  Lines           25851    26871    +1020
  Branches         5695     5952     +257
==============================================
+ Hits            13773    14273     +500
- Misses           9762    10163     +401
- Partials         2316     2435     +119

Impacted Files
Coverage Δ

include/ring_buffer.h
87.5% <0%> (-12.5%)
:arrow_down:

subsys/logging/log_output.c
72.33% <0%> (-10.03%)
:arrow_down:

lib/posix/semaphore.c
80% <0%> (-5.11%)
:arrow_down:

subsys/logging/log_core.c
71.92% <0%> (-4.13%)
:arrow_down:

subsys/net/lib/sockets/sockets.c
38.85% <0%> (-2.96%)
:arrow_down:

subsys/logging/log_msg.c
86.85% <0%> (-1.01%)
:arrow_down:

subsys/net/ip/ipv4.c
72.46% <0%> (-0.98%)
:arrow_down:

include/net/net_pkt.h
85.71% <0%> (-0.5%)
:arrow_down:

subsys/net/ip/icmpv4.c
32.62% <0%> (-0.47%)
:arrow_down:

subsys/net/ip/ipv6_mld.c
50% <0%> (-0.39%)
:arrow_down:

... and 39 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update a56614e...8f04a01. Read the comment docs.

recheck


Missing double quotes on entries in variable haproxy_default_errorfiles ?

On Ansible 2.9:
Error during the configuration
TASK [uoi-io.haproxy : Enabling and starting HAproxy service] *********************************************************
fatal: [helper.ocp10.g1.cms.hpecorp.net]: FAILED! => {"changed": false, "msg": "Unable to start service haproxy: Job fo                                                                                r haproxy.service failed because the control process exited with error code.\nSee \"systemctl status haproxy.service\"                                                                                and \"journalctl -xe\" for details.\n"}

Systemctl output
[tester@helper ~]$ sudo systemctl status haproxy
● haproxy.service - HAProxy Load Balancer
   Loaded: loaded (/usr/lib/systemd/system/haproxy.service; enabled; vendor preset: disabled)
   Active: failed (Result: exit-code) since Thu 2021-04-15 13:13:55 UTC; 3min 47s ago
  Process: 1430 ExecStartPre=/usr/sbin/haproxy -f $CONFIG -c -q $OPTIONS (code=exited, status=1/FAILURE)

Apr 15 13:13:55 helper haproxy[1430]: [ALERT] 104/131355 (1430) : parsing [/etc/haproxy/haproxy.cfg:35] : error opening file <{{> for custom error message <400>.
Apr 15 13:13:55 helper haproxy[1430]: [ALERT] 104/131355 (1430) : parsing [/etc/haproxy/haproxy.cfg:36] : error opening file <{{> for custom error message <403>.

The config file hasn't been instantiated with variable. Brackets are still present
 errorfile   400 {{ haproxy_errors_directory }}/400.http
 errorfile   403 {{ haproxy_errors_directory }}/403.http

Maybe this is due to the fact default variable should use double quote as jinja brackets variable are used in the line.
So this:
haproxy_default_errorfiles:
  - 400 {{ haproxy_errors_directory }}/400.http
  - 403 {{ haproxy_errors_directory }}/403.http

Should become this:
haproxy_default_errorfiles:
  - "400 {{ haproxy_errors_directory }}/400.http"
  - "403 {{ haproxy_errors_directory }}/403.http"

Thanks for raising the issue.
It should be fixed by https://github.com/uoi-io/ansible-haproxy/commit/b0fc88bb7ba6ae6220d4130072314060a7c7afc5 (waiting for the CI)

The CI build failed except for one (nothing related to this role, Travis issue).
https://travis-ci.com/github/uoi-io/ansible-haproxy/jobs/499469191

Thanks for the quick fix.
And thanks for this role.

Thanks for https://github.com/kalliope-project/MMM-kalliope which I forked for https://github.com/smartgic/MMM-mycroft-wakeword :+1:


Import data from OpenSSF Malicious Packages

Fixes #1409
Changes Made
Created OpenSSF importer openssf.py and added files for testing the importer
Results
Ran the importer locally using command below with debug mode on
docker-compose exec vulnerablecode ./manage.py import vulnerabilities.importers.openssf.OpenSSFImporter
Importer ran successfully and imported 17182 advisories as can be seen in the image below

Other Consideration

Initially I named the file ossf.py but it was tantalizingly close to oss_fuzz.py and could cause confusion, hence changed the name to openssf.py. Let me know if any better name is possible
Out of the 4 ecosystems in the repository (crates.io, npm, pypi, rubygems), univers supports 3 (npm, pypi, rubygems), but I am not sure if it supports crates.io
For the time being, I have added the 4 ecosystems in the list, but if required I can create a separate classmethod called supported_ecosystems and add all the ecosystems there as a list/dictionary, similar to how it is done in Vulntotal. Do let me know what is best approach

@classmethod
    def supported_ecosystem(cls):
        return {
            "pypi": "PIP",
            "gem": "RUBYGEMS",
            "npm": "NPM",
        }

Have add a try-except block in for loop. Let me know if that has to be removed.

I have made the changes that had been requested. Let me know if anything else needs to be done.

While working on PRs 1405 and 1417 I realized that in this PR I have not followed the purl-spec properly. For example crates.io should be mapped to cargo and rubygems should be mapped to gems. I will work on making these changes.

@shravankshenoy Thanks! PR can not be merged in this state, I tried to run the importer and it's throwing errors. Please run the importer and improver once.


Refused to get unsafe header "Location" when registering for gcm, unable to use push from cordova app

i added cors support for my domain in azure mobile service in the azure management portal
but there should be an option to add a response header to expose this header
Access-Control-Expose-Headers: Location
PushHttpClient has these lines:
var locationHeader = request.getResponseHeader("Location");
callback(null, locationHeader.slice(locationHeader.lastIndexOf("/") + 1))
the code blows up so i basically its not  possible to register for gcm successfully from a cordova app.
mobileServiceClient.push.gcm.registerTemplate(notification.regid,
'myTemplate', template, null)
.done(function() {
alert('Registered template with Azure!');
}).fail(function(error) {
alert('Failed registering with Azure: ' + error);
});

What backend are you working with here (Node.js or .NET) and what version of cordova?

this problem happens when registering to gcm with azure mobile services. (which is the backend)
im going to use azure mobile services for push only and trigger notifications from a c# backend but its irrelevant  to the this issue.
as you can see the registerTemplate call itself fails, not triggering a notification.
would be happy to supply more info if needed,thanks

The client code shown above is talking to your mobile service and the way to configure the response headers (Access-Control-*) differs between the two types (Node vs .NET), so we do need to know the type of mobile service backend to produce a repro and look into the issue.

the backend is javascript.

I haven't gotten there yet, but I'm also using js backend for an ionic app. Please share your solution on here. Thanks.

In my setup (Cordova & Mobile Services only), the code in question does not trigger a CORS flow, since the mobileservices JS file is hosted on a file:// path.  When using ionic, are you not consuming the mobile services cordova plugin and instead referencing the version on the CDN?  Is this a requirement for your workflow?

ok, that's interesting, now that you say that i think its probably because i was running the app with livereload.
which probablly means ionic cli opens a server on machine that the app connects to, whcih will trigger the cors flow.
i'll try running it without livereload soon and see if it works. would be cool if livereload could work aswell.
thanks

I agree, the backend does need to be setup to echo out a Access-Control-Allowed-Headers: Location in this flow.  The Node.js backend will return the "Access-Control-Request-Headers" by default, so a quick workaround could be to setup a client filter to add that header on the outbound requests if you need a fix asap.

Or modify your local copy here:  https://github.com/Azure/azure-mobile-services-cordova/blob/master/www/MobileServices.Web.js#L3078 and have the no cache header, also include the request headers header as well.

I'm seeing this issue as well, when registering for iOS notifications while on my device. Let me know if you guys found a fix.
Thanks!

https://github.com/Azure/azure-mobile-apps-js-client/issues/57 tracks this issue for Mobile Apps and has been closed. More details in the issue comments. If a fix is needed for Mobile Services as well, reactivate https://github.com/Azure/azure-mobile-services/issues/711.


the limits.py file

I have two problems here.

One of the must important things in using OOP (object oriented) is to know when NOT to use objects. I believe DisplayLimits is a example of that, unless this is to grow in the future, a function would work just as well, with the advanced that Display is less dependent of how this is organized, as long as it keep returning valid values. I also wouldn't like to see this grow larger that it is today, this kind of tasks of selecting appropriated values, although important, tend to grow into big ugly parts.

The class Ui_LimsDialog uses a Qdialog, that is, it blocks the program until it is closed. I don't know if this was the intention, but if so, there is not reason to make it that complicated, with V variables etc. A simple function could work just as fine, just as selecting new title/unit does, and let Display update Vlims. If that was not the intention, then I will wait you finish with the implementation before making further comments.

I fully agree with this.  Originally I was thinking that python DisplayLimits would be encompass more, but as you point out it can get ugly and keeping it as the simple update function I think is the best way to go.
I just changed this and it will be in the next push.

The original was to block the program until finished selecting new limits.  But I'm not sure this is the best way.  The idea was to keep the limits the same as title/unis, but it seemed that it required a great deal more because I wanted all limits to be able to be changed at the same time.

It is a little more complicated than title/units, but I'm confident it can be done as a simple function call. I also agree with blocking the program, because otherwise plot will be updated at every time a value changes.

I've modified the Ui_DisplayLimits to be a function.  You were right @gamaanderson it's simpler and more effective I think.

Lets keep Vlims obsolete by now, however I have a feeling it may come back.
This issue is almost closed, but I would still want to concentrate calls of limits.initialize_limits(...) in plot.py into a single function and make a local import to decrease file interdependence. If you want I can tackle that in a small PR.

Sounds good.

closed by PR #21


What is the url request to reset react instantsearch hits?

I am using react instantsearch and sometime i need to check if my index has new entries without to be required to remounting my component.
So i know that when my component is called the first time, react-instantsearch make an initial request to fetch the most pertinent hits :
 export const Hits = connectInfiniteHits(({ hits, hasMore, refine,currentRefinement}) => {

return (

  <View>//put my Hits here//</View>

);
});

So in my case i need to re-fetch hits sometimes but when i call a new instance of <Hits />  i get the same result even if my index has new entries. I always need to manually reset my component to see the changes.
I may have need a simple url to fetch and update my hits, for ex : axios.get('/getLastHits'....
Any idea ?

Duplicate of https://github.com/algolia/algoliasearch-client-javascript/issues/715#issuecomment-406903374 and https://github.com/algolia/react-instantsearch/issues/1454#event-1746606561, let’s keep the discussion in the React InstantSearch issue if any more is necessary :)


realism-effects： Memory leak problem

I tested both locally and online, with your example code, as well as my own working code, and experienced a memory leak: the same model, loaded multiple times, and each load cleared the memory of the previous model, but the memory continued to rise. When I use normal rendering, this problem does not occur. The memory comparison diagram is as follows: The leak points to Realistic-Effects, and I think it may be that the Realistic-Effects rendered real particle geometry memory is not fully cleared

@0beqz I can help fund this project.  Are you around @0beqz ?  Let's chat.

@0beqz我可以帮助资助这个项目。你在附近吗@0beqz？我们聊聊吧。

This is the author on Twitter: 0beqz

It's probably an issue with the custom material copies created for each material for the g-buffer pass. I'll look into it!
Thanks for the report.


C# patterns reference: property pattern

Contributes to #20584

@BillWagner I've rewritten the paragraphs about recursive pattern matching. Please check the latest commit.

@BillWagner thank you. I'm ready as well. Let's merge it.


Preserve EEPROM

Hello and thank you for this useful library.
Is there a way to prevent the EEPROM from being erased after each upload ?

You can edit the fuse configuration for the chip you're using in boards.txt (the Arduino IDE may, or may not, need a restart to detect the updated configuration).
For example, if you're using an ATmega 328p with an external 16 MHz clock, you can go to http://www.engbedded.com/fusecalc/ and input the fuse configuration from  boards.txt (0xFF, 0xDB, 0xFD) in the current settings section. Then enable "Preserve EEPROM memory through the Chip Erase cycle; [EESAVE=0]" and you'll see the high fuse value change to 0xD3 while the other two stay the same. Update it in your boards.txt file and that should be it.


Add Get-StringHash and Get-FileHash cmdlets

Close #2731

Rewrite Get-FileHash on C# and refactoring tests
The original Get-FileHash output type is Microsoft.Powershell.Utility.FileHash. The type was defined by ExtendedTypeDefinition. It is not C# type and reported as PSCustomObject.
Therefore, the output type was changed and now it is native C# type Microsoft.PowerShell.Commands.FileHashInfo.

Add new cmdlet Get-StringHash and add tests
The original idea was to add a InputString parameter to the common cmdlet but due to a conflict with the Path parameter (paths is strings too!) I had to make a new cmdlet to provide a pipeline support for the InputString parameter.

@PowerShell/powershell-committeeTeam
Should we introduce a new type 'Microsoft.PowerShell.Commands.StringHashInfo' for Get-StringHash output similar to Get-FileHash output?

@PowerShell/powershell-committee has decided we need an RFC for the Get-StringHash cmdlet.
The biggest concern was how PowerShell will convert anything to string, so the cmdlet will happily hash objects in a potentially unexpected way.
The output type was also of some concern when combined with allowing null because it will be difficult to match input with output. We think the output needs the original object in addition to the hash.

The committee also agreed that we do not need any updates with regards to the algorithms supported - we've marked the PR wit Breaking Change so we can document the difference between Windows PowerShell and PowerShell Core.

What will be the road map for the PR?
Could I remove Get-StringHash code from the PR?
I do not have the forces for the RFC to write the big text correctly in English.
Can we ask the author @rkeithhill of the Get-StringHash idea to start this RFC?

By all means - remove Get-StringHash from the PR.
Your English seems more than sufficient to write a RFC, but if @rkeithhill is up for it, I assume he'll jump in.

@lzybkr I create new PR with RFC https://github.com/PowerShell/PowerShell-RFC/pull/63
Now Get-StringHash was removed from the PR.
Travis again temporary failed 😕

@lzybkr  Should I do something else in the PR?

@lzybkr Thanks!


Add resume url field into mentee

Purpose

The purpose of this PR is to fix #
Goals

To let mentees add their resume links into their applications when they apply

Approach

Updated the Mentee model
Updated the apply as mentee and update mentee details functions

Screenshots

Checklist

[x] This PR doesn't commit any keys, passwords, tokens, usernames, or other secrets.
[x] I have read and understood the development best practices guidelines ( http://bit.ly/sef-best-practices )
[x] My code follows the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[x] I have made corresponding changes to the documentation

Related PRs

Test environment

Learning

Good job @Gravewalker666
Does this automatically add the new column to the existing database without affecting the existing data?

Yeah, it automatically added the new column and init it to nulll on the existing records


Security issues with two dependencies

Name
Version
ID
Fix Versions
Description

dash
2.14.1
PYSEC-2024-35
2.13.0,2.15.0
Versions of the package dash-core-components before 2.13.0; all versions of the package dash-core-components; versions of the package dash before 2.15.0; all versions of the package dash-html-components; versions of the package dash-html-components before 2.0.16 are vulnerable to Cross-site Scripting (XSS) when the href of the a tag is controlled by an adversary. An authenticated attacker who stores a view that exploits this vulnerability could steal the data that's visible to another user who opens that view - not just the data already included on the page, but they could also, in theory, make additional requests and access other data accessible to this user. In some cases, they could also steal the access tokens of that user, which would allow the attacker to act as that user, including viewing other apps and resources hosted on the same server.

Note:
This is only exploitable in Dash apps that include some mechanism to store user input to be reloaded by a different user.

Name
Version
ID
Fix Versions
Description

jupyterlab
4.0.4
GHSA-4m77-cmpx-vjc4
4.0.11
### Impact  The vulnerability depends on user interaction by opening a malicious notebook with Markdown cells, or Markdown file using JupyterLab preview feature.  A malicious user can access any data that the attacked user has access to as well as perform arbitrary requests acting as the attacked user.  ### Patches  JupyterLab v4.0.11 was patched.  ### Workarounds  Users can either disable the table of contents extension by running:  bash jupyter labextension disable @jupyterlab/toc-extension:registry   ### References  Vulnerability reported via the bug bounty program sponsored by the European Commission and hosted on the Intigriti platform.

jupyterlab
4.0.4
GHSA-44cc-43rp-5947
3.6.7,4.0.11
### Impact Users of JupyterLab who click on a malicious link may get their Authorization and XSRFToken tokens exposed to a third party when running an older jupyter-server version.  ### Patches JupyterLab 4.1.0b2, 4.0.11, and 3.6.7 were patched.  ### Workarounds No workaround has been identified, however users should ensure to upgrade jupyter-server to version 2.7.2 or newer which includes a redirect vulnerability fix.  ### References  Vulnerability reported by user @davwwwx via the bug bounty program sponsored by the European Commission and hosted on the Intigriti platform.

PR raised here:
https://github.com/os-climate/ITR-examples/compare/main...modeseven-os-climate:ITR-examples:fix-security-issues?expand=1

Issues in this ticket now resolved. Still need to put a release out.


Test charts

Description
Test charts; add chart test data
Checklist

[x] I have covered the code with tests
[ ] I have added comments to my code to help others understand it
[ ] I have updated the documentation to reflect the changes
[ ] I have performed a self-review of the changes

I don't understand why the tests pass. According to logs test_charts runs before test_main:
tests/stats/test_charts.py .                                             [ 54%]
tests/stats/test_defaults.py ....                                        [ 57%]
tests/stats/test_instrumentation.py ..                                   [ 58%]
tests/stats/test_main.py ...                                             [ 60%]
tests/stats/test_tutorials.py ....                                       [ 62%]

And I don't see any calls to dff.stats.cli.import_dashboard inside of the test_charts. So shouldn't the dashboard config be empty at the time of testing?

On the same note, test_charts should call drop_superset_assets and import_dashboard (or main).
This may be the reason my local tests failed for chart_id=1:
Expected :[]
Actual   :[{'animals': 0.0}, {'root': 0.5}, {'animals': 1.0}, {'root': 0.5}]

Superset may have had a different configuration stored in the postgres db

Also, I noticed that when I introduced some changes to charts in #227 I didn't update the query_context parameter. That could be a reason why certain charts return empty data. I'm going to fix this in dev soon.

I also imagined that chart testing would be more meaningful than comparing hundreds of lines of raw data.
Something along the lines of

Generate a pipeline with 100 flows and transitions between them.
Run everything.
Assert that there's n data points in the raw_data chart; assert the number of transitions shown in the transition_counts chart from flow_{i} to flow_{i+1} equals m; e.t.c.

Or in order to test for no context-leakage:
Generate a pipeline with a separate flow for each context_id; run it; assert that no chart shows a transition from one flow to another.
We could discuss which specific tests we want tomorrow.


Subscription IT: intro extensive regression tests from test group

Special thanks to Chang Xue for providing these regression tests.

Introduce MultiClusterIT2SubscriptionRegression profile
Adapt to TestConfig (renamed to AbstractSubscriptionRegressionIT), inherit IT subscription triple cluster environment
Modify the logic of each test setUp and tearDown
Add the necessary annotations
Ensure the test file name starts with "IoTDB" and ends with "IT"

revert debug when everything works fine...

revert debug when everything works fine...


How do I run a scan using an existing container?

Reading through the docs running a scan involves spinning up an new container. But lets say I have a container with a web interface and created a scan. How do I trigger it through the cli?
I tried
docker exec -ti seccubus_test scan Example nmap

but get an error
OCI runtime exec failed: exec failed: container_linux.go:296: starting container process caused "exec: \"scan\": executable file not found in $PATH": unknown

I’m having trouble understanding your question. Can you elaborate?
Sent from my mobile device, sorry for the typyos.
On 14 Feb 2018, at 15:15, Adam West <notifications<EMAIL_ADDRESS>wrote:
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHubhttps://github.com/schubergphilis/Seccubus/issues/642, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ABA5bkoqV4FBLCUWHJT--KYFNqStJFnPks5tUup_gaJpZM4SFYRe.

So, I have a docker-compose.yml file that might better explain what I'm trying to achieve.
version: '2'

services:
  nginx-proxy:
    image: jwilder/nginx-proxy
    container_name: nginx-proxy
    ports:
      - 80:80
      - 443:443
    volumes:
      - /var/run/docker.sock:/tmp/docker.sock:ro
      - .\tmp-docker\certs:/etc/nginx/certs
      - .\tmp-docker\dhparam:/etc/nginx/dhparam
    environment:
      DEFAULT_HOST: nginx-proxy.local #default host
      CERT_NAME: mycertificate # Wildcard Certificate name without extension

  openvas:
    image: mikesplain/openvas
    ports:
      - 4444:443
      - 9390:9390
    restart: always
    expose:
      - 4444
    environment:
      VIRTUAL_HOST: openvas.local
      VIRTUAL_PORT: 443
      VIRTUAL_PROTO: https
    container_name: openvas_test
    volumes:
      - .\tmp-docker\certs:/etc/nginx/certs

  seccubus:
    image: seccubus/seccubus
    ports:
      - 4443:443
      - 8080:80
    restart: always
    expose:
      - 4443
    environment:
      VIRTUAL_HOST: seccubus.local
      VIRTUAL_PORT: 443
      VIRTUAL_PROTO: https
      STACK: full
    container_name: seccubus_test
    volumes:
      - .\tmp-docker\certs:/etc/nginx/certs
      - .\tmp-docker\data:/opt/seccubus/data

networks:
  default:
    external:
      name: nginx-proxy

when I run docker-compose up an instance of seccubus is created with a container name of seccubus_test that I want to run commands against. I hope this better explains my question.

On a 'bare' docker container docker run -ti seccubus/seccubus scan Example nmap will work, but it will stop the container when scanning is done. You could use this in e.g. a crontab of with Kubernetes (that's what we use).
docker exec will execute a system command on an already running container and thus bypasses the entrypoint.sh script.
You could use the following to start a scan via docker exec: docker exec -ti 194bb5cdf149 su - seccubus -c do-scan

Ohh ok I got you. The commands are accessible to the seccubus user not root. Ok and Just in case anyone else tries a full example command.
docker exec -ti seccubus_test su - seccubus -c "do-scan --workspace Example --scan nmap"


Initial setup for unit + UI testing

Introducing automated testing to the solution.
This PR adds 2 test projects,

AzureNamingTool.UnitTests - for easily unit testable code, obvious stuff

AzureNamingTool.UiTests - uses WebApplicationFactory and creates an instance of a local server that we can then interact with using Playwright.net. Combined with LightBDD , this gives us a way to write simple "Given -> When -> Then" type assertions in dinstinct features/contexts, taking advantage of dependency injection for the test approach.

This allows us to quickly web test the solution - the PR is meant to demo the approach and pattern, which we could build on to establish a decent level of testing.

Hi @dylan-asos,
Thank you for your contribution! We have looked into adding Tests in the past, however, had never time to implement it. I will review you changes and include them in the next release.
NOTE:
I will be updating your PR to merge into the dev branch for our staging process.
Thank you again!
-Bryan


About the length of motorState and the position in HighState

Hello, the robot has only 12 motors and why the length of motorState is 20? std::array<MotorState, 20> motorState; How do I know which joint motor's state corresponds to each part in the motorState? Is their order the same as in quadruped.h? What are the remaining eight variables in motorState? After starting the robot, I control it to move backward, but the position[0] is showing a positive value. What may cause this problem?

Hello, regarding     motorState    ， we actually only use twelve, and the last eight are reserved bits, so you don’t need to worry about it.


os: os.StartProcess test grandchild inconsistent behavior

What version of Go are you using (go version)?

$ go version
go version go1.14 linux/amd64

Does this issue reproduce with the latest release?
Yes
What operating system and processor architecture are you using (go env)?
go env Output
$ go env
GO111MODULE=""
GOARCH="amd64"
GOBIN=""
GOCACHE="/home/dv/.cache/go-build"
GOENV="/home/dv/.config/go/env"
GOEXE=""
GOFLAGS=""
GOHOSTARCH="amd64"
GOHOSTOS="linux"
GOINSECURE=""
GONOPROXY=""
GONOSUMDB=""
GOOS="linux"
GOPATH="/home/dv/go"
GOPRIVATE=""
GOPROXY="https://proxy.golang.org,direct"
GOROOT="/usr/local/go"
GOSUMDB="sum.golang.org"
GOTMPDIR=""
GOTOOLDIR="/usr/local/go/pkg/tool/linux_amd64"
GCCGO="gccgo"
AR="ar"
CC="gcc"
CXX="g++"
CGO_ENABLED="1"
GOMOD=""
CGO_CFLAGS="-g -O2"
CGO_CPPFLAGS=""
CGO_CXXFLAGS="-g -O2"
CGO_FFLAGS="-g -O2"
CGO_LDFLAGS="-g -O2"
PKG_CONFIG="pkg-config"
GOGCCFLAGS="-fPIC -m64 -pthread -fmessage-length=0 -fdebug-prefix-map=/tmp/go-build376726503=/tmp/go-build -gno-record-gcc-switches"

What did you do?
I ran the following test.
Firstly with go test -v -count 1, then with go test -v -count 1 ./.
package asd

import (
	"log"
	"os"
	"testing"
	"time"
)

func TestGrandChildWait(t *testing.T) {
	p, err := os.StartProcess("tmp.sh", nil, &os.ProcAttr{
		Files: []*os.File{os.Stdin, os.Stdout, os.Stderr},
	})
	if err != nil {
		log.Fatalln(err)
	}
	go func() {
		s, err := p.Wait()
		log.Println(s, err)
	}()
	go func() {
		time.Sleep(time.Second)
		err = p.Kill()
		if err != nil {
			log.Fatalln(err)
		}
	}()
	time.Sleep(2 * time.Second)
}

The test requires an auxiliar bash script "tmp.sh" (with execution permissions):
#!/bin/sh
sleep 5

What did you expect to see?
I expected a similar execution time, (waiting or not for the grandchild to exit). In fact, in both cases the test gets done is ~2 seconds, but in the "./" case, go test only returns when the grand child (the "sleep" command) ends.
What did you see instead?
$ go test -count 1 -v
=== RUN   TestGrandChildWait
2020/03/08 14:15:38 signal: killed <nil>
--- PASS: TestGrandChildWait (2.00s)
PASS
ok      github.com/davidmanzanares/dsd  2.003s

$ go test -count 1 -v ./
=== RUN   TestGrandChildWait
2020/03/08 14:16:10 signal: killed <nil>
--- PASS: TestGrandChildWait (2.00s)
PASS
ok      github.com/davidmanzanares/dsd  5.004s

Additional info
I found that if I don't pass the stdtin, stdout and stderr file descriptors the issue doesn't appear.

@davidmanzanares thanks for filing!
@ianlancetaylor may know more.
I think testing and os.StartProcess is a bit of a red herring here. This also happens if you use cmd/exec with os.Stdout in my testing (which, by the way, has better utilities for handling input and output than using os.Stdout directly). I would guess that this is in part due to your use of sleep 5, and possibly the thread state being inherited when referencing os.Stdout and friends. I don't see how else that file descriptor could be shared.

If the calling goroutine has locked the operating system thread with runtime.LockOSThread and modified any inheritable OS-level thread state (for example, Linux or Plan 9 name spaces), the new process will inherit the caller's thread state.

Changing test.sh to the following:
sleep 0.5
echo "hi"
sleep 5
echo "bye"

... will only print out "hi" in the test. This leads me to believe that things are behaving as intended. My guess is that the kill signal is sent while the command is in a blocking syscall (sleep), and the signal isn't handled until afterwards.
I am not an expert though.

When using go test, the difference between plain go test and go test ./ is that when go test is invoked with no arguments it streams output directly, and when it is invoked with arguments (in this case ./ it buffers the output.  This means that the test binary is being invoked with different standard output: in one case standard output is the terminal, and in the other case it is a pipe.  Also significant here is that go test uses the os/exec package to run the test binary.
Once those facts are taken into consideration, this is a dup of #23019.  Closing as a dup.

 Thank you! It's nice to know why/how this happens


Consider non-square block sizes

Don't know if this was be particularly useful, but consider allowing non-square block sizes. This is two ways of implementing it.
Could by done by parameterizing as BlockGrid<W: BlockDim, H: BlockDim, T> where W and H are block width and height respectively. A SquareGrid type-alias could be for square blocks.
Alternatively, a BlockDims trait which itself holds the block and width. Would then have to create a buunch of types for each combination, such as U4ByU8 (or U4xU8), with type-aliases for the current square blocks.

eh idk


[Feature Request] Comment stub generation with Copyright, author and date

angular-cli generates many five files per component. After the generation a developer has to go through each to add a comment with typical Copyright, author +- date the file was generated.
I am proposing a feature request where angular-cli could do this with an option to NOT generate this contents for those who do NOT require such comments.
Consider the .html component view comment below

This could easily be altered for .ts, .spec.ts in the generation process.
The generation could be done for all artifacts generated by the angular-cli.
Please let me know what you think.
I think angular-cli WILL BE THE DEFACTOR STANDARD FOR angular2 development in the near future. Congrats to all the contributors.

I believe this is a bit outside the scope of the CLI, and there are no plans at the moment for such feature. If this changes, this issue will be updated.


Bug: Azure driver does not handle FromPort and ToPort properly.

Reproducing steps:

POST securitygroup

{
    "connectionName": "{{connection_name}}",
    "cspSecurityGroupName": "jhseo-test",
    "firewallRules": [
        {
            "FromPort": "0",
            "ToPort": "65535",
            "IPProtocol": "*",
            "Direction": "inbound"
        }
    ]
}

Expected response:

{
    "Id": "/subscriptions/f1548292-2be3-4acd-84a4-6df079160846/resourceGroups/jhseo-test-eastasia/providers/Microsoft.Network/networkSecurityGroups/jhseo-test",
    "Name": "jhseo-test",
    "Direction": "",
    "SecurityRules": [
        {
            "FromPort": "0",
            "ToPort": "65535",
            "IPProtocol": "*",
            "Direction": "Inbound"
        }
    ],
    "KeyValueList": [
        {
            "Key": "ResourceGroup",
            "Value": "jhseo-test-eastasia"
        }
    ]
}

What actually got:

{
    "Id": "/subscriptions/f1548292-2be3-4acd-84a4-6df079160846/resourceGroups/jhseo-test-eastasia/providers/Microsoft.Network/networkSecurityGroups/jhseo-test",
    "Name": "jhseo-test",
    "Direction": "",
    "SecurityRules": [
        {
            "FromPort": "0-65535",
            "ToPort": "*",
            "IPProtocol": "*",
            "Direction": "Inbound"
        }
    ],
    "KeyValueList": [
        {
            "Key": "ResourceGroup",
            "Value": "jhseo-test-eastasia"
        }
    ]
}

https://github.com/cloud-barista/cb-spider/pull/97


Media Content type gets altered if POST request is sent using  keyword

when a post request is passed from a  variable, it is altering the content type of the POST request to an unsupported type.
Additional info on steps, screenshots available on https://stackoverflow.com/questions/46839414/in-karate-dsl-how-do-i-resolve-an-unsupported-media-type-for-a-valid-post-reque

This is not an issue. I did not add the appropriate line of code which is And header Content-Type = 'application/json'. closed issue.


Radial Annotator - display citations throughout

When I look at an annotation, then I want see a reference to citations.
Make citatble (add "default source" and source/page subform to these, inline):

[ ] Protocol

[ ] Confidence

[ ] Data attribute

[ ] In the list of each of the above, add a column "Citations" for these, it contains a count of citations (e.g. '4'), when mouse over you see a tooltip listing all the citations on the object.

Besides each item in the tooltip list there is a trash can, user can destroy (not edit) a given citation, which collapses the tooltip.

It's already done. I think we can close this?


Rel 0.80  LG webos change channel

With 0.80 release of hass on raspberry pi3 the media_player.play_media for LG Webos samrtTV with
{
"entity_id": "media_player.tv_home_2",
"media_content_id": 506,
"media_content_type": "channel"
}
ends in error.
Its Ok with 0.79.3 version.
Any ideas ?
Tank.
Error doing job: Task exception was never retrieved
Traceback (most recent call last):
  File "/usr/lib/python3.5/asyncio/tasks.py", line 241, in _step
    result = coro.throw(exc)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/helpers/service.py", line 226, in _handle_service_platform_call
    await func(entity, data)
  File "/usr/lib/python3.5/asyncio/futures.py", line 380, in __iter__
    yield self  # This tells Task to wait for completion.
  File "/usr/lib/python3.5/asyncio/tasks.py", line 304, in _wakeup
    future.result()
  File "/usr/lib/python3.5/asyncio/futures.py", line 293, in result
    raise self._exception
  File "/usr/lib/python3.5/concurrent/futures/thread.py", line 55, in run
    result = self.fn(*self.args, **self.kwargs)
  File "/srv/homeassistant/lib/python3.5/site-packages/homeassistant/components/media_player/webostv.py", line 353, in play_media
    for channel in self._client.get_channels():
  File "/srv/homeassistant/lib/python3.5/site-packages/pylgtv/webos_client.py", line 334, in get_channels
    self.request(EP_GET_TV_CHANNELS)
  File "/srv/homeassistant/lib/python3.5/site-packages/pylgtv/webos_client.py", line 199, in request
    self.command('request', uri, payload)
  File "/srv/homeassistant/lib/python3.5/site-packages/pylgtv/webos_client.py", line 193, in command
    loop.run_until_complete(asyncio.wait_for(self._command(message), self.timeout_connect, loop=loop))
  File "/usr/lib/python3.5/asyncio/base_events.py", line 466, in run_until_complete
    return future.result()
  File "/usr/lib/python3.5/asyncio/futures.py", line 293, in result
    raise self._exception
  File "/usr/lib/python3.5/asyncio/tasks.py", line 239, in _step
    result = coro.send(None)
  File "/usr/lib/python3.5/asyncio/tasks.py", line 404, in wait_for
    raise futures.TimeoutError()
concurrent.futures._base.TimeoutError

i got same issue, what can i do


News section

Any design suggestions about a news section are welcome! It would be nice to have a place for announcing new features, fixes etc. on the home page.

Moved it into discussions


UnhandledRejection error at end of test

[2020-07-09T00:48:41.142Z] 09 07 2020 00:48:40.828:INFO [SeleniumGrid]: Killed grid_selenium_chrome.
[2020-07-09T00:48:41.142Z] 09 07 2020 00:48:40.830:ERROR [karma-server]: UnhandledRejection: resolve is not defined
[2020-07-09T00:48:41.142Z] 09 07 2020 00:48:40.831:ERROR [karma-server]: [ReferenceError: resolve is not defined
[2020-07-09T00:48:41.142Z]   at /home/jenkins/agent/workspace/pipeline_PR-195/node_modules/karma-selenium-grid-launcher/index.js:417:11
[2020-07-09T00:48:41.142Z]   at runMicrotasks (:null:null)
[2020-07-09T00:48:41.142Z]   at processTicksAndRejections (internal/process/task_queues.js:97:5)
[2020-07-09T00:48:41.142Z] ]
[2020-07-09T00:48:41.142Z] Warning: Task "karma:unit" failed. Use --force to continue.

Would be nice to get this fixed - always looks like the tests are failing. I might have a look.


fix: overflow in html element

There is overflow in places where swiper component is used.

hiding overflow from html/body will only hide the problem. In case of swiper, the overflow should be hidden on its immediate parent.


Extended UIPropertyTypes with Image

Now supports generating code behind for elements of type "Image"

Thank you for the support of the Image type. :smile:

v1.2.0 has been released: https://github.com/Eastrall/Rosalina/releases/tag/v1.2.0
Also available on OpenUPM: https://openupm.com/packages/com.eastylabs.rosalina/?subPage=versions


Test PR

Just testing, please ignore

test this please
HOST_OSES=ALL
BUILD_TOOLCHAINS=GCC_ARM
TARGETS=K64F

test this please
HOST_OSES=ALL
BUILD_TOOLCHAINS=GCC_ARM
TARGETS=K64F

test this please
HOST_OSES=ALL
BUILD_TOOLCHAINS=GCC_ARM
TARGETS=K64F

test this please
HOST_OSES=ALL
BUILD_TOOLCHAINS=GCC_ARM
TARGETS=K64F

test this please
HOST_OSES=ALL
BUILD_TOOLCHAINS=GCC_ARM
TARGETS=K64F

test this please
HOST_OSES=ALL
BUILD_TOOLCHAINS=GCC_ARM
TARGETS=K64F

test this please
HOST_OSES=ALL
BUILD_TOOLCHAINS=GCC_ARM
TARGETS=K64F


Unable to publish @scoped package

Describe the bug
I'm unable to publish package with scoped name. I'm receiving the following error on
npm publish --registry https://my-registry.url:
npm notice
npm notice 📦<EMAIL_ADDRESS>npm notice === Tarball Contents ===
npm notice 211B package.json
npm notice 21B  index.js
npm notice === Tarball Details ===
npm notice name:          @MYSCOPE/MYPACKAGE
npm notice version:       1.0.0
npm notice package size:  424 B
npm notice unpacked size: 484 B
npm notice shasum:        d826d1a62d3d9620152aed73b6ba2a1a8030db47
npm notice integrity:     sha512-Y46OeJJoZvc2V[...]eH48pAHft41Yw==
npm notice total files:   2
npm notice
npm ERR! code E404
npm ERR! 404 Not Found - PUT https://my-registry.url/@MYSCOPE%2fMYPACKAGE
npm ERR! 404
npm ERR! 404  '<EMAIL_ADDRESS>is not in the npm registry.
npm ERR! 404 Your package name is not valid, because
npm ERR! 404  1. name can only contain URL-friendly characters
npm ERR! 404
npm ERR! 404 Note that you can also install from a
npm ERR! 404 tarball, folder, http url, or git url.

npm ERR! A complete log of this run can be found in:
npm ERR!     ...-debug.log

Everything works fine with non-scoped package though.
To Reproduce
My package's package.json:
{
  "name": "@MYSCOPE/MYPACKAGE",
  "version": "1.0.0",
  "description": "",
  "main": "index.js",
  "author": "",
  "license": "ISC"
}

Configuration File (cat ~/.config/verdaccio/config.yaml)
storage: ./storage
plugins: ./plugins

web:
  title: Verdaccio

uplinks:
  npmjs:
    url: https://registry.npmjs.org/

packages:
  '@MYSCOPE/*':
    access: $all
    publish: $all
    unpublish: $all

  '**':
    access: $all
    publish: $all
    unpublish: $all
    proxy: npmjs

server:
  keepAliveTimeout: 60

middlewares:
  audit:
    enabled: true

logs:
  - { type: stdout, format: pretty, level: http }
  #- {type: file, path: verdaccio.log, level: info}

https:
    key: /etc/letsencrypt/live/.../privkey.pem
    cert: /etc/letsencrypt/live/.../cert.pem
    ca: /etc/letsencrypt/live/.../fullchain.pem

url_prefix: https://my-registry.url

Environment information
  System:
    OS: Linux 4.4 Ubuntu 16.04.6 LTS (Xenial Xerus)
    CPU: (1) x64 Intel(R) Xeon(R) Gold 6140 CPU @ 2.30GHz
  Binaries:
    Node: 12.6.0 - ~/.nvm/versions/node/v12.6.0/bin/node
    npm: 6.9.0 - ~/.nvm/versions/node/v12.6.0/bin/npm
  npmGlobalPackages:
    verdaccio: 4.1.0

hi @beadm , it seems you are using a reverse proxy, could you share more about it?

Sure, I'm using apache, here are the host configs:
http:
<VirtualHost *:80>
        ServerName my-registry.url
        ServerAdmin<EMAIL_ADDRESS>
        ProxyPreserveHost On

        ProxyPass / http://<IP_ADDRESS>:4873/ nocanon
        ProxyPassReverse / http://<IP_ADDRESS>:4873/

        RewriteEngine on
        RewriteCond %{SERVER_NAME} =my-registry.url
        RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

https:
<IfModule mod_ssl.c>
<VirtualHost *:443>
        ServerName my-registry.url
        ServerAdmin<EMAIL_ADDRESS>
        ProxyPreserveHost On

        SSLEngine on
        SSLProxyEngine          On
        ProxyRequests           Off
        ProxyPreserveHost       On

        ProxyPass / http://<IP_ADDRESS>:4873/ nocanon
        ProxyPassReverse / http://<IP_ADDRESS>:4873/

        SSLCertificateFile /etc/letsencrypt/live/.../fullchain.pem
        SSLCertificateKeyFile /etc/letsencrypt/live/.../privkey.pem
        Include /etc/letsencrypt/options-ssl-apache.conf
</VirtualHost>
</IfModule>

What else would be helpful?
Everything works properly when not using a scoped package. If there's a "@" and/or a "/" in the package name I'm just not able to publish it.

I think you are missing AllowEncodedSlashes prop, check again the docs :)
https://verdaccio.org/docs/en/reverse-proxy#apache
That is the unique difference I see by far

Yes, that exactly was the problem... Thank you @juanpicado!


Change starting keep?

Hey there!  Just a quick idea.
Is it possible to make it so that, in multiplayer, everyone (or at least human lords) can start with a different keep?  It would be fun to play a skirmish where you have the large Stronghold, as oppose to the basic square bit.
Also, great job on the updates thus far!  This is breathing new life into the game for me.

I would like the option for the AIs to start with the biggest keep (as well as looking visually great, it might even make their last stand defense better), but it might cause errors in building their castle :(

while it would look cool the problem here is that the different keeps have a different footprint size meaning all the castle layouts would have to be adjusted to the bigger keeps entailing an update to the aiv editor as well. So I would say its not quite worth the effect for the amount of rework would be required to make it viable

As this is not viable to implement with how the game is currently functioning (keep placements on terrain would be blocked if rocks are nearby, AI's wont function with different keep sizes etc.) I dont see how this would be worked on. If you disagree or these things change, feel free to reopen this issue.