implementation of a generic iterator interface, api changes

I changed the API as suggested here.
In addition the Navigation interface now implements a Iterator interface in a generic way.
public abstract class Navigation<T extends Selection> implements Iterator<T> {
...
}

This makes the code in my opinion much more readable and the Class cast is no longer needed:
	nav = new TextNavigation(phrase, doc);
	while (nav.hasNext()) {
              TextSelection currentSelection = search.next();
              OdfElement currentElement = search.getElement();
	    ....
	}

Hello Ralph,
Your work does really improve the former implementation a lot!
I find the prior existing search functionalty quite difficult to understand, while the underlying search scenario seems relativ easy (looking for strings in certain elements within the document), its API improvement seems quite complex to me and I might need more time and/or discussions!
Only looked briefly into it today and realized, I need to sleep over it and look over it during next week as it is not easy to decide. :-)
Some questions on the prior & new API you might speed up my review:
For instance,

I am puzzled why the method next() is returning the current selection result and looking in TextNavigation the method public TextSelection next() is not searching for the next selection, but always returning the current.
On the other hand the method hasNext() is always searching for the next selection. Is hasNext() doing a state change?

To make things even more complex, I would like to point out that this functionality was added by IBM Beijing around 2009. StarOffice team was dismissed by Oracle in 2010. And I started to work for Open-XChange in 2011 on ODFDOM to be used as the backend of a WebOffice only dispatching editor changes instead of exchanging complete documents.
Document changes require to point at a document, Adding IDs to all possible referenceable items would blow up the size of the document, therefore by doing "convention over configuration" we simply count the "user known items" (UKI) in the document that are being changed. Multiple XML elements might be a single "user known item" (e.g. table) and every character is a user known item. Styles are just metadata (subfeatures) on these UKI.
Long story short, instead of refactoring this selection (I guess I simply have not thought at that time), I created a new one in parallel in changes package:

TextSelection
FieldSelection
TextSpanSelection
TextHyperlinkSelection

Fun fact, basically the Hyperlink is just a Selection of Text with the property of an URL! :-)
It is not part of this API change as it has no change functionality, but in theory these both parts belong closer together.
Have a nice Sunday, Ralph!
PS: Some other functionality as tables have overlapping in the change package, too...

Hi Svante,
yes I agree with you that the methods next() and hasNext() are currently implemented in an untypical way.
The problem was, initially only the method hasNext() exits. I don't wanted to change to much in the API so more or less I have simply replaced currentElement() with next(). But I am also not happy.
Currently you can't call next() several times in series because nothing will change.
Should we change this in a first next step

hasNext() only verifies if a selection exits
next() should do the logic like the current hasNext() implementation.

Yes, I think this would be a good idea to do as you suggest!
And of course it is always good not to change much API logic - unless it is necessary or it makes a lot of sense ;-)

Hello Ralph,
I do not want to be too strict as the original donated code was never that hard reviewed, let's see if we the same understanding or maye I am overseeing something. ;-)
We have this two methods:

next()
hasNext()

If hasNext() might be called in the very beginning, it certainly have to call the similar underlying functionality similar to the next() function to search if there is some string to be found in the ODF. The found string should be cached, as if hasNext() is being called just again this cached string should be returned (instead of looking for a new one), right?
if afterwards next() is called, it would first check if there is a cached string from hasNext(), if this is the case, this one will be returned and set to null, if null from the beginning the same search function as called by hasNext() is being triggered.
That is basically what I wanted to write on Sunday, but I was without coffein :-)
Does it make sense? Do I oversee something?
PS: We might as well have a good old voice call (or VOIP) to quickly discuss this and some context - as I now looked a bit deeper into this functionality! :-)
I would be glad to have a remote tea break- available on 4th July frolm 8:30 to 15:45 and again after 16:15 - otherwise send me your time possibilites or confirmation to<EMAIL_ADDRESS>

I agree totally with you. And I have tried my very best - except the caching idea.

Hi @svanteschubert,
I now started to implement a new version with a cleaner usage of the Iterator interface as you suggested.
So I also stumbled now over this static SelectionManager. And I removed it now in my first approach completely.
I archived my first goal and the next() and hasNext() methods now behave exactly like defined in the Iterator javadoc including throwing a NoSuchElementException if no more elements exits and the user calls next() again.
So this looks now really much better!
But now: The Selection class have a lot of such pasteAtFrontOf, pasteAtEndOf, cut,... methods. In our today's call I understood you that there are already a 'change'-API to manipulate nodes. If so, than this could be a good moment to remove duplicate code?
My problem is, that the implementation of these methods in the search.Selection Class expect a lot of the old behaviour and this would now take a lot of time to tweak these methods in a way to work correctly on the new Iterator Interface.
So what should I do? Should I go through all the junit tests and tweak this Selection methods? Or do you have a maybe better API I could use here? If so maybe we got much better junit test out of this work...

Hi Ralph,
I might look into this earliest in the late afternoon, therefore I will answer now briefly:

Hi @svanteschubert, I now started to implement a new version with a cleaner usage of the Iterator interface as you suggested. So I also stumbled now over this static SelectionManager. And I removed it now in my first approach completely.
I archived my first goal and the next() and hasNext() methods now behave exactly like defined in the Iterator javadoc including throwing a NoSuchElementException if no more elements exits and the user calls next() again.
So this looks now really much better!

These are indeed good news!!
I think the approach to cut out SelectionManager is an approach that I would have tried as well...

But now: The Selection class have a lot of such pasteAtFrontOf, pasteAtEndOf, cut,... methods. In our today's call I understood you that there are already a 'change'-API to manipulate nodes. If so, than this could be a good moment to remove duplicate code? My problem is, that the implementation of these methods in the search.Selection Class expect a lot of the old behaviour and this would now take a lot of time to tweak these methods in a way to work correctly on the new Iterator Interface.
So what should I do? Should I go through all the junit tests and tweak this Selection methods? Or do you have a maybe better API I could use here? If so maybe we got much better junit test out of this work...

The scenario of the existing change code is that a list of ODF changes (delivered in JSON) is being applied to the ODF document. The change position is defined by an integer list, similar to an XPath counting the user entities (but not the XML).
And this is exactly the problem, here in the concept of user-entitiy positions is unknown and just the element with the text being handled (usually text:p and text:h).
We might return the start and end position of the found text and apply text changes from the existing API.
Let me dive deeper into it (hopefully) tomorrow afternoon.
Thanks so far for your help, Ralph. Very much appreciated!
Good night, Svante

Hi, @svanteschubert
I am still working on the new implementation, but I committed my draft just to give you an impression what I try to archive.
I have written a new Junit Test method just testing the behaviour of the Iterator interface in different scenarios
See here:
https://github.com/rsoika/odftoolkit/blob/8b4593aba902dcd6575882b0d19e6d425ca9978f/odfdom/src/test/java/org/odftoolkit/odfdom/incubator/search/TextNavigationTest.java#L171
Please do not peek to much into my code now - it is work in progress.....
So now, only the junit test that are manipulating the elements are now broken. It would be great if we could switch to your change API.
Can you give me an simple example how you replace part of a text in an element with your API?

