Empty layer groups still get images (resulting in 404)

Sketch + Framer: http://cl.ly/ZlhD
Case

Simple document with Artboard and a Symbol

Gets imported correctly, without errors

Web Inspector reveals the following:

After removing the "status bar contents" folder within Sketch:

It appears to also be looking for the app bar + status bar image, which in Sketch is simply a layer group containing two other layer groups with actual contents:

It also appears to be looking for the Artboard image.

Changing these Artboard background/export settings doesn't change that. Removing the artboards leaves us only with the error of it looking for the "app bar + status bar" image.

What's interesting is that when we ungroup the layers within "app bar + status bar" - a new error appears, this time it starts looking for "app bar contents" - which now only contains the "menu" icon:

Finally, ungrouping the "menu" icon, leaving only the actual Shape layer within the " app bar contents" folder gives us an error-free web inspector.

A simpler version is here (including sketch file). Tldr; layer groups without image (but maybe including other layer groups) should not include images.

Another example: http://share.framerjs.com/3xsowpgw51qh/
Layer "Empty" should not get an image in the json file here.

Fixed!

Looks like this is fixed.

We only need to figure out what happens with:

Layer groups with only layer groups and a mask WITH fill (should export image)
Layer groups with only layer groups and a mask WITHOUT fill (should not export image)

Verified.


Add estimate_velocity property to the TrackedObject class

The estimate_velocity property was created to give the user a way to get the speed of each point of a TrackedObject. This speed is estimated by the Kalman filter.
The following is an example to get the speed of each point:
...
for frame in video:
    detections = model(frame)
    tracked_objects = tracker.update(detections=detections)
    for object in tracked_objects:
        velocities = object.estimate_velocity
    ...

This velocity uses pixels/frame units and is composed of the velocity on each axis.

Having this:
for frame in video:
    detections = model(frame)
    tracked_objects = tracker.update(detections=detections)
    for object in tracked_objects:
        velocities = object.estimate_velocity

How can I convert the velocities in km/h?
Currently I'm doing the following np.linalg.norm(obj.estimate_velocity,1). However the results does not have sense... The results are being to close to 0.


fix: handle special character in S3 bucket or file name

@fhussonnois Can you please review and merge this.
We are using the connector, but the connector crashes and stops whenever someone uploads a file with spaces of special character in the the s3 bucket. This change fixes the issue.
Do let me know if I need to add something to the PR raised.


Pretraining SciBERT

Hi,
The repo does not seem to contain the codes to pretrain the model on semantic scholar. Do you plan to release those codes and the pretrain data? Thanks!
Yichong

We used the BERT code from google https://github.com/google-research/bert

Thanks! And where did you get the data?

As mentioned in the paper, we used the semantic scholar corpus which is not publicly available. The publicly available part is this https://labs.semanticscholar.org/corpus/ (the link is not working right now but it will be fixed soon), which has titles and abstracts but not full text.

@ibeltagy thanks for the reply. What mlm_loss should I expect the model to converge to if I used the same dataset?

