[master] Upgrade to latest dependencies

Cron. -knative-prow-robot
/cc knative-sandbox/source-wg-leads
/assign knative-sandbox/source-wg-leads
Produced via:
./hack/update-deps.sh --upgrade --release v0.22
./hack/update-codegen.sh

Details:
bumping knative.dev/eventing 207aa26...ef6d89e:
  > ef6d89e upgrade to CRDv1, add more unit tests around the workings of event types (# 5013)
  > d6d48a7 add unit tests to reconciler/source/config_watcher (# 5012)
  > 21bcd68 Add buckets example to config-leader-election CM (# 4993)
  > 0f2612e add test for trigger having a wrong UID (# 5004)
  > 4282f45 fix broken in-mem ns mode (# 4906)
  > 9089b8e adding code coverage to adapters v2 (# 5000)
  > eb12f8a update to breaking change for feature.T in reconciler-test (# 5003)
  > c5f92fa upgrade to latest dependencies (# 5001)
  > f220668 add more coverage (# 4999)
  > fba3dbf Use common script in GH Actions (# 4997)
  > 2db6877 Add missing singular resource names to source/sinkbinding crds (# 4992)
  > 184fa2f mtping adapter now cleans up internal cache when it stops leading (# 4908)
  > 6fb67cd update deps + codegen (# 4990)
  > 00b44e9 Format markdown (# 4980)
  > 235dba5 refactor for better testability, add ut (# 4979)
  > 44b0a0e Add roadmap for 2021 for Eventing, Eventing Sources and Event Delivery WGs (# 4863)
  > 5451f19 add more ut coverage (# 4978)
bumping knative.dev/pkg 584933f...8fbab7e:
  > 8fbab7e Redo the comment a bit further (# 2042)
  > 08fc626 Fix comment for skipKeyError (# 2041)
  > 2bc944b Fix race: Make informed watcher start wait for Add event 🏎 (# 2036)
  > 9039dc1 moved release docs to github.com/knative/release (# 2040)
  > 07b5ddf add demoteFunc controller option (# 2033)
  > 8a8de5f Move IsKProbe to drainer, since it's the only place it's used (# 2038)
  > 5367a43 Fix potential deadlock when k8s client is used (# 2031)
  > b5bf07b adding retry event count metric for source (# 2016)
  > 17a36e7 Format markdown (# 2037)
  > 29be1c1 Add the release badge for all of the repos (# 2035)
  > e90ac15 Remove the system.Clock and it's mock in a different location (# 2034)
  > 8a9bf76 Add symmetric filter helped based on OwnerRefable. (# 2032)
  > 29092fe Format markdown (# 2030)
  > d733bb4 Add nightly badged to release tables (# 2029)
  > 7b5bcc3 Use the constant for UserAgent (# 2028)
  > 86a8236 Format markdown (# 2025)
  > 6c2f94a Unregister views to avoid slow oom issue during meter cleanup (# 2005)
  > 7689cce Update common github actions (# 2024)
  > f4650d8 Add releasability badges for each repo (# 2023)

@n3wscott you need to use the GitHub "Approve" button to stamp this PR, /approved is not good enough.


Deprecations issued in Volto 18

PLIP (Plone Improvement Proposal)
Responsible Persons
Proposer: Víctor Fernández de Alba (@sneridagh)
Seconder: Timo Stollenwerk (@tisto)
Abstract
It is needed to push for some breaking changes in the upcoming versions of Plone/Volto. So we need to start mark as deprecated things and point people to the right way of doing things. By doing this, we inform people that this is happening soon, and that they have the option to start working in their projects avoiding pitfalls and using our best practices and recommendations already today so they can be prepared for the near future.
Deprecations
SemanticUI
SemanticUI library is not maintained anymore and will be removed in Plone 7.
Any usage in add-ons and projects is discouraged and not recommended.
Related PLIPs:

https://github.com/plone/volto/issues/6321
https://github.com/plone/volto/issues/6323

Alternatives
Use any supported component framework or supported of your choice for implementing new components, specially in the public theme side. In the case that you create new widgets or components for use them in the CMSUI (non-public side) it is recommended that you use @plone/components library as an alternative, although it's still in development phase and has still to be finished in the next months.
lodash
lodash has not received any updates since 2021 which makes it kind of concerning too in terms of future maintainability. Lots of lodash utility helpers can be replaced nowadays by vanila ES. It is decided that will be removed from Plone 7 since it has performance issues (bloated bundles) and it's not prepared for ESM.  Plone 7 will use the lodash-es library (ESM ready) instead and it will be replaced by modern vanilla ES alternatives whenever possible.
Alternatives
The usage of lodash is becoming not necessary, since over time vanilla JS/ES features has make them obsolete. Take a look at this URL to check if you have better alternatives every time that you want to use lodash:
https://github.com/you-dont-need/You-Dont-Need-Lodash-Underscore
https://javascript.plainenglish.io/you-dont-need-lodash-how-i-gave-up-lodash-693c8b96a07c
If you still need some of its utilities you can use lodash-es instead.
@loadable/component and Volto Loadables framework
@loadable/component and Volto Loadables framework will be removed from Plone 7 because it's a Webpack only library and it does not have Vite plugin support.
Overall, from React 18 this library is not necessary since it has the initial implementation of the "concurrent mode". React 19 will improve even add more the features around it.
Alternatives
The recommendation is to use plain React 18 lazy load features and its idiom for lazy load components.
const myLazyComponent = lazy(()=> import('@plone/volto/components/theme/MyLazyComponent/MyLazyComponent'))

const RandomComponent = (props) => (
    <React.Suspense>
        <MyLazyComponent />
    </React.Suspense>
)

There's no support for pre-loading or lazy load entire libraries as in @loadable/component but there would not be really necessary anymore, once we get rid of all the barrel imports files (see next deprecation).
Removal of all existing main barrel imports files (src/components/index.js, src/helpers/index.js, src/actions/index.js)
Volto had this barrel imports (centralized files where other imports are re-exported in order to improve the developer user experience since the developer only has to remember to import from the re-exported place, not the full path).
It became a bad practice, since bundlers rely on the import pathway in order to determine if bundle code together or not. Since the barrel imports direct import all the code, a lot of imports ended up in the same main chunk of code. Modern bundlers like Vite also use that technique, so it heavily relies on this. We have to remove the barrel imports in order to increase the natural number of chunks that Volto divides on (specially on routes), and the code splitting is done the right and natural way.
This will force us to rewrite all the imports everywhere (core, projects and add-ons) once we implement it.
Alternative
We can start implementing only direct imports in our code right away, preparing for the upcoming change, so we don't have to in the future.
-import { BodyClass } from '@plone/volto/helpers';
+import BodyClass from '@plone/volto/helpers/BodyClass/BodyClass';

Once this is implemented, a codemod will be provided to fulfill a smooth migration.
@plone/generator-volto
The Node.js-based Volto project boilerplate generator is deprecated from Volto 18 onwards. Although you can still migrate your project to Volto 18 using this boilerplate, is recommended that you migrate to use Cookieplone.
After the release of Volto 18, it will be marked as deprecated, archived, and it won't receive any further updates.
Alternative
Migrate your project to use a Cookieplone boilerplate.
Volto project configurations
It's been a while that you can configure Volto using an add-on. The "project" way, so you configure Volto using src/config.js in your project is deprecated and will be removed in Volto 19.
https://github.com/plone/volto/issues/6396
Alternative
It's recommended and hevily encouraged that you do all your project configuration in a policy add-on. You can move your project to use Cookieplone which provide the necessary boilerplate for it.
Proposal & Implementation
We issue the deprecation messages in the upgrade guide of Volto 18.
@stevepiercy do you think that this should go somewhere else?
Adding this as a PLIP so the Volto Team can review it and approve them in the next meeting.
Deliverables
Documentation in the Volto 18 upgrade guide.

Deprecation messages should also be exposed to the developer while developing, as well as the upgrade guide, because that's where they focus.
We also need to review any places in the documentation where developers may refer, including the following.

Development
Configuration
Theming
Volto add-ons

The foregoing are merely parts to review. In those parts, we need to identify which pages, and sections in each page, need to be updated, and create a task, issue, or pull request for each item and add it to this PLIP's task list or project board.
In the main documentation, @davisagli and I are working on an overhaul of installation methods in https://github.com/plone/documentation/pull/1714

Let's keep it open FTR.


Remove channelz from LB policy API.

This also significantly simplifies the channelz node creation code.  And it may address the lock-inversion failure that is preventing #18496 from being merged.

This is now ready for review.

This is now based on #19202.

It looks like I've accidentally introduced a deadlock in the channelz code.  I've run out of steam for today, but I'll work on this more on Monday.

This is now based on #19244 instead of #19202.
I think this is once again ready for review.

The dependent PR has been merged, so the only changes here are now the ones from this PR itself.

I will review this PR today.

Thanks!

@veblush, you may want to review the changes to the channelz API here.

Known issues: #18416 #17007


html report numbering inconsistent

http://grave-digger-snake-27711.bitballoon.com/printer.ts.html
The numbers in the list on the right side do not correspond with the labels in the source code.

I've noticed this as well. I'll fix it.


Refactor extension.ts

Extends from #474
extension.ts is literally the enter of our extension.
However, it is too complicated for newcomers.
As the first step, I want to solve the following problems.

[ ] Remove goto label it can be simple for-statement
[ ] Move Rmd functions to another file
[ ] Move completion related functions to their own file
[ ] Move saveDocument() to utils.ts.

This is definitely a good idea!
Adding to your points, I'd strongly suggest moving the these commands to rTerminal.ts. I don't think they need to be implemented in the scope of the activate() function and thematically belong to the functions in rTerminal.ts anyways.
Similarly, I'd suggest moving the completion related functions to their own file and saveDocument() to utils.ts.
This would make it easier for new contributors to get an overview over what the extension does, since only the individual contributions to vscode remain in extension.ts/activate() and the implementation details of each feature are in their own file.

@ManuelHentschel Thank you, I added your ideas.
We already have four change ideas, and it should be fixed by separated PR.

Close by #525


Updates to CountryOrRegion parameter

Docs Build status updates of commit 7d40181:
:clock10: Full build: the average full build time is 18 min(s) 3 sec(s), this is based on the last 1000 build(s) for this repository.

Docs Build status updates of commit 7d40181:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/Set-Contact.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-EOPUser.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-MailboxCalendarConfiguration.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-Place.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-TextMessagingAccount.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-User.md
:white_check_mark:Succeeded
View (exchange-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel

Docs Build status updates of commit c3c9b23:
:clock10: Full build: the average full build time is 18 min(s) 3 sec(s), this is based on the last 1000 build(s) for this repository.

Docs Build status updates of commit c3c9b23:
:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

exchange/exchange-ps/exchange/Set-Contact.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-EOPUser.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-MailboxCalendarConfiguration.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-Place.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-TextMessagingAccount.md
:white_check_mark:Succeeded
View (exchange-ps)

exchange/exchange-ps/exchange/Set-User.md
:white_check_mark:Succeeded
View (exchange-ps)

For more details, please refer to the build report.
Note: Broken links written as relative paths are included in the above build report. For broken links written as absolute paths or external URLs, see the broken link report.
For any questions, please:Try searching in the Docs contributor and Admin GuideSee the frequently asked questionsPost your question in the Docs support channel


Feature Request:  Make it possible to swap the panels in the diff view

https://stackoverflow.com/q/39854518/1356559

fyi @joaomoreno

Duplicate of #20958


Support reading MP3 audio tracks with HLS

Describe the feature
Discussed in #1717
Test stream: https://pl.streamingvideoprovider.com/mp3-playlist/playlist.m3u8

This is blocked because hls.js doesn't support MP3 tracks inside MP4 files (while browsers do).


It is still slow in dppg.py, however, it's quite normal in pre_train.py,why?

May I use the trained data to run the ddpg.py?

Yes, pre_train is to train the driving example (an existing driving strategy offered by original author), and the model is based on that. So think about that, the ddpg is train the car total from scratch but this is based on a example strategy and then to train it.


Corrupt_configs.py - Type Annotations added

Corrupt_configs.py - Type Hints added
utils.groovy - mypy cmd added to check the type hints.

Please reopen PR once this passes the Tuna CI


Add connection_total metric and deprecate connection_error_total

First part of replacing connection_error_total with connection_total #143

@robobario I left a comment, I would also add a line in the 0.7.0 section of the CHANGELOG to mention the new metric addition and the deprecation of the current one.


Add meta example for hessian locally linear embedding converter.

Did you add data files for these PRs?

Did you add data files for these PRs?

No, I was waiting for approval regarding the meta example code. Should I go ahead with the datafiles?

I think it seems fine. Would be good to see if you still have issues with octave with other transformers

The same issue with the integration test happens here.


not seeing topics over wifi after following esp32devkitc instructions

i think ive followed all the instructions correctly. the one area where I wasnt sure if I messed up was inputting my specific IP address into the build command.
after running the micro-ros agent with the ESP32 device powered on I was expecting to be able to do a ros2 topic list and see some sort of topic being published from the device.
any tips on how to troubleshoot/fix m situation? I know i didnt provide a lot of info but im not sure what else to put down here.

Hello @flynneva, let see what's happening here.
First, you have to create the firmware:
ros2 run micro_ros_setup create_firmware_ws.sh freertos esp32

Then let's configure it with the Agent IP (your computer IP), mine is <IP_ADDRESS>:
ros2 run micro_ros_setup configure_firmware.sh int32_publisher -t udp -i <IP_ADDRESS> -p 8888

In a separate terminal, let open the agent:
docker run -it --rm --net=host microros/micro-ros-agent:foxy udp4 --port 8888 -v6

Now, we are going to use a special micro-ROS for ESP32 function to configure the wifi, this should open a menu and there, under the micro-ROS setting you can set your wifi SSID and password:
ros2 run micro_ros_setup build_firmware.sh menuconfig

Configuration done, now connect the divide using USB and build and flash:
ros2 run micro_ros_setup build_firmware.sh
ros2 run micro_ros_setup flash_firmware.sh

We can inspect the ESP32 output using this command, here you will see if the device is connecting to wifi, to agent, etc...
ros2 run micro_ros_setup build_firmware.sh monitor

If this does not work please copy here the micro-ROS Agent output and the build_firmware.sh monitor output.

ros2 run micro_ros_setup build_firmware.sh monitor

this monitor step wasnt in the docs but it looks like is the missing step to be able to "see" the topics coming from the esp32 device. might be good to add that to the instructions so that others dont run into the same issue.
thanks for the tips!

The monitor step just opens a serial port to see the output of the ESP32 firmware, not related to the working of the embedded code. You should be able to run the same sample without opening the monitor.
Anyhow, nice that you can use micro-ROS!

hmm interesting. ok ill keep debugging, maybe i missed something else

weird. i mustve messed up the ip address for my computer somehow. just reran the steps you outlined and it works great!
thanks again for your help!

kjhAS

I am having a similar problem. After writing the firmware to the microcontroller, the Docker agent does not show any messages.
I am also confused / missing something. IF we are using ROS2 why do we need to provide an Agent IP Address? Is Micro-ROS using ROS rather than ROS2?
Does anyone know of a step by step tutorial for ESP32 and Ubuntu 20 or even better, Youtube video?

I am having a similar problem. After writing the firmware to the microcontroller, the Docker agent does not show any messages.
I am also confused / missing something. IF we are using ROS2 why do we need to provide an Agent IP Address? Is Micro-ROS using ROS rather than ROS2?
Does anyone know of a step by step tutorial for ESP32 and Ubuntu 20 or even better, Youtube video?

I am having a similar problem. After writing the firmware to the microcontroller, the Docker agent does not show any messages.
I am also confused / missing something. IF we are using ROS2 why do we need to provide an Agent IP Address? Is Micro-ROS using ROS rather than ROS2?
Does anyone know of a step by step tutorial for ESP32 and Ubuntu 20 or even better, Youtube video?

Good morning, answering to your question: the IP address must be provided on the client side, so the socket opened by the client knows how to call getaddrinfo in order to be able to connect to the socket opened by the agent.
Regarding the problems with the Docker, I think you might have to be more specific. It could be that you are mismatching the IP configuration, also maybe you have not properly set up the ESP32 WiFi credentials. Have you tried looking into ESP32 log while running the application? Did you launch the Agent's docker with the --net=host option?
Also, it might be better if you just open a new issue, since this one has been closed for two months already. Thanks!

I am having a similar problem. After writing the firmware to the microcontroller, the Docker agent does not show any messages.
I am also confused / missing something. IF we are using ROS2 why do we need to provide an Agent IP Address? Is Micro-ROS using ROS rather than ROS2?
Does anyone know of a step by step tutorial for ESP32 and Ubuntu 20 or even better, Youtube video?

Good morning, answering to your question: the IP address must be provided on the client side, so the socket opened by the client knows how to call getaddrinfo in order to be able to connect to the socket opened by the agent.
Regarding the problems with the Docker, I think you might have to be more specific. It could be that you are mismatching the IP configuration, also maybe you have not properly set up the ESP32 WiFi credentials. Have you tried looking into ESP32 log while running the application? Did you launch the Agent's docker with the --net=host option?
Also, it might be better if you just open a new issue, since this one has been closed for two months already. Thanks!

I had the same problem with the wifi connection and I solved it thanks to these comments. However, once I connect the board to the wifi and the agent, no topic appears after using the ros2 topic list command. Does anyone know what may be the cause of this problem?

Hello @flynneva, let see what's happening here.
First, you have to create the firmware:
ros2 run micro_ros_setup create_firmware_ws.sh freertos esp32

Then let's configure it with the Agent IP (your computer IP), mine is <IP_ADDRESS>:
ros2 run micro_ros_setup configure_firmware.sh int32_publisher -t udp -i <IP_ADDRESS> -p 8888

In a separate terminal, let open the agent:
docker run -it --rm --net=host microros/micro-ros-agent:foxy udp4 --port 8888 -v6

Now, we are going to use a special micro-ROS for ESP32 function to configure the wifi, this should open a menu and there, under the micro-ROS setting you can set your wifi SSID and password:
ros2 run micro_ros_setup build_firmware.sh menuconfig

Configuration done, now connect the divide using USB and build and flash:
ros2 run micro_ros_setup build_firmware.sh
ros2 run micro_ros_setup flash_firmware.sh

We can inspect the ESP32 output using this command, here you will see if the device is connecting to wifi, to agent, etc...
ros2 run micro_ros_setup build_firmware.sh monitor

At this point, if everything has gone ok you should be able to see your topic using:
ros2 topic list

Be careful about the Domain ID, some users change it and micro-ROS by defaults uses Domain ID 0
If this does not work please copy here the micro-ROS Agent output and the build_firmware.sh monitor output.

Hey, I already followed your steps and it does not work. At first it worked, i can display the topic. However, now I want to try it again, it does not show that int32_publisher topic.
Here is the output


Use String list

i did notfind any way to use list with dialog only array[] is used
is there any way to do that
and how can i do it
thanks

Convert the list to an array.
List<String> list = // ...
String[] array = list.toArray(new String[list.size()]);


Image layouts specified in descriptor writes are not tracked

deferredshadows sample from Sascha Willems Vulkan at github has the following use case:
Render pass is set as follows:
initialLayout = VK_IMAGE_LAYOUT_UNDEFINED
finalLayout = VK_IMAGE_LAYOUT_COLOR_ATTACHMENT_OPTIMAL
but after the geometry is rendered using the above render pass, image is bound to a descriptor set, in which the following layout is used:
VK_IMAGE_LAYOUT_SHADER_READ_ONLY_OPTIMAL
Despite image being in the wrong layout, validation layers don't report any errors.

The same sample uses layered depth image (with 3 layers and a VK_IMAGE_VIEW_TYPE_2D_ARRAY view). Render pass, in which depth data is rendered into this image, has similar problems with layout transitions. But it can be fixed and we can use the following values:
initialLayout = VK_IMAGE_LAYOUT_UNDEFINED
finalLayout = VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
with subpass layout set to:
VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL
and the following layout specified in descriptor set (the same as final layout):
VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL
Unfortunately, with the above setup, validation layers report many problems:
DS(ERROR): object: 0x154b3500e58 type: 6 location: 4381 msgCode: 6: Cannot submit cmd buffer using image (0x6a) [sub-resource: aspectMask 0x4 array layer 0, mip level 0], with layout VK_IMAGE_LAYOUT_UNDEFINED when first use is VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL.
DS(ERROR): object: 0x154b3500e58 type: 6 location: 4381 msgCode: 6: Cannot submit cmd buffer using image (0x6a) [sub-resource: aspectMask 0x4 array layer 1, mip level 0], with layout VK_IMAGE_LAYOUT_UNDEFINED when first use is VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL.
DS(ERROR): object: 0x154b3500e58 type: 6 location: 4381 msgCode: 6: Cannot submit cmd buffer using image (0x6a) [sub-resource: aspectMask 0x4 array layer 2, mip level 0], with layout VK_IMAGE_LAYOUT_UNDEFINED when first use is VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL.
DS(ERROR): object: 0x154b3500e58 type: 6 location: 4381 msgCode: 6: Cannot submit cmd buffer using image (0x6a) [sub-resource: aspectMask 0x4 array layer 0, mip level 0], with layout VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL when first use is VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL.
DS(ERROR): object: 0x154b3500e58 type: 6 location: 4381 msgCode: 6: Cannot submit cmd buffer using image (0x6a) [sub-resource: aspectMask 0x4 array layer 1, mip level 0], with layout VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL when first use is VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL.
DS(ERROR): object: 0x154b3500e58 type: 6 location: 4381 msgCode: 6: Cannot submit cmd buffer using image (0x6a) [sub-resource: aspectMask 0x4 array layer 2, mip level 0], with layout VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL when first use is VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL.
It's strange, because similar setup for color or depth images with only 1 layer doesn't yield any errors. This suggests that layouts of layered images are incorrectly tracked in validation layers.
The above sample can be found here:
https://github.com/SaschaWillems/Vulkan
with affected files being:
https://github.com/SaschaWillems/Vulkan/blob/master/base/vulkanframebuffer.hpp
https://github.com/SaschaWillems/Vulkan/blob/master/deferredshadows/deferredshadows.cpp

Discussion on this issue at my repo
Changing the example as noted in the PR by @Ekzuzy makes it work as expected but then the validation messages noted here show up, while without the changes no validation errors are shown but the example won't render correct.

Alright, I'm able to run the deferredshadows demo on my Linux dev box with the latest validation layers. I went through the demo code and it appears that almost all of the changes from @Ekzuzy have been incorporated into the code I'm running. When I run on my dev setup I am not seeing any of the validation errors noted.
So, is there still suspected to be a validation issue with the second example given above? If so, what changes are required from the current latest demo code to make the code work and also trigger errors with latest validation code? I can believe we have an issue here, but need help in replicating.
Regarding the first issue noted, where descriptor set layout is not being validated, this is a hole. I filed #1476 as a separate issue to just track that missing case.

I take back my previous update about being unable to repro. I had hacked in explicit layers but was only enabling threading. Fixed my hack and now I'm seeing the validation errors. Will continue debug.

@Ekzuzy @SaschaWillems I believe there's an imageMemoryBarrier missing to transition the image in question from VK_IMAGE_LAYOUT_UNDEFINED to VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL.
Here's what I'm seeing. The validation error in question is related to the depth attachment added to the frameBuffer in the deferredSetup() function.
Note that the code for that depth surface is very similar to the code for the depth surface in the shadowSetup(). However, the shadowSetup() code includes a call to vkTools::setImageLayout() that inserts an imageMemoryBarrier to transition that depth surface from its initial layout of VK_IMAGE_LAYOUT_UNDEFINED to the attachment.initialLayout that's it's assigned in addAttachment() which is VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;
I believe the depth attachment in deferredSetup() needs a similar transition.
Can you check this out and let me know what you think?
Thanks

Thanks for the info, but I'm not sure if validation error is related to the depth attachment specified in the deferredSetup() function. Validation layers report problem with a layered depth attachment, and such image is specified in the shadowSetup() function, not deferredSetup().
What's more. Render passes created in both functions define an UNDEFINED initial layout:
attachment.description.initialLayout = VK_IMAGE_LAYOUT_UNDEFINED;
Subpass layout is specified as (in case of depth attachments):
depthReference.layout = VK_IMAGE_LAYOUT_DEPTH_STENCIL_ATTACHMENT_OPTIMAL;
and the final layout is:
attachment.description.finalLayout = VK_IMAGE_LAYOUT_DEPTH_STENCIL_READ_ONLY_OPTIMAL;
With such setup all layout transitions are performed automatically by the driver, so the imageMemoryBarrier in the shadowSetup() function is, in my opinion, unnecessary.

@Ekzuzy yes you're right. That imageMemoryBarrier is not needed.
This is a corner-case bug in validation layer for depth/stencil images where the stencil aspect does not have its layout correct transitioned to the initialLayout for the RenderPass.
I have an initial fix as well as positive testcase to demonstrate the fix. I think I can improve the fix but I'll go ahead and submit the initial fix for review so we can get it on master and then I'll follow-up with some improvements.
I've also verified that the fix removes the error in the deferredShadows demo. Additionally I've verified that the "vkTools::setImageLayout()" call in shadowSetup() can be removed and the demo seems to run correctly with no validation errors. I'll leave it to you if you'd like to submit a PR for that change to Sascha's repo.

Wow! Thanks for taking care of this issue! I already have an update that removes the unneeded barrier and fixes some other code samples too. I've just been waiting until this issue is resolved. Thanks once again!

Thanks for this fix! I just tested with my example using the changes from @Ekzuzy and the validation layer messages are gone 👍


Issue when resolving with arguments in the test bundle

In Xcode 7.2 iOS project v1.0.0, I am having trouble resolving an object with three arguments. The first argument is a struct, and the other two are [Int]s. let game = appContainer.resolve(Game.self, arguments: (size, first, second))! works in the AppDelegate, but does not work in an XCTest run in the test bundle.
This is how I'm registering:
    container.register(Game.self) { _, size, first, second in
        return Game(boardSize: size,
            first: first,
            second: second
        )
    }

This is the error that I get: fatal error: unexpectedly found nil while unwrapping an Optional value
Please advise.

I can't see the cause of the problem from the limited code, but you might be able to find a clue if you check the types of size, first and second parameters because the types are not inferred by the Swift compiler, the container cannot resolve the registered type correctly.

If you share your project to anywhere, I can check it.

Did you solve the problem? Please feel free to reopen this issue if you need help.

I think I made a mistake when I posted the issue. I tried it again now, and it seems to work. Thanks for the comments and sorry that it took me a while to get back to this.

😉


keyboard typing annoying things

after activating ROG HID my G531GT strix laptops keyboard right arrow button stopped working on bootscreen and while typing when i press it then it responses witha annoying code " egh-+89 ". Please give any solution not getting what to do
https://user-images.githubusercontent.com/84791639/119523283-3f53c580-bd9a-11eb-9ae8-96966c411976.mp4

I suspect you have a N-KEY device? And fn + left and right arrows are used for changing something related to keyboard brightness (maybe some illumination mode)?
Please attach your IOREG so that I can investigate it further.

sir i have installed windows but still facing issues related to keyboard
.sorry for late reply
On Fri, Jun 25, 2021 at 4:23 PM Nick @.***> wrote:

I suspect you have a N-KEY device? And fn + left and right arrows are used
for changing something related to keyboard brightness (maybe some
illumination mode)?
Please attach your IOREG so that I can investigate it further.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/black-dragon74/ROG-HID/issues/15#issuecomment-868414690,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AUG5CV7QBCMTAVUKDYLVPHTTURN3FANCNFSM45PTDV2A
.


⚠ Bofrost.lu has degraded performance

In dd33866, Bofrost.lu (https://www.bofrost.lu) experienced degraded performance:

HTTP code: 200
Response time: 1130 ms

Resolved: Bofrost.lu performance has improved in a2738b2 after 58 minutes.


derive a way to get rke version a server is using

Rancher versions:
rancher/server or rancher/rancher: v2.0.7
rancher/agent or rancher/rancher-agent:
I see from my server log it launches this tool to get rke on it:
Successfully pulled image [rancher/rke-tools:v0.1.13] on host
not at all sure what version rke its using or if that tool is pinned down to a specific rke version. halp!

As rancher relies heavily on rke, having an easy way to know what version of rke is being used in rancher is necessary

With latest build from master:
We have a new settings - rke-version which currently gives the latest rke commit.
With Release builds , this should be set to rke version.


 This is the author of vbb-rest v2, deployed at 2.vbb.transport.rest. Nice to see that you (seem to) use my service!
I'm here to let you know the latest version of the API is v5.vbb.transport.rest.

There are quite some breaking changes (otherwise I wouldn't have changed the endpoint), but each individual one is very easy to adapt to. Writing a migration guide was too much effort, so you'll have to just check the v5 docs and find your use case.


CVE-2020-36048: Resource exhaustion in engine.io

The latest possible version that can be installed is 3.5.0 because of the following conflicting dependency:
<EMAIL_ADDRESS>requires<EMAIL_ADDRESS>via<EMAIL_ADDRESS>
The earliest fixed version is 4.1.2.

@TotalLag Thanks for this. Will be depreciating the browser reload plugin with the release of the 1.8.0 of Elder.js as there have been huge improvements with server hot reload and we now have ws built in and dropped socket.io.

Sounds good. I'll close this then. Thanks for looking at it!


PlatformException(EQ, No equalizer found, null)

Describe the bug
Equalizer.open always throwing exception as
PlatformException(EQ, No equalizer found, null)
Audiosessionid is passed correctly.
Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Smartphone (please complete the following information):
Android version 10

**Additional context**
Add any other context about the problem here.

@murugadossp
I have addressed this bug by returning the future for Equalizer.open(audioSessionId) function. You can refer to the updated example here.

If your device supports equalizer functionality, but the plugin reports No equalizer found!, please share further information by completing the bug report.

try {
await Equalizer.open(audioSessionId);
}catch(exception){
print("Exception Occurred: $exception");
}
print("After setupEqualizer()");
}
Above is the code: still experiencing same issue.

The plugin was unable to find an Equalizer for your device. Can you verify that the device you are running has support for Equalizer. You could do this by opening Google Play Music/YouTube Music and head over to settings and then equaliser. If it opens the device equaliser, then I will look into this further. Please share more information by refilling the existing report.

How you get the audioSessionId?
Please help.

@UwaisWisitech
You can refer to the docs: https://developer.android.com/reference/android/media/MediaPlayer#getAudioSessionId()
The just_audio plugin on pub.dev provides this sessionId. If you are using another plugin for audio do check the API for a sessionId.

@UwaisWisitech
You can refer to the docs: https://developer.android.com/reference/android/media/MediaPlayer#getAudioSessionId()
The just_audio plugin on pub.dev provides this sessionId. If you are using another plugin for audio do check the API for a sessionId.

Thanks @rohansohonee


Add pad_to_bounding_box image ops

This PR will add pad_to_bounding_box functions used in keras.io/examples as mention in Issue: #18489. Note, test code hasn't been added yet. Will add the tests once the op gets finalized.

cc: @fchollet

Codecov Report
Attention: 41 lines in your changes are missing coverage. Please review.

Comparison is base (29a954a) 77.40% compared to head (6d67c79) 57.20%.
Report is 63 commits behind head on master.

Additional details and impacted files
@@             Coverage Diff             @@
##           master   #18503       +/-   ##
===========================================
- Coverage   77.40%   57.20%   -20.21%
===========================================
  Files         331      334        +3
  Lines       31972    32420      +448
  Branches     6241     6323       +82
===========================================
- Hits        24749    18545     -6204
- Misses       5646    12455     +6809
+ Partials     1577     1420      -157

Flag
Coverage Δ

keras
57.20% <14.58%> (-20.12%)
:arrow_down:

keras-jax
?

keras-numpy
57.20% <14.58%> (+1.03%)
:arrow_up:

keras-tensorflow
?

keras-torch
?

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

Files
Coverage Δ

keras/ops/image.py
58.82% <14.58%> (-17.41%)
:arrow_down:

... and 190 files with indirect coverage changes

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

@fchollet I've updated the code to reflect your feedback. Now, it supports right_padding and bottom_padding along with target_height and target_width. I've also added the tests. However, the linting test fails even though the code is formatted with black and isort. Weirdly, the linting error is shown for batch_normalization.py, which was not affected by any of the commits of this PR.
Error Message:
Run bash shell/lint.sh
Skipped 27 files
would reformat /home/runner/work/keras/keras/keras/layers/normalization/batch_normalization.py

Oh no! 💥 💔 💥
1 file would be reformatted, 605 files would be left unchanged.
Error: Process completed with exit code 1.

@fchollet  I've made the changes to reflect your feedback. Let me know if they are okay.

@fchollet thanks for your feedback. I've added the updates you mentioned.


Add new "/v1/whoami" API endpoint which returns information about then authenticated user

This pull request updates "root" API controller (/, /v1) to include metadata information about the authentication user in addition to metadata about the StackStorm installation.
Before:
curl -X GET -H  'X-Auth-Token: foo' 'http://<IP_ADDRESS>:9101/v1/'

{
    "version": "2.6dev",
    "docs_url": "http://docs.stackstorm.com/latest",
}

After:

curl -X GET -H  'X-Auth-Token: foo' 'http://<IP_ADDRESS>:9101/v1/'

{
    "version": "2.6dev",
    "docs_url": "http://docs.stackstorm.com/latest",
    "user": {
        "username": "testu",
        "rbac": {
            "enabled": true,
            "roles": [
                "admin",
                "rule_create"
            ]
        },
        "authenticated": true
    }
}

This should make troubleshooting issues like this (https://github.com/StackStorm/st2/issues/3823) where it's not immediately clear with which user action is authenticating easier.
Instead of adding this information to the root controller, another option would be to add new /v1/whoami controller (or similar) and include that information there.
What do others think?
Once we agree on the approach, I will add add a method to the DataStoreService class which will allow user to retrieve this metadata inside the actions and sensors.
TODO

[x] Decide on the approach
[x] Changelog entry
[x] Tests
[ ] Add a method to the datastore and action service for retrieving this metadata, update affected mock class used for tests

I decided to move this information outside the root controller to the new GET /v1/whoami/ API endpoint. I also updated it to include more information including the method user used to authenticate (auth token / api key).
That's how the response looks right now:
{
    "username": "testu",
    "rbac": {
        "is_admin": true,
        "enabled": true,
        "roles": [
            "admin",
            "rule_create"
        ]
    },
    "authentication": {
        "method": "authentication token",
        "location": "query"
    }
}

I personally love /v1/whoami. I also think there is a feature request for st2 whoami somewhere. As part of this, if you could also introduce that CLI binding, it will complete the feature. @enykeev, @christopherjbaker: This could be a feature in UI too under "profile" section for the logged in user. Can you guys open a tracking issue in st2web?

@lakshmi-kannan We actually already have st2 whoami CLI command - @Mierdin added it a while ago.
Right now that CLI command behaves a bit differently though - it returns username of the user which is currently logged in the CLI (aka token for which user is currently cached locally and will be used once the CLI makes a request to the API).
So in short - those are two different things, albeit related.
We should think if and how we can consolidate those two things though. I'm not totally sure if we can actually consolidate them since they serve two different purposes. Perhaps another st2 api whoami command, but this might be too confusing.
The idea behind the API endpoint was to make it useful when directly interacting with the API (not through the CLI - CLI is a higher level wrapper around the API which introduces token and credentials caching mechanism) and inside the action and sensor service (aka "I want to see with which user the sensor wrapper / action wrapper is currently authenticated").

Wouldn't it make a little more sense to add a method to the /auth API for this? Seems strange to be on its own, amongst other functional APIs when we have a dedicated set of APIs for authentication-related purposes.
Also, I'm pretty -1 on having an API endpoint for whoami and a client command whoami that serve two different purposes. Way confusing. If we must have both, then the client command should be modified to show both pieces of information clearly. Continue to show the locally cached user, and then display all of the metadata about that user retrieved via this API.
Finally, I don't think the whoami nomenclature is appropriate on the API side. From what I can see, this is a way to retrieve metadata about the currently authenticated user, so why not just GET /auth/user? The nature of REST means that identifying who is logged in is still a function of the client, not the server - so the simple whoami piece is still client-side - the metadata retrieval is only possible on the server.

@Mierdin I'm fine with changing the path to GET /auth/user or similar.
It's also worth pointing out that this operation operates on the StackStorm API and not StackStorm Auth API. That's one of the reasons why I'm not sure if /auth/user is an appropriate path because all the /auth requests are routed to the auth api and not StackStorm API (two different services serving different purposes and the actual operation operates on StackStorm API).
Having said that - we still need to decide what to do with st2 whoami command. I'm not sure if we also want to add this new information there since right now it operates on the CLI level and not API level. In short those are two different layers of abstraction and it might be confusing to have all of that information in one place.
For now, I would prefer to rename it to /auth/user or similar and leave whoami CLI command as is. If needed, we can maybe, in the future, add st2 auth user or similar CLI command.

We talked on Slack and decided to rename it to /api/user and in the future, we can come up with the plan on how to also display this information in the output of st2 whoami command.
The reason for that is that this operation operates on the StackStorm API level and not auth API level and this way we keep the existing abstraction and separation of concern.

As discussed and agreed upon, I made the following changes:

Renamed API endpoint from /api/v1/whoami to /api/v1/user
Added new get_user_info() method to datastore service and wrappers to action and sensor service (this way it's easy for user to retrieve information about user account which is used for outgoing requests in the datastore service)
Updated st2 whoami CLI command to utilize this new API endpoint instead.

Still need to update affected whoami tests though.


Feature/filter desirabilities

This PR adds the discussed functionalibility to filter features also by their desirabilities. It is implemented in a generic fashion by an additional argument by_attribute in get_features. It can be used to apply filter_by_class to an attribute of a class. By this it can be used in the future also for other attributes despite desirabilities.
Tests for this new feature are already added.

We implement alternative #7.


Using h1/h2/h3 HTML elements inside Item in picker, does't change the height of Item in Picker

🐛 Bug Report
When we try to use h1, h2, or other HTML elements inside Item in Picker, the height of that item doesn't adjust to the HTML element.

🤔 Expected Behavior
 Each Item should take the height of the child HTML elements.
😯 Current Behavior

Current behavior same as bug report.
💁 Possible Solution

🔦 Context

https://xd.adobe.com/view/b1e36c7e-f44f-4066-8fed-b065f7f96836-e4b0/screen/a876eb63-b7d8-4c47-b65a-f5a359ad9016
This is what we are trying to achieve, a spectrum dropdown / picker with multiple options, having differently styled HTML texts.

💻 Code Sample
https://react-spectrum.adobe.com/react-spectrum/Picker.html#example
In the above examples, if I wrap the Item children inside HTML elements like -
<Picker label="Choose frequency">
  <Item key="rarely">
Rarely
</Item>
  <Item key="sometimes">
Sometimes
</Item>
  <Item key="always">
Always
</Item>
</Picker>

The expected behaviour is that the Item will take the height of the children, but this doesn't happen and gives a buggy behaviour to the user.
🌍 Your Environment

Software
Version(s)

react-spectrum
"@adobe/react-spectrum": "^3.9.0"

Browser
CHrome

Operating System
Mac OS

🧢 Your Company/Team
 Adobe CC Libraries
🕷 Tracking Issue (optional)

If you wrap each of those in a <Text> it should do the right thing, see https://react-spectrum.adobe.com/react-spectrum/Picker.html#complex-items

Thanks a lot @snowystinger


Where is the main.py?

Thanks a lot, but I can't find the main.py file.

Hey! There is not supposed to be any main.py, it is supposed to be used like a dataset to a dataloader:
from pascal_5i_reader import Pascal5iReader
from torch.utils.data import DataLoader

dataset = Pascal5iReader(root = "../data/", fold=0, train=True)
trainloader = DataLoader(dataset, batch_size=4, pin_memory=True, num_workers=4) # use num_workers = 0 on windows

for i, (imgs, labels) in enumerate(trainloader):
    # training

Sorry that your comment @River-mao got lost in mass amount of emails. This repo is intended to be used like a dataset for data loader - I can perhaps add a main.py/example.py to demonstrate how it is used.


Note to self

Identifying objects.
Ex:
const { type } = require('type');

const myObj = {
  myKey: 'myVal',
  myKey2: 'myVal2'
}

type(myObj);

👍 Alright, got it. Contact me if you encounter any issues and I'll help you overcome them/it.


Stricten type of ObjectRef::name

Accoring to DBus specification, there is always a UniqueName style bus name.1

What's the purpose of the file atspi-common/p1.txt you've included as part of this PR?

Whoopsie; was some old testing data that didn't get cleared.


[Feature] Expert parallelism support

Checklist

[x] 1. If the issue you raised is not a feature but a question, please raise a discussion at https://github.com/sgl-project/sglang/discussions/new/choose Otherwise, it will be closed.
[x] 2. Please use English, otherwise it will be closed.

Motivation
Hi team,
First of all thanks so much for such a great project. I am wondering if there is plan to support Expert Parallelism for MoE models?
Related resources
https://nvidia.github.io/TensorRT-LLM/advanced/expert-parallelism.html

https://github.com/sgl-project/sglang/blob/441c22db8cbcb005b5f005b991e8aa1a65d79bb6/python/sglang/srt/models/mixtral_quant.py#L86-L150
this is an early example

https://github.com/sgl-project/sglang/blob/441c22db8cbcb005b5f005b991e8aa1a65d79bb6/python/sglang/srt/models/mixtral_quant.py#L86-L150
this is an early example
Hi, any progress has been made on this issue? The example you provided previously didn't use FusedMOE but mlp. How can we enable Expert Parallel with the current Mixtral/DeepSeek-v2 after using FusedMOE? Do you have a modified example?

related #1970

@merrymercy   I see that this issue is mainly related to TP and DP.  I noticed that the SGLang Q4 roadmap  #1487  mentioned supporting this feature.

@liangzelang DP has already been merged(only for DeepSeek right now) https://github.com/sgl-project/sglang/pull/1970 and EP will be supported soon cc @ispobock

@liangzelang DP has already been merged(only for DeepSeek right now) #1970 and EP will be supported soon cc @ispobock

@zhyncs  Does EP have any support? I have implemented EP.

Does MoE-EP have any support? I have implemented MoE-EP.

@xiaobochen123  We are going to implement it with a DP + EP approach for throughput gains. Currently, DP attention is implemented. Before we start the EP, some updates to the MoE codebase should be done.
I am interested in what kind of MoE-EP did you implement and what codebase did you use? How much are the performance gains compared to TP?

done by https://github.com/sgl-project/sglang/pull/2203


[FLINK-34648] add waitChangeResultRequest and WaitChangeResultResponse to avoid RPC timeout.

This closed https://github.com/apache/flink-cdc/issues/2910#issuecomment-1987707544, https://github.com/apache/flink-cdc/issues/2956.

@ruanhang1993 @PatrickRen PTAL.

Thanks @ruanhang1993 for these suggestion, address it.

If the SchemaRegistryRequestHandler is in the midst of executing a scheme change, and the task manager where the SchemaOperator resides undergoes a restart, could this potentially result in the task being stuck indefinitely?

@BaoPiao Yeah, this is because SchemaRegistryRequestHandler doesn't clear pendingSchemaChanges when SchemaOperator restarted, I've added one commit https://github.com/apache/flink-cdc/pull/3128/commits/7aba6a4489486af9fece954f561dca0c9c443006 to fixed it.

@lvyanquan @BaoPiao When task parallelism is multiple, task retry all sent SchemaRegistry task more the RefreshPendingListsRequest request, that each request will not cause data inconsistency pendingSchemaChanges

如果schemaRegister的pending里有多个待执行schema事件，isSchemaChangeApplying代表的是正在执行schema变更事件，但是无法得知是哪个schema事件执行，isSchemaChangeApplying无法和客户端的事件绑定，导致schemaoperator可能需要等待所有的schema事件执行完才会转为非阻塞

@BaoPiao Yeah, this is because SchemaRegistryRequestHandler doesn't clear pendingSchemaChanges when SchemaOperator restarted, I've added one commit 7aba6a4 to fixed it.

Should we clear the flushedSinkWriters as well?

@fanqiejiang8 Hi, I have added getRuntimeContext().getIndexOfThisSubtask() == 0 check to make sure that it won't send many times.

Should we clear the flushedSinkWriters as well?

Thanks for this suggestion, address it.

Thanks @lvyanquan for the fix, I left some comments. And I think tests is necessary, e.g. a test mocked RPC timeout when processing schema change event is welcome.

Add new tests in https://github.com/apache/flink-cdc/pull/3128/files#diff-c3455d69be8d51aab2230d40c29944f6d451116539098421169a38a7469ed3c7R114.

@leonardBang Can you help to start a CI workflow?

There is an error in the scenario of using route from CI, and I am trying to fix it.

There is an error in the scenario of using route from CI, and I am trying to fix it.
Done fix.


CSP headers block 4.9.2

Screenshots

Version
4.9.2
Describe the bug
When updating from 4.7.0. to 4.9.2 our CSP headers goes off on the bit of code in the screenshot.
Steps to reproduce

Block 'unsafe-eval' script sources;
Update webchat to 4.9.2;
Get page containing ReactWebChat;

Expected behavior
Webchat works.
[Bug]

Thanks @EricDahlvang.
In the meanwhile, please downgrade Web Chat to 4.9.1.
I am unsure if it can be fixed in 4.10.0 (which will be released in ~2 weeks). But this is P0 to P1 IMO.

We are looking to target this for an upcoming patch release. Will provide further details soon.


Tutorial links are not working

@gpitt71 Hi. The following tutorial links are not working. Not linked properly.
"""
Click here to understand how to price (re)insurance contracts.
Click here to understand how to perform risks aggregation.
Click here to understand how to use the distributions supported.
Click here to understand how to use the copula functions supported.
Click here to understand how to compute loss reserves.
"""

Hi @nsankar, thank you very much for your feedback.
I have just fixed the issue.
Please observe that the tutorials are referred to the version 0.3.1 of GEMAct. In the next days we will update the repository with the tutorials of the version 1.0.1 of GEMAct.

Thanks for the quick fix and the info @gpitt71


Not rendering web fonts

Hi there,
I'm having no luck getting html-pdf to render webfonts that are included within the HTML itself.  For example, the fonts are included within a <style> block on the HTML:-
@font-face {
                font-family: 'Raleway';
                src: url('/static/fonts/raleway/raleway-regular-webfont.eot');
                src: url('/static/fonts/raleway/raleway-regular-webfont.eot?#iefix') format('embedded-opentype'),
                     url('/static/fonts/raleway/raleway-regular-webfont.woff') format('woff'),
                     url('/static/fonts/raleway/raleway-regular-webfont.ttf') format('truetype'),
                     url('/static/fonts/raleway/raleway-regular-webfont.svg#ralewayregular') format('svg');
                font-weight: normal;
                font-style: normal;

            }
            body
            {
                font-family: 'Raleway';
                font-size: 14px;
            }

The fonts are rendered when visiting the template HTML manually. But when html-pdf renders the page to PDF, it is output in Helvetica throughout. My assumption is this is a race condition, with html-pdf rendering before the fonts are called and rendered -- but I maybe simplifying it.  Can you offer any steer as to how this can be achieved?
Many thanks

I am facing this issue where fonts are not rendering on windows but the pdf works perfectly fine on *nix.
Is there a workaround this ?

if only empty pdf are generated, this can only be the font?
Are there any standard fonts that html-pdf takes and where do they have to be?

@dooburt @marcbachmann
Hi, I have done this, my font seems loaded ok, but I cannot copy the text from the generated PDF.
If I remove the font-family style I can copy the text on the PDF, have you experienced a similar issue ?
Do you have any workaround this issue ?
Thanks

Hi all, any command line options to set font for html-pdf, am hving same issue of page rendered with Helvetica and the pages look terrible

@dooburt @marcbachmann Hi, I have done this, my font seems loaded ok, but I cannot copy the text from the generated PDF. If I remove the font-family style I can copy the text on the PDF, have you experienced a similar issue ? Do you have any workaround this issue ? Thanks

I'm having the same issue. Seems like custom fonts are getting vectorized.


Question: How to turn off the function fit()

Greetings, Taufik!
Sorry that the question is about my poor knowledge of Javascript, rather than about your plugin.
I make Color Picker draggable, see http://geekpic.net/pm-2V8CLM.html
On screen resize it appears at the beginning of the screen though, see http://geekpic.net/pm-I27H4B.html
That's because function fit() doesn't understand it changes position.
How can I turn off that function?
I understand I can edit the js file or set a hook, but can I just write in my scripts something like
CP.fit = function () {}; or window.CP.fit = function () {};?
I tried these but that doesn't work.
Thank you.
By the way, I can add my variation to your examples of usage of color-picker - draggable and with customizable palette.

Overwrite the fit method on the instance variable?
picker.fit = function() {
    // do nothing ...
};

No idea why, but this doesnt work...
    picker = new CP(document.getElementById('color-pik'), false);

    picker.fit = function () {
        alert("OK");        // do nothing
    };

These are inside window.onload = function() {, but that doesn't matter, right?

The last commit fix the issue.


Address implicit confirmation

Figure out how to handle lines that were correctly auto transcribed and never get edited
if we have an approval mode - line will turn green as you listen to the audio and assume implicit confirmation

Current logic is as follows:

implicit confirmation is always in effect; if a user looks at a line without editing, it counts as a confirmation of the existing text in that line (equivalent to typing in the text of that line)
however, given a set of edits to a line, if there are a mix of original text (computer-generated/un-edited) and changed text, the changed text is always preferred when handling consensus
(to be implemented) if enough people agree that the original text is the correct text, use that original text as the final text


Bump rack to <IP_ADDRESS>

This is a superset of #1427, a Dependabot PR, which fails because of an encryption issue, #1428.
Instead of simply bumping the rack version, I did a general bundle update.

Coverage: 93.549%. Remained the same when pulling 1aae5f5a8e986ac76d600812d4751eaff47740dc on jdc-rack-2_2_6_4 into c1f526221da780beb5b1d6b4edb0f4d46860bc50 on main.


python not found - had to configure it manually in npm

On Mac OS X (Intel) v12.3.1 to make compilation of native modules work, I had to add the following to my .npmrc:
python=/usr/local/bin/python3

It took me quite a bit of time to find this trick.
This is with:

node.js v16.14.0
npm v8.5.5

Why is this needed?
Why can't node-gyp figure it out to try python3 instead?
Should we document this?

Perhaps v12.3.1, not v12.13.1?  Apple finally made good on its commitment to not bundle Python in the OS.

Yes

I believe that you can just type python3 on the command line and macOS will install it for you.

python3 is actually there, not sure where it came from.

Most Mac developers would brew install<EMAIL_ADDRESS>

Can you run with logging enabled? The code should have attempted to try python3:
https://github.com/nodejs/node-gyp/blob/1206a82683697a89e070e4a5d4b7a83b6ef0ea32/lib/find-python.js#L118-L122

@richardlau how do I enable logging?

--verbose, e.g. npm install --verbose
We'd be looking for, e.g. (from one of my Linux machines)
gyp verb find Python Python is not set from command line or npm configuration
gyp verb find Python Python is not set from environment variable PYTHON
gyp verb find Python checking if "python3" can be used
gyp verb find Python - executing "python3" to get executable path
gyp verb find Python - executable path is "/usr/bin/python3"
gyp verb find Python - executing "/usr/bin/python3" to get version
gyp verb find Python - version is "3.6.8"
gyp info find Python using Python version 3.6.8 found at "/usr/bin/python3"

Ah yes, I understand what's the problem. On Mac it tries to install
xcode dev tools every time and it gets stuck for 15 minutes.

I'll post the output later.

Here it is:
npm verb cli [
npm verb cli   '/Users/matteo/.nvm/versions/node/v16.14.0/bin/node',
npm verb cli   '/Users/matteo/.nvm/versions/node/v16.14.0/bin/npm',
npm verb cli   'i',
npm verb cli   '--verbose',
npm verb cli   'sqlite3@4'
npm verb cli ]
npm info using<EMAIL_ADDRESS>npm info using<EMAIL_ADDRESS>npm timing npm:load:whichnode Completed in 0ms
npm timing config:load:defaults Completed in 1ms
npm timing config:load:file:/Users/matteo/.nvm/versions/node/v16.14.0/lib/node_modules/npm/npmrc Completed in 1ms
npm timing config:load:builtin Completed in 1ms
npm timing config:load:cli Completed in 3ms
npm timing config:load:env Completed in 0ms
npm timing config:load:file:/Users/matteo/temp/gyp-bug/.npmrc Completed in 1ms
npm timing config:load:project Completed in 6ms
npm verb config init.author.name Use `--init-author-name` instead.
npm verb config init.author.email Use `--init-author-email` instead.
npm verb config init.license Use `--init-license` instead.
npm timing config:load:file:/Users/matteo/.npmrc Completed in 2ms
npm timing config:load:user Completed in 2ms
npm timing config:load:file:/Users/matteo/.nvm/versions/node/v16.14.0/etc/npmrc Completed in 0ms
npm timing config:load:global Completed in 0ms
npm timing config:load:validate Completed in 1ms
npm timing config:load:credentials Completed in 1ms
npm timing config:load:setEnvs Completed in 0ms
npm timing config:load Completed in 16ms
npm timing npm:load:configload Completed in 16ms
npm timing npm:load:setTitle Completed in 18ms
npm timing config:load:flatten Completed in 2ms
npm timing npm:load:display Completed in 6ms
npm verb logfile /Users/matteo/.npm/_logs/2022-05-09T06_40_21_252Z-debug-0.log
npm timing npm:load:logFile Completed in 4ms
npm timing npm:load:timers Completed in 0ms
npm timing npm:load:configScope Completed in 0ms
npm timing npm:load Completed in 45ms
npm timing arborist:ctor Completed in 1ms
npm timing arborist:ctor Completed in 0ms
npm timing idealTree:init Completed in 12ms
npm timing idealTree:userRequests Completed in 3ms
npm http fetch GET 200 https://registry.npmjs.org/sqlite3 13ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/nan 6ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/node-pre-gyp 6ms (cache hit)
npm timing idealTree:#root Completed in 34ms
npm http fetch GET 200 https://registry.npmjs.org/npmlog 21ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/nopt 24ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/rimraf 23ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/tar 23ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/detect-libc 29ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/npm-packlist 31ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/mkdirp 35ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/rc 34ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/needle 37ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/semver 38ms (cache hit)
npm timing idealTree:node_modules/sqlite3 Completed in 49ms
npm timing idealTree:node_modules/nan Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/console-control-strings 36ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/ignore-walk 39ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/npm-bundled 38ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/abbrev 40ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/npm-normalize-package-bin 39ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/debug 42ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/ini 38ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/osenv 43ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/are-we-there-yet 42ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/strip-json-comments 40ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/deep-extend 42ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/minimist 48ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/set-blocking 43ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/glob 42ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/gauge 49ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/safe-buffer 46ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/minizlib 46ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/minipass 47ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/fs-minipass 48ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/yallist 47ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/iconv-lite 56ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/sax 57ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/chownr 52ms (cache hit)
npm timing idealTree:node_modules/node-pre-gyp Completed in 75ms
npm timing idealTree:node_modules/detect-libc Completed in 0ms
npm timing idealTree:node_modules/mkdirp Completed in 1ms
npm timing idealTree:node_modules/minimist Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/ms 5ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/safer-buffer 5ms (cache hit)
npm timing idealTree:node_modules/needle Completed in 8ms
npm timing idealTree:node_modules/debug Completed in 1ms
npm timing idealTree:node_modules/iconv-lite Completed in 1ms
npm timing idealTree:node_modules/ms Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/os-homedir 5ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/os-tmpdir 7ms (cache hit)
npm timing idealTree:node_modules/nopt Completed in 11ms
npm timing idealTree:node_modules/abbrev Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/minimatch 7ms (cache hit)
npm timing idealTree:node_modules/npm-packlist Completed in 11ms
npm http fetch GET 200 https://registry.npmjs.org/brace-expansion 4ms (cache hit)
npm timing idealTree:node_modules/ignore-walk Completed in 8ms
npm http fetch GET 200 https://registry.npmjs.org/concat-map 5ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/balanced-match 8ms (cache hit)
npm timing idealTree:node_modules/minimatch Completed in 10ms
npm timing idealTree:node_modules/brace-expansion Completed in 3ms
npm timing idealTree:node_modules/balanced-match Completed in 0ms
npm timing idealTree:node_modules/concat-map Completed in 0ms
npm timing idealTree:node_modules/npm-bundled Completed in 0ms
npm timing idealTree:node_modules/npm-normalize-package-bin Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/aproba 23ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/object-assign 22ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/delegates 26ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/signal-exit 24ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/strip-ansi 24ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/readable-stream 31ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/wide-align 28ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/string-width 30ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/has-unicode 36ms (cache hit)
npm timing idealTree:node_modules/npmlog Completed in 45ms
npm http fetch GET 200 https://registry.npmjs.org/inherits 20ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/process-nextick-args 20ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/string_decoder 20ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/core-util-is 23ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/isarray 22ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/util-deprecate 21ms (cache hit)
npm timing idealTree:node_modules/are-we-there-yet Completed in 28ms
npm timing idealTree:node_modules/console-control-strings Completed in 0ms
npm timing idealTree:node_modules/delegates Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/code-point-at 7ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/ansi-regex 7ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/is-fullwidth-code-point 8ms (cache hit)
npm timing idealTree:node_modules/gauge Completed in 14ms
npm timing idealTree:node_modules/aproba Completed in 0ms
npm timing idealTree:node_modules/has-unicode Completed in 0ms
npm timing idealTree:node_modules/object-assign Completed in 0ms
npm timing idealTree:node_modules/osenv Completed in 2ms
npm timing idealTree:node_modules/os-homedir Completed in 0ms
npm timing idealTree:node_modules/os-tmpdir Completed in 0ms
npm timing idealTree:node_modules/rc Completed in 2ms
npm timing idealTree:node_modules/deep-extend Completed in 0ms
npm timing idealTree:node_modules/ini Completed in 0ms
npm timing idealTree:node_modules/readable-stream Completed in 6ms
npm timing idealTree:node_modules/core-util-is Completed in 0ms
npm timing idealTree:node_modules/inherits Completed in 0ms
npm timing idealTree:node_modules/isarray Completed in 0ms
npm timing idealTree:node_modules/process-nextick-args Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/inflight 8ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/once 9ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/fs.realpath 12ms (cache hit)
npm http fetch GET 200 https://registry.npmjs.org/path-is-absolute 11ms (cache hit)
npm timing idealTree:node_modules/rimraf Completed in 15ms
npm http fetch GET 200 https://registry.npmjs.org/wrappy 4ms (cache hit)
npm timing idealTree:node_modules/glob Completed in 9ms
npm timing idealTree:node_modules/fs.realpath Completed in 0ms
npm timing idealTree:node_modules/inflight Completed in 1ms
npm timing idealTree:node_modules/once Completed in 0ms
npm timing idealTree:node_modules/path-is-absolute Completed in 0ms
npm timing idealTree:node_modules/safe-buffer Completed in 0ms
npm timing idealTree:node_modules/safer-buffer Completed in 0ms
npm timing idealTree:node_modules/sax Completed in 0ms
npm timing idealTree:node_modules/semver Completed in 0ms
npm timing idealTree:node_modules/set-blocking Completed in 0ms
npm timing idealTree:node_modules/signal-exit Completed in 0ms
npm timing idealTree:node_modules/string_decoder Completed in 0ms
npm http fetch GET 200 https://registry.npmjs.org/number-is-nan 6ms (cache hit)
npm timing idealTree:node_modules/string-width Completed in 10ms
npm timing idealTree:node_modules/code-point-at Completed in 0ms
npm timing idealTree:node_modules/is-fullwidth-code-point Completed in 1ms
npm timing idealTree:node_modules/number-is-nan Completed in 0ms
npm timing idealTree:node_modules/strip-ansi Completed in 1ms
npm timing idealTree:node_modules/ansi-regex Completed in 0ms
npm timing idealTree:node_modules/strip-json-comments Completed in 0ms
npm timing idealTree:node_modules/tar Completed in 5ms
npm timing idealTree:node_modules/chownr Completed in 0ms
npm timing idealTree:node_modules/fs-minipass Completed in 0ms
npm timing idealTree:node_modules/minipass Completed in 0ms
npm timing idealTree:node_modules/minizlib Completed in 0ms
npm timing idealTree:node_modules/util-deprecate Completed in 0ms
npm timing idealTree:node_modules/wide-align Completed in 0ms
npm timing idealTree:node_modules/wrappy Completed in 0ms
npm timing idealTree:node_modules/yallist Completed in 0ms
npm timing idealTree:node_modules/tar/node_modules/safe-buffer Completed in 0ms
npm timing idealTree:buildDeps Completed in 359ms
npm timing idealTree:fixDepFlags Completed in 2ms
npm timing idealTree Completed in 379ms
npm timing reify:loadTrees Completed in 379ms
npm timing reify:diffTrees Completed in 2ms
npm timing reify:retireShallow Completed in 0ms
npm timing reify:createSparse Completed in 15ms
npm timing reify:loadBundles Completed in 0ms
npm timing reifyNode:node_modules/ansi-regex Completed in 181ms
npm timing reifyNode:node_modules/number-is-nan Completed in 180ms
npm timing reifyNode:node_modules/fs-minipass Completed in 181ms
npm timing reifyNode:node_modules/code-point-at Completed in 181ms
npm timing reifyNode:node_modules/wrappy Completed in 181ms
npm timing reifyNode:node_modules/chownr Completed in 182ms
npm timing reifyNode:node_modules/is-fullwidth-code-point Completed in 182ms
npm timing reifyNode:node_modules/path-is-absolute Completed in 182ms
npm timing reifyNode:node_modules/inflight Completed in 182ms
npm timing reifyNode:node_modules/once Completed in 183ms
npm timing reifyNode:node_modules/process-nextick-args Completed in 183ms
npm timing reifyNode:node_modules/strip-json-comments Completed in 182ms
npm timing reifyNode:node_modules/os-tmpdir Completed in 183ms
npm timing reifyNode:node_modules/ini Completed in 183ms
npm timing reifyNode:node_modules/os-homedir Completed in 183ms
npm timing reifyNode:node_modules/string-width Completed in 184ms
npm timing reifyNode:node_modules/wide-align Completed in 184ms
npm timing reifyNode:node_modules/has-unicode Completed in 184ms
npm timing reifyNode:node_modules/object-assign Completed in 184ms
npm timing reifyNode:node_modules/aproba Completed in 184ms
npm timing reifyNode:node_modules/strip-ansi Completed in 185ms
npm timing reifyNode:node_modules/npm-bundled Completed in 185ms
npm timing reifyNode:node_modules/brace-expansion Completed in 186ms
npm timing reifyNode:node_modules/ignore-walk Completed in 186ms
npm timing reifyNode:node_modules/abbrev Completed in 186ms
npm timing reifyNode:node_modules/osenv Completed in 186ms
npm timing reifyNode:node_modules/ms Completed in 187ms
npm timing reifyNode:node_modules/npm-packlist Completed in 189ms
npm timing reifyNode:node_modules/minizlib Completed in 194ms
npm timing reifyNode:node_modules/minipass Completed in 194ms
npm timing reifyNode:node_modules/inherits Completed in 194ms
npm timing reifyNode:node_modules/core-util-is Completed in 194ms
npm timing reifyNode:node_modules/signal-exit Completed in 194ms
npm timing reifyNode:node_modules/set-blocking Completed in 194ms
npm timing reifyNode:node_modules/console-control-strings Completed in 194ms
npm timing reifyNode:node_modules/yallist Completed in 198ms
npm timing reifyNode:node_modules/util-deprecate Completed in 198ms
npm timing reifyNode:node_modules/fs.realpath Completed in 198ms
npm timing reifyNode:node_modules/balanced-match Completed in 198ms
npm timing reifyNode:node_modules/rimraf Completed in 198ms
npm timing reifyNode:node_modules/safe-buffer Completed in 201ms
npm timing reifyNode:node_modules/string_decoder Completed in 201ms
npm timing reifyNode:node_modules/deep-extend Completed in 200ms
npm timing reifyNode:node_modules/minimatch Completed in 200ms
npm timing reifyNode:node_modules/mkdirp Completed in 200ms
npm timing reifyNode:node_modules/npmlog Completed in 201ms
npm timing reifyNode:node_modules/isarray Completed in 204ms
npm timing reifyNode:node_modules/sax Completed in 203ms
npm timing reifyNode:node_modules/tar/node_modules/safe-buffer Completed in 204ms
npm timing reifyNode:node_modules/delegates Completed in 205ms
npm timing reifyNode:node_modules/concat-map Completed in 206ms
npm timing reifyNode:node_modules/are-we-there-yet Completed in 208ms
npm timing reifyNode:node_modules/safer-buffer Completed in 207ms
npm timing reifyNode:node_modules/nopt Completed in 208ms
npm timing reifyNode:node_modules/detect-libc Completed in 207ms
npm timing reifyNode:node_modules/glob Completed in 211ms
npm timing reifyNode:node_modules/semver Completed in 210ms
npm timing reifyNode:node_modules/debug Completed in 212ms
npm timing reifyNode:node_modules/rc Completed in 216ms
npm timing reifyNode:node_modules/npm-normalize-package-bin Completed in 221ms
npm timing reifyNode:node_modules/gauge Completed in 227ms
npm timing reifyNode:node_modules/minimist Completed in 228ms
npm timing reifyNode:node_modules/readable-stream Completed in 235ms
npm timing reifyNode:node_modules/tar Completed in 237ms
npm timing reifyNode:node_modules/iconv-lite Completed in 240ms
npm WARN deprecated<EMAIL_ADDRESS>Please upgrade to @mapbox/node-pre-gyp: the non-scoped node-pre-gyp package is deprecated and only the @mapbox scoped package will recieve updates in the future
npm timing reifyNode:node_modules/node-pre-gyp Completed in 240ms
npm timing reifyNode:node_modules/needle Completed in 246ms
npm timing reifyNode:node_modules/nan Completed in 249ms
npm timing reifyNode:node_modules/sqlite3 Completed in 269ms
npm timing reify:unpack Completed in 274ms
npm timing reify:unretire Completed in 0ms
npm timing build:queue Completed in 4ms
npm timing build:link:node_modules/detect-libc Completed in 5ms
npm timing build:link:node_modules/node-pre-gyp Completed in 4ms
npm timing build:link:node_modules/nopt Completed in 4ms
npm timing build:link:node_modules/semver Completed in 4ms
npm timing build:link:node_modules/rc Completed in 4ms
npm timing build:link:node_modules/mkdirp Completed in 5ms
npm timing build:link:node_modules/rimraf Completed in 5ms
npm timing build:link:node_modules/needle Completed in 5ms
npm timing build:link Completed in 6ms
npm info run<EMAIL_ADDRESS>install node_modules/sqlite3 node-pre-gyp install --fallback-to-build
npm info run<EMAIL_ADDRESS>install { code: 1, signal: null }
npm timing reify:rollback:createSparse Completed in 94ms
npm timing reify:rollback:retireShallow Completed in 0ms
npm timing command:i Completed in 3291ms
npm verb stack Error: command failed
npm verb stack     at ChildProcess.<anonymous> (/Users/matteo/.nvm/versions/node/v16.14.0/lib/node_modules/npm/node_modules/@npmcli/promise-spawn/index.js:64:27)
npm verb stack     at ChildProcess.emit (node:events:520:28)
npm verb stack     at maybeClose (node:internal/child_process:1092:16)
npm verb stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:302:5)
npm verb pkgid<EMAIL_ADDRESS>npm verb cwd /Users/matteo/temp/gyp-bug
npm verb Darwin 21.4.0
npm verb argv "/Users/matteo/.nvm/versions/node/v16.14.0/bin/node" "/Users/matteo/.nvm/versions/node/v16.14.0/bin/npm" "i" "--verbose" "sqlite3@4"
npm verb node v16.14.0
npm verb npm  v8.5.5
npm ERR! code 1
npm ERR! path /Users/matteo/temp/gyp-bug/node_modules/sqlite3
npm ERR! command failed
npm ERR! command sh -c node-pre-gyp install --fallback-to-build
npm ERR! LD_LIBRARY_PATH=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/build/Release/lib.host:/Users/matteo/temp/gyp-bug/node_modules/sqlite3/build/Release/lib.target:$LD_LIBRARY_PATH; export LD_LIBRARY_PATH; cd ../deps; mkdir -p /Users/matteo/temp/gyp-bug/node_modules/sqlite3/build/Release/obj/gen/sqlite-autoconf-3310100; python ./extract.py ./sqlite-autoconf-3310100.tar.gz "/Users/matteo/temp/gyp-bug/node_modules/sqlite3/build/Release/obj/gen"
npm ERR! Failed to execute '/Users/matteo/.nvm/versions/node/v16.14.0/bin/node /Users/matteo/.nvm/versions/node/v16.14.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64/node_sqlite3.node --module_name=node_sqlite3 --module_path=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64 --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v93' (1)
npm ERR! node-pre-gyp info it worked if it ends with ok
npm ERR! node-pre-gyp verb cli [
npm ERR! node-pre-gyp verb cli   '/Users/matteo/.nvm/versions/node/v16.14.0/bin/node',
npm ERR! node-pre-gyp verb cli   '/Users/matteo/temp/gyp-bug/node_modules/.bin/node-pre-gyp',
npm ERR! node-pre-gyp verb cli   'install',
npm ERR! node-pre-gyp verb cli   '--fallback-to-build'
npm ERR! node-pre-gyp verb cli ]
npm ERR! node-pre-gyp info using<EMAIL_ADDRESS>npm ERR! node-pre-gyp info using<EMAIL_ADDRESS>| darwin | x64
npm ERR! node-pre-gyp verb command install []
npm ERR! node-pre-gyp WARN Using needle for node-pre-gyp https download
npm ERR! node-pre-gyp info check checked for "/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64/node_sqlite3.node" (not found)
npm ERR! node-pre-gyp http GET https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v93-darwin-x64.tar.gz
npm ERR! node-pre-gyp http 403 https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v93-darwin-x64.tar.gz
npm ERR! node-pre-gyp WARN Tried to download(403): https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v93-darwin-x64.tar.gz
npm ERR! node-pre-gyp WARN Pre-built binaries not found for<EMAIL_ADDRESS>and<EMAIL_ADDRESS>(node-v93 ABI, unknown) (falling back to source compile with node-gyp)
npm ERR! node-pre-gyp http 403 status code downloading tarball https://mapbox-node-binary.s3.amazonaws.com/sqlite3/v4.2.0/node-v93-darwin-x64.tar.gz
npm ERR! node-pre-gyp verb command build [ 'rebuild' ]
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp verb cli [
npm ERR! gyp verb cli   '/Users/matteo/.nvm/versions/node/v16.14.0/bin/node',
npm ERR! gyp verb cli   '/Users/matteo/.nvm/versions/node/v16.14.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js',
npm ERR! gyp verb cli   'clean'
npm ERR! gyp verb cli ]
npm ERR! gyp info using<EMAIL_ADDRESS>npm ERR! gyp info using<EMAIL_ADDRESS>| darwin | x64
npm ERR! gyp verb command clean []
npm ERR! gyp verb clean removing "build" directory
npm ERR! gyp info ok
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp verb cli [
npm ERR! gyp verb cli   '/Users/matteo/.nvm/versions/node/v16.14.0/bin/node',
npm ERR! gyp verb cli   '/Users/matteo/.nvm/versions/node/v16.14.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js',
npm ERR! gyp verb cli   'configure',
npm ERR! gyp verb cli   '--fallback-to-build',
npm ERR! gyp verb cli   '--module=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64/node_sqlite3.node',
npm ERR! gyp verb cli   '--module_name=node_sqlite3',
npm ERR! gyp verb cli   '--module_path=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64',
npm ERR! gyp verb cli   '--napi_version=8',
npm ERR! gyp verb cli   '--node_abi_napi=napi',
npm ERR! gyp verb cli   '--napi_build_version=0',
npm ERR! gyp verb cli   '--node_napi_label=node-v93'
npm ERR! gyp verb cli ]
npm ERR! gyp info using<EMAIL_ADDRESS>npm ERR! gyp info using<EMAIL_ADDRESS>| darwin | x64
npm ERR! gyp verb command configure []
npm ERR! gyp verb find Python Python is not set from command line or npm configuration
npm ERR! gyp verb find Python Python is not set from environment variable PYTHON
npm ERR! gyp verb find Python checking if "python3" can be used
npm ERR! gyp verb find Python - executing "python3" to get executable path
npm ERR! gyp verb find Python - executable path is<EMAIL_ADDRESS>npm ERR! gyp verb find Python - executing<EMAIL_ADDRESS>to get version
npm ERR! gyp verb find Python - version is "3.9.10"
npm ERR! gyp info find Python using Python version 3.9.10 found at<EMAIL_ADDRESS>npm ERR! gyp verb get node dir no --target version specified, falling back to host node version: 16.14.0
npm ERR! gyp verb command install [ '16.14.0' ]
npm ERR! gyp verb install input version string "16.14.0"
npm ERR! gyp verb install installing version: 16.14.0
npm ERR! gyp verb install --ensure was passed, so won't reinstall if already installed
npm ERR! gyp verb install version is already installed, need to check "installVersion"
npm ERR! gyp verb got "installVersion" 9
npm ERR! gyp verb needs "installVersion" 9
npm ERR! gyp verb install version is good
npm ERR! gyp verb get node dir target node version installed: 16.14.0
npm ERR! gyp verb build dir attempting to create "build" dir: /Users/matteo/temp/gyp-bug/node_modules/sqlite3/build
npm ERR! gyp verb build dir "build" dir needed to be created?  System Darwin 21.4.0
npm ERR! gyp ERR! command "/Users/matteo/.nvm/versions/node/v16.14.0/bin/node" "/Users/matteo/.nvm/versions/node/v16.14.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "build" "--fallback-to-build" "--module=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64/node_sqlite3.node" "--module_name=node_sqlite3" "--module_path=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64" "--napi_version=8" "--node_abi_napi=napi" "--napi_build_version=0" "--node_napi_label=node-v93"
npm ERR! gyp ERR! cwd /Users/matteo/temp/gyp-bug/node_modules/sqlite3
npm ERR! gyp ERR! node -v v16.14.0
npm ERR! gyp ERR! node-gyp -v v9.0.0
npm ERR! gyp ERR! not ok
npm ERR! node-pre-gyp ERR! build error
npm ERR! node-pre-gyp ERR! stack Error: Failed to execute '/Users/matteo/.nvm/versions/node/v16.14.0/bin/node /Users/matteo/.nvm/versions/node/v16.14.0/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js build --fallback-to-build --module=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64/node_sqlite3.node --module_name=node_sqlite3 --module_path=/Users/matteo/temp/gyp-bug/node_modules/sqlite3/lib/binding/node-v93-darwin-x64 --napi_version=8 --node_abi_napi=napi --napi_build_version=0 --node_napi_label=node-v93' (1)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.<anonymous> (/Users/matteo/temp/gyp-bug/node_modules/node-pre-gyp/lib/util/compile.js:83:29)
npm ERR! node-pre-gyp ERR! stack     at ChildProcess.emit (node:events:520:28)
npm ERR! node-pre-gyp ERR! stack     at maybeClose (node:internal/child_process:1092:16)
npm ERR! node-pre-gyp ERR! stack     at Process.ChildProcess._handle.onexit (node:internal/child_process:302:5)
npm ERR! node-pre-gyp ERR! System Darwin 21.4.0
npm ERR! node-pre-gyp ERR! command "/Users/matteo/.nvm/versions/node/v16.14.0/bin/node" "/Users/matteo/temp/gyp-bug/node_modules/.bin/node-pre-gyp" "install" "--fallback-to-build"
npm ERR! node-pre-gyp ERR! cwd /Users/matteo/temp/gyp-bug/node_modules/sqlite3
npm ERR! node-pre-gyp ERR! node -v v16.14.0
npm ERR! node-pre-gyp ERR! node-pre-gyp -v v0.11.0
npm ERR! node-pre-gyp ERR! not ok
npm verb exit 1
npm timing npm Completed in 3566ms
npm verb unfinished npm timer reify<PHONE_NUMBER>518
npm verb unfinished npm timer reify:build<PHONE_NUMBER>197
npm verb unfinished npm timer build<PHONE_NUMBER>198
npm verb unfinished npm timer build:deps<PHONE_NUMBER>198
npm verb unfinished npm timer build:run:install<PHONE_NUMBER>208
npm verb unfinished npm timer build:run:install:node_modules/sqlite3<PHONE_NUMBER>208
npm verb code 1

npm ERR!      /Users/matteo/.npm/_logs/2022-05-09T06_40_21_252Z-debug-0.log

I believe that a bare bone macOS has a python3 executable that executable is not the interpreter but is a stub which when run, asks the user if they want Python 3 installed.  If the user says Yes then the installation of Python 3 happens which replaces that executable.  The next time python3 is run, the user gets the real deal.  There was something similar in macOS for java.  Does someone have a fresh macOS install that can prove that to be true?

The built-in python3 executable is a valid pre-installed binary on the latest Mac OS X Monterrey:
$ which python
python not found
$ which python3
/usr/bin/python3
$ /usr/bin/python3 --version
Python 3.8.9

The problem is that the python binary is hard-coded somewhere in node-gyp instead of python3.

For those using yarn in a (older) Rails app and a Python installation via pyenv, this finally solved it for me after hours of applying every possible suggested solution:
pyenv install 2.7.18

yarn config set python "/Users/$USER/.pyenv/shims/python2.7""

This will add that config to ~/.yarnrc
Also I made sure to undo as much of the previous given solutions in the other files like: ~/.zsh_profile ~/.zshrc ~/.npmrc
And finally I had to remove the yarn.lock file and update a webpacker version as is suggested here.
Then when running yarn it correctly installed everything.

npm config set python python3 worked for me

Python 2 died 876 days ago on 1/1/2020 so it is no longer supported and @oscaredel must be relying on a very out-of-date release of node-gyp.
The solution of @Fiorello is aligned with our README.md.

@cclauss but python, not python3 is still hardcoded here: https://github.com/nodejs/node-gyp/pull/2660/files#diff-d225e54970d51a7e4f86c99a7c0588d369a05ae27b2e5344c6102e215a7a663bL8

Python 2 died 876 days ago on 1/1/2020 so it is no longer supported and @oscaredel must be relying on a very out-of-date release of node-gyp.
The solution of @Fiorello is aligned with our README.md.

That's correct. The problem is that by default we cannot install binary modules and the result is a very cryptic error for those not familiar with the project. The user experience is really degraded and a tiny fix in this library could improve it quite a lot.
Specifically:
Instead of using xcode-install to get the cli tools, we should check if python3 is available.

Xcode command line tools does NOT install Python.  Node-gyp is using CLT for things like C/C++ compilers.

@cclauss Calling /usr/bin/python3 on Monterey 12.3+ will ask to install Command Line Tools, and after that python3 binary will work.

Python 2 died 876 days ago on 1/1/2020 so it is no longer supported and @oscaredel must be relying on a very out-of-date release of node-gyp.

Yes, can confirm I sometimes try to maintain some low-maintained older applications. I'm not very familiar with this stuff. Honestly, I don't even remember now what I was working on then. I just did a write-up for what worked should anybody else run into a similar error. So feel free to ignore any of my comments if they seem dumb.

npm config set python python3 also solved it for me. Thank you :-)

**Fiorello ** commented May 26, 2022

I have a hard time finding a solution to this problem.
Have tried with npm config set python python3, and yarn config set python "/opt/homebrew/bin/python3", no success.
It still seems to try to use python.
@cclauss I saw a link to this PR #2362  but that does not seem to help me.

Macbook Pro 16" m1
<EMAIL_ADDRESS><EMAIL_ADDRESS><EMAIL_ADDRESS>
npm ERR! code 1
npm ERR! path /Users/me/code/node_modules/gl
npm ERR! command failed
npm ERR! command sh -c -- prebuild-install || node-gyp rebuild
npm ERR! prebuild-install info begin Prebuild-install version 7.1.1
npm ERR! prebuild-install info looking for local prebuild @ prebuilds/gl-v5.0.3-node-v111-darwin-arm64.tar.gz
npm ERR! prebuild-install info looking for cached prebuild @ /Users/niftitech/.npm/_prebuilds/e4bfec-gl-v5.0.3-node-v111-darwin-arm64.tar.gz
npm ERR! prebuild-install http request GET https://github.com/stackgl/headless-gl/releases/download/v5.0.3/gl-v5.0.3-node-v111-darwin-arm64.tar.gz
npm ERR! prebuild-install http 404 https://github.com/stackgl/headless-gl/releases/download/v5.0.3/gl-v5.0.3-node-v111-darwin-arm64.tar.gz
npm ERR! prebuild-install warn install No prebuilt binaries found (target=19.1.0 runtime=node arch=arm64 libc= platform=darwin)
npm ERR! gyp info it worked if it ends with ok
npm ERR! gyp verb cli [
npm ERR! gyp verb cli   '/usr/local/bin/node',
npm ERR! gyp verb cli   '/Users/me/code/node_modules/.bin/node-gyp',
npm ERR! gyp verb cli   'rebuild'
npm ERR! gyp verb cli ]
npm ERR! gyp info using<EMAIL_ADDRESS>npm ERR! gyp info using<EMAIL_ADDRESS>| darwin | arm64
npm ERR! gyp verb command rebuild []
npm ERR! gyp verb command clean []
npm ERR! gyp verb clean removing "build" directory
npm ERR! gyp verb command configure []
npm ERR! gyp verb find Python checking Python explicitly set from command line or npm configuration
npm ERR! gyp verb find Python - "--python=" or "npm config get python" is "python3"
npm ERR! gyp verb find Python - executing "python3" to get executable path
npm ERR! gyp verb find Python - executable path is<EMAIL_ADDRESS>npm ERR! gyp verb find Python - executing<EMAIL_ADDRESS>to get version
npm ERR! gyp verb find Python - version is "3.10.8"
npm ERR! gyp info find Python using Python version 3.10.8 found at<EMAIL_ADDRESS>npm ERR! gyp verb get node dir no --target version specified, falling back to host node version: 19.1.0
npm ERR! gyp verb command install [ '19.1.0' ]
npm ERR! gyp verb install input version string "19.1.0"
npm ERR! gyp verb install installing version: 19.1.0
npm ERR! gyp verb install --ensure was passed, so won't reinstall if already installed
npm ERR! gyp verb install version is already installed, need to check "installVersion"
npm ERR! gyp verb got "installVersion" 9
npm ERR! gyp verb needs "installVersion" 9
npm ERR! gyp verb install version is good
npm ERR! gyp verb get node dir target node version installed: 19.1.0
npm ERR! gyp verb build dir attempting to create "build" dir: /Users/me/code/node_modules/gl/build
npm ERR! gyp verb build dir "build" dir needed to be created?  System Darwin 21.6.0
npm ERR! gyp ERR! command "/usr/local/bin/node" "/Users/me/code/node_modules/.bin/node-gyp" "rebuild"
npm ERR! gyp ERR! cwd /Users/me/code/node_modules/gl
npm ERR! gyp ERR! node -v v19.1.0
npm ERR! gyp ERR! node-gyp -v v9.3.0
npm ERR! gyp ERR! not ok

node-gyp found Python 3.10 and is happy to use it but you need to edit angle/src/angle.gyp and change
python commit_id.py check -->
python3 commit_id.py check

@cclauss I installed pyenv and added Python 2.7.
Then I also had to downgrade to Node 18, otherwise the package I wanted to install dit not install.
Don't know why that helped, but I'm happy it did.

Python 2 died 1,058 days ago on 1/1/2020.  Use it at your own risk.

Run into today while setting up my new M1 Macbook.
installed nodenv and that's what I get when attempting to install v12 node. Node v18 is already in place and it's been installed with no such issues.
➜  ~ nodenv install 12.22.12
Downloading node-v12.22.12.tar.gz...
-> https://nodejs.org/dist/v12.22.12/node-v12.22.12.tar.gz

WARNING: node-v12.22.12 is in LTS Maintenance mode and nearing its end of life.
It only receives *critical* security updates, *critical* bug fixes and documentation updates.

Installing node-v12.22.12...

BUILD FAILED (OS X 13.0.1 using node-build 4.9.100)

Inspect or clean up the working tree at /var/folders/w8/y_tch3yd1r7_6nhrz4m4k6vh0000gn/T/node-build.20221201002133.39299.6lW2Kx
Results logged to /var/folders/w8/y_tch3yd1r7_6nhrz4m4k6vh0000gn/T/node-build.20221201002133.39299.log

Last 10 log lines:
make: python: Command not found
make: python: Command not found
make: python: Command not found
make: python: Command not found
make: python: Command not found
make: python: Command not found
make: python: Command not found
make: python: Command not found
Missing or stale config.gypi, please run ./configure

I tried being smart and aliased python to python3 but that didn't change anything
➜  ~ which python
python: aliased to python3
➜  ~ python
Python 3.9.6 (default, Sep 26 2022, 11:37:49)
[Clang 14.0.0 (clang-14<IP_ADDRESS>)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>>

Note for you @cclauss - python3 came preinstalled with my system 13.0.1 (22A400) - I didn't have to do anything.

Sorry.  Node.js v12 is no longer supported https://github.com/nodejs/release#release-schedule

Did you get to fix the issue @jacek213?

@Noitham bumped node version in my app... nothing else worked for me

@jacek213 Install pyenv, python 2.7. Set python 2.7 as global.

Python 2 died 1,091 days ago on 1/1/2020.  Using it without any security updates in all that time is just asking for trouble.

For my case, it was better to make just symbolic link to python3 to python. it worked for me.
(24-inch, M1, 2021)
Python3 was Installed using brew before.
$ cd /opt/homebrew/bin
$ sudo ln -sf python3 python

For my case, it was better to make just symbolic link for python3 to python. it worked for me. (24-inch, M1, 2021)
Python3 was Installed using brew before.
$ cd /opt/homebrew/bin
$ sudo ln -sf python3 python

The strong recommendation here is to create a venv which will give you a local python that you can pip install your dependencies into without effecting other Python projects on your system.
https://snarky.ca/how-virtual-environments-work

For my case, it was better to make just symbolic link for python3 to python. it worked for me. (24-inch, M1, 2021)
Python3 was Installed using brew before.
$ cd /opt/homebrew/bin
$ sudo ln -sf python3 python

This seems like it'll work, but for me it's failing because it looks for a very specific version of python:
Please use python3.10 or python3.9 or python3.8 or python3.7 or python3.6 or python3.5 or python2.7.
Node.js configure: Found Python 3.11.3...

Kind of silly, but I'll downgrade Python for now to get around it

You are not running a current version of node-gyp

For my case, it was better to make just symbolic link for python3 to python. it worked for me. (24-inch, M1, 2021)
Python3 was Installed using brew before.
$ cd /opt/homebrew/bin
$ sudo ln -sf python3 python

this solution even working on ubuntu lts 20

@AI-Chef bad idea but it is your machine.

https://snarky.ca/how-virtual-environments-work from a longtime Python code dev.

Instead of creating symlink and affecting other python projects, Create a venv in your current node project folder and do npm install again.


[Tour of Beam][Task] Add analytic events to tour of beam

What needs to happen?
Need to add analytics events for ToB application:
Please consider following set of events and metrics:
Tour Of Beam Analytics Metrics

Audience
Number of users
New users
Number of Sessions per User
Sessions
Avg. Session Duration
New Visitor vs Returning Visitor
Language breakdown
Country breakdown
Device breakdown
Registered\Anonymous users

Tour Of Beam Usage

Units opened

By Unit
By SDK

Examples run

By example
By SDK

Examples modified

By Example
By SDK

Units completed

By Unit
By SDK

Modules completed ???

By Module
By SDK

Feedback (likes\dislikes)

By units
By SDK

Time spent in a unit ???

By Unit
By SDK

Issue Priority
Priority: 3
Issue Components:
tour-of-beam

.take-issue


Enable go1.7 tests on travis

Go 1.7 is here! Lets start running our tests on travis with go 1.7 as well.
We might want to reconsider our matrix and consolidate a couple of tests to speed up the build process now that this addition brings our matrix to 15 runs.

💯 LGTM!

Coverage increased (+0.1%) to 95.184% when pulling 32aa8e40b6c06a74bc24ca9c9735e14afc6cdc7b on travis/go1.7 into d0de5fe1333074d5c41a88e9053592e39f495bb2 on dev.

Coverage increased (+0.1%) to 95.184% when pulling 32aa8e40b6c06a74bc24ca9c9735e14afc6cdc7b on travis/go1.7 into d0de5fe1333074d5c41a88e9053592e39f495bb2 on dev.

Coverage increased (+0.1%) to 95.184% when pulling 32aa8e40b6c06a74bc24ca9c9735e14afc6cdc7b on travis/go1.7 into d0de5fe1333074d5c41a88e9053592e39f495bb2 on dev.

lgtm