Hi, @svanteschubert once again I want to share my thoughts (but please don't feel pressured by me now and read it when you find time):
I finished the TextNavigation implementation. The class now implements the Iterator interface in a elegant way and it works like a charm. I am very happy with this. You can search for regex-patterns and navigate through the document.
For my own project this is all what I expect from the navigator. The Selection class - which is the object class returned by the navigator - provides the Container Element and even the position within the text where the pattern was found.
So far everything is super fine.
BUT: The Selection object also provides a lot of methods to cut and paste text before and after the selection. All these methods (and this is a very lot of code) depend on the very strange behaviour of the initial code - including this static SelectionManager which was only necessary for all these modify-methods - not for the navigation.
I - and this is my personal opinion - would not expect that a Navigator API provides me methods to modifiy the document. I am sure it is easy enough with the existing API to change the document content when iterating through the document. At least I have done this in our own project by simply modify the content of an Container Element returned by the Navigator. (I did not even notice that the TextSelection provides a method replaceWith(String) )
A lot of the junit tests dealing with the modification of the current selection, are currently broken. This is because these tests depend on the modify-methods provided by the TextSeleciton object and the SelectionManager which I have disabled for now.
I think it should be not to difficulty to re-implement these tests with the core functionality and not using the replace/paste/delete/... methods on the TextSelection class.
Of course I think the Junit Tests are all fine, because they demonstrate how to use the navigation API to modify the content of a document. And I understood you in such a way that you also don't think  that the modifiy-methods in the serach-package are ideal?
So my question is: Do you think it is worth to re-implement the junit tests and later remove the modify-methods from the Navigator API?

Hi, @svanteschubert
I finished now things as far as I was able.
The Iterator Interface is now correctly implemented for both Navigation implementations. I cleaned up the code as good as I was able to.
I inserted the SelectionManager now as a member variable for the TextNavigation and TextStyleNavigation. (No more static class). The SelectionManager is only needed for the modify methods as I mentioned before. But it is very important.
After diving deeper and deeper into the code, I understood that the modify methods are needed inside the Navigation for use cases in which you whant to replace parts of a paragraph including the correct formatting. Most of junit tests are dealing with style sheets during modification. The method TextSelectionTest.testReplacewithAndBold() is a good example of what the idea behind is. The test not only replaces a text, but also applys a style to each new replacement. Internally this means new span-tags are created. Of course you know all this much much better than I do. And it takes me now hours and hours to get through all this.
Anyway - now all Unit Test are fine - except the tests dealing with the methods pasteAtFrontOf and pasteAtEndOf. These tests are disabled because the broke! I tried my very best but I cant fix this as the complexity it to height for me.
The test TextSelectionTest.testPasteAtFrontOfFirst() demonstrates what is expected. It selects the crazy formatted text pattern 'change' and insert it before the text pattern 'delete':

As you can see, this test is working fine. So things are not totally bad. But if the parent element hat more occurrences of the text pattern (like in the test method refreshAfterPasteAtFrontOf), than something goes wrong. The root of the problem seems to be the Method refreshAfterPasteAtFrontOf of the SelectionManager.
I was not able to fix the problem and have now given up a bit frustrated. It would be great if you would still accept my changes so far and we could track the PasteAtFront and PasteAtEnd methods as a separate issue.
What do you think?

@rsoika Thank you so far, I am curious on what you changed and on the problems you mentioned.
I have no problem to split off a certain problem - it will be far better than earlier.
Is it okay to postpone it to next week?
As I had and have no capacities this week to do the review, but quite certain that I can do it in the first 3 days next working week.
Perhaps I will try to reuse the existing functionality to change content from the ODF Element base class, see https://github.com/tdf/odftoolkit/blob/master/odfdom/src/main/java/org/odftoolkit/odfdom/pkg/OdfElement.java

@svanteschubert  no problem. When you find time next week that's fine. We can also do a short call next week to synchronize and sort out confusions ;-)

Hi Ralph, I reviewed and found the issue, had to create a new PR with my added commits on top:
https://github.com/tdf/odftoolkit/pull/240
We continue in #240
Thanks!


Age of air diagnostic porting

The age of air diagnostic captures how old air is at each grid-point as a function of forecast lead-time. It provides a measure of dilution within a limited area model. It requires 3D fields at each model output on standard pressure levels. The diagnostic will be applied within the BoM ACCESS models to compare their new wider domain setup to the existing multiple LAM setup (JamesW to visit BoM under the UNITE programme in Feb2023). This issue will capture development, implementation of this diagnostic.

To think further: how to compute grid spacing on grid/regridding, as currently assumes 111km = 1 deg longitude. Not applicable outside tropics.
Development of test cases: 1. linear (laminar) flow, 2. linear rising flow with background profile of increasing winds with height.  3. some idealised equatorial Rossby wave flow e.g. this

Further testing suggests 0.5 degree is suitable as a standard grid for running the AOA code through currently (without optimisations). 1 degree is quite coarse and we lose a lot of important local detail.
Smoothing has been implemented using a Gaussian filter using Scipy for vertical velocity, as we are using instantaneous winds if we sample a larger MCS/storm complex, we might get updraft velocities of 1m/s on 0.5 unsmoothed grid, which integrated over 3hours would reach top of troposphere/surface. So smoothing reduces these grid-points where the back trajectory suddently spans entire atmospheric column. Some further testing needed for optimal sigma arguments for Gaussian smoothing.
Test cases have started being created (linear flow, SW flow, and two layer flow with a grid-point set at 1/-1m/s vertical velocity. Visuals for these test cases will be produced to qualitatively evaluate them, and then once established correctly working, correct output will be used to assert value.

the age of air code scales nicely with multiprocessing. I iterate over longitude points as the pooled processes. Scalability depends on how long the forecast is (more back trajectories), and of course shape of domain (most are square-ish). Beyond about 12 cores performance tends to tail off, guessing due to IO or moving data around/slicing etc. Though we probably wouldn't want to request more than that anyway given queuing. Mem usage scales quite well. We will take pressure level as an argument from the CYLC workflow, rather than run the code on all available pressure levels. Currently working on regrid operator and also unit tests. The diagnostic plays nicely with ACCESS-A data at BoM, on the NCI platform.


Update with newest BrainTree

Hi,
Nice work.
Can you guys update with newest BrainTree sdk and include Paypal options for it,
Thanks so much

please update


[Calling][Feature] Closed Captions Feature

Purpose

ACS & Teams Closed Captions Support

Does this introduce a breaking change?

[ ] Yes
[x] No

Pull Request Type
What kind of change does this Pull Request introduce?

[ ] Bugfix
[ ] Feature
[ ] Code style update (formatting, local variables)
[ ] Refactoring (no functional changes, no api changes)
[ ] Documentation content changes
[ ] Other... Please describe:

Pull Request Checklist

[ ] Public API changes
[ ] Verified for cross-platform
[ ] Synced with iOS, Web team
[ ] Internal review completed
[ ] UI Changes

[ ] Screen captures included
[ ] Tested for Light/Dark mode
[ ] Tested for screen rotation
[ ] Tested on Tablet and small screen device (5")
[ ] Include localization changes

[ ] Tests

[ ] Memory leak analysis performed
[ ] Tested on API 21, 26 and latest
[ ] Tested for background mode
[ ] Unit Tests Included
[ ] UI Automated Tests Included

How to Test

Open...
Click on...

What to Check
Verify that the following are valid

...

Other Information

Closed, use the feature branch.


Atlas has unlinked air filters and vents

Description

title
Reproduction

play atlas
Additional context

only seems to be the new sec ones added and some in the rtg room

closing since it got removed #31058


typos

minor typos

"its" is correct here ("arguments of the function", not "it is arguments"). And "needn't" is definitely not a typo.

As @GingerPlusPlus says, "its" is correct.  While "needn't" is not a typos, I do prefer "need not" here.  I think it's easier to understand.

oops, "its" is correct. Sorry!


[TypeScript][DI] Add missing import into samples & templates

Purpose
What is the context of this pull request? Why is it being done?
Changes
Are there any changes that need to be called out as significant or particularly difficult to grasp? (Include illustrative screenshots for context if applicable.)
Tests
Is this covered by existing tests or new ones? If no, why not?
Feature Plan
Are there any remaining steps or dependencies before this issue can be fully resolved? If so, describe and link to any relevant pull requests or issues.
Checklist
General

[ ] I have commented my code, particularly in hard-to-understand areas
[ ] I have added or updated the appropriate tests
[ ] I have updated related documentation

Yes, I double-checked the unit tests in the samples. I assume that the templates as the samples should work fine.

I'll close it as you have implemented the changes in the PR of MS


Allow using a static IP for a bastion host

This allows setting a static IP for the bastion host (defaulting to null, which allocates an ephemeral IP as it works today).

Thanks for your contribution! This looks good to me. Going to kick off a build now, and if that passes, will merge.

Build passed, so will go ahead and merge + release!


Will React.Basic.Hooks replace React.Basic at some point?

We've got a bunch of code based on React.Basic and are planning on migrating to React.Basic.Hooks as the interface seems more logical / ergonomic. I was wondering whether this is a long term plan on consolidating these?

They're completely compatible, so there's not much of a rush, but yes, kind of.
The hooks api is capable of everything the non-hooks api is capable of, with some refactoring. Plus, useReducer and useAffReducer (under consideration here) make conversion pretty easy.
So we could eventually replace the React.Basic module with the React.Basic.Hooks module. I don't think this is the right approach, though, mostly because it would force the conversion of old components to get new hooks or react-basic libraries, and if a component is working just fine I don't think it makes sense to do that. Instead, I'd like to possibly split up the modules into smaller libraries:

react-basic-?: The existing React.Basic module
react-basic-compat: The existing React.Basic.Compat module
react-basic-dom: All the modules under React.Basic.DOM in the current react-basic module
react-basic-hook: Unchanged
react-basic-native: Unchanged
react-basic: A new release with only the React.Basic type definitions, and minus the React.Basic and React.Basic.Compat implementations.

This makes it easier for people to pick and choose the apis they like and maintain them separately without much conflict (as long as the ReactComponent and JSX types haven't changed anyway)

Thank you for the summary, this sounds good!
If there is anything I can help with when you decide to start this consolidation, please let me know.

So would the first item in your list (react-basic-?) be a minimal core that the rest of the react-basic libraries depend on?

done!


[GENERAL] Using Git Wiki without github pages

I'm thinking of using the awesome work done with github wiki on other platforms, like netlify / netlify cms.
How should I go about doing this to phase out the github pages specific parts?
Thank you for your help.

It's doable, but the only way I guess it can work would be to upload the artifacts built on github with jeckyll, on netify.
So for instance you can build your own artifact using the github actions and jekyll (there are also some existing actions on the marketplace: https://github.com/marketplace/actions/jekyll-deploy-gh-pages) and then you send the files to netify. You need a bit of github action knowledge for it, I do not have a detailed guide unfortunately but if you manage to do it, please share your solution


Fix typo in DocBlock

So the IDE stops shouting at me.

The failing Travis build seems unrelated.

Thanks!


Lua 5.1 compatibility

Since luaL_testudata is only available in Lua 5.2 onward, calling it from auxiliar.c requires us to provide it ourselves for the Lua 5.1 build case.  Taken directly from lua/lauxlib.c; tested under Lua 5.1.

Submitted for wrong branch, will resubmit against patch-1


v1.2 app has stopped while click on All Songs

Describe the bug
Bop Music Player has when click on All Songs
How To Reproduce

open Bop Music Player
Click on All Songs
note the bug

Expected behavior
it expected that when i click on All Songs it open all music without any crash .
Devices and Versions

Browser/App version: v1.2
Operating system: Android 8.1.0

Recording Of The Bug:
https://youtu.be/Y3I2BRh0tEs

@iamSahdeep please feedback

@kr-nahid sorry for late response, i am bit busy these days. This issue seems only happening to your device. Can you share more details or logs? Or can you swipe right to see list of all songs or its just happening while clicking certain button?


roslaunch depthai_examples stereo_inertial_node.launch error

my platform is: Xavier AGX + OAK-D-Pro-Poe
When I launch this
roslaunch depthai_examples stereo_inertial_node.launch
I have get the following error
process[rviz-7]: started with pid [154660]
[ INFO] [1678972948.937030863]: Initializing nodelet with 6 worker threads.
nnPath ,, /home/ubuntu/dai_ws/src/depthai-ros/depthai_examples/resources/yolov4_tiny_coco_416x416_openvino_2021.4_6shave_bgr.blob
1280 720 1280 720
Listing available devices...
Device Mx ID: 19443010E1FF721300
[19443010E1FF721300] [<IP_ADDRESS>] [6.390] [SpatialDetectionNetwork(9)] [warning] Network compiled for 6 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance
================================================================================REQUIRED process [stereo_inertial_publisher-3] has died!
process has died [pid 154646, exit code -11, cmd /home/ubuntu/dai_ws/devel/lib/depthai_examples/stereo_inertial_node __name:=stereo_inertial_publisher __log:=/home/ubuntu/.ros/log/9716874c-c3fd-11ed-a061-48b02d5112cc/stereo_inertial_publisher-3.log].
log file: /home/ubuntu/.ros/log/9716874c-c3fd-11ed-a061-48b02d5112cc/stereo_inertial_publisher-3*.log
Initiating shutdown!

Hi, can you run demo script successfully? If yes, please run export DEPTHAI_DEBUG=1 before running launch file again to get some more logs.

Yeah,of course run demo script successfully.
I try to run export DEPTHAI_DEBUG=1 before running launch file again and get
these logs:
[ INFO] [1679020220.232178191]: Initializing nodelet with 6 worker threads.
nnPath ,, /home/ubuntu/dai_ws/src/depthai-ros/depthai_examples/resources/yolov4_tiny_coco_416x416_openvino_2021.4_6shave_bgr.blob
[2023-03-17 10:30:20.615] [info] DEPTHAI_DEBUG enabled, lowered DEPTHAI_LEVEL to 'debug'
[2023-03-17 10:30:20.615] [debug] Library information - version: 2.20.2, commit:  from , build: 2023-02-02 20:08:23 +0000
[2023-03-17 10:30:20.624] [debug] Initialize - finished
1280 720 1280 720
[2023-03-17 10:30:20.832] [debug] Resources - Archive 'depthai-bootloader-fwp-0.0.24.tar.xz' open: 5ms, archive read: 210ms
Listing available devices...
Device Mx ID: 19443010E1FF721300
[2023-03-17 10:30:21.154] [debug] Device - OpenVINO version: 2022.1
[2023-03-17 10:30:21.155] [debug] Device - BoardConfig: {"camera":[],"emmc":null,"gpio":[],"logDevicePrints":true,"logPath":null,"logSizeMax":null,"logVerbosity":null,"network":{"mtu":0,"xlinkTcpNoDelay":true},"nonExclusiveMode":false,"pcieInternalClock":null,"sysctl":[],"uart":[],"usb":{"flashBootedPid":63037,"flashBootedVid":999,"maxSpeed":4,"pid":63035,"vid":999},"usb3PhyInternalClock":null,"watchdogInitialDelayMs":null,"watchdogTimeoutMs":null}
libnop:
0000: b9 10 b9 05 81 e7 03 81 3b f6 81 e7 03 81 3d f6 04 b9 02 00 01 ba 00 be be bb 00 bb 00 be be be
0020: be be be 01 00 bb 00
[2023-03-17 10:30:21.602] [debug] Resources - Archive 'depthai-device-fwp-8c3d6ac1c77b0bf7f9ea6fd4d962af37663d2fbd.tar.xz' open: 6ms, archive read: 979ms
[2023-03-17 10:30:21.625] [debug] Searching for booted device: DeviceInfo(name=<IP_ADDRESS>, mxid=19443010E1FF721300, X_LINK_BOOTLOADER, X_LINK_TCP_IP, X_LINK_MYRIAD_X, X_LINK_SUCCESS), name used as hint only
[2023-03-17 10:30:21.689] [debug] Connected bootloader version 0.0.19
[2023-03-17 10:30:21.689] [info] New bootloader version available. Device has: 0.0.19, available: 0.0.24
[2023-03-17 10:30:22.583] [debug] Booting FW with Bootloader. Version 0.0.19, Time taken: 893ms
[2023-03-17 10:30:22.583] [debug] DeviceBootloader about to be closed...
[2023-03-17 10:30:22.583] [debug] XLinkResetRemote of linkId: (0)
[2023-03-17 10:30:23.831] [debug] DeviceBootloader closed, 1248
[2023-03-17 10:30:23.835] [debug] Searching for booted device: DeviceInfo(name=<IP_ADDRESS>, mxid=19443010E1FF721300, X_LINK_BOOTED, X_LINK_TCP_IP, X_LINK_MYRIAD_X, X_LINK_SUCCESS), name used as hint only
[19443010E1FF721300] [<IP_ADDRESS>] [4.840] [system] [warning] PRINT:LeonCss: GPIO boot mode 0x3, interface SPI_MASTER_EFF
Setting aons(0..4) back to boot from flash (offset = 0)
====ENABLE WATCHDOG====1
initial keepalive, countdown: 7
PLL0: 700000 AUX_IO0: 24000 AUX_IO1: 24000 MCFG: 24000 MECFG: 24000
Board init ret 3
DepthAI Firmware - version: 8c3d6ac1c77b0bf7f9ea6fd4d962af37663d2fbd
eeprom configuration version: 55AA0007
Reading VERSION 7 --- ->
eeprom configuration load from user area, status: 0
Reading VERSION 7 --- ->
Found a device/board entry matching the eeprom data - Board: OAK-D S2 PoE (generic) Device:
Board options: 00000007
--> brdInit ...
brdInitAuxDevices: Error: SC = 27: io_initialize expander_cam_gpios_1 [OK]
spi_N25Q_init: Flash JEDEC ID: c2 25 3a
SR CR: 40 07
QUAD mode already enabled. Dummy cfg: 0x00
Opening bus for IR driver: 1
Failed to probe IR driver LM3644
Opening bus for IR driver: 2
LM3644 detected, ID = 0x02
===== IR write bus 2: 0x07 = 0x89
===== IR write bus 2: 0x02 = 0x01
===== IR write bus 2: 0x03 = 0x00
===== IR write bus 2: 0x04 = 0x00
===== IR write bus 2: 0x05 = 0x00
===== IR write bus 2: 0x06 = 0x00
===== IR write bus 2: 0x07 = 0x09
===== IR write bus 2: 0x08 = 0x1a
===== IR write bus 2: 0x09 = 0x08
===== IR write bus 2: 0x01 = 0x24
Opening bus for IR driver: 3
Failed to probe IR driver LM3644
Closing EEPROm!
MyriaX board configuration
pll0 frequency: 700000, ref0 frequency: 24000
Setup network with bootloader config
OsDrvCprSysDeviceAction() for PCIe failed: 13
nexus0:
pcib0:  on nexus0
PCIE_REGS_PCIE_CFG_ADR = 0x60100
PCIE_REGS_PCIE_PLL_CNTRL_ADR = 0x1
pcib0: Link training complete, PCIe downstream link is UP
pcib0: myriad_pcie_err_interrupt: SMLH LINK UP
pcib0: myriad_pcie_err_interrupt: SMLH LINK DOWN
pcib0: myriad_pcie_err_interrupt: RDLH LINK UP
pcib0: myriad_pcie_err_interrupt: RDLH LINK DOWN
pcib0: myriad_pcie_err_interrupt: CORE RST
pcib0: myriad_pcie_err_interrupt: CORE RSTN
pcib0: myriad_pcie_err_interrupt: LINK REQ RST
pci0:  on pcib0
memcpy_dma_init: got DMA id 62
re0:  at device 0.0 on pci0
re0: Using Memory Mapping!
re0: Using 1 MSI message
Overriden invalid mac address, mac: 44:A9:2C:31:1D:CA
re0: version:1.95.00
re0: Ethernet address: 0x83d2c248
This product is covered by one or more of the following patents:
US6,570,884, US6,115,776, and US6,327,625.
info: re0: Ethernet address: 44:a9:2c:31:1d:ca
myriad_mmc2:  on nexus0
myriad_mmc2: Memory resource: rid 0 tag 0x0 handle 0x33000000 size 0x1
myriad_mmc2: Found that the memory was NULL - releasing.
myriad_mmc2: Error getting voltage regulator resource.
myriad_mmc2: Found that the memory was NULL - releasing.
myriad_mmc2: Error getting card detect resource.
myriad_mmc2: Memory resource: rid 3 tag 0x0 handle 0x20280000 size 0x1
myriad_mmc2: Memory resource: rid 4 tag 0x0 handle 0x83b9cadc size 0x1
myriad_mmc2: IRQ resource: start 0xa001b: irq = 27, priority = 10
myriad_mmc2: Doing host configuration ... 5
myriad_mmc2: CFG 0x0 = 0xffb23840
myriad_mmc2: CFG 0x4 = 0x1c008be
myriad_mmc2: CFG 0x24 = 0xb00a621
myriad_mmc2: CFG 0x2c = 0xa000
myriad_mmc2: Polling CFG 0x40 for 0x40
myriad_mmc2: Polling complete, value became 0x40
myriad_mmc2: Base clock = 200000000 Hz
myriad_mmc2: Re-tuning mode is 1
myriad_mmc2: Re-Tuning timer count is 1 seconds
myriad_mmc2: SDR50 needs tuning.
myriad_mmc2: Supports Vdd=3.3
myriad_mmc2: Supports Vdd=3.0
myriad_mmc2: Supports Vdd=1.8
myriad_mmc2: Supports 8-bit bus width
myriad_mmc2: Supports High Speed
myriad_mmc2: Supports DDR50, DDR52 @ 1.8V
myriad_mmc2: Supports HS200 @ 1.8V
myriad_mmc2: Supports Driver Type A
myriad_mmc2: Supports Driver Type C
myriad_mmc2: Supports Driver Type D
myriad_mmc2: Data timeout counter value = 0xc
myriad_mmc2: Data timeout clock frequency = 48000 kHz, timeout count = 0xc
myriad_mmc2: No voltage regulator.
myriad_mmc2: Card detect task up!
myriad_mmc2: Card attached!
mmc0: <MMC/SD bus> on myriad_mmc2
myriad_mmc2: Updating card mode to SD
myriad_mmc2: powering off.
net.inet.tcp.delayed_ack: 1 -> 0
info: lo0: link state changed to UP
ifconfig: inet6: bad value
ifcommand setting static ip: <IP_ADDRESS> mask: <IP_ADDRESS>, gateway:
route: bad address:
ifcommand failed: exit_code = 68
=== Network ready!
Is booted from flash by bootloader: 0
Started device discovery service!
Waiting for broadcast message..
Setting hostname: luxonis.
Starting network: lo0 re0 re0.
re0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,LINKSTATE>
ether 44:a9:2c:31:1d:ca
inet <IP_ADDRESS> netmask 0xffff0000 broadcast <IP_ADDRESS>
media: Ethernet autoselect
status: no carrier
re0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,LINKSTATE>
ether 44:a9:2c:31:1d:ca
inet <IP_ADDRESS> netmask 0xffff0000 broadcast <IP_ADDRESS>
media: Ethernet autoselect
status: no carrier
re0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,LINKSTATE>
ether 44:a9:2c:31:1d:ca
inet <IP_ADDRESS> netmask 0xffff0000 broadcast <IP_ADDRESS>
media: Ethernet autoselect
status: no carrier
re0: flags=8803<UP,BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,LINKSTATE>
ether 44:a9:2c:31:1d:ca
inet <IP_ADDRESS> netmask 0xffff0000 broadcast <IP_ADDRESS>
media: Ethernet autoselect
status: no carrier
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet <IP_ADDRESS> netmask 0xff000000
groups: lo
lo0: flags=8049<UP,LOOPBACK,RUNNING,MULTICAST> metric 0 mtu 16384
options=680003<RXCSUM,TXCSUM,LINKSTATE,RXCSUM_IPV6,TXCSUM_IPV6>
inet <IP_ADDRESS> netmask 0xff000000
groups: lo
=== Enumerating on socket: Cam_A / RGB / Center
read_config: fopen /etc/dhcpcd.conf': No such file or directory warning: read_config: fopen /etc/dhcpcd.conf': No such file or directory
debug: dhcpcd-7.2.3 starting
read_config: fopen /etc/dhcpcd.conf': No such file or directory warning: read_config: fopen /etc/dhcpcd.conf': No such file or directory
re0: SIOCGIFINFO_FLAGS: Bad file number
err: re0: SIOCGIFINFO_FLAGS: Bad file number
re0: SIOCSIFINFO_FLAGS: Bad file number
err: re0: SIOCSIFINFO_FLAGS: Bad file number
SIOCSRTRFLUSH_IN6: Bad file number
warning: SIOCSRTRFLUSH_IN6: Bad file number
SIOCSPFXFLUSH_IN6: Bad file number
warning: SIOCSPFXFLUSH_IN6: Bad file number
no interfaces have a carrier
warning: no interfaces have a carrier
re0: waiting for carrier
info: re0: waiting for carrier
Probe failed I2C1 0x1a reg 0016: expected 0214, read 0378
Probe failed I2C1 0x1a reg 0016: expected 0214, read 0378

Registered camera A12N02A (imx378) as /dev/Camera_0
camera socket: 0, name: color
config - w: 1920, h: 1080, type: COLOR
config - w: 3840, h: 2160, type: COLOR
config - w: 4056, h: 3040, type: COLOR
Adding socket 0: cam 2. Sen name: IMX378
=== Enumerating on socket: Cam_B / Left
Registered camera TG161B (ov9282) as /dev/Camera_1
camera socket: 1, name: left
config - w: 1280, h: 720, type: MONO
config - w: 1280, h: 720, type: COLOR
config - w: 1280, h: 800, type: MONO
config - w: 1280, h: 800, type: COLOR
Adding socket 1: cam 5. Sen name: OV9282
=== Enumerating on socket: Cam_C / Right
Registered camera TG161B (ov9282) as /dev/Camera_2
camera socket: 2, name: right
config - w: 1280, h: 720, type: MONO
config - w: 1280, h: 720, type: COLOR
config - w: 1280, h: 800, type: MONO
config - w: 1280, h: 800, type: COLOR
Adding socket 2: cam 5. Sen name: OV9282
Initializing XLink...
Waiting 30s for default route interface: info: re0: link state changed to DOWN
initial keepalive, countdown: 6
initial keepalive, countdown: 5
info: re0: link state changed to UP
re0: carrier acquired
info: re0: carrier acquired
debug: re0: interface updated
read_config: fopen /etc/dhcpcd.conf': No such file or directory warning: read_config: fopen /etc/dhcpcd.conf': No such file or directory
re0: SIOCGIFINFO_FLAGS: Bad file number
err: re0: SIOCGIFINFO_FLAGS: Bad file number
re0: SIOCSIFINFO_FLAGS: Bad file number
err: re0: SIOCSIFINFO_FLAGS: Bad file number
SIOCSRTRFLUSH_IN6: Bad file number
warning: SIOCSRTRFLUSH_IN6: Bad file number
SIOCSPFXFLUSH_IN6: Bad file number
warning: SIOCSPFXFLUSH_IN6: Bad file number
DUID 00:01:00:01:e9:6d:a1:86:44:a9:2c:31:1d:ca
info: DUID 00:01:00:01:e9:6d:a1:86:44:a9:2c:31:1d:ca
re0: IAID 2c:31:1d:ca
info: re0: IAID 2c:31:1d:ca
re0: adding address fe80::46a9:2cff:fe31:1dca
info: re0: adding address fe80::46a9:2cff:fe31:1dca
debug: re0: pltime infinity, vltime infinity
ipv6_addaddr1: Bad file number
err: ipv6_addaddr1: Bad file number
debug: re0: delaying IPv6 router solicitation for %0.1f seconds
debug: re0: delaying IPv4 for %0.1f seconds
re0: flags=8843<UP,BROADCAST,RUNNING,SIMPLEX,MULTICAST> metric 0 mtu 1500
options=8219b<RXCSUM,TXCSUM,VLAN_MTU,VLAN_HWTAGGING,VLAN_HWCSUM,TSO4,WOL_MAGIC,LINKSTATE>
ether 44:a9:2c:31:1d:ca
inet <IP_ADDRESS> netmask 0xffff0000 broadcast <IP_ADDRESS>
media: Ethernet autoselect (1000baseT )
status: active
Received device discovery request, sending back - mxid: 19443010E1FF721300, state: 1
Received device discovery request, sending back - mxid: 19443010E1FF721300, state: 1
Received device discovery request, sending back - mxid: 19443010E1FF721300, state: 1
Done!
Temperature: Driver registered.
[19443010E1FF721300] [<IP_ADDRESS>] [4.851] [system] [warning] PRINT:LeonCss: Temperature: Initialized driver.
Temperature: Sensor opened: CSS.
Temperature: Sensor opened: MSS.
Temperature: Sensor opened: UPA.
Temperature: Sensor opened: DSS.
[19443010E1FF721300] [<IP_ADDRESS>] [4.855] [system] [info] Memory Usage - DDR: 0.12 / 340.42 MiB, CMX: 2.05 / 2.50 MiB, LeonOS Heap: 25.65 / 77.32 MiB, LeonRT Heap: 2.89 / 41.23 MiB
[19443010E1FF721300] [<IP_ADDRESS>] [4.855] [system] [info] Temperatures - Average: 36.24 °C, CSS: 37.48 °C, MSS 36.06 °C, UPA: 35.59 °C, DSS: 35.83 °C
[19443010E1FF721300] [<IP_ADDRESS>] [4.855] [system] [info] Cpu Usage - LeonOS 29.50%, LeonRT: 0.60%
[19443010E1FF721300] [<IP_ADDRESS>] [4.862] [system] [warning] PRINT:LeonCss: I: [Timesync] [   6338202] [XLin] startSync:130     Timesync | Callback not set
[2023-03-17 10:30:27.708] [debug] Schema dump: {"connections":[{"node1Id":5,"node1Output":"out","node1OutputGroup":"","node2Id":6,"node2Input":"in","node2InputGroup":""},{"node1Id":3,"node1Output":"depth","node1OutputGroup":"","node2Id":4,"node2Input":"in","node2InputGroup":""},{"node1Id":2,"node1Output":"out","node1OutputGroup":"","node2Id":3,"node2Input":"right","node2InputGroup":""},{"node1Id":1,"node1Output":"out","node1OutputGroup":"","node2Id":3,"node2Input":"left","node2InputGroup":""},{"node1Id":9,"node1Output":"out","node1OutputGroup":"","node2Id":10,"node2Input":"in","node2InputGroup":""},{"node1Id":9,"node1Output":"passthrough","node1OutputGroup":"","node2Id":11,"node2Input":"in","node2InputGroup":""},{"node1Id":3,"node1Output":"depth","node1OutputGroup":"","node2Id":9,"node2Input":"inputDepth","node2InputGroup":""},{"node1Id":7,"node1Output":"preview","node1OutputGroup":"","node2Id":9,"node2Input":"in","node2InputGroup":""},{"node1Id":7,"node1Output":"isp","node1OutputGroup":"","node2Id":8,"node2Input":"in","node2InputGroup":""},{"node1Id":0,"node1Output":"out","node1OutputGroup":"","node2Id":1,"node2Input":"inputControl","node2InputGroup":""},{"node1Id":0,"node1Output":"out","node1OutputGroup":"","node2Id":2,"node2Input":"inputControl","node2InputGroup":""}],"globalProperties":{"calibData":null,"cameraTuningBlobSize":null,"cameraTuningBlobUri":"","leonCssFrequencyHz":700000000.0,"leonMssFrequencyHz":700000000.0,"pipelineName":null,"pipelineVersion":null,"xlinkChunkSize":0},"nodes":[[0,{"id":0,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":45,"name":"out","queueSize":8,"type":0,"waitForMessage":false}]],"name":"XLinkIn","properties":[185,3,189,7,99,111,110,116,114,111,108,130,0,0,80,0,8]}],[1,{"id":1,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":44,"name":"out","queueSize":8,"type":0,"waitForMessage":false}],[["","raw"],{"blocking":false,"group":"","id":43,"name":"raw","queueSize":8,"type":0,"waitForMessage":false}],[["","frameEvent"],{"blocking":false,"group":"","id":42,"name":"frameEvent","queueSize":8,"type":0,"waitForMessage":false}],[["","inputControl"],{"blocking":true,"group":"","id":41,"name":"inputControl","queueSize":8,"type":3,"waitForMessage":false}]],"name":"MonoCamera","properties":[185,8,185,27,0,3,0,0,0,185,3,0,0,0,185,5,0,0,0,0,0,185,5,0,0,0,0,0,0,0,0,0,0,0,0,185,3,0,0,0,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,1,189,0,255,0,136,0,0,112,65,3,3]}],[2,{"id":2,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":40,"name":"out","queueSize":8,"type":0,"waitForMessage":false}],[["","raw"],{"blocking":false,"group":"","id":39,"name":"raw","queueSize":8,"type":0,"waitForMessage":false}],[["","frameEvent"],{"blocking":false,"group":"","id":38,"name":"frameEvent","queueSize":8,"type":0,"waitForMessage":false}],[["","inputControl"],{"blocking":true,"group":"","id":37,"name":"inputControl","queueSize":8,"type":3,"waitForMessage":false}]],"name":"MonoCamera","properties":[185,8,185,27,0,3,0,0,0,185,3,0,0,0,185,5,0,0,0,0,0,185,5,0,0,0,0,0,0,0,0,0,0,0,0,185,3,0,0,0,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,2,189,0,255,0,136,0,0,112,65,3,3]}],[3,{"id":3,"ioInfo":[[["","depth"],{"blocking":false,"group":"","id":36,"name":"depth","queueSize":8,"type":0,"waitForMessage":false}],[["","rectifiedLeft"],{"blocking":false,"group":"","id":34,"name":"rectifiedLeft","queueSize":8,"type":0,"waitForMessage":false}],[["","syncedLeft"],{"blocking":false,"group":"","id":35,"name":"syncedLeft","queueSize":8,"type":0,"waitForMessage":false}],[["","syncedRight"],{"blocking":false,"group":"","id":31,"name":"syncedRight","queueSize":8,"type":0,"waitForMessage":false}],[["","rectifiedRight"],{"blocking":false,"group":"","id":30,"name":"rectifiedRight","queueSize":8,"type":0,"waitForMessage":false}],[["","outConfig"],{"blocking":false,"group":"","id":28,"name":"outConfig","queueSize":8,"type":0,"waitForMessage":false}],[["","debugExtDispLrCheckIt2"],{"blocking":false,"group":"","id":27,"name":"debugExtDispLrCheckIt2","queueSize":8,"type":0,"waitForMessage":false}],[["","debugDispCostDump"],{"blocking":false,"group":"","id":29,"name":"debugDispCostDump","queueSize":8,"type":0,"waitForMessage":false}],[["","confidenceMap"],{"blocking":false,"group":"","id":26,"name":"confidenceMap","queueSize":8,"type":0,"waitForMessage":false}],[["","debugDispLrCheckIt2"],{"blocking":false,"group":"","id":25,"name":"debugDispLrCheckIt2","queueSize":8,"type":0,"waitForMessage":false}],[["","debugDispLrCheckIt1"],{"blocking":false,"group":"","id":32,"name":"debugDispLrCheckIt1","queueSize":8,"type":0,"waitForMessage":false}],[["","debugExtDispLrCheckIt1"],{"blocking":false,"group":"","id":24,"name":"debugExtDispLrCheckIt1","queueSize":8,"type":0,"waitForMessage":false}],[["","disparity"],{"blocking":false,"group":"","id":33,"name":"disparity","queueSize":8,"type":0,"waitForMessage":false}],[["","inputConfig"],{"blocking":false,"group":"","id":23,"name":"inputConfig","queueSize":4,"type":3,"waitForMessage":false}],[["","left"],{"blocking":false,"group":"","id":22,"name":"left","queueSize":8,"type":3,"waitForMessage":true}],[["","right"],{"blocking":false,"group":"","id":21,"name":"right","queueSize":8,"type":3,"waitForMessage":true}]],"name":"StereoDepth","properties":[185,18,185,5,185,9,0,2,136,0,0,122,68,1,0,1,5,3,0,185,7,5,0,185,5,0,2,136,0,0,0,63,0,1,185,4,0,3,136,205,204,204,62,0,185,2,0,134,255,255,0,0,185,2,0,50,185,2,1,0,185,4,255,0,1,0,185,5,1,0,0,128,200,185,3,0,2,127,185,5,1,128,250,129,244,1,128,250,129,244,1,0,1,0,190,190,190,190,1,185,5,189,0,189,0,190,16,16,0,3,255,255,1,190,190,190]}],[4,{"id":4,"ioInfo":[[["","in"],{"blocking":true,"group":"","id":20,"name":"in","queueSize":8,"type":3,"waitForMessage":true}]],"name":"XLinkOut","properties":[185,3,136,0,0,128,191,189,5,100,101,112,116,104,0]}],[5,{"id":5,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":19,"name":"out","queueSize":8,"type":0,"waitForMessage":false}]],"name":"IMU","properties":[185,4,186,2,185,5,0,0,0,129,244,1,20,185,5,0,0,0,129,144,1,21,5,20,0]}],[6,{"id":6,"ioInfo":[[["","in"],{"blocking":true,"group":"","id":18,"name":"in","queueSize":8,"type":3,"waitForMessage":true}]],"name":"XLinkOut","properties":[185,3,136,0,0,128,191,189,3,105,109,117,0]}],[7,{"id":7,"ioInfo":[[["","video"],{"blocking":false,"group":"","id":17,"name":"video","queueSize":8,"type":0,"waitForMessage":false}],[["","still"],{"blocking":false,"group":"","id":15,"name":"still","queueSize":8,"type":0,"waitForMessage":false}],[["","isp"],{"blocking":false,"group":"","id":14,"name":"isp","queueSize":8,"type":0,"waitForMessage":false}],[["","preview"],{"blocking":false,"group":"","id":16,"name":"preview","queueSize":8,"type":0,"waitForMessage":false}],[["","raw"],{"blocking":false,"group":"","id":13,"name":"raw","queueSize":8,"type":0,"waitForMessage":false}],[["","frameEvent"],{"blocking":false,"group":"","id":12,"name":"frameEvent","queueSize":8,"type":0,"waitForMessage":false}],[["","inputConfig"],{"blocking":false,"group":"","id":11,"name":"inputConfig","queueSize":8,"type":3,"waitForMessage":false}],[["","inputControl"],{"blocking":true,"group":"","id":10,"name":"inputControl","queueSize":8,"type":3,"waitForMessage":false}]],"name":"ColorCamera","properties":[185,24,185,27,0,3,0,0,0,185,3,0,0,0,185,5,0,0,0,0,0,185,5,0,0,0,0,0,0,0,0,0,0,0,0,185,3,0,0,0,185,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,189,0,255,0,0,0,129,160,1,129,160,1,255,255,255,255,0,136,0,0,112,65,136,0,0,128,191,136,0,0,128,191,1,185,4,2,3,2,3,3,3,4,4,4]}],[8,{"id":8,"ioInfo":[[["","in"],{"blocking":true,"group":"","id":9,"name":"in","queueSize":8,"type":3,"waitForMessage":true}]],"name":"XLinkOut","properties":[185,3,136,0,0,128,191,189,3,114,103,98,0]}],[9,{"id":9,"ioInfo":[[["","out"],{"blocking":false,"group":"","id":8,"name":"out","queueSize":8,"type":0,"waitForMessage":false}],[["","passthroughDepth"],{"blocking":false,"group":"","id":7,"name":"passthroughDepth","queueSize":8,"type":0,"waitForMessage":false}],[["","passthrough"],{"blocking":false,"group":"","id":6,"name":"passthrough","queueSize":8,"type":0,"waitForMessage":false}],[["","boundingBoxMapping"],{"blocking":false,"group":"","id":5,"name":"boundingBoxMapping","queueSize":8,"type":0,"waitForMessage":false}],[["","in"],{"blocking":false,"group":"","id":4,"name":"in","queueSize":5,"type":3,"waitForMessage":true}],[["","inputDepth"],{"blocking":false,"group":"","id":3,"name":"inputDepth","queueSize":4,"type":3,"waitForMessage":true}]],"name":"SpatialDetectionNetwork","properties":[185,9,130,128,188,185,0,189,12,97,115,115,101,116,58,95,95,98,108,111,98,8,0,0,185,7,0,136,0,0,0,63,80,4,186,12,136,0,0,32,65,136,0,0,96,65,136,0,0,184,65,136,0,0,216,65,136,0,0,20,66,136,0,0,104,66,136,0,0,162,66,136,0,0,164,66,136,0,0,7,67,136,0,0,41,67,136,0,0,172,67,136,0,128,159,67,187,2,189,6,115,105,100,101,49,51,188,12,3,0,0,0,4,0,0,0,5,0,0,0,189,6,115,105,100,101,50,54,188,12,1,0,0,0,2,0,0,0,3,0,0,0,136,0,0,0,63,136,0,0,0,63,185,2,100,129,16,39,0]}],[10,{"id":10,"ioInfo":[[["","in"],{"blocking":true,"group":"","id":2,"name":"in","queueSize":8,"type":3,"waitForMessage":true}]],"name":"XLinkOut","properties":[185,3,136,0,0,128,191,189,10,100,101,116,101,99,116,105,111,110,115,0]}],[11,{"id":11,"ioInfo":[[["","in"],{"blocking":true,"group":"","id":1,"name":"in","queueSize":8,"type":3,"waitForMessage":true}]],"name":"XLinkOut","properties":[185,3,136,0,0,128,191,189,7,112,114,101,118,105,101,119,0]}]]}
[2023-03-17 10:30:27.708] [debug] Asset map dump: {"map":{"/node/9/__blob":{"alignment":64,"offset":0,"size":12172416}}}
[19443010E1FF721300] [<IP_ADDRESS>] [5.072] [system] [warning] PRINT:LeonCss: Calling IPC set assets
[19443010E1FF721300] [<IP_ADDRESS>] [5.598] [system] [warning] PRINT:LeonCss: Asset: /node/9/__blob, pointer: 0x8abb5380, size: 12172416, alignment: 64
[19443010E1FF721300] [<IP_ADDRESS>] [5.604] [MonoCamera(2)] [info] Using board socket: 2, id: 2
[19443010E1FF721300] [<IP_ADDRESS>] [5.605] [MonoCamera(1)] [info] Using board socket: 1, id: 1
[19443010E1FF721300] [<IP_ADDRESS>] [5.609] [system] [warning] PRINT:LeonMss: Calculating resources
Number of cmx slices available 16
[19443010E1FF721300] [<IP_ADDRESS>] [5.608] [system] [info] SpatialLocationCalculator shave buffer size '29696'B
[19443010E1FF721300] [<IP_ADDRESS>] [5.609] [system] [info] SIPP (Signal Image Processing Pipeline) internal buffer size '16384'B
[19443010E1FF721300] [<IP_ADDRESS>] [5.644] [system] [info] ImageManip internal buffer size '258560'B, shave buffer size '34816'B
[19443010E1FF721300] [<IP_ADDRESS>] [5.644] [system] [info] NeuralNetwork allocated resources: shaves: [0-9] cmx slices: [0-9]
ColorCamera allocated resources: no shaves; cmx slices: [13-15]
MonoCamera allocated resources: no shaves; cmx slices: [13-15]
StereoDepth allocated resources: shaves: [12-12] cmx slices: [10-12]
ImageManip allocated resources: shaves: [15-15] no cmx slices.
SpatialLocationCalculator allocated resources: shaves: [14-14] no cmx slices.

[19443010E1FF721300] [<IP_ADDRESS>] [5.653] [system] [warning] PRINT:LeonCss: XLinkIn | Created plgPool as shared: 1
[19443010E1FF721300] [<IP_ADDRESS>] [5.653] [system] [warning] PRINT:LeonMss: sippPalThreadCreate: Thread /SIPP created
[19443010E1FF721300] [<IP_ADDRESS>] [5.785] [system] [warning] PRINT:LeonCss: re0: soliciting an IPv6 router
info: re0: soliciting an IPv6 router
ipv6nd_startrs1: Address family not supported by protocol family
err: ipv6nd_startrs1: Address family not supported by protocol family
debug: re0: using hwaddr 44:a9:2c:31:1d:ca
re0: soliciting a DHCP lease
info: re0: soliciting a DHCP lease
debug: re0: sending DISCOVER (xid 0x1e88fc0b), next in %0.1f seconds
[19443010E1FF721300] [<IP_ADDRESS>] [5.857] [system] [info] Memory Usage - DDR: 51.84 / 340.42 MiB, CMX: 2.40 / 2.50 MiB, LeonOS Heap: 25.94 / 77.32 MiB, LeonRT Heap: 2.97 / 41.23 MiB
[19443010E1FF721300] [<IP_ADDRESS>] [5.857] [system] [info] Temperatures - Average: 36.53 °C, CSS: 38.18 °C, MSS 35.83 °C, UPA: 36.77 °C, DSS: 35.35 °C
[19443010E1FF721300] [<IP_ADDRESS>] [5.857] [system] [info] Cpu Usage - LeonOS 71.46%, LeonRT: 6.40%
[19443010E1FF721300] [<IP_ADDRESS>] [6.049] [system] [warning] PRINT:LeonCss: initial keepalive, countdown: 4
[19443010E1FF721300] [<IP_ADDRESS>] [6.181] [system] [warning] PRINT:LeonMss: Initing ImgPreproc system!
Pre-proc Enc mem used: 46080 bytes. Available: 258560
[19443010E1FF721300] [<IP_ADDRESS>] [6.175] [StereoDepth(3)] [info] Using focal length from calibration intrinsics '797.6929'
[19443010E1FF721300] [<IP_ADDRESS>] [6.192] [system] [warning] PRINT:LeonMss: NeuralNetwork | Available resources: shaveStart: 0, numShaves: 10, mask: 000003FF
[19443010E1FF721300] [<IP_ADDRESS>] [6.190] [SpatialDetectionNetwork(9)] [info] Needed resources: shaves: 6, ddr: 5191680
[19443010E1FF721300] [<IP_ADDRESS>] [6.190] [SpatialDetectionNetwork(9)] [warning] Network compiled for 6 shaves, maximum available 10, compiling for 5 shaves likely will yield in better performance
[19443010E1FF721300] [<IP_ADDRESS>] [6.203] [system] [warning] PRINT:LeonCss: [1970-01-01 00:00:06.201] [info] Time taken to build the pipeline: 601ms
[19443010E1FF721300] [<IP_ADDRESS>] [6.203] [system] [warning] PRINT:LeonMss: finished sippPrePrepareLinesFreeRT
LRT - build pipeline call
[19443010E1FF721300] [<IP_ADDRESS>] [6.210] [SpatialDetectionNetwork(9)] [info] Inference thread count: 1, number of shaves allocated per thread: 6, number of Neural Compute Engines (NCE) allocated per thread: 2
[19443010E1FF721300] [<IP_ADDRESS>] [6.214] [system] [warning] PRINT:LeonCss: Broadcast9282: Successfully registered camera TG161B (ov9282) as /dev/Camera_bcast0
== SW-SYNC: 1, cam mask 0x7
[19443010E1FF721300] [<IP_ADDRESS>] [6.225] [system] [warning] PRINT:LeonCss:
!!! Master Slave config is: single_master_slave !!!
Starting camera 0
[E] app_guzzi_command_callback():173: command->id:1
[E] app_guzzi_command_callback():193: command "1 0" sent
[19443010E1FF721300] [<IP_ADDRESS>] [6.247] [system] [warning] PRINT:LeonCss: [E] iq_debug_create():161: iq_debug address 0x87204800
[E] hai_cm_driver_load_dtp():852: Features for camera A12N02A (imx378) are received
[E] set_dtp_ids():396: //VIV HAL: Undefined VCM DTP ID 0
[E] set_dtp_ids():405: //VIV HAL: Undefined NVM DTP ID 0
[E] set_dtp_ids():414: //VIV HAL: Undefined lights DTP ID 0
[19443010E1FF721300] [<IP_ADDRESS>] [6.269] [system] [warning] PRINT:LeonCss: [E] camera_control_start():347: Camera_id = 0 started.
[E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1920x1080 at 0x0 fps min 0.000000 max 30.000000
[E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1920x1080 at 0x0 fps min 0.000000 max 30.000000
============================ Configuring IMX378 with mode 0
[19443010E1FF721300] [<IP_ADDRESS>] [6.280] [system] [warning] PRINT:LeonCss: Reading..........Reading VERSION 7 --- ->
[19443010E1FF721300] [<IP_ADDRESS>] [6.291] [system] [warning] PRINT:LeonCss: ========== IMX378 /dev/i2c.Camera_0_sen, FSIN enable 0, output 0
[E] vpipe_conv_config():1465: Exit Ok
[19443010E1FF721300] [<IP_ADDRESS>] [6.302] [system] [warning] PRINT:LeonCss: [E] callback():123: Camera CB START_DONE event.
[E] app_guzzi_command_callback():173: command->id:5
[E] camera_control_focus_trigger():591: Focus trigger succeeded camera_id = 0.
[E] app_guzzi_command_callback():218: command "5 0" sent
Starting camera 1
[E] app_guzzi_command_callback():173: command->id:1
[E] app_guzzi_command_callback():193: command "1 1" sent
[19443010E1FF721300] [<IP_ADDRESS>] [6.324] [system] [warning] PRINT:LeonCss: [E] iq_debug_create():161: iq_debug address 0x86d2d040
[E] hai_cm_driver_load_dtp():852: Features for camera TG161B (ov9282) are received
[E] set_dtp_ids():396: //VIV HAL: Undefined VCM DTP ID 0
[E] set_dtp_ids():405: //VIV HAL: Undefined NVM DTP ID 0
[E] set_dtp_ids():414: //VIV HAL: Undefined lights DTP ID 0
[19443010E1FF721300] [<IP_ADDRESS>] [6.335] [system] [warning] PRINT:LeonCss: [E] camera_control_start():347: Camera_id = 1 started.
[E] lens_move_to_def_pos_do():251: Error executing af_move_to_pos()!
[E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1280x720 at 0x0 fps min 0.000000 max 30.000000
[E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1280x720 at 0x0 fps min 0.000000 max 30.000000
=== osDrvOV9282Control: set mode for Camera_1_sen
[19443010E1FF721300] [<IP_ADDRESS>] [6.346] [system] [warning] PRINT:LeonCss: inc_camera_process set exposure and gain
[19443010E1FF721300] [<IP_ADDRESS>] [6.357] [system] [warning] PRINT:LeonCss: [E] vpipe_conv_config():1465: Exit Ok
[19443010E1FF721300] [<IP_ADDRESS>] [6.368] [system] [warning] PRINT:LeonCss: [E] callback():123: Camera CB START_DONE event.
Starting camera 2
[E] app_guzzi_command_callback():173: command->id:1
[E] app_guzzi_command_callback():193: command "1 2" sent
[19443010E1FF721300] [<IP_ADDRESS>] [6.379] [system] [warning] PRINT:LeonCss: [E] iq_debug_create():161: iq_debug address 0x868a84c0
[19443010E1FF721300] [<IP_ADDRESS>] [6.390] [system] [warning] PRINT:LeonCss: [E] hai_cm_driver_load_dtp():852: Features for camera TG161B (ov9282) are received
[E] set_dtp_ids():396: //VIV HAL: Undefined VCM DTP ID 0
[E] set_dtp_ids():405: //VIV HAL: Undefined NVM DTP ID 0
[E] set_dtp_ids():414: //VIV HAL: Undefined lights DTP ID 0
[19443010E1FF721300] [<IP_ADDRESS>] [6.401] [system] [warning] PRINT:LeonCss: [E] camera_control_start():347: Camera_id = 2 started.
[E] lens_move_to_def_pos_do():251: Error executing af_move_to_pos()!
[E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1280x720 at 0x0 fps min 0.000000 max 30.000000
[E] hai_cm_sensor_select_mode():164: No suitable sensor mode. Selecting default one - 0 for start 1280x720 at 0x0 fps min 0.000000 max 30.000000
=== osDrvOV9282Control: set mode for Camera_2_sen
inc_camera_process set exposure and gain
[19443010E1FF721300] [<IP_ADDRESS>] [6.412] [system] [warning] PRINT:LeonCss: [E] vpipe_conv_config():1465: Exit Ok
[19443010E1FF721300] [<IP_ADDRESS>] [6.423] [system] [warning] PRINT:LeonCss: [E] guzzi_event_send():324: Send: Event ID=20003 no registered recipient
[E] guzzi_event_send():324: Send: Event ID=20004 no registered recipient
[E] callback():123: Camera CB START_DONE event.

Hi, quick update, I'm doing some tests with PoE devices in general to find out this and other issues that can happen in different configurations, though if depthai_ros_driver works for you then I suggest using this as the default, since it has more features and is more actively maintained. Is there a particular reason that you've chosen stereo_inertial_node over the other driver?


Adds support for code formatting with AStyle

Details:

AStyle project link -- http://astyle.sourceforge.net
Adds option 'ENABLE_ASTYLE' to control whether to search for AStyle.
As with uncrustify, users can specify an explicit 'ASTYLE_EXECUTABLE' if they do not want to use the one in their path.
Adds a macro 'blt_add_astyle_target' that can be directly invoked
Support for Astyle formatting has also been added to the 'blt_add_code_checks' macro, where users can supply an 'ASTYLE_CFG_FILE' rather than an 'UNCRUSTIFY_CFG_FILE' to use AStyle.
Discovered that earlier versions of Astyle and Uncrustify do not support the dry run option ('MODIFY_FILES' = False), and added comments to the appropriate macros.
Specifically, Uncrustify v0.61 and later and AStyle v2.05 and later support this option, but earlier versions do not.  BLT does not currently check for this.

Update:

The AStyle and Uncrustify check targets are now only generated when supported in their corresponding program.
Added a wrapper script to run AStyle with return codes indicating success or failure.

@white238 @cyrush -- I've addressed all the concerns that were raised.
I also removed the code check targets from default builds since they were getting triggered when building an entire solution.

On this topic... Could we add others to conform (mostly) with the GNU standard targets? It would be nice to have TAGS, uninstall, etc.

Thanks @jdahm -- seems like an interesting suggestion.  There are definitely good ideas there, but it would be good to discuss what is compatible with cmake/blt, since the backend generator is not always make.
Could you create a separate issue for this so we can discuss/track it?


autofix missing dependency is visible even when dependency exists

@arik-dig @shaykeren @kshmidt-digma
the autofix missing dependency is visible even when dependency to open telemetry exists

Need to refresh gradle when changing dependencies. closing

we refresh the entire project after adding the dependency


fix: workflow configuration typo

Fixed minor typo in Configure Workflow section (via info.plist file)

Thank you. Will be out in the next release.


Vickel: Watch dcyberayrecovery(?:@gmail.com)?

Vickel requests the watch of the watch_keyword dcyberayrecovery(?:@gmail\.com)?. See the MS search here and the Stack Exchange search in text, in URLs, and in code.

dcyberayrecovery(?:@gmail\.com)? has been seen in 1 true positive, 0 false positives, and 0 NAAs.

Self-rejected by Vickel in Charcoal HQ. Reason: 'submitted a better regex 13020'


[2.0] Bump Mesos to nightly 1.9.x b3b6dbb

High-level description
This is a routine bump to the latest Mesos and mesos-modules.
Related JIRA Issues
Checklist for all PRs

[ ] Included a test which will fail if code is reverted but test is not. If there is no test please explain here:
[x] Read the DC/OS contributing guidelines
[x] Followed relevant code rules Rules for Packages and Systemd

Checklist for component/package updates:
If you are changing components or packages in DC/OS (e.g. you are bumping the sha or ref of anything underneath packages), then in addition to the above please also include:

[x] Changelog:
https://github.com/apache/mesos/compare/b84b0a4bd8945b0901214b90b61e6a54fa4b3215...b3b6dbb27a93a9ace4e4d2d1e83b16ea92f1a8e1

[ ] Test Results: [link to CI job test results for component]

[ ] Code Coverage (if available): [link to code coverage report]

@mesosphere-mergebot bump-ee

@mesosphere-mergebot label Ready For Review


Speed up destroy_links for subject sets

Delete links without callbacks and manually queue workers. Closes #974

@ed - can you update the issue that this PR closes? Should be #974

Sorry should be fixed.


Bug Report: Resume text missing?

The Resume text disappear when I pause it and go up to Exit button.
https://user-images.githubusercontent.com/67173708/126848869-75c73560-07d0-45f8-b568-5b9b9f71cea6.mp4

lol you changed the local offset i think

Prokube is right. Try not to hit left and right and resume wont disappear.


Weather Api

Description
A REST API to check the current weather.
We can search for any (valid) place to know it's recent weather condition.
It gives the information about the temperature, wind rate, precipitation and humidity of that area.

Checklist

[x] API used in this PR was not used in just-calling-random-api before.
[x] API used in this PR is Public or I have permission to use it.
[x] My contribution is working.
[x] My contribution doesn't expose any API keys.
[x] My changes don't generate any new warnings.
[x] My changes don't affect any work done by other developers.

To tick a box, replace [ ] with [x].

The API Key is exposed. Kindly disable the Key.

Thanks for the PR. I have changed some styling as it was overlapping with other cards.


AVRO-3304: Use slf4j-simple in avro-tool uberjar

Before:
avrotool_snap tojson ./lang/java/mapred/target/test-classes/org/apache/avro/mapreduce/mapreduce-test-input.avro/part-r-00000.avro
22/01/13 18:47:32 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
{"name":"apple","count":3}
{"name":"banana","count":2}
{"name":"carrot","count":1}

After:
avrotool_snap tojson ./lang/java/mapred/target/test-classes/org/apache/avro/mapreduce/mapreduce-test-input.avro/part-r-00000.avro
[main] WARN org.apache.hadoop.util.NativeCodeLoader - Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
{"name":"apple","count":3}
{"name":"banana","count":2}
{"name":"carrot","count":1}

Jira

[X] My PR addresses the following Avro Jira issues and references them in the PR title. For example, "AVRO-1234: My Avro PR"

https://issues.apache.org/jira/browse/AVRO-3304
In case you are adding a dependency, check if the license complies with the ASF 3rd Party License Policy.

Tests

[X] My PR adds the following unit tests OR does not need testing for this extremely good reason:  Manually verified the change:

Commits

[X] My commits all reference Jira issues in their subject lines. In addition, my commits follow the guidelines from "How to write a good git commit message":

Subject is separated from body by a blank line
Subject is limited to 50 characters (not including Jira issue reference)
Subject does not end with a period
Subject uses the imperative mood ("add", not "adding")
Body wraps at 72 characters
Body explains "what" and "why", not "how"

Documentation

[ ] In case of new functionality, my PR adds documentation that describes how to use it.

All the public functions and the classes in the PR contain Javadoc that explain what it does

I think it would be good to add simplelogger.properties to re-add the datetime and set the default log level at least.
See https://github.com/apache/wicket/blob/master/wicket-core/src/test/java/simplelogger.properties

I've added the simplelogger properties, and also restored the log4j.properties.  Log4j is used by hadoop, so it's worthwhile keeping the two consistent.

I've converted this to draft -- this may not be the right solution (see the JIRA AVRO-3304, log4j-1.2.17 is included in the uberjar as a transitive dependency of hadoop).

Then maybe switch to https://github.com/qos-ch/reload4j ?
https://search.maven.org/artifact/ch.qos.reload4j/reload4j/<IP_ADDRESS>/jar

I like the reload4j solution, since it's the only actual fix (short of dropping the Hadoop file system functionality or waiting for Hadoop to bump to log4j2)!

https://github.com/apache/avro/pull/1464 (reload4j) is merged!


Re-navigate to previous item on Save or Edit

Currently saving to the database requires a page refresh. If a workaround is possible, that'd be preferred, but I suggest the index of the timeline item be set to the last item.
This can probably be done by saving the last item index to a local store and restoring it on reload.

Also added index redirect on normal refresh


Not deleting

backend_1   | <IP_ADDRESS> - - [28/Jul/2016 14:58:07] "OPTIONS /api/login HTTP/1.1" 200 -
backend_1   | <IP_ADDRESS> - - [28/Jul/2016 14:58:08] "POST /api/login HTTP/1.1" 200 -
backend_1   | <IP_ADDRESS> - - [28/Jul/2016 14:58:12] "GET /api/pokemon HTTP/1.1" 200 -
backend_1   | <IP_ADDRESS> - - [28/Jul/2016 15:02:57] "OPTIONS /api/pokemon/delete HTTP/1.1" 200 -
backend_1   | <IP_ADDRESS> - - [28/Jul/2016 15:02:57] "POST /api/pokemon/delete HTTP/1.1" 400 -

This is the request for my pokemon list, which works. The second request is when I hit delete on multiple pokemon. It sends 1 delete but not a single pokemon is deleted.

How many are you trying to delete? It sleeps a few seconds between every pokemon to not appear as a bot. Did you try deleting just one, does that work?

Roughly 125. I did not try just 1. I have since used another program to mass transfer. I saw that you wait 2 seconds or so, but that log just sat there, even after several minutes, nothing else happened.

125 would be between 4 and 7 minutes. I'll will add an option for instant deletion in the next full release.
There is currently no progress bar also.
Feel free to reopen the ticket, if you make further test.

Ok. I was expecting some type of indicator of progress or at least new entries in the console. I also noticed that your in-game inventory is a little lagged. Doesn't updated very often which lead me to believe nothing was deleting.


CSS in JS utility functions

[x] This is not a v0.x issue.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Hey guys,
What is we backport the utility functions under @material-ui/system to be available as theme helpers when we write CSS in JS.
It could have an API similar to this:
{
  someClass: {
    ...s()
      .w(0.75)
      .h({
        xs: 100,
        sm: 200,
      })
      .p(10, 30)
      .my('1em')
      .fs('h4.fontSize')
      .c('primary.main'),
    cursor: 'pointer',
  },
}

I think the benefits are pretty obvious.

I think the benefits are pretty obvious.

Could you include the style object that this would generate? I can only case from single character function names.
Is this not possible with a custom jss plugin?

This should be the output:
{
  someClass: {
    width: '75%',
    [theme.breakpoints.up('xs')]: {
      height: 100,
    },
    [theme.breakpoints.up('sm')]: {
      height: 200,
    },
    paddingTop: 10,
    paddingBottom: 10,
    paddingLeft: 30,
    paddingRight: 30,
    marginLeft: '1em',
    marginRight: '1em',
    fontSize: theme.typography.h4.fontSize,
    color: theme.palette.primary.main,
    cursor: 'pointer',
  },
};

Is this not possible with a custom jss plugin?

Not sure. I thought about that at first, but now I think it makes more sense to have it bundled under @material-ui/system, as it serves the same purpose (and it should use the same utility functions).

If we were to use a jss plugin, I guess it could look like this:
const classes = {
  someClass: {
    w: 0.75,
    h: {
      xs: 100,
      sm: 200,
    },
    p: [10, 30],
    my: '1em',
    fs: 'h4.fontSize',
    c: 'primary.main',
    cursor: 'pointer',
  },
};

I think this makes the code very hard to read

@spoeck Yes, thank you for saying it! I do agree. @material-ui/system is a package that emplify the power of the Bootstrap utility & Tailwind class helpers. A pattern that has proven to be used and loved by the developers. It targets the component properties. It was designed for writing CSS. Now, if you like that, you can write your own JSS plugin, but I don't think that we should encourage it.

I've actually implemented the first version - the one with chained method calls. I don't like it either :)
But if there's anyone interested into checking out the code, let me know
I haven't tried yet to write the JSS plugin, but @spoeck is right - the code is hard to read (while it's fast to write).

Maybe this issue should be reopened - https://styled-system.com/css/


Make Lookbook compatible with Ruby 2.5

At work we're currently running a fork of Lookbook so it works on Ruby 2.5. As it turns out the necessary changes are actually pretty minimal and I'd love to just be able to point to the real gem. Hence this PR.
It's 100% cool if you dont want to merge this.  I dont mind maintaining the fork until we're on 2.6 but I thought it was better to open the PR and close it then not even try.
I'm happy walk through any or all of this with you but the main changes are:

Use Array#select and Hash#select over #filter (#filter is an alias to #select anyway)
Ensure base_path is a Pathname in Page.  In Ruby <= 2.5 a string wont implicitly convert to a pathname which causes issues when trying to use the pages feature for us. Creating a Pathname by default fixes this. I know pages is an experimental feature so totally cool if you dont want to merge this part. We dont have to use pages.

Let me know what you think. Thanks!

@DRBragg this is fantastic, thank you! I'm absolutely up for getting Lookbook running on older versions of Ruby wherever possible. My only real constraint is time (and Ruby knowledge!) so PRs like this are super helpful.
The only issue with this PR as far as I can see is the bumping of the Lookbook version number - that is something that I will need to handle as part of the release process. Would you be able to remove that commit from the PR? I'll give it a quick test to double check there are no issues but otherwise I'll get this merged in once that change is made.
Thanks again for this 👍

@DRBragg this is fantastic, thank you! I'm absolutely up for getting Lookbook running on older versions of Ruby wherever possible. My only real constraint is time (and Ruby knowledge!) so PRs like this are super helpful.
The only issue with this PR as far as I can see is the bumping of the Lookbook version number - that is something that I will need to handle as part of the release process. Would you be able to remove that commit from the PR? I'll give it a quick test to double check there are no issues but otherwise I'll get this merged in once that change is made.
Thanks again for this 👍

Sure thing! I'll revert that as soon as I get back in front of a computer. Thanks for taking a look!

Nice one, thanks @DRBragg - I've just given this a test and it all seems good so I'll merge it in now and get a new release out. Really appreciate your contribution.
I've actually just released an early beta of what will become Lookbook v1.0 - I will also make sure that these changes get merged into that branch soon, and I'll go through the codebase to try to make sure no new non-2.5 compatible changes have crept in. I'll let you know when I think it's ready in case you want to give it a test at some point :-)

Nice one, thanks @DRBragg - I've just given this a test and it all seems good so I'll merge it in now and get a new release out. Really appreciate your contribution.
I've actually just released an early beta of what will become Lookbook v1.0 - I will also make sure that these changes get merged into that branch soon, and I'll go through the codebase to try to make sure no new non-2.5 compatible changes have crept in. I'll let you know when I think it's ready in case you want to give it a test at some point :-)

Awesome! Definitely happy to test


feat(multichain): add beta status property to statsig user

Description
Add multichainBetaStatus prop to statsig user whenever the user opts in / out of multichain beta. This prop is used in this dynamic config to select network ids based on this custom prop. Included a loading state when statsig updateUser is invoked, which makes a network request to fetch all gate / config evaluations for the updated user.
Test plan
Unit tests, manually

Opt In
Opt out

Related issues

Fixes ACT-982

Backwards compatibility
yes

when do you plan on updating the dynamic config to include a prod rule for multichain beta opt in/out?

when do you plan on updating the dynamic config to include a prod rule for multichain beta opt in/out?

I think we can do that closer to launch? I believe we'd also need more conditions (like other feature gates that need to be active) to launch on prod


Help about the "expanded" version

Hello @mattdesl. I wanted to thank you for your very insightful article and just wanted to ask you some questions. I am trying to apply your "expanded" version to optimize the drawing of a graph (I am currently using triangulated lines and this is causing me some performance issues unrelated with the GPU).
The thing I don't understand, and sorry if this is trivial and I missed it, is the following:
Let's say I want to draw a straight line. This line is composed of two points. With your methods I then need to render four vertices, no? How can the TRIANGLES drawing mode solves it since it is supposed to take every three consecutive vertices to produce triangles.

You need four vertices, one for each point in your line segment. However, you also need to submit the data with indices (aka elements) that tell the gpu how to draw the triangles. This way you can use 4 verts (imagine an indexed quad) rather than 6 verts, since two of the vertices can use the same element index. 😁

Oh. So it's the indices. Thanks a lot @mattdesl!


Install new fans for the rack

The fans were way too noisy to run in an office. So left a couple panels open for now and ordered new ones.

New fans installed and running 24/7. Much quieter now.


Docs unclear on Redirect URI when overriding built-in AAD authentication to downscope to single AAD tenant

Describe the bug

I'm publishing a static site, generated with Hugo.  I would like my static site only visible to authenticated users in my AzureAD Tenant.
My staticwebapp.config.json is:
{
  "routes": [
	{
		"route": "/login",
		"rewrite": "/.auth/login/aad"
	},
	{
		"route": "/logout",
		"rewrite": "/.auth/logout"
	},
	{
		"route": "/.auth/login/twitter",
		"statusCode": 404
	},
	{
		"route": "/.auth/login/github",
		"statusCode": 404
	},
	{
		"route": "/*",
		"allowedRoles": ["authenticated"]
	}],
	"responseOverrides": {
		"401": {
			"redirect": "/login",
			"statusCode": 302
		}
	},
	"auth": {
		"identityProviders": {
		  "azureActiveDirectory": {
			"registration": {
			  "openIdIssuer": "https://login.microsoftonline.com/<mytenantid>/v2.0",
			  "clientIdSettingName": "AAD_CLIENT_ID",
			  "clientSecretSettingName": "AAD_CLIENT_SECRET"
			}
		  }
		}
	  }
}

I configured an AAD Application, and put the AAD_CLIENT_ID and AAD_CLIENT_SECRET into 'Configuration' for the Static Web App. I configured a custom domain.
In the 'Registered App' configuration for 'Authentication', I configure 'ID Tokens', 'Accounts in this org directory only', and then set the Redirect URI for a 'Web' platform to https://<domain>/.auth/login/aad/callback.
This 'works', in that I can visit my SWA, it prompts for AAD login, and then redirects to that URL which is just an empty page.
If I use the 'built in' AAD, everything works great, but I don't want my site visible to ANY AAD user (that...seems like a silly default approach here).
Is my Redirect URI right?  The documentation is extremely unclear there.
Device info (if applicable):
Testing on Safari and Chrome on MacOS if it matters

What is the link you are using for login?
Did you set the post_login_redirect_uri to the callback URL? That’s not necessary and we can clarify this in the docs.

OK I wanted to confirm that you were not setting post_login_redirect_uri. Thanks for confirming that.
Can you clarify when you mean by "that URL" when you said and then redirects to that URL which is just an empty page? What is the URL in the location bar when the blank page appears?
@mkarmark Do you know what might be happening here?

Could the problem be related to that fact that you are enabling authentication for all URLs through the /* route? My hypothesis is that you might have unintentionally limited the /.auth/login/aad/callback path to only authenticated users, and when the callback is executed you are probably not yet authenticated?
Have you tried adding a route that grants anonymous access to the callback url?
{
	"route": "/.auth/login/aad/callback",
	"allowedRoles": ["anonymous", "authenticated"]
}

I'l give that a shot, but I'd expect if it was because I wasn't authenticated yet that it would instead direct me to authenticate (and I'd get a loop)?

@mkarmark Can you please take a look at this?

Is anyone still working on this? We are having the same issue.

I'll have to bump this too since we have run into the same issue. The fix proposed by @nitelite did not work.
Our web app tries to authenticate via our aad and is stuck in the .auth/login/aad/callback page.
Weirdly enough, it seems like we can't authenticate at all. ".auth/me" responds with null, we have no idea what exactly is happening...

We just implemented a workaround yesterday. The trick is to add a rewrite rule in your application gateway to set the X-Forwarded-Host header

Then of course you need the forwardingGateway configuration in your static web app.
 "forwardingGateway": {
        "allowedForwardedHosts": [
            "yourwebsite.com",
        ]
  }

Well I must be honest, after reading through some more of the docs I found my fault in these docs: https://docs.microsoft.com/en-us/azure/static-web-apps/assign-roles-microsoft-graph#create-a-client-secret
We have been actually trying to reference the secret by using the id. This was a mistake, as it was expected to use the value of the secret directly. Maybe this can help @adamcrosby too.

Well I must be honest, after reading through some more of the docs I found my fault in these docs: https://docs.microsoft.com/en-us/azure/static-web-apps/assign-roles-microsoft-graph#create-a-client-secret
We have been actually trying to reference the secret by using the id. This was a mistake, as it was expected to use the value of the secret directly. Maybe this can help @adamcrosby too.

+100 for this!

By that URL I mean the Redirect URI I set in 'Authentication' for the 'Web Platform' configuration: https://<domain>/.auth/login/aad/callback After successful auth, the browser redirects me to that url (https://<domain>/.auth/login/aad/callback) which is just a blank page. Attempting to then access any other content being served by the static web app just starts the login loop again.

Still have the exact same problem, did you find a solution ? @adamcrosby

Having the exact same issue but I get a 302 back to /login as soon as I hit the /callback url and it starts the reprocess steps over again in a loop. If I select "No" at "Stay signed in?" I get redirected right back to the "Stay signed in page"; if I hit "yes" I get a rapid, infinite redirect loop.
@adamcrosby did you ever find a fix for this? My AAD config is exactly as you've described yours, and seems like my use case is pretty much the same (internal azure AD application, don't want anyone who isn't authed to be delivered any web assets until they've authenticated successfully)
Here is my staticwebappconfig.json:
{
  "auth": {
    "identityProviders": {
      "azureActiveDirectory": {
        "registration": {
          "openIdIssuer": "https://login.microsoftonline.com/<tenant>/v2.0",
          "clientIdSettingName": "AZURE_CLIENT_ID",
          "clientSecretSettingName": "AZURE_CLIENT_SECRET"
        }
      }
    }
  },
  "navigationFallback": {
    "rewrite": "/index.html",
    "exclude": ["/images/*.{png,jpg,gif}", "/css/*", "/img/*", "/js/*"]
  },
  "routes": [
    {
      "route": "/.auth/login/aad/callback",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/login",
      "rewrite": "/.auth/login/aad",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/logout",
      "redirect": "/.auth/logout",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/*",
      "allowedRoles": ["authenticated"]
    }
  ],
  "responseOverrides": {
    "401": {
      "redirect": "/login",
      "statusCode": 302
    }
  }
}

I even added the line that @nitelite recommended, as the callback url was 302ing (likely because it was 401ing and then 302ing via the response override) - but that did not solve the issue
@anthonychu @mkarmark please advise

I did not find a fix, I ended up working around it by auth'ing against a role I place users in that is not just 'authenticated'.
{
  "routes": [
        {
                "route": "/login",
                "rewrite": "/.auth/login/aad"
        },
        {
                "route": "/logout",
                "rewrite": "/.auth/logout"
        },
        {
                "route": "/.auth/login/twitter",
                "statusCode": 404
        },
        {
                "route": "/.auth/login/github",
                "statusCode": 404
        },
        {
                "route": "/*",
                "allowedRoles": ["siteuser"]
        }],
        "responseOverrides": {
                "401": {
                        "redirect": "/login",
                        "statusCode": 302
                }
        }
}

Oh wow sounds like it was an issue with the wildcard route auth protection
{
	"route": "/*",
	"allowedRoles": ["authenticated"]
}

@anthonychu @mkarmark what would be the recommended way to accomplish what the above is trying to accomplish?

@chasms It's a combination I think, because my config there no longer uses AAD as an 'IDP', so Static Web Apps uses a different mechanism for handling auth (I think?).

@chasms It's a combination I think, because my config there no longer uses AAD as an 'IDP', so Static Web Apps uses a different mechanism for handling auth (I think?).

@adamcrosby By IDP, do you mean one of the 'built-in' (as opposed to 'custom') identity providers?
I thought maybe that was true, but this page on setting up custom AAD auth providers clearly dictates using the /callback redirect URI:
https://learn.microsoft.com/en-us/azure/static-web-apps/authentication-custom?tabs=aad%2Cinvitations

Below is my configuration; I can't even see the app, I just get "too many redirects" in Safari, Chrome and Edge no matter what I try.
I have my aad registration configured with .auth/login/aad/ as the redirectUri.
{
  "trailingSlash": "auto",
  "routes": [
    {
      "route": "/.auth/*",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/login",
      "rewrite": "/.auth/login/aad",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/logout",
      "redirect": "/.auth/logout",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/*",
      "allowedRoles": [
        "authenticated"
      ]
    }
  ],
  "responseOverrides": {
    "401": {
      "statusCode": 302,
      "redirect": "/.auth/login/aad"
    }
  },
  "auth": {
    "identityProviders": {
      "azureActiveDirectory": {
        "registration": {
          "openIdIssuer": "https://login.microsoftonline.com/<tenant id>/v2.0",
          "clientIdSettingName": "AZURE_CLIENT_ID",
          "clientSecretSettingName": "AZURE_CLIENT_SECRET"
        }
      }
    }
  }
}

Well I must be honest, after reading through some more of the docs I found my fault in these docs: https://docs.microsoft.com/en-us/azure/static-web-apps/assign-roles-microsoft-graph#create-a-client-secret
We have been actually trying to reference the secret by using the id. This was a mistake, as it was expected to use the value of the secret directly. Maybe this can help @adamcrosby too.

My 401 responses when being redirected to the callback endpoint after successfully authenticated with Azure AD was solved with this. Used the secret id instead of secret value. Thank you!

Below is my configuration; I can't even see the app, I just get "too many redirects" in Safari, Chrome and Edge no matter what I try.
I have my aad registration configured with .auth/login/aad/ as the redirectUri.
{
  "trailingSlash": "auto",
  "routes": [
    {
      "route": "/.auth/*",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/login",
      "rewrite": "/.auth/login/aad",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/logout",
      "redirect": "/.auth/logout",
      "allowedRoles": ["anonymous", "authenticated"]
    },
    {
      "route": "/*",
      "allowedRoles": [
        "authenticated"
      ]
    }
  ],
  "responseOverrides": {
    "401": {
      "statusCode": 302,
      "redirect": "/.auth/login/aad"
    }
  },
  "auth": {
    "identityProviders": {
      "azureActiveDirectory": {
        "registration": {
          "openIdIssuer": "https://login.microsoftonline.com/<tenant id>/v2.0",
          "clientIdSettingName": "AZURE_CLIENT_ID",
          "clientSecretSettingName": "AZURE_CLIENT_SECRET"
        }
      }
    }
  }
}

Well it turns out the problem was I was missing a digit from the secret. Would have been nice to have some sort of error message rather than an endless loop!

I just hit something similar to this where I had included the Twitter login info in the config file, but the secrets were not in the env vars. Even though I wasn't using Twitter auth, it caused the whole auth flow to fail for any provider.


Image size enlarges after cropping

input: 200кb
output >2mb
Everything works good,thanks a lot! But cropper significantly enlarge image size, after crop in onGetCroppedImageComplete we receive bitmap with enlarge size, yes certainly we can compress it later,  but is there any possibility to prevent this?
thanks in advance!

How do you measure the size of the input and output images?

I apologize for my late response! Yes I do, I measure the size of the input image, then after cropping in onGetCroppedImageComplete I got bitmap and can easily measure its size in debug (I also save it on sd card without any compression and can see it size)!

When image decoded, Android uses 4 bytes per pixel so the memory usage is always much larger than the size of the encoded image on disk (in gallery).
I assume that is what you see.
Compare the same encoding format, so if your original image is png, save the cropped image as png.

Ok, I will try and then inform you! Thanks)


grapesjs-MJML not working on IE11

grapesjs-mjml not working on IE11. How should I run grapesjs-mjml on IE11.
Thanks.

we're are already working on it here https://github.com/artf/grapesjs/issues/214


Standalone CSS file like the datepicker (for using it without Bootstrap)

This datetimepicker is one of the best I've seen. So I want to use in a lot of projects. Unfortunately I'm working on a project without Bootstrap. The original datepicker has an extra CSS file so it can be used without the Bootstrap CSS.
It would be great to also have one for the datetimepicker. I will probably give it a try myself (if I can find some time) but maybe someone already has some suggestions for a quick start or perhaps already have started this.

I know someone else asked the same thing. There was an issue about. You could try Critical Path CSS Generator with a just the picker in a html file to see if that would work

I've searched the issues but couldn't find anything. I will try the Critical Path CSS Generator with the inline version of the timepicker first.


Plot with ExoplanetEU

Include ExoplanetEU in a separate tab, to plot stellar/planetary parameters against planetary parameters.

This can be done with PyAstronomy.pyasl.ExoplanetEU.

Closed with commit e1cd72cc69092cd97


2 to 3

➡ Forward port
Port ign-physics2 to ign-physics3
Branch comparison: https://github.com/ignitionrobotics/ign-physics/compare/ign-physics3...ign-physics2
Note to maintainers: Remember to Merge with commit (not squash-merge or rebase)

I had to resolve a few conflicts and update some of the files to make sure the master branch updates in #221 were reflected properly for the ign-physics3 branch, but I believe that I have updated everything. If someone else wants to double check for any changes I may have missed, that would be great!


security patch

Signed-off-by: randybrunopiverger<EMAIL_ADDRESS>regarding: https://github.com/stolostron/backlog/issues/19486
npm audit fix

/cc @ycao56

/retest

/retest

/retest

/retest

Thank you! @ycao56


CosmosDb Java client and private endpoints

Created a private endpoint for my CosmosDb storage account and try to connect to it. Getting a ConnectTimeOutException..
io.netty.channel.ConnectTimeoutException: connection timed out: cosmos-account-41895-eastus.documents.azure.com/<IP_ADDRESS>:21226

If I try to connect to the storage account using the azure cli from the same machine, it works fine.
az cosmosdb sql database create --account-name cosmos-account-41895 --name testdb --resource-group rg-name

For context, I'm using the java library: com.azure:azure-cosmos:4.0.1-beta.1. Does the Java client support private endpoints yet?

@jagadish-v0 - V4 Cosmos SDK repo is different : https://github.com/Azure/azure-sdk-for-java/tree/master/sdk/cosmos/azure-cosmos
Can you please create this issue there ?
This repo is for V2 Cosmos Java Async SDK.
I think you have to enable TCP endpoints in your Cosmos DB Account to be able to connect to the account.
Please take a look at these performance tips for java SDK v4

https://docs.microsoft.com/en-us/azure/cosmos-db/performance-tips-java-sdk-v4-sql?tabs=api-async

I think you have to enable TCP endpoints in your Cosmos DB Account to be able to connect to the account.
Please take a look at these performance tips for java SDK v4

thanks for the pointer @kushagraThapar. I reviewed the link you provided and didn't find anything related to "enabling TCP endpoints on the CosmosDb account."
Can you share some more detail on this? eg: should this be done through the portal / CLI / CosmosDb client api?


404 error when looking up references for WEBGL, WEBGL2

Most appropriate sections of the p5.js website?
Other (specify if possible)
What is your operating system?
Mac OS
Web browser and version
Safari Version 17.6 (196<IP_ADDRESS>.5)
Actual Behavior
when you use the search function to look up references or go through the reference list for either of the two, and on links to examples, you reach a 404 page.
https://github.com/user-attachments/assets/8eb3fed4-eaba-4bae-82a5-10fab8aeb93b
Expected Behavior
well, the reference page
Steps to reproduce
No response
Would you like to work on the issue?
no

Hi, would it be alright to work on this? I think I see what's causing this, which is the logic that removes 'constants/' or 'types/' from the path that gets applied in the router not getting applied in the search indices build script.

Hi, would it be alright to work on this? I think I see what's causing this, which is the logic that removes 'constants/' or 'types/' from the path that gets applied in the router not getting applied in the search indices build script.

@mayaarguelles yep that's probably the culprit. You are definitely welcome to take it on! Let me know if you need any help.

heyhey, turns out the issue persists with the old version of the website as well, I am so confused as to what is going on?


Wrap the argument to Future.transform in an autoclosure

This avoids creating the argument if it won't be needed at all, e.g. because a previous future fails.

Should this also be added to the .transform method that takes in an EventLoopFuture?

I don't think so; nearly all EventLoopFutures are created from a block that is only executed when the future succeeds, anyway.

Hey @MrMage, you just merged a pull request, have a coin!
You now have 11 coins.


TC-TSTAT-3.2 -> thermostat setpoint-raise-lower throws General error: 0x81 (UNSUPPORTED_COMMAND) error on raspi

With SHA 5d8599d195a93dfe5473f64e4f888c322e5df1d2
For test case TC-TSTAT-3.2
The following commands throw -> General error: 0x81 (UNSUPPORTED_COMMAND) error on raspi for chip-tool + darwin-framework-tool
./darwin-framework-toolthermostat setpoint-raise-lower 0 10 1 1
./darwin-framework-tool thermostat setpoint-raise-lower 0 -10 1 1
./chip-tool thermostat setpoint-raise-lower 0 10 1 1
./chip-tool thermostat setpoint-raise-lower 0 -10 1 1
raspi is executing chip-all-clusters-app
and on mac we are executing darwin-framework-tool app
Attaching the logs from Mac for darwin-framework-tool:
TC_STAT3.2-darwin-framework-toolLog.txt
Attaching the logs from raspi:
TC_STAT3.2-raspiLg.txt
Attaching the logs from Mac for chip-tool:
TC_STAT3.2-chiptoolLog.txt
Attaching the logs from raspi:
TC_STAT3.2-chiptoolraspiLog.txt

Fixed in #19467


Re-calculate locked collateral value at start up

This is a fix for the locked collateral counter that is off for all the hosts. At least at start up it gives the right information in the same way as the contract counter.

Band-aid fix for #2262 and #2144

oof.
@nielscastien can you confirm that it causes the host to produce more sane values for users that are seeing discrepencies?

@DavidVorick Yes I can confirm, tested it on my own host and my locked collateral was reduced by 100 KS after restart.

@DavidVorick Right now I am running a modified siad instance where the contract counter seems to be fixed. I did not receive any contract renewals today so I'm not 100% sure. I can create a pull request for that one as well if you would like to review it.

Happy to take a look at that code, at the very least.
One of our longer term to-dos is to give the host contracting system a lot of attention. We know it's pretty fragile right now but are focused fully on improving the renter module.


Fix sidebars not closing when navigating to a conversation via the keyboard

If in a narrow window, you open the right sidebar via the w keyboard shortcut, arrow down to Iago, and Enter to navigate to your DMs with that user, then the right sidebar doesn't close, leaving you in this state.

There's a similar problem in the left sidebar, if you use the keyboard shortcut w to open the sidebar, navigate down to a stream, and hit Enter to visit it.
This was likely introduced in #26908.

Hello @timabbott, I'm interested in fixing this one?


Start implementation of new billing

Please take a moment to fill out the following:
Fixes # .
Changes Proposed in this pull request:

Hi @jamesmontemagno you should be sure to use the latest Goole Billing API (v3.0) if not your app will rejected and not published anymore also your app will removed from the playstore. So my question now is Xamarin.Android.Google.BillingClient 3.0 equivalent to API 3.0?
Best regards, Josef

yeah, we already updated to 3.0.
Also, that is different that is for the server, not in the app. it is confusing.

yeah, we already updated to 3.0.
Also, that is different that is for the server, not in the app. it is confusing.

Thanks for the info.

I noticed that the signature of GetPurchasesAsync has changed to no longer accept an instance of IInAppBillingVerifyPurchase. Is there a reason restoring previous purchases no longer requires validation?

It exists,
Task<IEnumerable<InAppBillingPurchase>> GetPurchasesAsync(ItemType itemType);


Key List Page

The test version is dev mode Android version VDebug. The vision of test phone is Android 17.
The revoked function is not work. When I click revoked, the key still active in the list. The process video attached below.
https://github.com/Outblock/FRW-Android/assets/87978227/f881d54a-a377-4b11-b1c7-a55c9e7ebeb6

This issue already been solved in Android version vDebug.
Now keys can be revoked successfully.
The video is attached below.
https://github.com/Outblock/FRW-Android/assets/87978227/a5ba9d94-dacc-4487-84c1-0f42f19165df


let svn manage the dist/zzz/ directory

if puppet tries to manage it, then svn will get all complain-y

not needed. the puppet line only modifies when the dir is present, and svn won't notice/care about the chown.


Add filtering for clustered points

MapBox has a setFilter function for layers but I was not able to find a way for it to work with cluster layers. Instead, this code goes through the JSON and filters points before they are given to the map source so the clustering still works after filtering. Turfjs is used to build the feature collection before setting it as the source. There is a temporary button and the filter is comparing by the title property. This can be changed to filter by time once there is data that has a date property.

Going through the JSON points to filter is an interesting idea, but I'm not sure about using it as an alternative to querying the database. This looks like it will work, so we can run with it for now and look into the pros and cons of doing this over querying.

Given these changes, I think it will be very easy to implement the date timeslider as we simply need to filter for a period of time instead of weapon types or mortality.


Migrating from v5 to v6

Hi, i have a  project using forge v5 and I want to try with v6. How can I do it? it is secure?

How can I do it?

Generate a new project in v5 and v6, and look at the differences between v5 and v6 config (over 50% is config key name changes).
I'd like to update electron-forge import to handle simple Forge v5 cases, but I haven't had the time to write it myself.

it is secure?

What does this mean?

I mean that if it is secure to use v6 to a production project (I know it is
in beta but anyway).
Thanks for the response!
El sáb., 1 de sep. de 2018 a la(s) 13:48, Mark Lee<EMAIL_ADDRESS>escribió:

How can I do it?
Generate a new project in v5 and v6, and look at the differences between
v5 and v6 config (over 50% is config key name changes).
I'd like to update electron-forge import to handle simple Forge v5 cases,
but I haven't had the time to write it myself.
it is secure?
What does this mean?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/electron-userland/electron-forge/issues/560#issuecomment-417872082,
or mute the thread
https://github.com/notifications/unsubscribe-auth/APTsLPcRjcEJGrqAatOYKpu9Y7Cot_HHks5uWrpBgaJpZM4WWR08
.

Electron Fiddle is currently using Forge v6, if that's any indication.

ok thanks!