With 512 tokens, the losses are around the following numbers:
loss = 1.311045
masked_lm_accuracy = 0.7187241
masked_lm_loss = 1.2882848
next_sentence_accuracy = 0.9939219
next_sentence_loss = 0.0196654```

@ibeltagy Thanks for reply. Does that mean that your pretrained Sci-Bert model reaches masked_lm_accuracy of around 0.718? However, in the BERT original model, they reaches around 0.98 masked_lm_accuracy and about 1.0 next_sentence accuracy. May I ask do you think a masked_lm_accuracy of around 0.718 is enough?
I am training also my own model on a customized dataset, which adds around 1000 new tokens that are not in BERT model. Thus I would like to know what is the masked_lm_accuracy or next_sentence_accuracy that I should expect for my pre-trained model to achieve.

@sibyl1956  This is a good point and I suspect this is due to the noisy PDF parse in the scientific corpus.  Namely, we didn't do anything to remove tables, equations, weird tokens, etc. that was output by PDFBox in converting the raw PDF to a text stream.  You can expect it's essentially impossible for the model to really predict these masked tokens.  We're currently in the process of curating an updated larger & cleaner version of the pretraining corpus, and will investigate whether the noisy tokens are the cause for this.  As it is now, the current released SciBERT weights are still very good for downstream tasks (but we can definitely do better).

I'm closing this issue for now since it looks like the original question chain was answered.  Feel free to reopen or start new Issue


3.5 NavigationObstacle nodes without deprecated Navigation / Navigation2D node parents do not work

Godot version
3.5.stable
System information
Windows10
Issue description
NavigationObstacle for 2D and 3D do not work in Godot 3.5 without a deprecated Navigation / Navigation2D node as a parent as they do not connect to the default World / World2D navigation map.
Workaround is to set the navigation map and radius manually for the obstacle node agents with the NavigationServer API.
For 3D:
NavigationServer.agent_set_map($NavigationObstacle.get_rid(), get_world().get_navigation_map())
NavigationServer.agent_set_radius($NavigationObstacle.get_rid(), obstacle_radius_float)
For 2D:
Navigation2DServer.agent_set_map($NavigationObstacle2D.get_rid(), get_world_2d().get_navigation_map())
Navigation2DServer.agent_set_radius($NavigationObstacle2D.get_rid(), obstacle_radius_float)
Steps to reproduce
Use NavigationObstacle nodes without a Navigation / Navigation2D node as a parent.
Minimal reproduction project
na

Fixed by #64372.

This issue still exists in 3.5.rc2 and current 3.x branch.
https://github.com/godotengine/godot/blob/faade5f1c365362302c81721064cf4caa011313c/scene/3d/navigation_obstacle.cpp#L142-L154
The updated code in #64372 won't be executed since navigation is null by default and set_navigation() will do an early return if no Navigation node is found.

Fixed by #66530.

Just a potential workaround for Godot 3.5.1 users:
Create a new derived class NavigationObstacleRadius2D.gd and then use that instead of NavigationObstacle2D and set radius on your own in the editor.
tool
class_name NavigationObstacleRadius2D
extends NavigationObstacle2D

export(float) var collision_radius = 0.0

func _ready() -> void:
	var parent = get_parent()
	estimate_radius = false

	# Workaround to set NavigationObstacle2D navigation map properly until PR gets fixed in 3.5
	# https://github.com/godotengine/godot/issues/64185
	Navigation2DServer.agent_set_map(self.get_rid(), parent.get_world_2d().get_navigation_map())
	Navigation2DServer.agent_set_radius(self.get_rid(), collision_radius)


[New game]: Guess the Color Game

🎮 Game Request
Game logic and basic description
This is a game where you have given RGB value of color and bellow there are six color box. You have to guess that color box from given RGB value.
Point down the features
Game points:
if you choose wrong color then this color box id disappeared
score given as per clicks
new game option
Select program in which you are contributing
GSSoC23
Code of Conduct

[X] I follow CONTRIBUTING GUIDELINE of this project.

Hey @vidhimakani74 !
Thank you for raising an issue 💗
You can self assign the issue by commenting /assign in comment 😀
Make sure you follow CODE OF CONDUCT and CONTRIBUTING GUIDELINES 🚀
Don’t Forget to ⭐ our GameZone🎮
Make sure you join our Discord🕹

/assign

thank you @kunjgit for assigning this issue to me.

Hey @vidhimakani74 👋!
@kunjgit here,
We have this annoucement to make 📢!!
We have updated our README 🚀
Make sure you follow proper guideline to raise your next issues !!
 Thank you so much for your raising the issue💗
It’s all yours, you can come anytime again and make some contributions! 🚀
Alone, we can do little, but together we can do so much! 😇


Need help 😔😔😔

Is it possible to edit .sav file by its base64 data and download it to client browser without saving it to server
I have a game file name as active.sav and when I try to edit it with your library then it's give a error why this error is happening

I assume your game file is not a statistics file, this library only works with SPSS and PSPP  .sav format.


Handle textures, not sizend 2^n by 2^n

I assume a GPU can only handle textures, if they are sized 2^n by 2^n
The result is a black looking material.
And three-d (at last loaded.insert_bytes) does not "correct" to a 2^n texture size.
That my be mentioned in the API doc
or checked in the three-d code to draw an error
or https://lib.rs/crates/resize may be used.

That's not totally true : for older hardware it was Non Power Of Two (NPOT) textures were indeed not supported but now it is not much a problem (since OpenGL 2/WebGL 2).
Some readings (albeit a bit old for some articles, especially regarding performance)

https://www.khronos.org/opengl/wiki/NPOT_Texture
https://gamedev.stackexchange.com/questions/7927/should-i-use-textures-not-sized-to-a-power-of-2
https://forum.babylonjs.com/t/is-texture-size-required-to-be-power-of-two-for-the-best-performance-quality/17640

I've never had problem with NPOT textures (but I haven't tested with Three-d, only with pure OpenGL).

Older, hm, I am using a MacBook Air (Retina, 13-inch, 2018) | Intel UHD Graphics 617 | OpenGL 4.1 | OpenCL 1.2 (no WebGL)
With Gimp, I edited the 600px file to a 512 file and it worked. But may be Gimp changed something else to?
It is reproducible but we should not spend much effort.
My OSM-Data will be changed to 2^x and we will see if it still is an issue.

I also think NPOT textures are supported by the OpenGL/WebGL we are targeting here, so it should work. I will look into it at some point.

Meanwhile in the cyberspace:

In my project files was one door texture POT x NPOT and was visible horizontal dis-sorted
The code for SVG files works only, if they contain POT pixel sizes
This test, http://osmgo.org/o2w/o2t.html  shows the error on different devices
So please try a NPOT texture on a simple square, when you got some time.


R200 Infrared stream can't get with OpenCV

Required Info

Camera Model
R200, SR300

Firmware Version
<IP_ADDRESS>, <IP_ADDRESS>

Operating System & Version
Ubuntu 16.04

Kernel Version (Linux Only)
4.4.0-28-generic

Build System
Makefile

Hello and Thanks for good library.
I tried to get infrared stream and convert OpenCV Mat with realsense R200.
But a following error happened.
terminate called after throwing an instance of 'rs::error'
  what():  Timeout waiting for frames.
Aborted (core dumped)

I have a realsense SR300 too. So I tried using same program. It's worked well.
Do you have any ideas?
Thanks.

@harumo11 I would try your R200 with a different physical USB port or through a powered USB 3.0 hub. The bandwidth/power requirements vary between generations/families of RealSense cameras.

@ddiakopoulos Hello. I tried my R200 camera with another physical USB port. But same error has happened. I tried with a following code.  Do I make any mistakes?
// This program is handling intel realsense SR300 with infrared image.
// Note. This program is only used on SR300, con not used on f200 due to unknoun issue.

#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include "librealsense/rs.hpp"

using std::cout;
using std::endl;

int main(int argc, char const* argv[])
{
	rs::context ctx;
	cout << "[ INFO ] connected " << ctx.get_device_count()
		<< "realsense deveces" << endl;
	if (ctx.get_device_count() == 0) {
		cout << "[ ERROR ] No devece is connected" << endl;
		return 0;
	}

	rs::device *dev = ctx.get_device(0);
	cout << "------------------------------------------" << endl;
	cout << "[ INFO ] Devece name\t" << dev->get_name() << endl;
	cout << "[ INFO ] Serial number\t" << dev->get_serial() << endl;
	cout << "[ INFO ] Firmware version\t" << dev->get_firmware_version() << endl;
	cout << "------------------------------------------" << endl;

	// Setting for realsense device
	const int frameHeight = 480;
	const int frameWidth = 640;
	dev->enable_stream(rs::stream::infrared, frameWidth, frameHeight, rs::format::y8, 30);
	dev->start();

	// Setting for openCV
	cv::Mat infrared(frameHeight, frameWidth, CV_8UC1);

	while(cv::waitKey(30) <= 0){
		dev->wait_for_frames();
		if (!dev->is_streaming()) {
			cout << "[ ERROR ] Disable streaming  " << endl;
		}

		if (!dev->is_stream_enabled(rs::stream::infrared)) {
			cout << "[ ERROR ] Disable infrared stream" << endl;
			return 1;
		}

		infrared.data = (unsigned char*)dev->get_frame_data(rs::stream::infrared);
		cv::imshow("infrared", infrared);
	}

	return 0;
}

Thanks.

Please try adding:
try { dev->enable_stream(rs::stream::infrared2, frameWidth, frameHeight, rs::format::y8, 30); } catch(...) {} after the first enable_stream.
It seemed that Y8 format used for DS4 single infrared streaming has not been up-streamed to kernel 4.4 nor added to librealsense installation script.
You can either enable both left and right infrared streams or manually apply the following patch:
https://github.com/IntelRealSense/librealsense/blob/development/scripts/realsense-y8-format-request.patch

@dorodnic  Hello.
I tried what you say.  I can get infrared stream after changing infrared camera from rs::stream::infrared to rs::stream::infrared2. And then,  Following code work well.
// This program is handling intel realsense SR300 and R200 with infrared image.
// Note. This program surely is used on SR300 and R200.

#include <iostream>
#include <opencv2/core.hpp>
#include <opencv2/highgui.hpp>
#include "librealsense/rs.hpp"

using std::cout;
using std::endl;

int main(int argc, char const* argv[])
{
	rs::context ctx;
	cout << "[ INFO ] connected " << ctx.get_device_count()
		<< "realsense deveces" << endl;
	if (ctx.get_device_count() == 0) {
		cout << "[ ERROR ] No devece is connected" << endl;
		return 0;
	}

	rs::device *dev = ctx.get_device(0);
	cout << "------------------------------------------" << endl;
	cout << "[ INFO ] Devece name\t" << dev->get_name() << endl;
	cout << "[ INFO ] Serial number\t" << dev->get_serial() << endl;
	cout << "[ INFO ] Firmware version\t" << dev->get_firmware_version() << endl;
	cout << "------------------------------------------" << endl;

	// Setting for realsense device
	const int frameHeight = 480;
	const int frameWidth = 640;

	try{
		dev->enable_stream(rs::stream::infrared2, frameWidth, frameHeight, rs::format::y8, 30);
	}catch(...){
	}

	dev->start();

	// Setting for openCV
	cv::Mat infrared(frameHeight, frameWidth, CV_8UC1);

	while(cv::waitKey(30) <= 0){
		dev->wait_for_frames();
		if (!dev->is_streaming()) {
			cout << "[ ERROR ] Disable streaming  " << endl;
		}

		if (!dev->is_stream_enabled(rs::stream::infrared2)) {
			cout << "[ ERROR ] Disable infrared stream" << endl;
			return 1;
		}

		infrared.data = (unsigned char*)dev->get_frame_data(rs::stream::infrared2);
		cv::imshow("infrared", infrared);
	}

	return 0;
}

Thank you so much.

I could get infrared image with R200 and SR300.
So problem is solved. Then I will close this issue.
Thanks good library.


WARNING (MainThread) [custom_components.ocpp] Unknown transaction detected with id=xxx

Version v0.4.33

Configuration
Logger: custom_components.ocpp
Source: custom_components/ocpp/api.py:898
Integration: Open Charge Point Protocol (OCPP) ([documentation](https://github.com/lbbrhzn/ocpp/blob/main/README.md), [issues](https://github.com/lbbrhzn/ocpp/issues))
First occurred: 20:37:49 (173 occurrences)
Last logged: 23:29:35

Unknown transaction detected with id=1662160391

Describe the bug
Unknown transaction detected with id=1662160391 in the log!
Charger is plug and charge. I don't use authorization.
Everything works perfectly but I keep getting this log message!
Debug log

2022-09-04 20:36:57.741 INFO (MainThread) [ocpp] CHHome-1: send [2,"41aafcac-da84-4a40-8660-a1d54fc1a55b","GetConfiguration",{"key":["SupportedFeatuCHrofiles"]}]
2022-09-04 20:36:57.783 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"41aafcac-da84-4a40-8660-a1d54fc1a55b",{"configurationKey":[{"key":"SupportedFeatuCHrofiles","readonly":true,"value":"Core,FirmwareManagement,Reservation,LocalAuthListManagement,RemoteTrigger,SmartCharging"}]}]
2022-09-04 20:36:57.786 INFO (MainThread) [ocpp] CHHome-1: send [2,"6971c0d1-2c1c-4179-bb92-71b9cb4a9e02","GetConfiguration",{"key":["NumberOfConnectors"]}]
2022-09-04 20:36:57.834 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"6971c0d1-2c1c-4179-bb92-71b9cb4a9e02",{"configurationKey":[{"key":"NumberOfConnectors","readonly":true,"value":"1"}]}]
2022-09-04 20:36:57.838 INFO (MainThread) [ocpp] CHHome-1: send [2,"833f1b36-2e35-47fc-b390-0b1333dbbc8b","ChangeAvailability",{"connectorId":0,"type":"Operative"}]
2022-09-04 20:36:58.076 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"833f1b36-2e35-47fc-b390-0b1333dbbc8b",{"status":"Accepted"}]
2022-09-04 20:36:58.078 INFO (MainThread) [ocpp] CHHome-1: send [2,"2e071d1c-5c67-476c-a047-93fc0c91c94e","GetConfiguration",{"key":["HeartbeatInterval"]}]
2022-09-04 20:36:58.116 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"2e071d1c-5c67-476c-a047-93fc0c91c94e",{"configurationKey":[{"key":"HeartbeatInterval","readonly":false,"value":"3600"}]}]
2022-09-04 20:36:58.117 INFO (MainThread) [ocpp] CHHome-1: send [2,"a2b82540-0fa2-4f87-a650-b280d1ee596b","GetConfiguration",{"key":["WebSocketPingInterval"]}]
2022-09-04 20:36:58.158 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"a2b82540-0fa2-4f87-a650-b280d1ee596b",{"configurationKey":[{"key":"WebSocketPingInterval","readonly":false,"value":"60"}]}]
2022-09-04 20:36:58.159 INFO (MainThread) [ocpp] CHHome-1: send [2,"ef0611b6-6bbc-41d8-a0b2-071d16aa7065","GetConfiguration",{"key":["MeterValuesSampledData"]}]
2022-09-04 20:36:58.198 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"ef0611b6-6bbc-41d8-a0b2-071d16aa7065",{"configurationKey":[{"key":"MeterValuesSampledData","readonly":false,"value":"Energy.Active.Import.Register,Power.Active.Import,Power.Factor,Current.Import,Current.Offered,Voltage,Frequency,Temperature"}]}]
2022-09-04 20:36:58.199 INFO (MainThread) [ocpp] CHHome-1: send [2,"4f2f130f-742a-448c-a24e-c2589470a02d","GetConfiguration",{"key":["MeterValueSampleInterval"]}]
2022-09-04 20:36:58.268 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"4f2f130f-742a-448c-a24e-c2589470a02d",{"configurationKey":[{"key":"MeterValueSampleInterval","readonly":false,"value":"60"}]}]
2022-09-04 20:36:58.269 INFO (MainThread) [ocpp] CHHome-1: send [2,"be19852b-e378-48e2-ac82-a91bb02f643d","GetConfiguration",{"key":["ClockAlignedDataInterval"]}]
2022-09-04 20:36:58.309 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"be19852b-e378-48e2-ac82-a91bb02f643d",{"configurationKey":[{"key":"ClockAlignedDataInterval","readonly":false,"value":"900"}]}]
2022-09-04 20:36:58.312 INFO (MainThread) [ocpp] CHHome-1: send [2,"3c9bb8cc-f8f4-4df9-8e22-5be836bcf90d","TriggerMessage",{"requestedMessage":"BootNotification"}]
2022-09-04 20:36:58.359 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"3c9bb8cc-f8f4-4df9-8e22-5be836bcf90d",{"status":"Accepted"}]
2022-09-04 20:36:58.361 INFO (MainThread) [ocpp] CHHome-1: send [2,"9f2b53b6-b6b8-4ba5-bdc1-51198f6bb64c","TriggerMessage",{"requestedMessage":"StatusNotification","connectorId":0}]
2022-09-04 20:36:58.399 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"9f2b53b6-b6b8-4ba5-bdc1-51198f6bb64c",{"status":"Accepted"}]
2022-09-04 20:36:58.401 INFO (MainThread) [ocpp] CHHome-1: send [2,"7e82cb39-9ec2-41a3-9de6-7afadf374263","TriggerMessage",{"requestedMessage":"StatusNotification","connectorId":1}]
2022-09-04 20:36:58.441 INFO (MainThread) [ocpp] CHHome-1: receive message [3,"7e82cb39-9ec2-41a3-9de6-7afadf374263",{"status":"Accepted"}]
2022-09-04 20:37:00.782 INFO (MainThread) [ocpp] CHHome-1: receive message [2,"16081","BootNotification",{"chargePointVendor":"Alfen BV","chargePointModel":"NG910-60023","chargePointSerialNumber":"ace0025893","chargeBoxSerialNumber":"CHHome-1","firmwareVersion":"5.8.0-4120"}]
2022-09-04 20:37:00.788 INFO (MainThread) [ocpp] CHHome-1: send [3,"16081",{"currentTime":"2022-09-04T18:37:00Z","interval":3600,"status":"Accepted"}]
2022-09-04 20:37:10.850 INFO (MainThread) [ocpp] CHHome-1: receive message [2,"16082","StatusNotification",{"connectorId":0,"errorCode":"NoError","status":"Available"}]
2022-09-04 20:37:10.855 INFO (MainThread) [ocpp] CHHome-1: send [3,"16082",{}]
2022-09-04 20:37:10.880 INFO (MainThread) [ocpp] CHHome-1: receive message [2,"16083","StatusNotification",{"connectorId":1,"errorCode":"NoError","status":"Available"}]
2022-09-04 20:37:10.880 INFO (MainThread) [ocpp] CHHome-1: send [3,"16083",{}]
2022-09-04 20:37:49.665 INFO (MainThread) [ocpp] CHHome-1: receive message [2,"16084","MeterValues",{"connectorId":1,"transactionId":1662160391,"meterValue":[{"timestamp":"2022-09-04T18:37:11Z","sampledValue":[{"value":"3058620.000","context":"Sample.Periodic","measurand":"Energy.Active.Import.Register","location":"Outlet","unit":"Wh"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L1"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L2"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L3"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Factor","location":"Outlet"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L1"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L2"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L3"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Offered","location":"Outlet","unit":"A"},{"value":"221.400","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L1-N"},{"value":"219.100","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L2-N"},{"value":"221.300","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L3-N"},{"value":"383.100","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L1-L2"},{"value":"383.000","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L2-L3"},{"value":"385.800","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L3-L1"},{"value":"50.050","context":"Sample.Periodic","measurand":"Frequency","location":"Outlet"},{"value":"43.000","context":"Sample.Periodic","measurand":"Temperature","location":"Body","unit":"Celsius"}]}]}]
2022-09-04 20:37:49.671 WARNING (MainThread) [custom_components.ocpp] Unknown transaction detected with id=1662160391
2022-09-04 20:37:49.674 INFO (MainThread) [ocpp] CHHome-1: send [3,"16084",{}]
2022-09-04 20:38:46.793 INFO (MainThread) [ocpp] CHHome-1: receive message [2,"16085","MeterValues",{"connectorId":1,"transactionId":1662160391,"meterValue":[{"timestamp":"2022-09-04T18:38:11Z","sampledValue":[{"value":"3058620.000","context":"Sample.Periodic","measurand":"Energy.Active.Import.Register","location":"Outlet","unit":"Wh"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L1"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L2"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L3"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Factor","location":"Outlet"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L1"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L2"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L3"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Offered","location":"Outlet","unit":"A"},{"value":"221.000","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L1-N"},{"value":"218.600","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L2-N"},{"value":"222.500","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L3-N"},{"value":"382.800","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L1-L2"},{"value":"383.500","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L2-L3"},{"value":"386.200","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L3-L1"},{"value":"50.050","context":"Sample.Periodic","measurand":"Frequency","location":"Outlet"},{"value":"43.125","context":"Sample.Periodic","measurand":"Temperature","location":"Body","unit":"Celsius"}]}]}]
2022-09-04 20:38:46.797 WARNING (MainThread) [custom_components.ocpp] Unknown transaction detected with id=1662160391
2022-09-04 20:38:46.798 INFO (MainThread) [ocpp] CHHome-1: send [3,"16085",{}]
2022-09-04 20:39:28.433 INFO (MainThread) [ocpp] CHHome-1: receive message [2,"16086","MeterValues",{"connectorId":1,"transactionId":1662160391,"meterValue":[{"timestamp":"2022-09-04T18:39:12Z","sampledValue":[{"value":"3058620.000","context":"Sample.Periodic","measurand":"Energy.Active.Import.Register","location":"Outlet","unit":"Wh"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L1"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L2"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Active.Import","location":"Outlet","unit":"W","phase":"L3"},{"value":"0.000","context":"Sample.Periodic","measurand":"Power.Factor","location":"Outlet"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L1"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L2"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Import","location":"Outlet","unit":"A","phase":"L3"},{"value":"0.000","context":"Sample.Periodic","measurand":"Current.Offered","location":"Outlet","unit":"A"},{"value":"220.900","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L1-N"},{"value":"219.200","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L2-N"},{"value":"222.400","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L3-N"},{"value":"382.800","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L1-L2"},{"value":"383.900","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L2-L3"},{"value":"386.100","context":"Sample.Periodic","measurand":"Voltage","location":"Outlet","unit":"V","phase":"L3-L1"},{"value":"50.050","context":"Sample.Periodic","measurand":"Frequency","location":"Outlet"},{"value":"43.125","context":"Sample.Periodic","measurand":"Temperature","location":"Body","unit":"Celsius"}]}]}]
2022-09-04 20:39:28.441 WARNING (MainThread) [custom_components.ocpp] Unknown transaction detected with id=1662160391

Possibly because you have two connectors, does it occur if you connect to connectorId:0 to charge?

I have 1 connector (Alfen Eve Single Pro-line)

Sorry I was getting confused with the two status notifications in the log. Id 0 represents the charger and not a connector. Your log does not show the startTransaction from the charger however:
[2,"422d87b9-2818-151e-232b-d8a079ff5091","StartTransaction",{"idTag":"ENX-AU21060165","timestamp":"2022-09-01T08:48:56Z","meterStart":1613328,"connectorId":1}]
the integration will then respond with the transactionId:
[3,"422d87b9-2818-151e-232b-d8a079ff5091",{"transactionId":1662022130,"idTagInfo":{"status":"Accepted"}}]
this Id is then used to validate the MeterValues messages


update meetups readme with latest naming conventions if changed

Please update https://github.com/cdfoundation/meetups/blob/master/README.md if naming conventions have changed.

complete


Feature/text normalization

I think the warning thing might be über-careful - shouldn't I just remove that?

Approved, @kshll6?

approved!


Prevent M4A files

Hello 👋
I'm using Tiddl to download files at the highest possible output. I have set the preference to "HI_RES_LOSSLESS". But I notice it starts downloading a lot of M4A files. Those files don't playwell on some devices. How can I make sure that it preferes FLAC over M4A?
Cheers,
Jaap

Hey, make sure every track you download are available in high or master quality on Tidal (as only high and master qualities are downloaded in flac) and if so then please use --verbose option and paste here the output of terminal.
If you want to convert tracks below high quality to flac, then set extension to flac with -e flac option!

The track that I'm finding this with is this one
https://tidal.com/browse/track/152989975
Below the output.
[ TIDDL ] main Namespace(input=['https://tidal.com/browse/track/152989975'], file_template=None, download_path=None, file_extension=None, quality=None, include_singles=False, save_options=False, input_file='', no_skip=False, silent=False, verbose=True, no_color=False) [ Config ] __init__ loaded {'download_path': './', 'track_quality': 'HI_RES_LOSSLESS', 'track_template': '{number} - {artist} - {title}', 'album_template': '{artist}/{album}/{number} - {artist} - {title}', 'playlist_template': 'Playlists/{PlaylistName}', 'file_extension': ''} [ Config ] update updating [ Config ] _save {'download_path': './', 'track_quality': 'HI_RES_LOSSLESS', 'track_template': '{number} - {artist} - {title}', 'album_template': '{artist}/{album}/{number} - {artist} - {title}', 'playlist_template': 'Playlists/{PlaylistName}', 'file_extension': ''} [ Config ] update updated [ TIDDL ] main token expires in 4 days [ TidalApi ] _request tracks/152989975 {'countryCode': 'NL'} [ TidalApi ] _request tracks/152989975/playbackinfo {'audioquality': 'HI_RES_LOSSLESS', 'playbackmode': 'STREAM', 'assetpresentation': 'FULL'} [ TIDDL ] 15 - Igor Levit - 6 Chorale Preludes, BV B 50_ Herzlich tut mich verlangen, Op. 122_10 :: Max Quality - 24 bit 96.0 kHz [ download ] downloadTrackStream mime_type: application/dash+xml [ download ] downloadTrackStream codecs: flac threaded download ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■ 100% [ download ] downloadTrackStream ('.//', '15 - Igor Levit - 6 Chorale Preludes, BV B 50_ Herzlich tut mich verlangen, Op. 122_10') [ download ] __init__ ('7690ffdb-37bb-42f9-84c3-49513a4ca123', 'https://resources.tidal.com/images/7690ffdb/37bb/42f9/84c3/49513a4ca123/1280x1280.jpg') [ download ] get got cover [ TIDDL ] track saved as .///15 - Igor Levit - 6 Chorale Preludes, BV B 50_ Herzlich tut mich verlangen, Op. 122_10.m4a
In Tidal it is mentioned as "MAX" but I would be expecting FLACs in that case.

The issue is that high quality tracks on Tidal are fragmented with mp4 extension and we need to save them as m4a file.
When we save the file as flac we get the mutagen.flac.FLACNoHeaderError exception.
This is solved by downloading tracks as m4a and then we convert them with ffmpeg to flac so we can set metadata.
I think that there is better solution to this problem but we probably need more knowledge about audio extensions or just to test different solutions.

@oskvr37 It was not working for me because I needed to install libvmaf. The error I got when running ffmpeg was this:
dyld[82984]: Library not loaded: @loader_path/../../../../opt/libvmaf/lib/libvmaf.1.dylib
  Referenced from: <D796CA17-8AEC-3511-B728-89EC20948570> /usr/local/Cellar/ffmpeg/6.0_1/bin/ffmpeg
  Reason: tried: '/usr/local/Cellar/ffmpeg/6.0_1/bin/../../../../opt/libvmaf/lib/libvmaf.1.dylib' (no such file), '/usr/local/lib/libvmaf.1.dylib' (no such file), '/usr/lib/libvmaf.1.dylib' (no such file, not in dyld cache)
Abort trap: 6

But that did not come through while running the Tiddl command. Because it simply said 'None'.

My workaround is a simple bash script converting all m4a files into flac, run in the download dir after each download.
#!/bin/bash
for f in *.m4a; do ffmpeg -i "$f" -f flac "${f%.m4a}.flac"; done
rm *.m4a

find . -type f -name "*.m4a" -print0 | xargs -0 -I "{}" bash -c 'ffmpeg -i "$1" -c:a flac "${1%.m4a}.flac" && rm "$1"' _ "{}"

This is a bit better as it scans all all the sub folders in your current working directory.

@teddybee-r Yes, you're right. Your version is superior :ok_hand: :smiley:
Essential poetry... Isn't it?...

@teddybee-r I would slightly refine it to avoid trying to transcode by ffpeg:
find . -type f -name "*.m4a" -print0 | xargs -0 -I "{}" bash -c 'ffmpeg -i "$1" -c:a copy "${1%.m4a}.flac" && rm "$1"' _ "{}"

Note that you still have unnessesary tags like encoder, major_brand, minor_version and compatible_brands in your resulting FLAC file then.

I have never looked at the source I just had issues with m4a in jellyfin. I don't know if everything is 100% flac so I just let it do its thing. The only difference was 0.1MB extra in the flac and I guess that are the extra tags - it is so fast that I did not mind it trying to transcode.
I use Picard for tagging albums. So I don't mind.
https://picard.musicbrainz.org/


Error in loading models

I tried to load "trees_202106190148_Adam_e4_redgreenblueinfrared_256_84_frames_weightmapTversky_MSE100_5weight_attUNet.h5" model and others too for testing models on my input data but there is a problem in loading. Lambda layer has unknown shape and it can't be loaded by "load_model"! when I try loading model I get below error:
"We could not automatically infer the shape of the Lambda's output. Please specify the output_shape argument for this Lambda layer.

Arguments received by Lambda.call():
  • args=(['<KerasTensor shape=(None, 32, 32, 1024), dtype=float32, sparse=False, name=keras_tensor_338>', '<KerasTensor shape=(None, 32, 32, 512), dtype=float32, sparse=False, name=keras_tensor_345>'],)
  • kwargs={'mask': ['None', 'None']}"

Hey,
I checked that this model could be loaded properly with the designated conda environment ([environment_trees_updated_basic.yml]). The error with Lambda layer is often related to incompatible tensorflow versions. Please make sure that the correct version is installed.


LINK-1363 | Prevent to reserve seats or signup is enrolment is not open

Description

Enrolment is closed if enrolment_start_time is defined and is in the future or enrolment_end_time is defined and is in the past
Show different warning message if enrolment is open but there is no available seats
Add reserved seats to available seats amount if there is already reservation in the session storage
Disable enrolment form also if there is no available places and seats reservation is not stored to session storage

PR for API implementation: https://github.com/City-of-Helsinki/linkedevents/pull/611
Closes
LINK-1363

Codecov Report

Merging #188 (423e271) into develop (7959832) will increase coverage by 0.25%.
The diff coverage is 100.00%.

@@             Coverage Diff             @@
##           develop     #188      +/-   ##
===========================================
+ Coverage    99.68%   99.94%   +0.25%
===========================================
  Files          500      500
  Lines         9252     9280      +28
  Branches      2004     2006       +2
===========================================
+ Hits          9223     9275      +52
+ Misses          29        5      -24

Impacted Files
Coverage Δ

src/domain/event/utils.ts
100.00% <ø> (+0.40%)
:arrow_up:

...ents/eventActionsDropdown/EventActionsDropdown.tsx
100.00% <ø> (ø)

src/domain/enrolment/CreateEnrolmentPage.tsx
100.00% <100.00%> (ø)

...c/domain/enrolment/enrolmentForm/EnrolmentForm.tsx
100.00% <100.00%> (ø)

...mentForm/availableSeatsText/AvailableSeatsText.tsx
100.00% <100.00%> (ø)

...cipantAmountSelector/ParticipantAmountSelector.tsx
100.00% <100.00%> (ø)

...olment/registrationWarning/RegistrationWarning.tsx
100.00% <100.00%> (ø)

src/domain/registration/utils.ts
100.00% <100.00%> (ø)

... and 3 files with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Error waiting for a debug connection: Bad state: No element Error launching application on V1936A.

Error waiting for a debug connection: Bad state: No element
Error launching application on V1936A.
flutter version
Flutter (Channel stable, v1.12.13+hotfix.9, on Microsoft Windows [Version 10.0.18363.778], locale zh-CN)
• Flutter version 1.12.13+hotfix.9 at G:\flutter
• Framework revision f139b11009 (5 weeks ago), 2020-03-30 13:57:30 -0700
• Engine revision af51afceb8
• Dart version 2.7.2
android 10
ied Android Studio 3.6.2
Please answer me

Real machine debugging
No problem with the virtual machine

Hi @309791679
could you please run flutter upgrade --force and
provide your flutter doctor -v ,
and your flutter run --verbose
Thank you

Without additional information we are unfortunately not sure how to resolve this issue.
We are therefore reluctantly going to close this bug for now.
Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.


standard css properties for react.d.ts

i tryed to add style attribute: style={{display: 'block'}}> but CSSProperties not contains 'display'.
As i understand, should populate this interface with snadard css properties?

This seems reasonable to me. However, changes should be made to both react.d.ts and react-global.d.ts.
@vsiao Do you know why CSSProperties is incomplete? Is there any reason we can't try to make it complete?

I didn't populate CSSProperties fully because... well, there's a lot of them. It doesn't have to be a complete definition to work (in the context of creating DOMElements), since all of these properties are optional anyway. @stepancar, can you explain why it is helpful for you to have the display property in CSSProperties? Are you getting any compilation errors?

I wonder if @stepancar is using the nightly build (TS 1.6) which has this. That could cause an error in this case,. With that in place, you would have to do style={<any>{display: 'block'}} I believe.

@vsiao, for example: We have
interface State{
     isClosed: boolean;
}

and in render function
render(){
     return

}

you'll catch typeError, beacause display isn' exists in CSSPropertis Type which has display  attribute.
I know, this is nor best approach to hide/display block in React - you can just add if-statment;
But this approach has a right to exist (i, sorry for my english)
I think, also max-height, min-height ... shoulde be contained in CSSProperties. I faced some cases when could not  do without javascript which calculate max-height.
If you try add max-height style - you'll catch typeError lilke with display.
@jbrantly  style={<any>{display: 'block'}} - looks little derty, and it's not work (i checked it using atom-typescript)

@stepancar Apologies, I just realized you're using JSX which doesn't have support for angle-bracket type assertion. Try style={{display: 'block'} as any}.

@jbrantly  thank you! It works.
but i think that we should still populate CSSProperties with display,max-height, min-height for best autocomplete and cssprop checking at compile stage.

I agree. A large point of that fix is to be able to catch typos and such (ex: style={{dislpay: 'block'}}). That obviously won't work unless we have largely complete definitions for style properties.

well... can I merge this PR? @pspeter3 @vsiao

It should at the very least have the same changes applied across the board before a merge. react.d.ts, react-addons.d.ts, and react-global.d.ts.

It looks fine to merge.

@jbrantly, hello! I added additional props to react.d.ts, react-global.d.ts
i think it might be merged

I've run into the issue @jbrantly just described with TS 1.6 where keys in object literals must match identifiers listed in interface properties.
Given the large number of possible properties, not accounting for vendor-specific properties, an option would be to add a generic index property to CSSProperties as a fallback. This would enable catching of incorrect types passed to numeric properties, but wouldn't catch typos in property names:
interface CSSProperties {
    flex: number;
    display: string;

    [index: string]: string | number;
}

An alternative would be to list all the standard properties from CSS 3 in CSSProperties and require users to create their own subclassing interfaces for additional properties. Thoughts?

@robertknight I think the right approach is to list all of the properties so that we get the benefits of TypeScript and the new freshness checking for catching typos. Otherwise we're throwing that benefit away. It's been on my list of things to-do for a while now though so... it's just a matter of someone getting the bandwidth to actually make the change.


EF or EF Core Projections?

Is there support for projections from Entity Framework IQueryable instances?

At this moment, this functionality is absent and I do not plan to add it in the near future. I will think about it after the basic functions work well enough.

@TorreyGarland support for projections will be added if you're still interested (issue #44)


How to use Audiences programmatically?

I'd like to use the Audiences feature, including ideally the unsubscribe footer, to programmatically send emails to a list using Next.js.

I'd like to add my +1 to this suggestion too. It would be great to be able to send broadcasts through the resend sdk using react templates and audience lists, just as we can with individual emails. Is this feature on a roadmap at all please?

+1
whole reason i was looking into resend was i thought it will be easy to send an email to an audience via an api call. turns out you can do it at all...


CPU Validator

Adds #2.
How does it work
The validator saves the state of the registers (including IP and flags) before and after the execution of the opcode pointed by IP.
At the same time, writes and reads are saved, with a maximum amount of 10 for each.
Usage
On both VirtualXT and 86Box:

--validator flag to specify the output path
--vstart to specify the start address of the validator (e.g. --vstart 0x00007C01)
--vend to specify the end address of the validator

Flags are still the same for the comparison tool (i.e. -virtualxt and -validation).
Output
In both emulators, the output of the validator is compressed using gzip, and formatted in the following way:
Opcode and extension

Opcode
Opcode extension

8 bits
8 bits

State before execution

IP
Flags
AX
CX
DX
BX
SP
BP
SI
DI
ES
CS
SS
DS

16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits

State after execution

IP
Flags
AX
CX
DX
BX
SP
BP
SI
DI
ES
CS
SS
DS

16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits
16 bits

Writes and reads

Write address 1
Write data 1
Write address 2
Write data 2
...
Write address 10
Write data 10

32 bits
8 bits
32 bits
8 bits
...
32 bits
8 bits

Read address 1
Read data 1
Read address 2
Read data 2
...
Read address 10
Read data 10

32 bits
8 bits
32 bits
8 bits
...
32 bits
8 bits

86Box setup
Download 86Box 3.1 from Github and patch it using the zip file patched-86Box-3.1 found under tools/validator.
Then, build it with VALIDATOR set to on.
86Box will ask for roms, you can download them here. After that, you can copy pcxtbios.bin from VirtualXT to roms/machines/ibmpc82 under the name pc102782.bin.
Finally, start 86Box and choose:

8088 in Machine type
[8088] IBM PC (1982) in Machine
640 KB of memory
[ISA] Acculogic XT IDE or [ISA] PC/XT XTIDE in HD Controller

86Box is now ready to launch with any disk.
Things to improve
As we're working with a completly different emulator and ecosystem, some things might be broken or incomplete. Therefore, I'm open to any suggestions/improvements, especially on the "comparison tool" side (which I think could be way better).

IssueHunt Summary

Referenced issues
This pull request has been submitted to:

#2: CPU Validator

Hi, thanks for your feedback.
Isn't maskUndefFlags already doing the elimination? Or did I misunderstood something?

No. Sorry. I missed that.
Some how I expected there to be a lot more undefined behavior. :)


Internet Explorer 11

Hello, matter js not working in IE11? Thank you

Closing this due to age and lack of information. If this is still a problem, please open a new issue with example code, version information, error messages and a description of the problem.

I've run into this same issue with IE11. I discovered it while using matter as part of phaserjs, but see the same error message when visiting the matter page: https://brm.io/matter-js/.

Good catch @jblume-chw, would you mind opening a new issue for that one? Thanks.


feat: add simeji/jid

#5390 simeji/jid: json incremental digger
$ aqua g -i simeji/jid

Thank you for your contribution!

Released. https://github.com/aquaproj/aqua-registry/releases/tag/v3.26.0


Ability to set a Global Volume

Objective
Adds a new resource to control a global volume.
Fixes #7690

Solution
Added a new resource to control global volume, this is then multiplied with an audio sources volume to get the output volume, individual audio sources can opt out of this my enabling the absolute_volume field in PlaybackSettings.

Changelog
Added

GlobalVolume a resource to control global volume (in prelude).
global_volume field to AudioPlugin or setting the initial value of GlobalVolume.
Volume enum that can be Relative or Absolute.
VolumeLevel struct for defining a volume level.

This also opens the opportunity to fix the issue in the decodable audio example being very loud by adding .insert_resource(GlobalVolume::new(0.2)) to it. Tested it and it works.

Changing the global volume should change the sounds already playing that have been set relative to it.

Agreed, but this may not be trivial. Docs would be fine for me as a start.

I think I would prefer an enum for the volume instead of having two fields, but I'm not completely sure on that.

This is nice :)

Enum for volume makes a lot of sense, I'll have a go at changing the volume of already playing sounds.

That looks perfect. Ideally we could document what the f32 means, or use a more sensible numeric type too. Negative volumes don't exactly make sense to me.

Is there a way in rust to have positive only floats?

Is there a way in rust to have positive only floats?

I would newtype here and use a constructor method.

This is what I have got so far
/// Defines the volume to play an audio source at.
pub enum Volume {
    /// A volume level relative to the global volume.
    Relative(VolumeLevel),
    /// A volume level that ignores the global volume.
    Absolute(VolumeLevel),
}

impl Default for Volume {
    fn default() -> Self {
        Self::Relative(VolumeLevel::default())
    }
}

/// not sure what to put here
pub struct VolumeLevel(f32);

impl Default for VolumeLevel {
    fn default() -> Self {
        Self(1.0)
    }
}

impl VolumeLevel {
    /// Create a new volume level.
    pub fn new(volume: f32) -> Self {
        debug_assert!(volume >= 0.0);
        Self(volume)
    }
}

But if feels very verbose to me, personally I think it's fine using an f32. Some thoughts on this would be great.

I've added the volume enum but using the newtype for the volume level feels too verbose imo. I also added the global volume as a field in the audio struct so you can set it using the .set() method on the plugin group.

Changing the global volume should change the sounds already playing that have been set relative to it.

Updating the volume for AudioSinks that have not been detached is easy, but I am unsure of how to update ones which have been detached (have no strong handle) so for now I will add message mentioning that only new sounds will be impacted.

Ideally we could document what the f32 means, or use a more sensible numeric type too. Negative volumes don't exactly make sense to me.

Still not quite happy with the use of VolumeLevel
It turns
.with_volume(0.75)

into
.with_volume(Volume::Relative(VolumeLevel::new(0.75)))

I personally think just using a f32 like this is fine, I think it's unlikely someone will give a negative value
.with_volume(Volume::Relative(0.75))

I'm going to remove VolumeLevel and and a doc letting people know it must be positive instead, lmk if you want me to bring VolumeLevel back

I'm glad to see this added. Merging now, we can refine later as needed.


how to build offline, namely without automatically downloading gtest & cereal?

Hi, I'm trying to build flashlight with CPU backend on Ubuntu 16.04. I have already installed cereal and gtest, and the working environment is offline. When I use "make -j4" command, the process simply stuck at git clone (obviously). So what modifications should I do to make the build process work? Thanks.

@feliiiiicity — note that we don't officially support an offline build right now (and these instructions may become deprecated in the future). If you want to make this work now, you can do the following:

Don't build tests (-DFL_BUILD_TESTS=OFF)
If you need or want to build tests, remove inclusion of BuildGoogleTest.cmake, and add find_package(GTest REQUIRED) in its place. You can remove adding GTest include dirs and replace it with GTEST_INCLUDE_DIRS , and change the lib link step to use GTEST_BOTH_LIBRARIES.
For Cereal, replacing inclusion of BuildCereal.cmake with find_package(Cereal REQUIRED) should be enough.


Lottie regression bug

This patch broke the lottie trimpath animations:
https://github.com/thorvg/thorvg/pull/1985
threads.json
sample2.json

@mgrudzinska


Change favicon location

Some readers stubbornly seek the favicon from the root of site rather than what is defined in the <head> metadata.
What do you think of moving favicon.ico to the root of the project?
It's just a very small detail.

Hmm, nah I think it is fine where it is, I don;t recall many people asking for it 😅
Like when looking at the config file you can get the address.
I will let it there for the theme, however anybody can feel free to add the favicon and put it anywhere they would want as long as they update the config file.

I agree! Tks!!


Automated Package Upgrade

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Add [SCAMMER] #malicious GC5B3F…A7LMLY

Address: GC5B3FRY3X33N4LRYWQLC4X6A4LQ63TWX7VHBFJWZJMV6JY6WGA7LMLY
Tags: malicious
Title: SCAMMER
Requested by @ripcurldrake

Stole my XLM from my Ledger cold wallet worth 3.4K

@ripcurldrake It is not possible for someone to steal from your cold wallet unless you had posted on line (google drive) or you bought it from someone other than the manufacturer.
What is your public key.  Real tech support will not ask you for these.

@ripcurldrake If you have new information for this issue please feel free to reopen this issue.
Looking Towards The Future With You,
Rob TheCryptoHobbyist


Windows package name

The vagrant windows package name was changed to include the machine architecture in version 1.9.5.  This change should generate the correct package names.

Should fix issue #73


GEOMESA-1161,GEOMESA-322 Z2 index to replace geohash index

Note: requires an sfcurve PR to be merged/released, and the sfcurve version in our pom bumped.
Signed-off-by: Emilio Lahr-Vivaz<EMAIL_ADDRESS>

So far its looking good. Gonna run some tests with cloud local just to verify. I'll also try to mix in an old schema or something

@jahhulbert-ccri thanks, back compatibility hasn't been very extensively tested

This built just fine for me with all tests passing.

I'm going to run a few update tests from various versions to this branch before merging. Once those are cleared then I'll do the merge. Might take a few days.

3a83b98373f2f160cee92cb13b1caabf4e514260


fix(ai-transformers): fix compat with LT 3.8.0

Summary
Fixes KAG-5232
Checklist

[x] The Pull Request has tests
[ ] A changelog file has been created under changelog/unreleased/kong N/A
[ ] There is a user-facing docs PR against https://github.com/Kong/docs.konghq.com - N/A

Issue reference
KAG-5232

@ADD-SP Sorry it is actually the same test as previously added during development, you see. I just add this OTHER new field into the same test :)


rootless setup with home-manager fails

Running NixOS 23.11, with home-manager.
The following additions to home-manager work fine:
    imports = [
      nix-snapshotter.homeModules.default
    ];
    nixpkgs.overlays = [ nix-snapshotter.overlays.default ];
    virtualisation.containerd.rootless = {
      enable = true;
      nixSnapshotterIntegration = true;
    };

However, when I attempt the final change (and nixos-rebuild switch):
    services.nix-snapshotter.rootless = {
      enable = true;
    };

I get the error error: nix-snapshotter cannot be found in pkgs
I've tried this both with and without flakes enabled at the nixos level, and the error is the same.
Curiously, removing the problematic final change above, and adding home.packages = with pkgs; [ nix-snapshotter ]  does not give an error. So clearly pkgs is being correctly extended with nix-snapshotter, but for some reason it's not appearing for services.nix-snapshotter.rootless.
Any thoughts?

That's amazing sleuthing there - you're absolutely right - I have useGlobalPkgs = true. Thank you for your time and help.
As you suggest, by adding the imports and overlays to nixos, I've been able to make it all happy.
Is there any real difference to enabling these features at the nixos level rather than home level? I'm thinking in terms of users that can access the services, or the users under which the services run etc etc - any real difference in security provided?
Currently, in order to keep the service only defined in my home, I have the imports and overlays at nixos level, and then the imports and services at home level. This does appear to work, but it's certainly not something you've suggested in the docs, and I'm wondering whether there's any real advantage to this anyway?

I don’t think you need the NixOS import, only NixOS overlay and Home Manager import & service enabled.

You are absolutely right.
Many thanks for your advice.


FSharp.Data.Npgsql retry functionality and related enhancements.

This PR contains the following enhancements courtesy of FutureLab Software Company -

Add optional type parameters to the NgpsqlConnection<> type provider to configure automatic retrying of queries in the event of NpgsqlException errors, up to N retries, with X milliseconds' delay between retries
Add the same type parameters to the NpgsqlConnection.CreateCommand<> type provider to allow users to enable or disable automatic retrying for individual queries
Retries should not abort open ambient transactions, if any. If possible: retries should check if there are open ambient transactions, and if they have been aborted, they should skip any further retries and fail immediately.
If all retries fail, an AggregateException should be thrown, wrapping all the individual errors encountered during the retries.
When a query is retried, the NpgsqlConnection<> type provider should emit an event that clients can subscribe to in order to log the retry attempt
Add an optional boolean type parameter to the NgpsqlConnection<> type provider. If enabled, any exceptions will be caught and the returned type 'T will be wrapped as a Result<'T, exn>

Why would you want to have this baked in the library rather than using something like Polly on your end?

Here's the explanation I received upon receiving this task -

Connection resiliency.
We use managed Azure PostgreSQL and sometimes, due to either network connection or performance / misconfiguration problems (connection pool exhausted, etc.), our SQL queries run into various kind of transient errors, often SocketExceptions.
All but a few of our queries are idempotent (we use UUID primary keys and ON CONFLICT clauses), so we would like to be able to set a global option to retry those queries in the event of transient errors, instead of having to wait for the entire job to be retried.
Fortunately, Npgsql already distinguishes between errors in the query execution (PostgresException), errors in the type mapping (usually InvalidOperationException) and transient connection errors, which fall under NpgsqlException:
Wrap connection exceptions with NpgsqlException · Issue #2495 · npgsql/npgsql (github.com)
EFCore, for example, uses an optional EnableRetryOnFailure flag that automatically retries queries in the event of transient exceptions. Our old product used raw ADO.NET and was also able to implement automatic retries at the lower level
Getting sporadic SocketExceptions/ExtendedSocketExceptions / Connection Refused using Docker · Issue #619 · npgsql/efcore.pg (github.com)
Connection Resiliency - EF Core | Microsoft Docs
Unfortunately, the library FSharp.Data.Npgsql, being a type provider, generates different CreateCommand types for each query, with different AsyncExecute() methods, so as far as I can tell it's not possible to create e.g. an extension member AsyncExecuteWithRetry() that applies to all queries.
Right now, we have a generic Async.retry wrapper that we manually sprinkle on critical queries, but that's not optimal since connections errors can happen anywhere.

If further explanation would be helpful, I'll ping the gentlemen who gave me the requirements (he has a link to this PR, tho it's late where he is so I don't think he's seen it yet).

Why would you want to have this baked in the library rather than using something like Polly on your end? True, you have to wrap every command in a policy, but the configuration options are so much more flexible.

This was indeed our initial approach to the problem. We found it to be suboptimal and frustrating pretty quickly because it was not possible to automatically ensure usage of the wrapper, especially for non-query commands where the result is thrown away.
While looking for alternative solutions, I noticed that having a built-in retry policy for transient errors was a pretty standard feature among .NET database access libraries, e.g.:

https://docs.microsoft.com/en-us/ef/core/miscellaneous/connection-resiliency

https://docs.microsoft.com/en-us/dotnet/standard/data/sqlite/database-errors#locking-retries-and-timeouts

https://www.npgsql.org/efcore/misc/other.html#execution-strategy

https://docs.microsoft.com/en-us/azure/azure-sql/database/troubleshoot-common-connectivity-issues#net-sqlconnection-parameters-for-connection-retry

https://docs.mongodb.com/manual/core/retryable-writes/

We decided that contributing the feature to the library would be less work, more reliable, and less/better code than wrapping several hundred database connections + forever keeping an eye out for unsafe queries in code reviews. It would also be a non-breaking change that could be useful to other users of the library, should you choose to accept the PR.
Granted, you make a strong point that manual wrapping with a dedicated library offers more flexibility.
However, at the low level of individual database queries, I think it's OK to stick to only handling simple transient errors (as the above libraries do). Strategies such as delayed retrying, backpressure, caching etc. IMO benefit from being aware of the higher level context (e.g. sending user notifications, coordinating between multiple clients, etc.). In our case we use Hangfire to define such strategies and monitor them via dashboard, because, for example, some ETL jobs are more stressful than others and should not be queued carelessly, but it's not individual database queries that risk exhausting the DB's resources.

@kerams, since your fork is now effectively the master branch, what do you think of this PR? If I updated it to merge non-breakingly with the current master, would you be willing to merge it?
We've been using it in prod for several months now without issue, but I'd like to keep up with future library updates without maintaining a fork if possible.

your fork is now effectively the master branch

Not quite. It's true that my fork (or, to be precise, the cloned repository) was merged here in its entirety a couple of months ago, but we have sinced diverged a bit; there's even a separate Nuget package. I think I would not mind having this feature over there (if you were to switch), but after a cursory look at the PR, I do have a couple of issues with the implementation.

I'd be OK with switching. There's a feature I'd been working on (NodaTime integration) that might be easier as a breaking change in a private fork, but it's not critical by any means and I'd rather get rid of the fork instead.
Let me know which issues you would like to see addressed, thanks!


Documentation for the API and the FastAPI

The (Python) API and the REST API (with FastAPI) could be documented.
They also need to evolve.

REST API Documentation
Overview
This REST API, built with FastAPI, provides endpoints to manage system resources, user environments, and testbed nodes.
Endpoints
Resource Management
Get Resource List

URL: /get_resource_list
Method: POST
Description: Retrieves the list of available resources.
Responses:

200 OK: Returns the resource list.
500 Internal Server Error: Failed to get resource list.

User Environment Management
Destroy User Environment (VM)

URL: /destroy_env_vm
Method: POST
Description: Destroys a user environment (VM).
Request Body:

vm_name: Name of the VM.
macvlan_interface: MACVLAN interface.

Responses:

200 OK: {"status": "success"}
500 Internal Server Error: Failed to destroy VM environment.

Create User Environment (VM)

URL: /create_user_env_vm
Method: POST
Description: Creates a user environment (VM).
Request Body:

ubuntu_version: Version of Ubuntu.
vm_name: Name of the VM.
root_size: Root size.
user_info: User information object containing user-specific details.

Responses:

200 OK: {"status": "User Env Created"}
500 Internal Server Error: Failed to create VM environment.

User Management
Create User

URL: /create_user
Method: POST
Description: Creates a new user.
Request Body:

user_name: Name of the user.
user_network_id: Network ID of the user.

Responses:

200 OK: {"status": "User Created"}
500 Internal Server Error: Failed to create user.

Clear Active Users

URL: /clear_active_users
Method: POST
Description: Clears the list of active users.
Responses:

200 OK: Active users list cleared.
500 Internal Server Error: Failed to clear active users list.

Get User Info

URL: /get_user_info
Method: POST
Description: Retrieves user information.
Request Body:

user_name: Name of the user.
user_network_id: Network ID of the user.

Responses:

200 OK: User information.
500 Internal Server Error: Failed to get user information.

Testbed Management
Reset Testbed

URL: /testbed_reset
Method: POST
Description: Resets the testbed by turning off all nodes.
Responses:

200 OK: Testbed reset.
500 Internal Server Error: Failed to reset testbed.

Turn On All Nodes

URL: /turn_on_all
Method: POST
Description: Turns on all nodes.
Responses:

200 OK: All nodes turned on.
500 Internal Server Error: Failed to turn on all nodes.

This documentation provides a comprehensive overview of the REST API endpoints, request and response structures, and the data models used.

i have added a new branch  test-server  with  method to turn on/off each node .


alsa: Treat -22 (EINVAL) as an expected error

Hi! :wave:
While testing this library on Linux (x86_64, Ubuntu 18.04, Alsa k4.15.0-43-generic) I found that the enumerate example panics with the following stacktrace:
<snip>
ALSA lib pcm_route.c:867:(find_matching_chmap) Found no matching channel map
ALSA lib pcm_dmix.c:990:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
Listing device: 13. "dmix:CARD=PCH,DEV=0"
ALSA lib pcm_dmix.c:990:(snd_pcm_dmix_open) The dmix plugin supports only playback stream
thread 'main' panicked at 'device not available: "Invalid argument"', libcore/result.rs:1009:5
stack backtrace:
   0: std::sys::unix::backtrace::tracing::imp::unwind_backtrace
             at libstd/sys/unix/backtrace/tracing/gcc_s.rs:49
   1: std::sys_common::backtrace::print
             at libstd/sys_common/backtrace.rs:71
             at libstd/sys_common/backtrace.rs:59
   2: std::panicking::default_hook::{{closure}}
             at libstd/panicking.rs:211
   3: std::panicking::default_hook
             at libstd/panicking.rs:227
   4: std::panicking::rust_panic_with_hook
             at libstd/panicking.rs:476
   5: std::panicking::continue_panic_fmt
             at libstd/panicking.rs:390
   6: rust_begin_unwind
             at libstd/panicking.rs:325
   7: core::panicking::panic_fmt
             at libcore/panicking.rs:77
   8: core::result::unwrap_failed
             at libcore/macros.rs:26
   9: <core::result::Result<T, E>>::expect
             at libcore/result.rs:835
  10: cpal::cpal_impl::Device::supported_formats
             at /home/rob/dev/rust/cpal/src/alsa/mod.rs:95
  11: cpal::cpal_impl::Device::default_format
             at /home/rob/dev/rust/cpal/src/alsa/mod.rs:270
  12: cpal::cpal_impl::Device::default_input_format
             at /home/rob/dev/rust/cpal/src/alsa/mod.rs:296
  13: cpal::Device::default_input_format
             at /home/rob/dev/rust/cpal/src/lib.rs:388
  14: portaudio_test::main
             at src/main.rs:18
  15: std::rt::lang_start::{{closure}}
             at libstd/rt.rs:74
  16: std::panicking::try::do_call
             at libstd/rt.rs:59
             at libstd/panicking.rs:310
  17: __rust_maybe_catch_panic
             at libpanic_unwind/lib.rs:102
  18: std::rt::lang_start_internal
             at libstd/panicking.rs:289
             at libstd/panic.rs:392
             at libstd/rt.rs:58
  19: std::rt::lang_start
             at libstd/rt.rs:74
  20: main
  21: __libc_start_main
  22: _start

I believe this is caused by this call to the ALSA API returning -22 (EINVAL) for a dmix playback device when it is opened with alsa::SND_PCM_STREAM_CAPTURE.
(It likely also returns the same for a capture device opened with alsa::SND_PCM_STREAM_PLAYBACK but I haven't confirmed yet.)
I believe that the library shouldn't generate a panic in this case. I've attached a PR with a simple fix. My questions are:

is it too broad to consider EINVAL as an expected error here? In other words, are there other ways to make Alsa return this value which we wouldn't necessarily expect to be handled like this?
should we also add the same logic here and here?

:pray:

Just seen https://github.com/tomaka/cpal/pull/248, I guess there is some crossover here :see_no_evil:


Concerning units: which is the "display" and which is the UCUM value?

I believe "unit" would be the laboratory's own units and "code" the UCUM value?
Thank you for clarifying!

Unit is the display value, code contains the UCUM unit.


connection lost 100%

I face a problem of seeking to the next item of the internet connection is 100% lost I debug it and I found AVPlayerItemDidPlayToEndTime notification get called and the currntItem changed although I set
player.maximumRetryCount = 100
@delannoyk  could you help me

I found the problem here


Youtube link goes to application architecture video #usability #starwest

Go to http://allready-test.azurewebsites.net/ and log in as<EMAIL_ADDRESS>Scroll to the bottom of the page.
Click on the youtube button.

Expected: A youtube video explaining either this particular feature or a list of videos explaining all the features appears.
Actual: YouTube page https://www.youtube.com/watch?v=BgV9jUJduwE&index=3&list=PLReL099Y5nRfJCkJtGFHZlVCvx2t8OWdA opens.
The text description for this link is:
"In this episode you'll meet our team and learn all about the "AllReady" project and why we chose to build it. We'll explore the application architecture and how our team collaborated using Visual Studio Online."
This appears to be inappropriate compared to the other links and also not useful.

@BillWagner - Any plans to provide a video for this? Or should we hide this link for now?

If anything I would think we would want to link to the HTBox YouTube channel from this link since the other social icons are linking to the HTBox social media pages.

@dchristensen Agreed! :-)


workaround for file with variable and dimension having same name

Adding a variable that's not a 1d "dimension coordinate" with the same name as a dimension is an error. This makes sense. However, if I have a .nc file that has such a variable, is there any workaround to get the badly-named variable into xarray short of altering the .nc file or loading it separately with netCDF4? I.e. to make the following work somehow
import xarray as xr
import netCDF4

f = netCDF4.Dataset()
f = netCDF4.Dataset("test.nc", "w")
f.createDimension("x", 2)
f.createDimension("y", 3)
f["y"] = np.ones([2,3])
f["y"][...] = 1.0
f.close()

ds = xr.open_dataset('test.nc')

rather than getting the current error MissingDimensionsError: 'y' has more than 1-dimension and the same name as one of its dimensions ('x', 'y'). xarray disallows such variables because they conflict with the coordinates used to label dimensions.
I think it might be nice to have something like a rename_vars argument to open_dataset(). Similar to how drop_vars ignores a list of variables, rename_vars could rename a dict of variables so the example above could do
ds = xr.open_dataset("test.nc", rename_vars={"y": "y_not_dimension"})

and get a Dataset with a dimension "y" and a variable "y_not_dimension".

Is there any news on that topic? Has something being implemented already, to solve that issue? I'm wondering if roundtripping might be possible at all. As those files are valid nc-files, shouldn't xarray be capable of handling them?

I didn't find any solution in xarray - I think I ended up just dropping the conflicting variable...

Thanks @johnomotani me neither. I wonder if xarray could just invent the same as netcdf4 did, prepending the variables internally with some prefix. But this might only get confusing.

Closing as  dupe of #2233. This should be fixed by the explicit indexes refactor.


making components isolated by default

Hi,
With the current trend of simplifications attempts, here is another one. :wink: It might help to:

make cleaner components
simplify ractive's code

Currently, Ractive components are "non-isolated" by default. In other words, the component's template can access data defined somewhere else outside of it. I think it's a bad default, and would even go further, to make all components isolated. Always.
It's also trivial to transform a non-isolated component into an isolated one: simply provide the data as argument. There is no excuse for not doing so IMHO. This would make cleaner reusable components and simplify both the resolution process and the code. ...and it's probably one of the easier features to get rid off.

simplify ractive's code

I'm currently doing some experiments to simplify it 😉. Polyfill removals, moving common code together, simplifying directory structure and stuff. But I get distracted when I see interesting code. 😁
Actually, there's more at stake than just data when it comes to isolation. Adaptor resolution, for instance, climbs up to ancestors in search for adaptors but is controlled by isolation. Not sure what else is.
But, I'm for permanently isolated components. Much more explicit, less magic. 👍

It depends in what context one designs and uses the components.
I find  it very useful in some senarios for all components to interact with the global scope freely.
I have components that use all sorts of different keypaths that transforming them into isolated ones would be a huge pain.
I also of course have reusable components that are isolated and all data is passed explicitly.
I think important is to retain the existing behavior when setting isolated false, even if the default is changed to true. Maybe add a global default option?

@kouts can you show us such an example?

Well I unfortunately I cannot share code, but  image components as sections of different screen layouts that have common data coming from the backend.

Well, simply adding an attribute <component mydata="{{...}}"> would solve it. In doubt, you could even pass the root to forward all data.

I strongly disagree with this suggestion. I rather have it none isolated by default and using this. is perfectly fine for accessing that contexts data without going up the tree. Readability is the added benefit. I do not have a single component where I specifically ask for isolation.

To play devil's advocate, every one of my components is isolated because it forces me to be explicit with where data is coming from — there are less "gotchas" when a non-specific keypath has a naming conflict with a parent keypath you forgot about.
Although, my opinion is that we should only consider this change if @evs-chris thinks there is a sizable benefit and reduction in complexity/code.

Implicit mappings require a bit of extra code. The real nastiness is unresolved references with implicit mappings. If the keypath doesn't exist in the component or the parent and the mapping (or just data if on the component) is expected to pop into existence when the keypath appears on either, then you have a big confusing ball of wtf. I think unresolved implicit mappings have died as of 0.7, though. I would dearly love to remove the unresolved resolution process entirely, meaning that if there is no matching keypath when trying to resolve, even an ambiguous one, then you give up and use the current context rather than creating a bunch of watchers that sit around waiting for a keypath to appear at some point in the future on any model between root and the current context hierarchy.
So, I can see where implicit mappings can be handy, and I have no problem with their existence. I think they should probably be opt-in rather than opt-out though, as even if you know what you're doing they can bite pretty hard if something seemingly minor changes in your data or you don't have lifecycle events setting up your data precisely at the right point.

Also note that regardless of the outcome here, you can already and will still be able to set an isolation level for any inheritance hierarchy starting with the Ractive prototype e.g. Ractive.defaults.isolated = true, const Base = Ractive.extend({ isolated: false });, and const SomeView = Base.extend({ isolated: true });. There anything extending Ractive is isolated by default, anything extending Base is non-isolated by default, and anything extending SomeView is isolated by default.

@evs-chris Thanks for the tip.
Despite the comments, I keep to my opinion that isolated components should be the default. Why? Because it's safer (and cleaner IMHO).
Non-isolated components can just get screwed up if you have something in your instance data and in the component template sharing the same name. They are by essence non-reusable components, since they are tailored to the instance's data, not through data provided as arguments.
I understand that people still find use in non-isolated components, to represent specific areas of their custom UI or so. However, I still think the safe, reusable, dumb-proof components should be the default. Releasing that safety to "look outside the component's scope" should be explicitly set IMHO, not the other way round.

Great, thanks, I think it's a wise decision in the long term. I hope though it won't stir much trouble because of the sudden change.


Spyder unresponsive, requires forced quit (OS X)

Description of your problem
What steps will reproduce the problem?

Open spyder 3.0.0beta4 (anaconda installation on OS X 10.11.5)
Start using the console
Stop input for the machine so that the screensaver/lockout occurs
Upon login the Spyder console is unresponsive and I get a rainbow spinning wheel of death
The only option is to terminate the inactive session (force quit on OS X)

Versions and main components

Spyder Version: 3.0.0beta4
Python Version: Python 2.7.11 |Continuum Analytics, Inc.| (default, Dec  6 2015, 18:57:58)
Operating system: OS X 10.11.5

Dependencies
jedi >=0.8.1     :  0.9.0 (OK)
matplotlib >=1.0 :  1.4.3 (OK)
nbconvert >=4.0  :  4.2.0 (OK)
numpy >=1.7      :  1.9.2 (OK)
pandas >=0.13.1  :  None (NOK)
pep8 >=0.6       :  1.7.0 (OK)
psutil >=0.3     :  4.3.0 (OK)
pyflakes >=0.5.0 :  1.2.3 (OK)
pygments >=2.0   :  2.1.3 (OK)
qtconsole >=4.2.0:  4.2.1 (OK)
rope >=0.9.4     :  0.9.4 (OK)
sphinx >=0.6.6   :  1.4.1 (OK)
sympy >=0.7.3    :  None (NOK)
PyQt = 5.6
Qt = 5.6.0

I have experienced the exact same issue repeatedly. Something I can add is that when I'm using matplotlib, there is an extra icon that shows up in the dock (just named "python") which is where the figure windows go. When I checked thismorning after sleeping the computer overnight, I had the spinning wheel issue, but I also had three instances of the matplotlib icon in the dock for some reason.

This was supposedly fixed in beta4, but that doesn't seem to be the case.
Something you can do to help us solve this problem is to open Spyder from a terminal, but not as a background process, i.e. as
spyder

instead of
spyder &

Then when the freeze occurs, you need to press Ctrl+C in the terminal. This should generate a traceback in Spyder's internal console, which you can copy and paste here.

This is the traceback after I press Ctrl+C, but due to the IDE frozen, I can not scroll up, so I just took a screenshot here:

@blink1073, could you take a look at this one? This is the same problem as before :-)

I got exactly the same traceback, using 3.0.0b4
Same deal, spinning wheel meant I couldn't scroll or copy/paste the traceback.
Also, I got this error in the terminal after the first ctrl-c
^CJul 24 18:43:24  python[92786] <Warning>: void CGSUpdateManager::log() const: conn 0x31c9f: spurious update.

I am unable to reproduce this from either the latest master or v3.0.0b4.  I can hit Ctrl+C just fine in the terminal when run as bootstrap.py or using the spyder command, and a forced sleep/wake up has no effect.  I am using Python 3.4.5 anaconda on OSX 10.11.6.  My pyzmq is v15.3.0.

Also tried with Python 2.7.11.  @ccordoba12, can you reproduce?

My experience is that this behaviour takes a bit of time to kick in. If you can't reproduce from a sleep/wake, my suggestion would be to leave spyder running overnight in the background and check it in the morning. My reproducible steps are:

Open spyder
sleep computer overnight
wake computer in morning
spinning wheel on spyder, if run from terminal, ctrl-c in terminal produces the traceback above in the internal console window in spyder, and then the spinning wheel comes back.

I'm running 3.0.0b4 with python 3.5.2 and ipython 4.2.0 (latest anaconda update) on OSX 10.11.5

Thanks @Keou0007, I'll try that tonight.

Hey guys, could you update to Spyder master and try again? We just merged pull request #3325, which could help to solve this problem.
Thanks ;-)

I ran it overnight with #3325 applied.  The program was still responsive, but the introspection itself was not working, and repeatedly printing the message below.   I'm not yet sure what to do about it.
Resource temporarily unavailable
Errored rope
b''
b''
Resource temporarily unavailable
Errored jedi
b''
b''
Resource temporarily unavailable
Errored fallback
b''
b''

I'm on beta 4, installed via conda. I can't seem to find a way to install the github master through conda. Am I missing something?

Hi @Keou0007, conda is for released bundles only.  Using a git checkout is an entirely different process.   You git clone this repository, then run python bootstrap.py from the repository directory to run that version of spyder.

I figured it would be something like that, thanks. Done it now. I'll leave it overnight and see what happens.

I tried to launch spyder directly in terminal. Sometime it gave me
QNSView mouseDragged: Internal mouse button tracking invalid (missing Qt::LeftButton)

That's unimportant and not relevant to this issue.

all right, I will keep tracking it.

Could anyone else confirm that this issue is fixed in master?

I can't sure. Because some lags happened when I launched it within the anaconda navigator, but not in terminal.

I was experiencing this bug on beta3.
Got beta4 yesterday, and it seems to be fine now :)

I have left the master overnight and come back to it responsive. This is an obvious improvement over beta 4, BUT I've had problems loading scipy with the master, so I haven't been able to do any actual work with it, just open it and let it sit. As such, I'd be hesitant to say for certain that it's fixed, incase it is something else I usually load up (scipy, Numpy, matplotlib, seaborn, etc) that's also causing the issue.

BUT I've had problems loading scipy with the master

Please open a new issue about this.

I have left the master overnight and come back to it responsive.

Given this confirmation (besides the one from @blink1073), I consider this issue solved.

The behavior I'm seeing is that the introspection can fail, but it is no longer bringing down the application.  At least you can save state and restart to get introspection back. I'll dig some more to see if I can eke out more stability.

Thanks @blink1073! I hope you can find time to work on this soon because I'm thinking to release beta5 after you solve the bug about introspection not working on Mac after resumes (I can confirm this is not a problem on Windows and Linux).
There are already important issues already solved in master (e.g. profiler is missing in beta4) that deserve a new beta :-)

are you sure that it is an error  ? It seems to me more like a warning

I've got a similar one while syncing  a digibyte-qt on my mac  :
DigiByte-Qt[86726] : void CGSUpdateManager::log() const: conn 0x1020b: spurious update


Improve API documentation of table components

Pull Request
🤨 Rationale
Ongoing efforts towards #824. This PR covers the table and its columns.
👩💻 Implementation
Mostly following established patterns. Some interesting notes:

For the Table Column Configuration doc, we had divided the documentation into separate targeted stories. I decided these were useful but we also should have a single table describing the whole API of a column. I created the latter under the API section and moved the targeted stories to an Examples section. Let me know if it feels right!
The above resulted in a renamed story which appears as a Chromatic diff.

🧪 Testing
Interacting with the built Storybook.
✅ Checklist

[x] I have updated the project documentation to reflect my changes or determined no changes are needed.

@m-akinc Here's another round of API docs for you to buddy. Thanks!

Bypassing reviewer policy due to OOO.


bug: empty apisixupstream can be apply but it cause panic

Issue description
When create an empty apisixupstream, ingress-controller panic
Environment

your apisix-ingress-controller version 1.3.0
your Kubernetes cluster version 1.18.20

Minimal test code / Steps to reproduce the issue
apisixupstream.yaml
apiVersion: apisix.apache.org/v1
kind: ApisixUpstream
metadata:
  name: whatEverSameAsTargetService
  namespace: whatEverSameAsTargetService

kubectl apply -f apisixupstream.yaml ———created
kubectl describe apisixupstream -n whatEverSameAsTargetService whatEverSameAsTargetService
Events:
  Type    Reason           Age    From           Message
  ----    ------           ----   ----           -------
  Normal  ResourcesSynced  4m22s  ApisixIngress  ApisixIngress synced successfully

What's the actual result? (including assertion message & call stack if applicable)
apisxi-ingress-controller panic, output:
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x40 pc=0x17e5223]

goroutine 347 [running]:
github.com/apache/apisix-ingress-controller/pkg/ingress.(*Controller).syncEndpoint(0xc0003ea6c0, 0x1fdabe0, 0xc00003dfc0, 0x1fc4520, 0xc000414220, 0x0, 0x0)
	/build/controller/pkg/ingress/controller.go:556 +0x223
github.com/apache/apisix-ingress-controller/pkg/ingress.(*endpointsController).sync(...)
	/build/controller/pkg/ingress/endpoint.go:87
github.com/apache/apisix-ingress-controller/pkg/ingress.(*endpointsController).run.func1()
	/build/controller/pkg/ingress/endpoint.go:72 +0x92
created by github.com/apache/apisix-ingress-controller/pkg/ingress.(*endpointsController).run
	/build/controller/pkg/ingress/endpoint.go:79 +0x284

What's the expected result?
Maybe create apisixupstream failed?(validate failed)

Please provide a reproducible example.

I used an empty apisixupstream for testing, but no panic occurred.
➜  ~ kubectl -n foo get au -oyaml
apiVersion: v1
items:
- apiVersion: apisix.apache.org/v1
  kind: ApisixUpstream
  metadata:
    annotations:
      kubectl.kubernetes.io/last-applied-configuration: |
        {"apiVersion":"apisix.apache.org/v1","kind":"ApisixUpstream","metadata":{"annotations":{},"name":"foo","namespace":"foo"}}
    creationTimestamp: "2021-11-03T09:33:38Z"
    generation: 1
    name: foo
    namespace: foo
    resourceVersion: "9746"
    uid: 6fad05a4-4cc1-4108-9ea1-f33df2c06239
kind: List
metadata:
  resourceVersion: ""
  selfLink: ""
➜  ~ kubectl -n foo describe au foo
Name:         foo
Namespace:    foo
Labels:       <none>
Annotations:  <none>
API Version:  apisix.apache.org/v1
Kind:         ApisixUpstream
Metadata:
  Creation Timestamp:  2021-11-03T09:33:38Z
  Generation:          1
  Managed Fields:
    API Version:  apisix.apache.org/v1
    Fields Type:  FieldsV1
    fieldsV1:
      f:metadata:
        f:annotations:
          .:
          f:kubectl.kubernetes.io/last-applied-configuration:
    Manager:         kubectl-client-side-apply
    Operation:       Update
    Time:            2021-11-03T09:33:38Z
  Resource Version:  9746
  UID:               6fad05a4-4cc1-4108-9ea1-f33df2c06239
Events:              <none>

I think we should add validation in apisixUpstream, the spec should not be empty.

We can use #790  for tracking, I will close this issue.


WhisperSTTService creates TranscriptionFrame which is not compatible with LLM

I think I am facing the same issue as described in https://github.com/pipecat-ai/pipecat/issues/197.
It seems that the WhisperSTTService only sends out TranscriptionFrame and not LLMMessagesFrame which would be needed for the LLM or LLMUserResponseAggregator. Is my assumption right?
What I did is to I created a custom FrameProcessor to convert TranscriptionFrame into LLMMessagesFrame. I have no idea if this is the right way to do it. Could you please give me feedback on how you actually should use Whisper and LocalTransport with LLM's?
class ConvertSTTToLLM(FrameProcessor):

    async def process_frame(self, frame: Frame, direction: FrameDirection):
        await super().process_frame(frame, direction)

        if isinstance(frame, TranscriptionFrame):
            llm_frame = LLMMessagesFrame([
                {
                    "role": "user",
                    "content": frame.text,
                }
            ])
            await self.push_frame(llm_frame, direction)

        await self.push_frame(frame, direction)

And here the Pipeline:
stt = WhisperSTTService(aggregate_sentences=True)
llm = OLLamaLLMService(model="llama3.1")

stt_to_llm = ConvertSTTToLLM()

pipeline = Pipeline([
    tk_transport.input(),
    stt,
    stt_to_llm,
    tma_in,
    llm,
    tma_out,
    # and so on
])

I guess I got what was happening: The WhisperSTTService is not sending UserStartedSpeakingFrame and UserStoppedSpeakingFrame. Only the VAD is sending these messages and as long as it is not activated, LLMUserResponseAggregator won't combine the messages to an LLM message.


MINIFICPP-1506 - Apply fix for high cpu usage

This PR upgrades librdkafka and applies the not-yet-merged librdkafka PR #3236

Thank you for submitting a contribution to Apache NiFi - MiNiFi C++.
In order to streamline the review of the contribution we ask you
to ensure the following steps have been taken:
For all changes:

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

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

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

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

For code changes:

[ ] If adding new dependencies to the code, are these dependencies licensed in a way that is compatible for inclusion under ASF 2.0?
[ ] If applicable, have you updated the LICENSE file?
[ ] If applicable, have you updated the NOTICE file?

For documentation related changes:

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

Note:
Please ensure that once the PR is submitted, you check GitHub Actions CI results for build issues and submit an update to your PR as soon as possible.

yes, based on this issue linked from the PR, closing some tcp sockets with currports yielded high (~70% average) cpu usage even if there was no work to be done, tested on librdkafka 1.0.1, 1.5.0 and 1.6.0 all produced this behavior, and after applying the change in the linked PR this issue disappeared while still continuously pushing content to kafka


proposal: use (github|gitlab)-flow

git-flow is verbose.
(github|gitlab)-flow is good enough IMHO.
see -> http://doc.gitlab.com/ee/workflow/gitlab_flow.html
we don't need master as a release branch.
It does not provide any benefits and hides development activities.
just remove develop and long live the master :open_hands: (as a master-develop)

Got it, I will remove master.


Missing pretrained model "mobilenet_v2.pth.tar"

"mobilenet_v2.pth.tar" seems to be missing in the provided link:
https://onedrive.live.com/?authkey=%21AF9rKCBVlJ3Qzo8&id=93774C670BD4F835%21930&cid=93774C670BD4F835

Could you re-upload it? Thanks a lot.

Hi,
You can download the pre-trained model here
https://download.pytorch.org/models/mobilenet_v2-b0353104.pth


Adjustable T1, T2 and T4 timeouts

These are constants now and can't be changed.
Probably, the values should be per client/server or per transaction. In the simplest case, they just can be made var. This would allow to change the values at startup. Something like this:
diff --git a/transaction/transaction.go b/transaction/transaction.go
index 3f446fb..cef8198 100644
--- a/transaction/transaction.go
+++ b/transaction/transaction.go
@@ -12,23 +12,27 @@ import (
 	"github.com/emiago/sipgo/sip"
 )

+var (
+	T1 = 500 * time.Millisecond
+	T2 = 4 * time.Second
+	T4 = 5 * time.Second
+)
+
+func Timer_A() time.Duration { return T1 }
+func Timer_B() time.Duration { return 64 * T1 }
+func Timer_E() time.Duration { return T1 }
+func Timer_F() time.Duration { return 64 * T1 }
+func Timer_G() time.Duration { return T1 }
+func Timer_H() time.Duration { return 64 * T1 }
+func Timer_I() time.Duration { return T4 }
+func Timer_J() time.Duration { return 64 * T1 }
+func Timer_K() time.Duration { return T4 }
+func Timer_L() time.Duration { return 64 * T1 }
+func Timer_M() time.Duration { return 64 * T1 }
+
 const (
-	T1        = 500 * time.Millisecond
-	T2        = 4 * time.Second
-	T4        = 5 * time.Second
-	Timer_A   = T1
-	Timer_B   = 64 * T1
 	Timer_D   = 32 * time.Second
-	Timer_E   = T1
-	Timer_F   = 64 * T1
-	Timer_G   = T1
-	Timer_H   = 64 * T1
-	Timer_I   = T4
-	Timer_J   = 64 * T1
-	Timer_K   = T4
 	Timer_1xx = 200 * time.Millisecond
-	Timer_L   = 64 * T1
-	Timer_M   = 64 * T1

 	TxSeperator = "__"
 )
diff --git a/transaction/client_tx.go b/transaction/client_tx.go
index 110b83b..37d428c 100644
--- a/transaction/client_tx.go
+++ b/transaction/client_tx.go
@@ -58,10 +58,10 @@ func (tx *ClientTx) Init() error {
 		// If a reliable transport is being used, the client transaction SHOULD NOT
 		// start timer A (Timer A controls request retransmissions).
 		// Timer A - retransmission
-		// tx.log.Tracef("timer_a set to %v", Timer_A)
+		// tx.log.Tracef("timer_a set to %v", Timer_A())

 		tx.mu.Lock()
-		tx.timer_a_time = Timer_A
+		tx.timer_a_time = Timer_A()

 		tx.timer_a = time.AfterFunc(tx.timer_a_time, func() {
 			tx.spinFsm(client_input_timer_a)
@@ -73,7 +73,7 @@ func (tx *ClientTx) Init() error {

 	// Timer B - timeout
 	tx.mu.Lock()
-	tx.timer_b = time.AfterFunc(Timer_B, func() {
+	tx.timer_b = time.AfterFunc(Timer_B(), func() {
 		tx.mu.Lock()
 		tx.lastErr = fmt.Errorf("Timer_B timed out. %w", ErrTimeout)
 		tx.mu.Unlock()
diff --git a/transaction/client_tx_fsm.go b/transaction/client_tx_fsm.go
index ac3d318..5d1b7be 100644
--- a/transaction/client_tx_fsm.go
+++ b/transaction/client_tx_fsm.go
@@ -320,13 +320,13 @@ func (tx *ClientTx) actCancelTimeout() FsmInput {

 	tx.cancel()

-	// tx.Log().Tracef("timer_b set to %v", Timer_B)
+	// tx.Log().Tracef("timer_b set to %v", Timer_B())

 	tx.mu.Lock()
 	if tx.timer_b != nil {
 		tx.timer_b.Stop()
 	}
-	tx.timer_b = time.AfterFunc(Timer_B, func() {
+	tx.timer_b = time.AfterFunc(Timer_B(), func() {
 		tx.spinFsm(client_input_timer_b)
 	})
 	tx.mu.Unlock()
@@ -401,9 +401,9 @@ func (tx *ClientTx) actPassupAccept() FsmInput {
 		tx.timer_b = nil
 	}

-	// tx.Log().Tracef("timer_m set to %v", Timer_M)
+	// tx.Log().Tracef("timer_m set to %v", Timer_M())

-	tx.timer_m = time.AfterFunc(Timer_M, func() {
+	tx.timer_m = time.AfterFunc(Timer_M(), func() {
 		select {
 		case <-tx.done:
 			return

The drawback here is the changed type of Timer_*, the values have to be functions on T1 and T4. Although the values are used only inside transaction package in sipgo they're still exported and available for external code.
Maybe, you have a better idea on making the timers configurable?

I would not go with this func. I would still like to know some use case of changing this values from default one?
Exposing just with var for me is enough, if someone needs to change one timer, he should look others as well.

I would still like to know some use case of changing this values from default one?

T1 is an estimate of RTT and it should be quite different when you connect to a node in the same data center or to a node on another continent. In the former case it should retry (and eventually fail and do failover) much earlier.
It's not that important for my current project, where I'm trying to go with sipgo. 500 ms is OK in this case. But there might be cases when it's a big deal.

I would not go with this func.

Yeah, it doesn't look nice. I just can't come up with a better way now. Maybe, introducing more ClientRequestOption for timers will be better.

thnx for sharing. Sure T1 is most important. So it is more I want to change T1 and let others be populated.
Maybe we can have this to be populated on package level
SetT1 SetT2 etc..
Let me know would this be enough. We can always export all timers, but maybe for now keeping package API small?

This waits too long. Adding priority

@a12n was delayed, but done.


Use correct POM file in project compiler

Instead of doing setPomFile(getPomFile()) I thought it would be nice to use the actual POM file of the project :wink:. (bug introduced after moving the compilation process out of JavaMavenProject)

Codecov Report

Merging #135 into master will not change coverage.
The diff coverage is 100%.

@@            Coverage Diff            @@
##             master     #135   +/-   ##
=========================================
  Coverage     85.84%   85.84%
  Complexity      260      260
=========================================
  Files            27       27
  Lines           551      551
  Branches        119      119
=========================================
  Hits            473      473
  Misses           22       22
  Partials         56       56

Impacted Files
Coverage Δ
Complexity Δ

...eline/projectcompiler/javamaven/ProjectCompiler.kt
80.76% <100%> (ø)
6 <0> (ø)
:arrow_down:

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 9a6f114...0b4c4f9. Read the comment docs.


object detection

Can support mmdetection?
What can i use it?

Hi,
Although a popular request, object detection is not supported yet here.

Hi,
I'm happy to share that now there is a detailed notebook about how to use CAMs for object detection:
https://github.com/jacobgil/pytorch-grad-cam/blob/master/tutorials/Class Activation Maps for Object Detection With Faster RCNN.ipynb


fix: updated dependencies

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket: