Long execution time on medical robot object from the RTB dataset

Although the articulated object tracking is very accurate, I failed to reproduce the expected 20.5 ms runtime of M3T (Mb-ICG) on the medical_robot object (sequence medical_robot/test_easy/000000) of the rtb_dataset. The evaluate_rtb_dataset program reported 470 ms execution_time on my PC (Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz, 64GB RAM, GPU NVIDIA GeForce RTX 2080 Ti):
$ time ./evaluate_rtb_dataset
medical_robot_test_easy_000000_depth_azure_kinect: execution_time = 470010 us, add auc = 0.969548, adds auc = 0.985526

--------------------------------------------------------------------------------
medical_robot_test_easy: execution_time = 470010 us, add auc = 0.969548, adds auc = 0.985526
all_test_easy: execution_time = 470010 us, add auc = 0.969548, adds auc = 0.985526

--------------------------------------------------------------------------------
medical_robot_depth_azure_kinect: execution_time = 470010 us, add auc = 0.969548, adds auc = 0.985526
all_depth_azure_kinect: execution_time = 470010 us, add auc = 0.969548, adds auc = 0.985526

--------------------------------------------------------------------------------
medical_robot: execution_time = 470010 us, add auc = 0.969548, adds auc = 0.985526
all: execution_time = 470010 us, add auc = 0.969548, adds auc = 0.985526
--------------------------------------------------------------------------------

real    1m37.625s
user    1m50.722s
sys     0m2.127s

I have modified only the evaluate_rtb_dataset.cpp source file as follows to let it run on the medical_robot/test_easy/000000 sequence only:
std::vector<std::string> object_names{"medical_robot"};
std::vector<std::string> difficulty_levels{"test_easy"};
std::vector<std::string> depth_names{"depth_azure_kinect"};
std::vector<int> sequence_numbers{0};

I have built M3T with the following cmake configuration:
$ cmake ..
-- The C compiler identification is GNU 13.1.1
-- The CXX compiler identification is GNU 13.1.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Found GLEW: /usr/include (found version "2.2.0")
-- Found OpenGL: /usr/lib/libOpenGL.so
CMake Warning (dev) at /usr/lib/cmake/opencv4/OpenCVConfig.cmake:86 (find_package):
  Policy CMP0146 is not set: The FindCUDA module is removed.  Run "cmake
  --help-policy CMP0146" for policy details.  Use the cmake_policy command to
  set the policy and suppress this warning.

Call Stack (most recent call first):
  /usr/lib/cmake/opencv4/OpenCVConfig.cmake:108 (find_host_package)
  CMakeLists.txt:35 (find_package)
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found CUDA: /opt/cuda (found suitable exact version "12.2")
-- Found OpenCV: /usr (found suitable version "4.8.0", minimum required is "4.3.0") found components: core imgproc highgui imgcodecs calib3d features2d xfeatures2d cudafeatures2d
-- Found OpenMP_C: -fopenmp (found version "4.5")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Performing Test HAS_MARCH
-- Performing Test HAS_MARCH - Failed
-- Performing Test HAS_MTUNE
-- Performing Test HAS_MTUNE - Failed
-- Performing Test HAS_GGDB
-- Performing Test HAS_GGDB - Success
-- Performing Test HAS_Z7
-- Performing Test HAS_Z7 - Failed
-- Performing Test HAS_FTRAPV
-- Performing Test HAS_FTRAPV - Success
-- Performing Test HAS_OD
-- Performing Test HAS_OD - Failed
-- Performing Test HAS_OB3
-- Performing Test HAS_OB3 - Failed
-- Performing Test HAS_O3
-- Performing Test HAS_O3 - Success
-- Performing Test HAS_OB2
-- Performing Test HAS_OB2 - Failed
-- Performing Test HAS_O2
-- Performing Test HAS_O2 - Success
-- Found GTest: /usr/lib/cmake/GTest/GTestConfig.cmake (found suitable version "1.13.0", minimum required is "1.7.0")
-- Found Doxygen: /usr/bin/doxygen (found version "1.9.7") found components: doxygen dot
-- Configuring done (1.2s)
-- Generating done (0.0s)
-- Build files have been written to: /home/holesond/3DObjectTracking/M3T/build

Note that I have built M3T with OpenCV with CUDA support (cudafeatures2d). Nevertheless,  the evaluate_rtb_dataset program does not use the GPU (according to nvidia-smi). It utilizes only a single CPU core when tracking the medical robot.
What should I do to approach the 20 ms runtime presented in Table 3 of the paper "A Multi-body Tracking Framework - From Rigid Objects to Kinematic Structures"?

I also tried a release build, cmake -DCMAKE_BUILD_TYPE=Release .., which reduced the execution time on medical robot to 210 ms. That is better than the 470 ms but still far from 20.5 ms.

OK, I have found what caused the long execution times. The M3T multi-body tracker uses OpenGL during tracking at least in the silhouette_renderer module. I was running evaluate_rtb_dataset on a remote computer via an ssh shell with X forwarding. That forced OpenGL to rely on a software render (driver swrast_dri.so) instead of a hardware renderer (integrated or discrete GPU), resulting in considerably slower computation.
When I launch the program from a desktop environment directly on the computer, I get execution times around 14 ms on the medical_robot/test_easy/000000 sequence, which is great.


Feature/cnp 107 freight processing

FreightProcessing.docx

Contact rep
create
find
update
Provider
Create
Find
Update
Freight
Create
Find
Update
Air freight
Create
Search
Update


Fix Internal Visualizer

Add a ton of duplicate code to do a separate but parallel temporal warp for images (so hands and images can be temporally matched).
Includes grabbing seperate timestamps for images...

Closing this since it's served its purpose as a PR (showing the diff and whatnot).


ignoreWarnings does not work

Bug report

What is the current behavior?
If the current behavior is a bug, please provide the steps to reproduce.

What is the expected behavior?

Other relevant information:
webpack version:
Node.js version:
Operating System:
Additional tools:

i have the same question that it does not work while the docs has the feature.


julia lexer doesn't highlight type name after immutable

(Original issue 1196 created by colinfang on 2016-01-20T00:52:45.338636+00:00)
See http://pygments.org/demo/3548897/ MyType2 is not properly highlighted.
I think immutable belongs to types rather than keywords, i.e. it and type are of the same token group.

(Original comment by birkenfeld on 2016-02-02T09:41:25.994379+00:00)
Closes #1196: recognize Julia "immutable" as starting a type.
→ <>


Influxdb 2.X issue recovering query name in 'Apply to metrics'

Hello,
working with influxdb 2.X the query name is not recovered correctly. When defining a new rule, in the field 'Apply to metrics' i should have a list with the name of the queries written, instead is proposed a list of query (the number is correct) but the name is not the one given to the queries. It seems is reported the tag value selected and an hashmap composed by all the tag key of the measurement.
With an high number of queries is very difficult to manage and setup the weathermap but the greater issue is that this name is shown also in the graph tooltip name.
The issue seems to be related to the fact that the older Grafana Influxdb datasource was using a field named 'Alias' to set the name of the query. In this latest datasource, if you use the Flux language, you do not have this field 'alias' to set the query name.
I'm reporting here below a couple of screenshot and the way to reproduce the issue.
Grafana: 8.3.3
Grafana InfluxDB plugin: 5.00 (latest)
Influxdb: 2.1.1
Flowcharting plugin: 0.9.1 latest release

Hi Francesco,
Unfortunate that flux doesn't have the alias field, I would propose to issue a feature request in grafana since influx is one of the core plugins. Don't think flowcharting can do anything about this, it is simply re-using the metric functionality of the available datasources. When there is no alias, the metric name will probably be generated in a structured way, you may be able to use a regular expression in the rule to match it (e.g. /SW-VIDI.*/1/). You can see the metric names and associated values when you inspect the panel data, in the flowcharting rule you normally get a list of metric names when you start typing. You could use the newest flowcharting snapshot for improved functionality.
Kind regards,
Dennis


OV2640 dark picture after sensor standby

Hi,
I have a question regarding the usage of low power mode (GPIO_PWDN_MASK):
I have modified the standard web-sketch to put the camera into sensor standby after sending a photo and wake it up, when a http-request for a picture is made.
Here is what I have discovered:
If there is no delay between leaving standby and starting a capture, I receive a completely white image.
If I add a delay of 100ms, the image is almost black with some areas recognizable where there should be bright objects in the photo.
The longer the delay after standby is, the better the image gets, but the colors are still shifted towards green and yellow. I have tried with delays up to 2 seconds, but the image still did not have the correct colors/white balance.
What can/must I do to improve this behavior? Fixed white balance? If yes: how?
How long does the sensor need after leaving standby, until the white balance is correct?
In the sensor datasheet, I could not find any information regarding delays after standby.
If i keep the sensor awake, every image has the correct colors, independent of the type of light source used.
Thank you in advance!

@Schnulli87
Hi,
Yes,you should delay some time for the sensor back to normal From low power.When you  set GPIO_PWDN_MASK,the camera go to power down mode and the power of the sensor is very low.
When you reset the GPIO_PWDN_MASK bit, you shoud give some time to wait the camera back normal.
The specific delay time should be adjusted according to actual situation.
Let us know if you need more help.
Regards,
ArduCAM support team.

Thanks for your quick answer.
Would it be possible to read the current values regarding white balance, exposure, ... from the sensor, store them in the Arduino/ESP, then put the sensor into standby mode and when the camera is needed again, wake the sensor from standby and write the old white balance, exposure, ... values back to the sensor?
If this is possible, the sensor could start re-adjusting from these values instead of from the "standby values" and the delay could be much shorter. Maybe I'm thinking to simple here...
Which of the functions would I have to call and with which parameters?
The reason why I do not want the delay (it would have to be longer than 2 seconds as I noticed) is, that the capture is initiated via the http request and I do not know how the device requesting the image would handle such a long delay. As I request an image every two minutes, I guess that the values for white balance exposure, .. would not change very much from one photo to the next.

@Schnulli87
Hi,
Maybe this function can help you.
void ArduCAM::set_Brightness(uint8_t Brightness)
{
switch(Brightness)
{
case Brightbess4:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x40);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess3:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x30);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess2:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x20);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess1:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x10);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
case Brightbess0:
#if (defined (OV2640_CAM)||defined (OV2640_MINI_2MP))
wrSensorReg8_8(0xff, 0x00);
wrSensorReg8_8(0x7c, 0x00);
wrSensorReg8_8(0x7d, 0x04);
wrSensorReg8_8(0x7c, 0x09);
wrSensorReg8_8(0x7d, 0x00);
wrSensorReg8_8(0x7d, 0x00);
#endif
break;
}
}Let us know if you need more help.
Regards,
ArduCAM support team.

Hello. I'm also having darkness issues, and tried to use your brightness options above, but I doubt the issue is brightness related ...
I've been using and testing the OV2640 for over 2 months now, and the greatest changes I've seen come about with the lighting options, not the brightness options. I don't think I have the correct lighting options to choose from. All of them are too dark for indoors - can you provide lighting options in the same way you provided brightness options?
One thing of interest to note: recently I made a mistake with my power supply - a LiPo battery cell that was supplying the same voltage to my esp8266 AND my OV2640. I let the voltage drop below 2.8 volts  and was still able to view pictures from the OV2640 uploaded to my internet server.  The pictures were no longer dark. THEY WERE PERFECT!! The lighting and brightness and clarity were perfect. Any idea why the lower voltage fixed the picture quality??
Thanks!
John

Hi John,
I'm sorry, I didn't post my results  of supprots proposals.
I also had no luck with the brightness options. What DID work for me, was to change the white balance values. This is giving me good pictures from morning to evening since serveral months now.
My code is below.
I have two functions for getting a picture, as sometimes the image is damaged after transfer and I need to check for this on the PC. I have one function (serverNewCapture() ) for taking a picture and sending it. The other function (serverReplayCapture() ) sends the last image from the buffer again, or takes a new one if no picture has been taken before (after power up/reset).
serverNewCapture() wakes the sensor up, writes the white-balance and similar stuff to the sensor, then takes a picture, sends it and puts the sensor back to sleep.
serverReplayCapture() does not wake or put the sensor to sleep. It just resets the FIFO position and then sends the stored image.
**Important!
If I remember it correctely, there is a typo somewhere in the library or the chip documentation. The masks for sensor standby and fpga-standby are switched somewhere. I think this is the reason, why I write 0x02 instead of the GPIO_PWDN_MASK in serverNewCapture().
**
Looking through the code, I just noticed, that I still have several delays and debug output included. It seems, that the camera is running all the time with this. You can try to remove the 1000ms delay as it was used to see if the chip changed the white balance on its own, if I wait some time. Also the get_AWB() is  only for testing purposes.
`
Global:
void serverNewCapture(void);
void serverReplayCapture(void);
void restore_Settings(void);
void get_AWB(void);
unsigned char val_c7;
unsigned char val_cc;
unsigned char val_cd;
unsigned char val_ce;
// #################################
void start_capture()
{
myCAM.clear_fifo_flag();
myCAM.start_capture();
}
void serverNewCapture()
{
myCAM.clear_bit(ARDUCHIP_GPIO,0x02);                    // wake Sensor
delay(100);
restore_Settings();
//  myCAM.set_format(JPEG);
get_AWB();
Serial.println("0xc7 0xcc 0xcd 0xce before delay");
Serial.println(val_c7,HEX);
Serial.println(val_cc,HEX);
Serial.println(val_cd,HEX);
Serial.println(val_ce,HEX);
delay(1000);
get_AWB();
Serial.println("0xc7 0xcc 0xcd 0xce after delay");
Serial.println(val_c7,HEX);
Serial.println(val_cc,HEX);
Serial.println(val_cd,HEX);
Serial.println(val_ce,HEX);
myCAM.clear_fifo_flag();                                            // clear "picture available"-Flag
myCAM.start_capture();                                              // capture new picture
Serial.println("Capturing");
while (!myCAM.get_bit(ARDUCHIP_TRIG, CAP_DONE_MASK)) yield();
Serial.println("Capture Done!");
camCapture(myCAM);
Serial.println("Capture sending done, going to sleep!");
get_AWB();
Serial.println("0xc7 0xcc 0xcd 0xce after capture");
Serial.println(val_c7,HEX);
Serial.println(val_cc,HEX);
Serial.println(val_cd,HEX);
Serial.println(val_ce,HEX);
myCAM.set_bit(ARDUCHIP_GPIO,0x02);                      // put sensor into Standby
}
void serverReplayCapture()
{
//  myCAM.clear_bit(ARDUCHIP_GPIO,GPIO_PWDN_MASK);                    // wake sensor
//  delay(100);
//  myCAM.set_Brightness(Brightness);
//  delay(2000);
myCAM.set_bit(ARDUCHIP_FIFO,FIFO_RDPTR_RST_MASK);                     // reset FIFO to Startvalue
if(!myCAM.get_bit(ARDUCHIP_TRIG, CAP_DONE_MASK))                      // check if a valid picture is available
{
// no valid picture is available -> take one
myCAM.start_capture();                                              // capture image
Serial.println("Capturing");
while (!myCAM.get_bit(ARDUCHIP_TRIG, CAP_DONE_MASK)) yield();       // wait until picture is available
}
camCapture(myCAM);
//  myCAM.set_bit(ARDUCHIP_GPIO,GPIO_PWDN_MASK);                      // put sensor into Standby
Serial.println("Capture sending done!");
}
void get_AWB(void)
{
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.rdSensorReg8_8(0xc7, &val_c7); //AWB state
myCAM.rdSensorReg8_8(0xcc, &val_cc);
myCAM.rdSensorReg8_8(0xcd, &val_cd);
myCAM.rdSensorReg8_8(0xce, &val_ce);
}
void restore_Settings(void)
{
//AWB: Auto
//  SCCB_slave_Address = 0x60;
//  myCAM.wrSensorReg8_8(0xff, 0x00);
//  myCAM.wrSensorReg8_8(0xc7, 0x00); //AWB on
/*  // AWB: Sunny
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0xc7, 0x40); //AWB off
myCAM.wrSensorReg8_8(0xcc, 0x5e);
myCAM.wrSensorReg8_8(0xcd, 0x41);
myCAM.wrSensorReg8_8(0xce, 0x54);
/
// AWB: Custom
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0xc7, 0x40); //AWB off
myCAM.wrSensorReg8_8(0xcc, 0x5e);
myCAM.wrSensorReg8_8(0xcd, 0x42);
myCAM.wrSensorReg8_8(0xce, 0x4f);
/
// AWB: Cloudy
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0xc7, 0x40); //AWB off
myCAM.wrSensorReg8_8(0xcc, 0x65);
myCAM.wrSensorReg8_8(0xcd, 0x41);
myCAM.wrSensorReg8_8(0xce, 0x4f);
/
/  // AWB: Office
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0xc7, 0x40); //AWB off
myCAM.wrSensorReg8_8(0xcc, 0x52);
myCAM.wrSensorReg8_8(0xcd, 0x41);
myCAM.wrSensorReg8_8(0xce, 0x66);
*/
//Brightness 0
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0x7c, 0x00);
myCAM.wrSensorReg8_8(0x7d, 0x04);
myCAM.wrSensorReg8_8(0x7c, 0x09);
myCAM.wrSensorReg8_8(0x7d, 0x20);
myCAM.wrSensorReg8_8(0x7d, 0x00);
// Saturation 0
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0x7c, 0x00);
myCAM.wrSensorReg8_8(0x7d, 0x02);
myCAM.wrSensorReg8_8(0x7c, 0x03);
myCAM.wrSensorReg8_8(0x7d, 0x48);
myCAM.wrSensorReg8_8(0x7d, 0x48);
// Contrast 0
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0x7c, 0x00);
myCAM.wrSensorReg8_8(0x7d, 0x04);
myCAM.wrSensorReg8_8(0x7c, 0x07);
myCAM.wrSensorReg8_8(0x7d, 0x20);
myCAM.wrSensorReg8_8(0x7d, 0x20);
myCAM.wrSensorReg8_8(0x7d, 0x20);
myCAM.wrSensorReg8_8(0x7d, 0x06);
// Image type: Normal
myCAM.wrSensorReg8_8(0xff, 0x00);
myCAM.wrSensorReg8_8(0x7c, 0x00);
myCAM.wrSensorReg8_8(0x7d, 0x00);
myCAM.wrSensorReg8_8(0x7c, 0x05);
myCAM.wrSensorReg8_8(0x7d, 0x80);
myCAM.wrSensorReg8_8(0x7d, 0x80);
}
`

@Schnulli87
Hi,
The camera is automatic exposure default, so when you change the resolutions or make it normal from standby mode.The sensor need some time to adapt to it. So when you change it's resolutions or make it normal from standby mode,it is better to add 1 to 3 seconds delay.
Please refer to this link to know more problems' asnwers.
http://www.arducam.com/knowledge-base/arducam-typical-problems-arduino-uno/?preview_id=1720&preview_nonce=f1e4612837&preview=true
Let us know if you need more help.
Regards.


Update the cert we use to sign the iOS builds

We were using Oz's account but it expired so we need to replace with a different cert so we can continue building.

We have picked the cert and now we need to register all the devices.

There is 'a guy' who has to add the devices and he is on a different team but he hasn't had a chance to do it yet because he is on vacation so the hope is that the devices will be registered by tomorrow.

Still no answer from the IT guys. Sent another mail.


Page with timeseries chart not loading on server (Mendix 7.18.1)

Hello
We have a Mendix 7.18.1 model with Charts version 1.4 widget. We made some timeseries graphs (nice looking !) and they work well when tested locally. They work both in the webbrowser as well as in the mobile app.  However, when we create a deployment package (after clean deployment dir) the deployment does not work on the server. When a page with the timeseries is loaded in webbrowser (and mobile app), the page is not loaded. The console for the webbrowser shows the following:

Any idea how to solve this ?

Mendix found out that this is caused by a bug:

Please change for the next release that the links are no longer case sensitive.


minor: Fix typo in comment

(cc @ejj)
We haven't used this minor category before, but I kind of like it. (I think before, we would have used quilt: ... because it's in quilt.go). Worth discussing if we should make this a standard.

One other alternative is "docs:" -- but I like minor as a signal to people skimming the commits that it's safe to ignore

I'd like to save docs for our documentation folder (or is that getting moved?)

Makes sense (and it won't get moved)

I don't particularly have an opinion on the minor thing.  I likely won't use it, but I think its fine.


Add new services to alarm_control_panel

Description:
Added two new services to the alarm_control_panel required for Envisalink functionality
alarm_keypress allows a string of custom keypresses to be sent to the alarm
alarm_output_control activates the specified programmable output on the alarm
Pull request in home-assistant.io with documentation (if applicable): home-assistant/home-assistant.io#1249
Checklist:
If user exposed functionality or configuration variables are added/changed:

[x] Documentation added/updated in home-assistant.io

If the code communicates with devices, web services, or third-party tools:

[x] Local tests with tox run successfully. Your PR cannot be merged unless tests pass
[x] New dependencies have been added to the REQUIREMENTS variable (example).
[x] New dependencies are only imported inside functions that use them (example).
[x] New dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.

Thanks very much I've replicated the way the cover component handles it and implemented different schemas for the new services. Tox happy and alarm services are working as expected

Sorry I wasn't able to tidy up this branch, I've re-forked and made the changes and put into PR3932


Element type is invalid error in latest Remix.run project

Describe the bug
The Avatar component is not working in latest Remix.run project. Getting this error
To Reproduce
Steps to reproduce the behavior:

Create a new Remix app
Install the library
Add the default Avatar component.
See error

Expected behavior
It should render the avatar
Screenshots

Desktop (please complete the following information):

OS: MacOS
Browser Arc
Version Latest

Additional context
I even tried making the component client side only, and skipping the render of it during SSR, still getting the issue.

I ran into the same issue, so I opened https://github.com/boringdesigners/boring-avatars/pull/78 as a potential solution.

Not stale

I have managed to make the import work without re-bundling this library. I added a check to use the default export
import Boring from "boring-avatars";

const RealBoring = typeof Boring.default !== "undefined" ? Boring.default : Boring
// Then use RealBoring as you would use Boring


Keep recieving messages even after recieveing SIGTERM and lost data

Even after fluentd recieves SIGTERM and closes, fluentd seems to keep recieving messages for a while.
So, even if flush_at_shutdown is true,

buffer remains after shutdown
some messages seem to be lost

Environment:
commit 9738a421c2fe9f001b723ce86e4a6e47412c4baf
ruby 2.3.1p112
Mac OS 10.13.4
Preparation:
gem install fluent-logger

vi fluentd.conf
vi post.rb  # source is as follows

fluentd.conf is
<source>
  @type forward
</source>

<match debug.**>
  @type file
  path tmp/file
  flush_at_shutdown true
</match>

post.rb is
require 'fluent-logger'
log = Fluent::Logger::FluentLogger.new

cnt = 0
while log.post('debug', { message: cnt+1 })
  cnt += 1
  sleep 0.00001
end
puts "finished at #{Time.now}, post-count: #{cnt}"

Run commands below:
bundle exec ./bin/fluentd -c ./fluent.conf &
# => [1] 61688
ruby post.rb &
kill 61688
# => ....
# => finished at 2018-05-16 13:39:10 +0900, post-count: 111296

After that, you can find a buffer file.
tail -n 1 tmp/file.20180516_0.log
# => 2018-05-16T13:39:07+09:00	debug	{"message":79760}
tail -n 1 tmp/file/buffer.b56c4b4cd48555a7da3dd7abe659bf157.log
# => 2018-05-16T13:39:07+09:00	debug	{"message":79763}

In this case, messages between 79763 and 111296 seem to be lost.

Will check with fluent-logger.

I've investigated the cause before. I think https://github.com/tarcieri/cool.io/issues/61 is related although I familiar with neither cool.io nor socket programming.


Alert Component

Issue Description
Create Alert component.
Issue Type

[x] New Feature
[ ] Enhancement
[ ] Bug
[ ] Other

Expected Behavior
Consult with @mmalaker

Resolved in #575

Released in terra-alert v1.0.0


CI: K8sDatapathConfig Host firewall With VXLAN on K8s 1.24 / Kernel 4.19: host EP is not ready

Test Name
K8sDatapathConfig Host firewall With VXLAN

Failure Output
Cilium validation failed: 4m0s timeout expired: Last polled error: host EP is not ready: cilium-agent \"cilium-6k7cg\" host EP is not in ready state: \"not-ready\"

Stack Trace
/home/jenkins/workspace/cilium-master-k8s-1.24-kernel-4.19/src/github.com/cilium/cilium/test/ginkgo-ext/scopes.go:515
cilium pre-flight checks failed
Expected
    <*errors.errorString | 0xc002042d30>: {
        s: "Cilium validation failed: 4m0s timeout expired: Last polled error: host EP is not ready: cilium-agent \"cilium-6k7cg\" host EP is not in ready state: \"not-ready\"",
    }
to be nil
/home/jenkins/workspace/cilium-master-k8s-1.24-kernel-4.19/src/github.com/cilium/cilium/test/helpers/manifest.go:305

Standard Output
Number of "context deadline exceeded" in logs: 0
Number of "level=error" in logs: 0
Number of "level=warning" in logs: 0
Number of "Cilium API handler panicked" in logs: 0
Number of "Goroutine took lock for more than" in logs: 0
No errors/warnings found in logs
⚠  Number of "context deadline exceeded" in logs: 6
Number of "level=error" in logs: 0
Number of "level=warning" in logs: 0
Number of "Cilium API handler panicked" in logs: 0
Number of "Goroutine took lock for more than" in logs: 0
No errors/warnings found in logs
Number of "context deadline exceeded" in logs: 0
Number of "level=error" in logs: 0
Number of "level=warning" in logs: 0
Number of "Cilium API handler panicked" in logs: 0
Number of "Goroutine took lock for more than" in logs: 0
No errors/warnings found in logs
Cilium pods: [cilium-6k7cg cilium-glb8x]
Netpols loaded:
CiliumNetworkPolicies loaded:
Endpoint Policy Enforcement:
Pod                           Ingress   Egress
grafana-b96dcb76b-qbqcg       false     false
prometheus-5c59d656f5-jdlt4   false     false
coredns-8c79ffd8b-9b7vz       false     false
⚠  Cilium agent 'cilium-6k7cg': Status: Ok  Health: Ok Nodes "" ContainerRuntime:  Kubernetes: Ok KVstore: Ok Controllers: Total 25 Failed 2
Failed controllers:
 controller cilium-health-ep failure 'Get "http://<IP_ADDRESS>:4240/hello": context deadline exceeded (Client.Timeout exceeded while awaiting headers)'
controller endpoint-3303-regeneration-recovery failure 'regeneration recovery failed'
⚠  Cilium agent 'cilium-glb8x': Status: Ok  Health: Ok Nodes "" ContainerRuntime:  Kubernetes: Ok KVstore: Ok Controllers: Total 30 Failed 2
Failed controllers:
 controller cilium-health-ep failure 'Get "http://<IP_ADDRESS>:4240/hello": context deadline exceeded (Client.Timeout exceeded while awaiting headers)'
controller endpoint-3303-regeneration-recovery failure 'regeneration recovery failed'
controller endpoint-1654-regeneration-recovery failure 'regeneration recovery failed'
controller cilium-health-ep failure 'Get "http://<IP_ADDRESS>:4240/hello": context deadline exceeded (Client.Timeout exceeded while awaiting headers)'

Standard Error
13:34:36 STEP: Installing Cilium
13:34:38 STEP: Waiting for Cilium to become ready
13:35:02 STEP: Validating if Kubernetes DNS is deployed
13:35:02 STEP: Checking if deployment is ready
13:35:02 STEP: Checking if kube-dns service is plumbed correctly
13:35:02 STEP: Checking if pods have identity
13:35:02 STEP: Checking if DNS can resolve
13:35:03 STEP: Kubernetes DNS is up and operational
13:35:03 STEP: Validating Cilium Installation
13:35:03 STEP: Performing Cilium health check
13:35:03 STEP: Performing Cilium controllers preflight check
13:35:03 STEP: Performing Cilium status preflight check
13:35:03 STEP: Checking whether host EP regenerated
13:35:04 STEP: Performing Cilium service preflight check
13:35:04 STEP: Performing K8s service preflight check
13:35:04 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "waiting-to-regenerate"
13:35:04 STEP: Performing Cilium controllers preflight check
13:35:04 STEP: Performing Cilium health check
13:35:04 STEP: Performing Cilium status preflight check
13:35:04 STEP: Checking whether host EP regenerated
13:35:05 STEP: Performing Cilium service preflight check
13:35:05 STEP: Performing K8s service preflight check
13:35:05 STEP: Performing Cilium controllers preflight check
13:35:05 STEP: Performing Cilium health check
13:35:05 STEP: Performing Cilium status preflight check
13:35:05 STEP: Checking whether host EP regenerated
13:35:06 STEP: Performing Cilium service preflight check
13:35:06 STEP: Performing K8s service preflight check
13:35:06 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:06 STEP: Performing Cilium status preflight check
13:35:06 STEP: Performing Cilium health check
13:35:06 STEP: Checking whether host EP regenerated
13:35:06 STEP: Performing Cilium controllers preflight check
13:35:10 STEP: Performing Cilium service preflight check
13:35:10 STEP: Performing K8s service preflight check
13:35:10 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "waiting-to-regenerate"
13:35:10 STEP: Performing Cilium status preflight check
13:35:10 STEP: Performing Cilium health check
13:35:10 STEP: Performing Cilium controllers preflight check
13:35:10 STEP: Checking whether host EP regenerated
13:35:13 STEP: Performing Cilium service preflight check
13:35:13 STEP: Performing K8s service preflight check
13:35:13 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "regenerating"
13:35:13 STEP: Performing Cilium controllers preflight check
13:35:13 STEP: Performing Cilium health check
13:35:13 STEP: Performing Cilium status preflight check
13:35:13 STEP: Checking whether host EP regenerated
13:35:14 STEP: Performing Cilium service preflight check
13:35:14 STEP: Performing K8s service preflight check
13:35:14 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:14 STEP: Performing Cilium controllers preflight check
13:35:14 STEP: Performing Cilium health check
13:35:14 STEP: Checking whether host EP regenerated
13:35:14 STEP: Performing Cilium status preflight check
13:35:17 STEP: Performing Cilium service preflight check
13:35:17 STEP: Performing K8s service preflight check
13:35:17 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:17 STEP: Performing Cilium controllers preflight check
13:35:17 STEP: Performing Cilium health check
13:35:17 STEP: Performing Cilium status preflight check
13:35:17 STEP: Checking whether host EP regenerated
13:35:18 STEP: Performing Cilium service preflight check
13:35:18 STEP: Performing K8s service preflight check
13:35:18 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:18 STEP: Performing Cilium status preflight check
13:35:18 STEP: Performing Cilium health check
13:35:18 STEP: Performing Cilium controllers preflight check
13:35:18 STEP: Checking whether host EP regenerated
13:35:19 STEP: Performing Cilium service preflight check
13:35:19 STEP: Performing K8s service preflight check
13:35:19 STEP: Performing Cilium status preflight check
13:35:19 STEP: Performing Cilium controllers preflight check
13:35:19 STEP: Checking whether host EP regenerated
13:35:19 STEP: Performing Cilium health check
13:35:20 STEP: Performing Cilium service preflight check
13:35:20 STEP: Performing K8s service preflight check
13:35:20 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:20 STEP: Performing Cilium controllers preflight check
13:35:20 STEP: Performing Cilium health check
13:35:20 STEP: Performing Cilium status preflight check
13:35:20 STEP: Checking whether host EP regenerated
13:35:21 STEP: Performing Cilium service preflight check
13:35:21 STEP: Performing K8s service preflight check
13:35:21 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:21 STEP: Performing Cilium controllers preflight check
13:35:21 STEP: Performing Cilium status preflight check
13:35:21 STEP: Performing Cilium health check
13:35:21 STEP: Checking whether host EP regenerated
13:35:24 STEP: Performing Cilium service preflight check
13:35:24 STEP: Performing K8s service preflight check
13:35:24 STEP: Performing Cilium controllers preflight check
13:35:24 STEP: Performing Cilium status preflight check
13:35:24 STEP: Performing Cilium health check
13:35:24 STEP: Checking whether host EP regenerated
13:35:24 STEP: Performing Cilium service preflight check
13:35:24 STEP: Performing K8s service preflight check
13:35:24 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:24 STEP: Performing Cilium status preflight check
13:35:24 STEP: Performing Cilium health check
13:35:24 STEP: Performing Cilium controllers preflight check
13:35:24 STEP: Checking whether host EP regenerated
13:35:25 STEP: Performing Cilium service preflight check
13:35:25 STEP: Performing K8s service preflight check
13:35:25 STEP: Performing Cilium status preflight check
13:35:25 STEP: Performing Cilium health check
13:35:25 STEP: Performing Cilium controllers preflight check
13:35:25 STEP: Checking whether host EP regenerated
13:35:26 STEP: Performing Cilium service preflight check
13:35:26 STEP: Performing K8s service preflight check
13:35:26 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:26 STEP: Performing Cilium controllers preflight check
13:35:26 STEP: Performing Cilium status preflight check
13:35:26 STEP: Performing Cilium health check
13:35:26 STEP: Checking whether host EP regenerated
13:35:27 STEP: Performing Cilium service preflight check
13:35:27 STEP: Performing Cilium controllers preflight check
13:35:27 STEP: Performing Cilium status preflight check
13:35:27 STEP: Performing Cilium health check
13:35:27 STEP: Checking whether host EP regenerated
13:35:28 STEP: Performing Cilium service preflight check
13:35:28 STEP: Performing K8s service preflight check
13:35:28 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:28 STEP: Performing Cilium controllers preflight check
13:35:28 STEP: Performing Cilium status preflight check
13:35:28 STEP: Performing Cilium health check
13:35:28 STEP: Checking whether host EP regenerated
13:35:29 STEP: Performing Cilium service preflight check
13:35:29 STEP: Performing K8s service preflight check
13:35:29 STEP: Performing Cilium controllers preflight check
13:35:29 STEP: Performing Cilium status preflight check
13:35:29 STEP: Checking whether host EP regenerated
13:35:29 STEP: Performing Cilium health check
13:35:32 STEP: Performing Cilium service preflight check
13:35:32 STEP: Performing K8s service preflight check
13:35:32 STEP: Performing Cilium controllers preflight check
13:35:32 STEP: Performing Cilium health check
13:35:32 STEP: Performing Cilium status preflight check
13:35:32 STEP: Checking whether host EP regenerated
13:35:33 STEP: Performing Cilium service preflight check
13:35:33 STEP: Performing K8s service preflight check
13:35:33 STEP: Performing Cilium controllers preflight check
13:35:33 STEP: Performing Cilium health check
13:35:33 STEP: Checking whether host EP regenerated
13:35:33 STEP: Performing Cilium status preflight check
13:35:34 STEP: Performing Cilium service preflight check
13:35:34 STEP: Performing K8s service preflight check
13:35:34 STEP: Performing Cilium controllers preflight check
13:35:34 STEP: Performing Cilium health check
13:35:34 STEP: Performing Cilium status preflight check
13:35:34 STEP: Checking whether host EP regenerated
13:35:35 STEP: Performing Cilium service preflight check
13:35:35 STEP: Performing K8s service preflight check
13:35:35 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:35 STEP: Performing Cilium controllers preflight check
13:35:35 STEP: Performing Cilium health check
13:35:35 STEP: Performing Cilium status preflight check
13:35:35 STEP: Checking whether host EP regenerated
13:35:36 STEP: Performing Cilium service preflight check
13:35:36 STEP: Performing K8s service preflight check
13:35:36 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:36 STEP: Performing Cilium controllers preflight check
13:35:36 STEP: Performing Cilium status preflight check
13:35:36 STEP: Performing Cilium health check
13:35:36 STEP: Checking whether host EP regenerated
13:35:37 STEP: Performing Cilium service preflight check
13:35:37 STEP: Performing K8s service preflight check
13:35:37 STEP: Performing Cilium controllers preflight check
13:35:37 STEP: Checking whether host EP regenerated
13:35:37 STEP: Performing Cilium status preflight check
13:35:37 STEP: Performing Cilium health check
13:35:38 STEP: Performing Cilium service preflight check
13:35:38 STEP: Performing K8s service preflight check
13:35:38 STEP: Performing Cilium controllers preflight check
13:35:38 STEP: Performing Cilium status preflight check
13:35:38 STEP: Performing Cilium health check
13:35:38 STEP: Checking whether host EP regenerated
13:35:39 STEP: Performing Cilium service preflight check
13:35:39 STEP: Performing K8s service preflight check
13:35:39 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:39 STEP: Performing Cilium controllers preflight check
13:35:39 STEP: Performing Cilium health check
13:35:39 STEP: Checking whether host EP regenerated
13:35:39 STEP: Performing Cilium status preflight check
13:35:40 STEP: Performing Cilium service preflight check
13:35:40 STEP: Performing K8s service preflight check
13:35:40 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:40 STEP: Performing Cilium status preflight check
13:35:40 STEP: Performing Cilium health check
13:35:40 STEP: Checking whether host EP regenerated
13:35:40 STEP: Performing Cilium controllers preflight check
13:35:42 STEP: Performing Cilium service preflight check
13:35:42 STEP: Performing K8s service preflight check
13:35:42 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "regenerating"
13:35:42 STEP: Performing Cilium status preflight check
13:35:42 STEP: Performing Cilium health check
13:35:42 STEP: Checking whether host EP regenerated
13:35:42 STEP: Performing Cilium controllers preflight check
13:35:43 STEP: Performing Cilium service preflight check
13:35:43 STEP: Performing K8s service preflight check
13:35:43 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:43 STEP: Performing Cilium controllers preflight check
13:35:43 STEP: Checking whether host EP regenerated
13:35:43 STEP: Performing Cilium status preflight check
13:35:43 STEP: Performing Cilium health check
13:35:44 STEP: Performing Cilium service preflight check
13:35:44 STEP: Performing K8s service preflight check
13:35:44 STEP: Performing Cilium controllers preflight check
13:35:44 STEP: Performing Cilium status preflight check
13:35:44 STEP: Checking whether host EP regenerated
13:35:44 STEP: Performing Cilium health check
13:35:45 STEP: Performing Cilium service preflight check
13:35:45 STEP: Performing K8s service preflight check
13:35:45 STEP: Performing Cilium controllers preflight check
13:35:45 STEP: Performing Cilium status preflight check
13:35:45 STEP: Performing Cilium health check
13:35:45 STEP: Checking whether host EP regenerated
13:35:46 STEP: Performing Cilium service preflight check
13:35:46 STEP: Performing K8s service preflight check
13:35:46 STEP: Performing Cilium status preflight check
13:35:46 STEP: Performing Cilium controllers preflight check
13:35:46 STEP: Checking whether host EP regenerated
13:35:46 STEP: Performing Cilium health check
13:35:47 STEP: Performing Cilium service preflight check
13:35:47 STEP: Performing K8s service preflight check
13:35:47 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:47 STEP: Performing Cilium controllers preflight check
13:35:47 STEP: Performing Cilium status preflight check
13:35:47 STEP: Performing Cilium health check
13:35:47 STEP: Checking whether host EP regenerated
13:35:48 STEP: Performing Cilium service preflight check
13:35:48 STEP: Performing K8s service preflight check
13:35:48 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:48 STEP: Performing Cilium controllers preflight check
13:35:48 STEP: Performing Cilium health check
13:35:48 STEP: Performing Cilium status preflight check
13:35:48 STEP: Checking whether host EP regenerated
13:35:49 STEP: Performing Cilium service preflight check
13:35:49 STEP: Performing K8s service preflight check
13:35:49 STEP: Performing Cilium controllers preflight check
13:35:49 STEP: Performing Cilium status preflight check
13:35:49 STEP: Performing Cilium health check
13:35:49 STEP: Checking whether host EP regenerated
13:35:50 STEP: Performing Cilium service preflight check
13:35:50 STEP: Performing K8s service preflight check
13:35:50 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:50 STEP: Performing Cilium controllers preflight check
13:35:50 STEP: Performing Cilium health check
13:35:50 STEP: Checking whether host EP regenerated
13:35:50 STEP: Performing Cilium status preflight check
13:35:51 STEP: Performing Cilium service preflight check
13:35:51 STEP: Performing K8s service preflight check
13:35:51 STEP: Performing Cilium status preflight check
13:35:51 STEP: Performing Cilium controllers preflight check
13:35:51 STEP: Performing Cilium health check
13:35:51 STEP: Checking whether host EP regenerated
13:35:52 STEP: Performing Cilium service preflight check
13:35:52 STEP: Performing K8s service preflight check
13:35:52 STEP: Cilium is not ready yet: connectivity health is failing: Cluster connectivity is unhealthy on 'cilium-6k7cg': Exitcode: 1
Err: exit status 1
Stdout:

Stderr:
 	 Defaulted container "cilium-agent" out of: cilium-agent, mount-cgroup (init), apply-sysctl-overwrites (init), mount-bpf-fs (init), clean-cilium-state (init), install-cni-binary (init)
	 Error: Cannot get status/probe: Put "http://%2Fvar%2Frun%2Fcilium%2Fhealth.sock/v1beta/status/probe": dial unix /var/run/cilium/health.sock: connect: no such file or directory

	 command terminated with exit code 1

13:35:52 STEP: Performing Cilium health check
13:35:52 STEP: Checking whether host EP regenerated
13:35:52 STEP: Performing Cilium controllers preflight check
13:35:52 STEP: Performing Cilium status preflight check
13:35:55 STEP: Performing Cilium service preflight check
13:35:55 STEP: Performing K8s service preflight check
13:35:55 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "regenerating"
13:35:55 STEP: Performing Cilium controllers preflight check
13:35:55 STEP: Performing Cilium status preflight check
13:35:55 STEP: Performing Cilium health check
13:35:55 STEP: Checking whether host EP regenerated
13:35:56 STEP: Performing Cilium service preflight check
13:35:56 STEP: Performing K8s service preflight check
13:35:56 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:35:56 STEP: Performing Cilium controllers preflight check
13:35:56 STEP: Performing Cilium health check
13:35:56 STEP: Checking whether host EP regenerated
13:35:56 STEP: Performing Cilium status preflight check
13:35:56 STEP: Performing Cilium service preflight check
13:35:56 STEP: Performing K8s service preflight check
13:35:56 STEP: Performing Cilium controllers preflight check
13:35:56 STEP: Performing Cilium health check
13:35:56 STEP: Performing Cilium status preflight check
13:35:56 STEP: Checking whether host EP regenerated
13:35:57 STEP: Performing Cilium service preflight check
13:35:57 STEP: Performing K8s service preflight check
13:36:27 STEP: Performing Cilium controllers preflight check
13:36:27 STEP: Checking whether host EP regenerated
13:36:27 STEP: Performing Cilium status preflight check
13:36:27 STEP: Performing Cilium health check
13:36:28 STEP: Performing Cilium service preflight check
13:36:28 STEP: Performing K8s service preflight check
13:36:57 STEP: Performing Cilium controllers preflight check
13:36:57 STEP: Checking whether host EP regenerated
13:36:57 STEP: Performing Cilium health check
13:36:57 STEP: Performing Cilium status preflight check
13:36:58 STEP: Performing Cilium service preflight check
13:36:58 STEP: Performing K8s service preflight check
13:37:27 STEP: Performing Cilium controllers preflight check
13:37:27 STEP: Checking whether host EP regenerated
13:37:27 STEP: Performing Cilium health check
13:37:27 STEP: Performing Cilium status preflight check
13:37:28 STEP: Performing Cilium service preflight check
13:37:28 STEP: Performing K8s service preflight check
13:37:58 STEP: Performing Cilium controllers preflight check
13:37:58 STEP: Performing Cilium health check
13:37:58 STEP: Checking whether host EP regenerated
13:37:58 STEP: Performing Cilium status preflight check
13:37:59 STEP: Performing Cilium service preflight check
13:37:59 STEP: Performing K8s service preflight check
13:38:28 STEP: Cilium is not ready yet: host EP is not ready: cilium-agent "cilium-6k7cg" host EP is not in ready state: "not-ready"
13:38:28 STEP: Performing Cilium controllers preflight check
13:38:28 STEP: Performing Cilium status preflight check
13:38:28 STEP: Checking whether host EP regenerated
13:38:28 STEP: Performing Cilium health check
13:38:29 STEP: Performing Cilium service preflight check
13:38:29 STEP: Performing K8s service preflight check
13:38:58 STEP: Performing Cilium controllers preflight check
13:38:58 STEP: Checking whether host EP regenerated
13:38:58 STEP: Performing Cilium status preflight check
13:38:58 STEP: Performing Cilium health check
13:38:59 STEP: Performing Cilium service preflight check
13:38:59 STEP: Performing K8s service preflight check
FAIL: cilium pre-flight checks failed
Expected
    <*errors.errorString | 0xc002042d30>: {
        s: "Cilium validation failed: 4m0s timeout expired: Last polled error: host EP is not ready: cilium-agent \"cilium-6k7cg\" host EP is not in ready state: \"not-ready\"",
    }
to be nil
=== Test Finished at 2022-11-02T13:39:03Z====
13:39:03 STEP: Running JustAfterEach block for EntireTestsuite K8sDatapathConfig
===================== TEST FAILED =====================
13:39:03 STEP: Running AfterFailed block for EntireTestsuite K8sDatapathConfig
cmd: kubectl get pods -o wide --all-namespaces
Exitcode: 0
Stdout:
 	 NAMESPACE           NAME                               READY   STATUS    RESTARTS      AGE     IP              NODE   NOMINATED NODE   READINESS GATES
	 cilium-monitoring   grafana-b96dcb76b-qbqcg            0/1     Running   0             36m     <IP_ADDRESS>        k8s1   <none>           <none>
	 cilium-monitoring   prometheus-5c59d656f5-jdlt4        1/1     Running   0             36m     <IP_ADDRESS>      k8s1   <none>           <none>
	 kube-system         cilium-6k7cg                       1/1     Running   0             4m26s   <IP_ADDRESS>   k8s2   <none>           <none>
	 kube-system         cilium-glb8x                       1/1     Running   0             4m26s   <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         cilium-operator-5bbdfb4787-c5ltg   1/1     Running   0             4m26s   <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         cilium-operator-5bbdfb4787-fmws8   1/1     Running   0             4m26s   <IP_ADDRESS>   k8s2   <none>           <none>
	 kube-system         coredns-8c79ffd8b-9b7vz            0/1     Running   2 (67s ago)   6m7s    <IP_ADDRESS>       k8s2   <none>           <none>
	 kube-system         etcd-k8s1                          1/1     Running   0             41m     <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         kube-apiserver-k8s1                1/1     Running   0             41m     <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         kube-controller-manager-k8s1       1/1     Running   0             41m     <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         kube-proxy-m2qkn                   1/1     Running   0             37m     <IP_ADDRESS>   k8s2   <none>           <none>
	 kube-system         kube-proxy-qpctc                   1/1     Running   0             40m     <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         kube-scheduler-k8s1                1/1     Running   1 (40m ago)   41m     <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         log-gatherer-p8h28                 1/1     Running   0             37m     <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         log-gatherer-zwfbg                 1/1     Running   0             37m     <IP_ADDRESS>   k8s2   <none>           <none>
	 kube-system         registry-adder-dpw99               1/1     Running   0             37m     <IP_ADDRESS>   k8s1   <none>           <none>
	 kube-system         registry-adder-x4d6r               1/1     Running   0             37m     <IP_ADDRESS>   k8s2   <none>           <none>

Stderr:

Fetching command output from pods [cilium-6k7cg cilium-glb8x]
cmd: kubectl exec -n kube-system cilium-6k7cg -c cilium-agent -- cilium status
Exitcode: 0
Stdout:
 	 KVStore:                Ok   Disabled
	 Kubernetes:             Ok   1.24 (v1.24.4) [linux/amd64]
	 Kubernetes APIs:        ["cilium/v2::CiliumClusterwideNetworkPolicy", "cilium/v2::CiliumNetworkPolicy", "cilium/v2::CiliumNode", "cilium/v2alpha1::CiliumEndpointSlice", "core/v1::Namespace", "core/v1::Node", "core/v1::Pods", "core/v1::Service", "discovery/v1::EndpointSlice", "networking.k8s.io/v1::NetworkPolicy"]
	 KubeProxyReplacement:   Strict    [enp0s16 <IP_ADDRESS> fd17:625c:f037:2:a00:27ff:fe0a:98, enp0s3 <IP_ADDRESS> fd04::12, enp0s8 <IP_ADDRESS> fd04::12]
	 Host firewall:          Enabled   [enp0s16, enp0s3, enp0s8]
	 CNI Chaining:           none
	 CNI Config file:        CNI configuration file successfully written to /host/etc/cni/net.d/05-cilium.conflist
	 Cilium:                 Ok   1.12.90 (v1.12.90-9f376273)
	 NodeMonitor:            Listening for events on 3 CPUs with 64x4096 of shared memory
	 Cilium health daemon:   Ok
	 IPAM:                   IPv4: 3/254 allocated from <IP_ADDRESS>/24, IPv6: 2/254 allocated from fd02::100/120
	 IPv6 BIG TCP:           Disabled
	 BandwidthManager:       Disabled
	 Host Routing:           Legacy
	 Masquerading:           BPF   [enp0s16, enp0s3, enp0s8]   <IP_ADDRESS>/8 [IPv4: Enabled, IPv6: Disabled]
	 Controller Status:      23/25 healthy
	   Name                                  Last success   Last error   Count   Message
	   cilium-health-ep                      4m8s ago       22s ago      5       Get "http://<IP_ADDRESS>:4240/hello": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
	   endpoint-3303-regeneration-recovery   never          21s ago      14      regeneration recovery failed
	 Proxy Status:            OK, ip <IP_ADDRESS>, 0 redirects active on ports 10000-20000
	 Global Identity Range:   min 256, max 65535
	 Hubble:                  Ok   Current/Max Flows: 858/65535 (1.31%), Flows/s: 3.11   Metrics: Disabled
	 Encryption:              Disabled
	 Cluster health:          1/2 reachable   (2022-11-02T13:37:59Z)
	   Name                   IP              Node        Endpoints
	   k8s2 (localhost)       <IP_ADDRESS>   reachable   unreachable

Stderr:

cmd: kubectl exec -n kube-system cilium-6k7cg -c cilium-agent -- cilium endpoint list
Exitcode: 0
Stdout:
 	 ENDPOINT   POLICY (ingress)   POLICY (egress)   IDENTITY   LABELS (source:key[=value])                                                  IPv6        IPv4        STATUS
	            ENFORCEMENT        ENFORCEMENT
	 519        Disabled           Disabled          4          reserved:health                                                              fd02::191   <IP_ADDRESS>   ready
	 3172       Disabled           Disabled          46983      k8s:io.cilium.k8s.namespace.labels.kubernetes.io/metadata.name=kube-system               <IP_ADDRESS>   ready
	                                                            k8s:io.cilium.k8s.policy.cluster=default
	                                                            k8s:io.cilium.k8s.policy.serviceaccount=coredns
	                                                            k8s:io.kubernetes.pod.namespace=kube-system
	                                                            k8s:k8s-app=kube-dns
	 3303       Disabled           Disabled          1          k8s:cilium.io/ci-node=k8s2                                                                           not-ready
	                                                            k8s:status=lockdown
	                                                            reserved:host

Stderr:

cmd: kubectl exec -n kube-system cilium-glb8x -c cilium-agent -- cilium status
Exitcode: 0
Stdout:
 	 KVStore:                Ok   Disabled
	 Kubernetes:             Ok   1.24 (v1.24.4) [linux/amd64]
	 Kubernetes APIs:        ["cilium/v2::CiliumClusterwideNetworkPolicy", "cilium/v2::CiliumNetworkPolicy", "cilium/v2::CiliumNode", "cilium/v2alpha1::CiliumEndpointSlice", "core/v1::Namespace", "core/v1::Node", "core/v1::Pods", "core/v1::Service", "discovery/v1::EndpointSlice", "networking.k8s.io/v1::NetworkPolicy"]
	 KubeProxyReplacement:   Strict    [enp0s16 <IP_ADDRESS> fd17:625c:f037:2:a00:27ff:fe78:ed8, enp0s3 <IP_ADDRESS> fd04::11, enp0s8 <IP_ADDRESS> fd04::11]
	 Host firewall:          Enabled   [enp0s16, enp0s3, enp0s8]
	 CNI Chaining:           none
	 CNI Config file:        CNI configuration file successfully written to /host/etc/cni/net.d/05-cilium.conflist
	 Cilium:                 Ok   1.12.90 (v1.12.90-9f376273)
	 NodeMonitor:            Listening for events on 3 CPUs with 64x4096 of shared memory
	 Cilium health daemon:   Ok
	 IPAM:                   IPv4: 4/254 allocated from <IP_ADDRESS>/24, IPv6: 4/254 allocated from fd02::/120
	 IPv6 BIG TCP:           Disabled
	 BandwidthManager:       Disabled
	 Host Routing:           Legacy
	 Masquerading:           BPF   [enp0s16, enp0s3, enp0s8]   <IP_ADDRESS>/8 [IPv4: Enabled, IPv6: Disabled]
	 Controller Status:      28/30 healthy
	   Name                                  Last success   Last error   Count   Message
	   cilium-health-ep                      4m8s ago       23s ago      5       Get "http://<IP_ADDRESS>:4240/hello": context deadline exceeded (Client.Timeout exceeded while awaiting headers)
	   endpoint-1654-regeneration-recovery   never          21s ago      14      regeneration recovery failed
	 Proxy Status:            OK, ip <IP_ADDRESS>, 0 redirects active on ports 10000-20000
	 Global Identity Range:   min 256, max 65535
	 Hubble:                  Ok   Current/Max Flows: 1053/65535 (1.61%), Flows/s: 3.90   Metrics: Disabled
	 Encryption:              Disabled
	 Cluster health:          0/2 reachable   (2022-11-02T13:37:22Z)
	   Name                   IP              Node      Endpoints
	   k8s1 (localhost)       <IP_ADDRESS>   unknown   unreachable
	   k8s2                   <IP_ADDRESS>   unknown   unreachable

Stderr:

cmd: kubectl exec -n kube-system cilium-glb8x -c cilium-agent -- cilium endpoint list
Exitcode: 0
Stdout:
 	 ENDPOINT   POLICY (ingress)   POLICY (egress)   IDENTITY   LABELS (source:key[=value])                                                        IPv6       IPv4         STATUS
	            ENFORCEMENT        ENFORCEMENT
	 16         Disabled           Disabled          13587      k8s:app=grafana                                                                    fd02::5f   <IP_ADDRESS>     ready
	                                                            k8s:io.cilium.k8s.namespace.labels.kubernetes.io/metadata.name=cilium-monitoring
	                                                            k8s:io.cilium.k8s.policy.cluster=default
	                                                            k8s:io.cilium.k8s.policy.serviceaccount=default
	                                                            k8s:io.kubernetes.pod.namespace=cilium-monitoring
	 1440       Disabled           Disabled          28110      k8s:app=prometheus                                                                 fd02::63   <IP_ADDRESS>   ready
	                                                            k8s:io.cilium.k8s.namespace.labels.kubernetes.io/metadata.name=cilium-monitoring
	                                                            k8s:io.cilium.k8s.policy.cluster=default
	                                                            k8s:io.cilium.k8s.policy.serviceaccount=prometheus-k8s
	                                                            k8s:io.kubernetes.pod.namespace=cilium-monitoring
	 1654       Disabled           Disabled          1          k8s:cilium.io/ci-node=k8s1                                                                                not-ready
	                                                            k8s:node-role.kubernetes.io/control-plane
	                                                            k8s:node.kubernetes.io/exclude-from-external-load-balancers
	                                                            k8s:status=lockdown
	                                                            reserved:host
	 3708       Disabled           Disabled          4          reserved:health                                                                    fd02::6d   <IP_ADDRESS>    ready

Stderr:

===================== Exiting AfterFailed =====================
13:39:15 STEP: Running AfterEach for block EntireTestsuite K8sDatapathConfig Host firewall
13:39:16 STEP: Running AfterEach for block EntireTestsuite K8sDatapathConfig
13:39:16 STEP: Running AfterEach for block EntireTestsuite

Resources

Jenkins URL: https://jenkins.cilium.io/job/cilium-master-k8s-1.24-kernel-4.19/3494/
ZIP file(s): 94d9c940_K8sDatapathConfig_Host_firewall_With_VXLAN.zip (note: original ZIP was too big, and 7z is not supported by GH, so I compressed as 7z and then put it in a ZIP...)

Anything else?
After failing, this seems to trigger failures in the subsequent tests:

K8sDatapathConfig Host firewall With VXLAN and endpoint routes
K8sDatapathConfig Host firewall With native routing
K8sDatapathConfig Host firewall With native routing and endpoint routes

All of these end up with Kubernetes DNS did not become ready in time similar to #17628.
This is has started happening since Oct 27-28, so it's probably something we merged at this time.

It is possible this was introduced by #21539.

It's a complexity issue:
2022-11-02T09:47:48.291009829Z level=error msg="Error while rewriting endpoint BPF program" containerID= datapathPolicyRevision=0 desiredPolicyRevision=1 endpointID=3022 error="error loading eBPF collection into the kernel: program tail_handle_ipv4_from_netdev: load program: argument list too long: 3207: (db) lock *(u64 *)(r8 +16) += r1: R0=inv(id=0) R1_w=inv1 R2=inv(id=0 (truncated, 131900 line(s) omitted) (kernel without BTF support)" identity=1 ipv4= ipv6= k8sPodName=/ subsys=endpoint

from https://jenkins.cilium.io/job/Cilium-PR-K8s-1.24-kernel-4.19/733/testReport/junit/Suite-k8s-1/24/K8sDatapathConfig_Host_firewall_With_VXLAN/

@pchaigno what is the general guideline for this kind of complexity issue? It is pretty annoying because eventually we are not able to add anything at some point, right?

@anfernee We have several short to long term solutions available (e.g., https://github.com/cilium/cilium/pull/19818 as a medium term solution), but they need people to also invest time on techdebt and not only ship features. Not always easy to convince folks to do that :sweat_smile:

This was fixed by #21981.
For any future reader: the reverted PR was addressing #21453. The issue was later re-fixed via #22388


ConsType semantics?

https://github.com/owo-lang/voile-rs/blob/5633dc8c7d793711487a89b6bc239afb2fcc38dc/src/syntax/abs/ast.rs#L18
Currently there's only a label -- without a type expression that represents its argument type.
If I write an expression 'Label ParamType, it'll be parsed as App(ConsType(Label), Expr(Ident)),
which indicates that the type of 'Label is Lam(Type /* param type */, Sum(Ref(0 /* DBI */))), right?
Does that look good to you guys?
Assigned people are supposed to participate the discussion.

So Conss could be treated as trivial functions? Meanwhile they are also "member" of Sum? LGTM.

I may have some confusion on the problem, but yes, in App 'Label should have that type, I don't see any problem here.

It's easy to do Lams' equality check, using eta-expansions.  I'm sorry that I'm currently not that able to join this discussion due to the lack of knowledge and project context.

@oraluben yeah I guess the semantics become quite similar to Haskell

Tycking Variant is basically done in recent commits, closing.


Infinite recursive func crashes when running out of stack (stack overflow)

Godot version:
Godot_v3.0-stable_win64
OS/device including version:
Windows 10 64-bit Pro / Intel(R) UHD Graphics 620
Windows 10 64-bit Home / GeForce GTX 970/PCIe/SSE2
Windows 10 64-bit Education / Intel(R) HD Graphics 620
Issue description:
When running a recursive function 345 times the engine crashes without an in-editor error message. Windows shows the message "Godot Engine Editor has stopped working". This only seems to happen with the 64-bit version. 32-bit overflows at 1024 as expected.
Steps to reproduce:
Run a scene with the following code attached to a Label node:
extends Label

var ceiling = 1

func r(count = 0):
    count += 1
    if count == ceiling:
        text = str(count)
        return
    r(count)

func _process(delta):
    r()
    ceiling += 1

Minimal reproduction project:
example.zip
.

I'm not sure if this is a bug, gdscript doesn't have tail-end recursion so we just run out of stack. There are two ways to fix this I suppose:
a) implement tail-end recursion for gdscript
b) implement a check in a tools=yes build that can error out cleanly when a script runs out of stack. This will be quite slow.
thoughts anyone?

Stack overflow (Stack Size: 1024) message at 1024 on linux 64bit, editor does not crash, only the running window.

I'm not sure if this is a bug, gdscript doesn't have tail-end recursion so we just run out of stack.

It does this as expected on the 32-bit version with a stack overflow message at 1024. On the 64-bit version, I see no message and it crashes at 345.

In my system 64 bit crash at recursion 342 and 32 bit version crash at recursion 555
Win 7 64 bit 16 gb ram.
32 bit version don´t overflow as expected.

Official builds are using msvc or mingw?

Run on that problem when making celullar automata caves. Flood fill always crashed. I made a workaround, but would be nice to have proper code. Btw, does this happen in C# too?

Also trying to write a recursive flood fill function in GDScript and get crashes at roughly 400 recursions (20x20).

As @hpvb said, implement tail-end recursion for GDscript could be a very cool feature. GDscript is easy, powerfull and made for fast prototyping so tail-end recursion could really improve readability for dynamic algorithms used to solve certain mechanics.

not quite sure if this is worth fixing, maybe the debugger recursion check limit should be in kb instead of calls.

An easier demo is just using this script:
func _ready():
    _ready()

This just happened to me in 3.1, as @Jummit said a simple message stating that you ran out of calls and an infinite loop might be happening would just of saved from 2 hours of debuging something very simple.

I have the same problem with 3.1.1 on Linux 64 bit when in a different thread and I'm close to 100 calls on stack, not 1024. I've changed the Max Call Stack to 16000 and it's the same. If I run it from the main thread it works fine.

I wanted to test whether or not #37115 resolved this issue, but I noticed that it already doesn't happen in 3.2.x; at least not with the minimal reproduction project provided.
For completeness with:
Godot_v3.1.2-stable_win32.exe: Crash at (904)
Godot_v3.1.2-stable_win64.exe: Crash at (535)
Godot_v3.2-stable_win32.exe:    Debugger message: Stack overflow (Stack Size: 1024)
Godot_v3.2-stable_win64.exe:    Debugger message: Stack overflow (Stack Size: 1024)
Godot_v3.2.1-stable_win32.exe: Debugger message: Stack overflow (Stack Size: 1024)
Godot_v3.2.1-stable_win64.exe: Debugger message: Stack overflow (Stack Size: 1024)

Thanks for testing, I'll close as fixed in 3.2 then.
If anyone can still reproduce it on 3.2.1 or later, please add a comment with a reproduction project and we'll reopen the issue.

The issue did result in two good feature proposals that should probably not be lost:

Implement tail-end recursion for GDScript by @hpvb
Make the debugger recursion check limit in kB instead of calls by @reduz

Both would need to be developed further in proper proposals on https://github.com/godotengine/godot-proposals, as is they're just suggestions given here to solve an issue which no longer seems to happen.

I thought I was experiencing this issue but after troubleshooting, it turned out to be an unexpected difference between the behaviour of array slicing in gdscript and python. I'm not sure if it's intentional behaviour but the gdscript slice method will only return an empty array when the array was empty to begin with.
python:
a = [1,2,3]
a[4:] -> []

gdscript
var a = [1,2,3]
a.slice(4, 10) -> [3]

@Nattie-G It looks like you've discovered a new bug. You should open a new Issue, because it's unrelated to this Issue.


doesnt compile on 4.05.0

RWO is using 4.04.2 at the moment, but would be nice to bump to 4.05.0:
File "src/main.ml", line 731, characters 49-2190:
Error: Signature mismatch:
       ...
       The value `_args0' is required but not provided
       The value `_args' is required but not provided

diff --git a/src/main.ml b/src/main.ml
index c3bff4c..2903df1 100644
--- a/src/main.ml
+++ b/src/main.ml
@@ -785,6 +785,8 @@ module Options = Main_args.Make_bytetop_options (struct
     let _dinstr = set dump_instr

     let anonymous s = process_file s
+    let _args = Arg.read_arg
+    let _args0 = Arg.read_arg0
   end);;

 (* BLACK MAGIC: patch field of a module at runtime *)

However with this patch it no longers build on 4.04... I guess we have to introduce conditional compilation but I don't know the shortest/best way with jbuilder.

I solved this by just failing if _args/_args0 are used. It shouldn't matter for most use cases.


Proper error message should be thrown when volume is not visible to docker host though it is trying to attach the container (current error message is misleading)

Testbed scenario: 2 ESX host having local datastore + docker_host vm on each ESX
Steps to reproduce:

create a volume from one of the docker_host (VM1) on local datastore
make sure volume is created correctly
attach container from VM1 and make sure operation is successful
detach the container from VM1
perform step#3 on VM2
observed the following error

root@photon-TX4FfW2ET [ ~ ]# docker run --rm -it -v vol_242_local@local.1-0:/mnt/myvol2 --name cnt_2311 busybox
docker: Error response from daemon: create<EMAIL_ADDRESS><EMAIL_ADDRESS>includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed.

Expectation: Proper error message should be thrown like "volume is not visible/accessible". Current error message is misleading.

The volume is assumed to be local by docker as it has no idea that such a volume even exists. Possibly include the "--volume-driver" option so docker knows to try the plugin. Again, docker will try to create the volume which should return OK from the plugin (and service) and mount should fail with the volume not being available (detached).

As per @lipingxue, this should already be addressed.

@lipingxue  The reported issue is still exist..reassigning to you (please feel free to move into v1GA if major effort is required)
On VM1:

root@photon-xVmYMbyTn [ ~ ]# docker volume create --driver=vsphere<EMAIL_ADDRESS><EMAIL_ADDRESS>root@photon-xVmYMbyTn [ ~ ]# docker volume ls
DRIVER              VOLUME NAME
vsphere<EMAIL_ADDRESS>root@photon-xVmYMbyTn [ ~ ]# docker run --rm -it -v abc@local.3-0:/mnt/myvol2 --name cnt_2311 busybox
/ # exit

On VM2:

root@photon-xVmYMbyTn [ ~ ]# docker volume ls
DRIVER              VOLUME NAME
root@photon-xVmYMbyTn [ ~ ]# docker run --rm -it -v abc@local.3-0:/mnt/myvol2 --name cnt_2311 busybox
docker: Error response from daemon: create<EMAIL_ADDRESS><EMAIL_ADDRESS>includes invalid characters for a local volume name, only "[a-zA-Z0-9][a-zA-Z0-9_.-]" are allowed.
See 'docker run --help'.
root@photon-xVmYMbyTn [ ~ ]# rpm -qa | grep docker
docker-volume-vsphere-0.12.3f64805-1.x86_64

@govint Thanks for the comment, please find my response as inline.

Possibly include the "--volume-driver" option so docker knows to try the plugin. Again, docker will try to create the volume which should return OK from the plugin (and service) and mount should fail with the volume not being available (detached).

root@photon-xVmYMbyTn [ ~ ]# docker run --rm -it --volume-driver=vsphere -v abc@local.3-0:/mnt/myvol2 --name cnt_2311 busybox
docker: Error response from daemon: create<EMAIL_ADDRESS>VolumeDriver.Create: Invalid datastore 'local.3-0'.
Known datastores: sharedVmfs-0, local.1-0, local.1-1, vsanDatastore.
Default datastore: sharedVmfs-0.
See 'docker run --help'.

But when vsphere driver is provided Docker is contacting the plugin and the plugin is throwing the error that the datastore is unknown. Which is correct behavior.
And without the volume driver option Docker is correctly failing the "run" request owing to the invalid '@' char.

Thanks @govint! closing this issue as invalid as per https://github.com/vmware/docker-volume-vsphere/issues/935#issuecomment-284140769


Markers overlay the map and are not moving

Here is the demo of the issue:

On top of having the marker at the top left corner (https://github.com/airbnb/react-native-maps/issues/678), I can see markers that are very far from the location the map is zoomed in, and they are not moving at all
Using:

react-native 0.42.0
react-native-map 0.14.0

+1

still happening with react-native-map 0.15.0

I also experience that, but it only randomly happens, and not all the time. Do you have a reliable way to reproduce?
I tried switching to Google Maps, which seems to fix the annotation bug, and also fixes touch gestures to zoom even when you drag on a marker, but the Google Maps version of this library has a known bug that callouts aren't tappable...

It's also happening randomly for me :/

Happening for me too! What is going on here??

Code here:
https://gist.github.com/chapeljuice/cd61e6e57819eaf959c7635f2257a13c

Had the same issue with MapView.Marker.Animated after animateToRegion so I've wrapped animateToRegion inside setTimeout(() => {}, 0); -- and it fixed the issue for me.

@grundmanise I tried with your suggestion but it doesn't work. Do you have any other ideas?

@Maxwell2022 did you find any solution to this?

@zakster12 for me it was as simple as removing onRegionChange={this.onRegionChange} from my map.

I'm also having this problem. I am mapping over an array of markers and rendering a custom Marker like this:
<Mapview.Marker>
   <Image />
   <Image />
</MapView.Marker>

Some of the markers will render in the correct spot, and others will stick on the screen and render in random locations. If I render without the images, the markers behave normally. We can also pass in a random key when mapping over the array but this is not a good solution since it causes the markers to flicker anytime state changes.

I'm getting the same behavior when I change the maps location and clear my markers. Instead of the markers disappearing, a ghost image of them stays on the screen like in the original reports gif.

@angineering can you post some code? Also can you try with the last version of the module from master git and not npm ?

Happens to me too but only with a custom image marker (ios). The marker sticks at the top left corner and goes away only when I navigate/zoom to a region containing it.

Very old issue, closing.


Fallback to V2

Hi,
I saw in another thread that the default V3 sometimes falls back to recaptcha V2.
I was unable to reproduce it, but I would like to know:

is the flow exactly the same?
does it still trigger onVerify / onLoad / onError etc the same way as V3?
can the user leave the V2 question modal? what happens if they do?
if the user is wrong in passing this V2 test, what does it trigger? onError or something else?

Asking since I wouldn't want to have a state "stuck in between" with a loading modal or whatever I put in place for V3 that behaves differently for V2?
Thank you for your help!

Sorry, this library dont work with recaptcha v3.

Wait, I'm confused; why is my recaptcha V3 key working then?
And why is the whole process invisible as intended with V3, unlike V2 that asks for questions?


Build system requirements for iOS Google Sign-In SDK

I'm following the instructions to add the Google Sign-In SDK without CocoaPods and ran into a few steps that I'm not sure are possible with the current build system:

Add GoogleSignIn.bundle to your Xcode project's Copy Bundle Resources build phase.
In the Project > Target > Info > URL Types panel, create a new item and paste your REVERSED_CLIENT_ID into the URL Schemes field. You can find your REVERSED_CLIENT_ID in the GoogleService-Info.plist file.
Also in the Project > Target > Info > URL Types panel, create a new item and type your bundle identifier in the URL Schemes field.

@collinjackson The URL types stuff that the user edits in Xcode ends up in the project Info.plist. We already allow that to be editable. So it shouldn't be a problem to edit that file either directly or via the Xcode UI :+1:

Excellent.

Are there mojo bindings for this? I will package this up.

https://github.com/flutter/engine/pull/2524/files though it's probably best if you show me how to do it since I'm still working on the implementation

assigning this to myself as I've taken over on it

@collinjackson are you still working on this?

I think the issue can be closed; it does not apply to https://github.com/flutter/google_sign_in


Disentangle grammar resolution and related PG code

Ticks the box in #638 (Keyword trie inclusion should be reworked to not require synthetic rules over all keywords)
This exposes the resolution step rather than treating it as an implementation detail and doesn't try to shoehorn the DSL v2 items to the old Grammar model as much that the PG was based on.
Moreover, this breaks up the existing grammar visitor and tries to collect or calculate more properties upfront directly from DSL v2 in order to be more explicit that they not need to depend on the collector state that tracked everything.
I didn't submit it initially because I felt I could polish it slightly further (see the TODO note) but since I'm focused on EDR now and this cleans up the last important box in #638 (the other one is simply reverting some rules for string literals), I think it's worth reviewing in the current state.

Thanks @OmarTawfik for a swift review!


feat: add calendar name

Previously, by default, when the generated calendar file is added to a calendar provider (e.g. Google Calendar), the calendar title is usually the URL. This is not a good behavior since the calendar URL contains username and password.
This PR contains the addition of the X-WR-CALNAME field. The fields will correspond as the calendar name (at least according to this). Adding custom fields uses the low level API of ics.py (docs), which may prone to breaking.
Not tested yet. Feel free if you want to test this. I will be very happy to receive the feedbacks.

Tested and working.
Will merge.


Installation error on Ubuntu 18

root@server:/bin# go get github.com/chrislusf/seaweedfs/weed

# github.com/chrislusf/seaweedfs/weed/filer2/redis
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:43:27: not enough arguments in call to store.Client.Set
        have (string, []byte, time.Duration)
        want (context.Context, string, interface {}, time.Duration)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:51:49: cannot use genDirectoryListKey(dir) (type string) as type context.Context in argument to store.Client.SAdd:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:67:31: not enough arguments in call to store.Client.Get
        have (string)
        want (context.Context, string)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:89:34: cannot use string(fullpath) (type string) as type context.Context in argument to store.Client.Del:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:97:49: cannot use genDirectoryListKey(dir) (type string) as type context.Context in argument to store.Client.SRem:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:108:39: not enough arguments in call to store.Client.SMembers
        have (string)
        want (context.Context, string)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:115:35: cannot use string(path) (type string) as type context.Context in argument to store.Client.Del:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:128:39: not enough arguments in call to store.Client.SMembers
        have (string)
        want (context.Context, string)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:169:29: cannot use string(path) (type string) as type context.Context in argument to store.Client.Del:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:170:23: cannot use dirListKey (type string) as type context.Context in argument to store.Client.SRem:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis/universal_redis_store.go:170:23: too many errors
# github.com/chrislusf/seaweedfs/weed/filer2/redis2
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:41:27: not enough arguments in call to store.Client.Set
        have (string, []byte, time.Duration)
        want (context.Context, string, interface {}, time.Duration)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:47:51: cannot use genDirectoryListKey(dir) (type string) as type context.Context in argument to store.Client.ZAddNX:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:47:65: cannot use redis.Z literal (type redis.Z) as type string in argument to store.Client.ZAddNX
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:62:31: not enough arguments in call to store.Client.Get
        have (string)
        want (context.Context, string)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:84:34: cannot use string(fullpath) (type string) as type context.Context in argument to store.Client.Del:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:92:49: cannot use genDirectoryListKey(dir) (type string) as type context.Context in argument to store.Client.ZRem:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:103:37: not enough arguments in call to store.Client.ZRange
        have (string, number, number)
        want (context.Context, string, int64, int64)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:110:35: cannot use string(path) (type string) as type context.Context in argument to store.Client.Del:
        string does not implement context.Context (missing Deadline method)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:125:32: not enough arguments in call to store.Client.ZRank
        have (string, string)
        want (context.Context, string, string)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:130:37: not enough arguments in call to store.Client.ZRange
        have (string, int64, int64)
        want (context.Context, string, int64, int64)
/root/go/src/github.com/chrislusf/seaweedfs/weed/filer2/redis2/universal_redis_store.go:130:37: too many errors

you may need to check your go version, and ensure go mod can work for you.

go version go1.14.6 linux/amd64
how do I ensure go mod is working ?

tried with 1.13x and 1.12x
got following error
root@server:~# go get github.com/chrislusf/seaweedfs/weed
go/src/github.com/chrislusf/seaweedfs/weed/messaging/broker/consistent_distribution.go:5:2: cannot find package "github.com/cespare/xxhash" in any of:
        /usr/local/go/src/github.com/cespare/xxhash (from $GOROOT)
        /root/go/src/github.com/cespare/xxhash (from $GOPATH)

not sure why go mod does not work for you.
if any package not found, just run go get.
go get github.com/cespare/xxhash

package not found issue resolved, but then same original issue mentioned in first comment is arising on any version. I am not sure either what is wrong.

can not help much with this one-off go module problem

you should use go1.12 with export GO111MODULE="on"


Delete Examples/DevCycle-iOS-Example-App-ObjC directory

hey @harsheye, what is the reasoning for this PR?

Closing since the author of the PR hasn't replied.


Apply YARN-2124

https://issues.apache.org/jira/browse/YARN-2124

Can one of the admins verify this patch?


Windows 8.1 /w 1.4.2 - volume mixer icon oversized

As you can see in this screenshot, the icon is rendered oversize in the volume mixer, leading to some... interesting effects when YakYak is running.

lol

This has been fixed in newest build of 1.4.2
I've tested in Windows 7, please let us know if it is solved
ps. using 32px icon in Windows (we were previously using 512px)


Sync with latest upstream changes

I have synced the mupen64plus fork with the latest upstream changes, and fixed issues caused by unfortunate placement of 2ea5951 .

Here:
https://github.com/mupen64plus/mupen64plus-rsp-cxd4/blob/502460a679a4825409586b4de8781dd51b6895b2/module.c#L362
My commit essentially excluded part of the code from the ifdef, this is why it looks like it starts with endif and ends with if.


Review changes

In PR, I made the changes requested by the reviewer.

Hi @ashmalzahra  ,👋🏻👋🏻
Your project is complete! There is nothing else to say other than... it's time to merge it :shipit:
Congratulations! 🎉 🔥🔥💯💯

Highlights 🔥🔥🔥🔥
No Linters erros 💯
Descriptive PR 💯
Optional suggestions
Every comment with the [OPTIONAL] prefix won't stop the approval of this PR. However, I strongly recommend you to take them into account as they can make your code better. Some of them were simply missed by the previous reviewer and addressing them will really improve your application.
Cheers and Happy coding!👏👏👏
Feel free to leave any questions or comments in the PR thread if something is not 100% clear.
Please, remember to tag me in your question so I can receive the notification.


Create vint.main

Allow vint to be run using python -m vint, which
allows the CLI tests to run without the bin/vint,
and without vint being installed.

Codecov Report

Merging #303 into master will increase coverage by 6.08%.
The diff coverage is 90.47%.

@@            Coverage Diff             @@
##           master     #303      +/-   ##
==========================================
+ Coverage   70.68%   76.76%   +6.08%
==========================================
  Files         133      134       +1
  Lines        7705     7716      +11
  Branches     1252     1253       +1
==========================================
+ Hits         5446     5923     +477
+ Misses       1930     1508     -422
+ Partials      329      285      -44

This is one solution to packaging on openSUSE.  Request at https://build.opensuse.org/request/show/678595
The problem is that openSUSE does the py2 and py3 builds in the same VM, so extra voodoo is needed to get bin/vint to work in the tests of both.
There are other alternatives, and openSUSE can maintain this patch, or parts of it, themselves, so this change doesnt need to be merged if you dont like it.


PCM programs U_MSR_PMON_FIXED_CTL on client CPU (i7-8665U) causing GP fault - BSOD

https://github.com/opcm/pcm/blob/80ea5fb36af7497bdc867ca663fd88d32e7a925d/cpucounters.cpp#L1757
Hi, I received an inquiry for PCM causing BSOD on a Windows 10 machine. I analyzed the crash dump and it appeared PCM might be programming MSR incorrectly causing General Protection fault.
Here are the relevant dump: EDX:EAX pair specified WRMSR value = 0x400000, ECX specified WRMSR location = 0x703.
`FAULTING_IP:
msr+61d2
fffff80124c161d2 0f30            wrmsr
CONTEXT:  ffffa68dce00eb80 -- (.cxr 0xffffa68dce00eb80)
rax=0000000000400000 rbx=0000000000000000 rcx=0000000000000703
rdx=0000000000000000 ...`
Upon checking PCM code, it looks like we always initialize uncore object on Windows (see cpucounters.cpp#L1757.) What's puzzling me is that PCM used to work for me on my Skylake client based Windows machine, so either newer generation of CPU now throw GP fault on this non-existence MSR location or PCM code has changed?
In any rate, I think we can fix this issue by simply perform an hasPCICFGUncore() check right in PCM::initUncorePMUsDirect() and return early if is has no server uncore.

Thanks Roman!


Error applying IAM policy for project - Could not unmarshal old policy : unexpected end of JSON input

Hi friends,
I'm new to Pulumi so please bear with me. I'm looking to provision a project policy but getting the error below. It is likely I'm not configuring the policy JSON correctly but haven't been able to find a single working example in Go or deduce it from the sources. If so please provide some guidance.
pulumi v1.13.0 in --local mode
github.com/pulumi/pulumi-gcp v2.9.0

Project policy:
account, err := serviceAccount.NewAccount(ctx, "provisioner", &serviceAccount.AccountArgs{
	AccountId:   pulumi.String("provisioner"),
	Description: pulumi.String("Provisioner persona for infra automation."),
})
if err != nil {
    return err
}

policyData := pulumi.Sprintf(`{
	"bindings":[{
		"members": ["serviceAccount:%s"],
		"role": "roles/cloudkms.admin"
	}],
	"version": 1
}`, account.Email)
policy, err := projects.NewIAMPolicy(ctx, "provisioner-iam", &projects.IAMPolicyArgs{
	PolicyData: policyData,
	Project:    pulumi.String(os.Getenv("GCP_PROJECT")),
})
if err != nil {
    return err
}

Error:
debug: Waiting for state to become: [success]
    debug: Could not unmarshal old policy : unexpected end of JSON input
    debug: Locking "iam-project-ivory-voyage-267519"
    debug: Locked "iam-project-ivory-voyage-267519"
    debug: Setting IAM policy for project "ivory-voyage-267519"
    debug: Setting policy "{\"bindings\":[{\"members\":[\"serviceAccount:provisioner@ivory-voyage-267519.iam.gserviceaccount.com\"],\"role\":\"roles/cloudkms.admin\"}],\"version\":3}" for project: ivory-voyage-267519
    debug: Created bucket infra-state-store-3d0fbba at location https://www.googleapis.com/storage/v1/b/infra-state-store-3d0fbba
    debug:
    debug: Read bucket infra-state-store-3d0fbba at location https://www.googleapis.com/storage/v1/b/infra-state-store-3d0fbba
    debug:
    debug: Unlocking "iam-project-ivory-voyage-267519"
    debug: Unlocked "iam-project-ivory-voyage-267519"
    error: update failed

  gcp:projects:IAMPolicy (provisioner-iam):
    error: Error applying IAM policy for project "ivory-voyage-267519". Policy is &cloudresourcemanager.Policy{AuditConfigs:[]*cloudresourcemanager.AuditConfig(nil), Bindings:[]*cloudresourcemanager.Bindi
ng{(*cloudresourcemanager.Binding)(0xc000b461e0)}, Etag:"", Version:3, ServerResponse:googleapi.ServerResponse{HTTPStatusCode:0, Header:http.Header(nil)}, ForceSendFields:[]string(nil), NullFields:[]strin
g(nil)}, error is googleapi: Error 400: Request contains an invalid argument., badRequest

Hey @davidmontoyago - Do you still need assistance here? Let me know if it's okay to close this issue. Thanks!

closing as stale


showing blank jpeg image.

const pdf = require('pdf-thumbnail');
const pdfBuffer = require('fs').readFileSync('/home/ragini/Desktop/front page.pdf');
pdf(
pdfBuffer, /Buffer or stream of the pdf/
{
crop: {
width: 200,
height: 400,
x: 0,
y: 0
}
})
.then(data /Stream of the image/ => data.pipe(fs.createWriteStream(join('/home/ragini/Desktop', "preview", "previewBuffer.jpg"))))
// ...
please give me solution.

@raginisahu could you give me more info about the issue?

I have same problem. It works without error, but length of data (on then) is 0 and it creates a image file with zero bytes.

@AmirHossein @raginisahu i need more info about the operating system you are currently using and other global settings

Encountered the same problem using Ubuntu 18.04 subsystem for Windows running it with node v9.8.0 npm version 5.6.0

I am using Mac operating system with node js 11.13.0 .

@raginisahu @cristianbuta @AmirHossein have you already installed imagemagick and ghostscript successfully?

@Ng2k yes. Had no problems with the installation. Also used some different modules that had imagemagick as a dependency and it worked perfectly.

@cristianbuta @raginisahu @AmirHossein I've just found this post on stackoverflow. Here they explain how ImageMagick doesn't give permission to Ghostscript to manipulate pdf files, because there are security problems. You have to modify the Imagemagick policy.xml in order to read and write pdf files.
IMPORTANT: read carefully the security problems of ghostscript.
I hope this comment could be helpful for you. Alert us for everything else.

I am using ubuntu 8.04 .. getting no error in promise.. but only getting empty image

@Ng2k's suggestion based on the Stack Overflow link works for me, and I only had to change 1 line in /etc/ImageMagick-6/policy.xml
-    <policy domain="coder" rights="none" pattern="PDF" />
+    <policy domain="coder" rights="read|write" pattern="PDF" />

This worked on Windows Subsystem for Linux with Node v12.18.0

I confirm the @nullromo solution works on Ubuntu 20.04 with node version v14.18.3

My guess is that if the pdf is password protected this library can't generate the thumbnail. Is that correct?


When can support Material You

I can't find any Material You repo,but I need that.

This project is "dead" nobody is updating it since 2016
so you need to make it yourself

check https://material-web.dev/


Support for Renaissance Music Specific Score attributes.

Add Support for Renaissance-specific score attributes such as:

Triplet Whole notes in Kern
Breve Note durations in Kern
Dotted Breve in Kern
Measure rest when a measure is more than a whole note
Any other issues similar to the above.

Multiple of those issues are addressed in the kern_fixes branch. However, multiple notation methods of those systems exist outside of the official kern documentation so, there are some things left to be added.