End device won't reconnect after using install code policy  (TZ-299)

Hi @xieqinan, I have diligently followed the specified steps mentioned in #82 using "HA_on_off_light" and "HA_on_off_switch" examples, successfully establishing connectivity between the end device and the coordinator through the implementation of the install code policy. However, when I manually restart the coordinator, it effortlessly reestablishes its connection with the end device. Unfortunately, the same cannot be said when I attempt to manually restart the end device. It fails to reconnect to the coordinator, and I encounter the following error message in the output log: "ESP_HA_ON_OFF_LIGHT: failed to initialize zigbee stack."
Additionally, I've encountered a similar issue when experimenting with the "esp_zigbee_customized_devices" examples, which results in the following log output: "ESP_HA_ON_OFF_SWITCH: stack BDB Device Reboot failure with ESP_FAIL status, steering."
I'm eager to gain insights into the root causes of these occurrences and would appreciate your guidance on this matter

Hi @mallaprashant ,
Have you performed any erase operations on the End Device side? Please attempt to utilize esp_zb_get_short_address() to print the short address when receiving the ESP_ZB_BDB_SIGNAL_DEVICE_FIRST_START signal.

@xieqinan,
Yes, I performed an erase operation on the flash memory before updating the Install code policy. I want to clarify that I haven't made any modifications to the example code. Additionally, I followed your suggestion and used esp_zb_get_short_address() to print the short address upon receiving the ESP_ZB_BDB_SIGNAL_DEVICE_FIRST_START signal. However, I observed that the short address remains unchanged even after a device restart.

hello,
Please indicate the channel mask when generating the manufacturer .bin file, for example:
python esp_zb_mfg_tool.py -i 966b9f3ef98ae6059708 -m CAFEBEEF50C0FFED -c 0x8000 -mn Espressif -mc 0x131B -c 0x07FFF800

it's working fine now.

@xieqinan Sorry to open up old topic, but I have much of the same problem. When I try to join the network, I'll get "Have not got nwk key" problem:
I (730) ESP_ZB_ON_OFF_LIGHT: Start network steering
I (740) ZBOSS: commissioning/bdb/zdo_commissioning_bdb.c:349   dev type 2, joined 0, ext_pan_id 0, authenticated 0, tclk_valid 1
I (3110) ZBOSS: nwk/nwk_join.c:293   Will assoc to pan 0x42c9 on channel 11, dev 0x0, iface_id 0
I (3620) ZBOSS: mac/mac_associate.c:448   received association response
I (3630) ZBOSS: zdo/zdo_app_join.c:771   CONGRATULATIONS! joined status 0, addr 0x55a6, iface_id 0, ch 11, rejoin 0
I (3630) ZBOSS: zdo/zdo_app_join.c:773   xpanid 29:d2:c5:99:8a:76:c1:bc
I (13670) ZBOSS: zdo/zdo_app.c:595   Have not got nwk key - authentication failed
I (13670) ZBOSS: nwk/nwk_main.c:4409   zb_nwk_do_leave param 5 rejoin 0
I (13670) ZBOSS: common/zb_address.c:1063   zb_address_delete ref 17
I (13690) ESP_ZB_ON_OFF_LIGHT: ZDO signal: ZDO Leave (0x3), status: ESP_OK
I (13690) ZBOSS: nwk/nwk_join.c:251   No dev for join
I (13700) ZBOSS: nwk/nwk_join.c:251   No dev for join
I (13700) ZBOSS: zdo/zdo_commissioning.c:210   Can't find PAN to join to! param 0
I (13710) ZBOSS: commissioning/bdb/zdo_commissioning_bdb.c:549   COMMISSIONING_STOP: app signal 10 comm status 3
I (13720) ESP_ZB_ON_OFF_LIGHT: Network steering was not successful (status: ESP_FAIL)

I used the above example to create mfg config and flashed it. Here's what esp_zb_get_short_address() returns:
I (710) ESP_ZB_ON_OFF_LIGHT: SHORT CODE: 0xfffe
Any ideas what to try?

@JanneMantyharju ,

I (730) ESP_ZB_ON_OFF_LIGHT: Start network steering
I (740) ZBOSS: commissioning/bdb/zdo_commissioning_bdb.c:349   dev type 2, joined 0, ext_pan_id 0, authenticated 0, tclk_valid 1
I (3110) ZBOSS: nwk/nwk_join.c:293   Will assoc to pan 0x42c9 on channel 11, dev 0x0, iface_id 0
I (3620) ZBOSS: mac/mac_associate.c:448   received association response
I (3630) ZBOSS: zdo/zdo_app_join.c:771   CONGRATULATIONS! joined status 0, addr 0x55a6, iface_id 0, ch 11, rejoin 0
I (3630) ZBOSS: zdo/zdo_app_join.c:773   xpanid 29:d2:c5:99:8a:76:c1:bc
I (13670) ZBOSS: zdo/zdo_app.c:595   Have not got nwk key - authentication failed
I (13670) ZBOSS: nwk/nwk_main.c:4409   zb_nwk_do_leave param 5 rejoin 0
I (13670) ZBOSS: common/zb_address.c:1063   zb_address_delete ref 17
I (13690) ESP_ZB_ON_OFF_LIGHT: ZDO signal: ZDO Leave (0x3), status: ESP_OK
I (13690) ZBOSS: nwk/nwk_join.c:251   No dev for join
I (13700) ZBOSS: nwk/nwk_join.c:251   No dev for join
I (13700) ZBOSS: zdo/zdo_commissioning.c:210   Can't find PAN to join to! param 0
I (13710) ZBOSS: commissioning/bdb/zdo_commissioning_bdb.c:549   COMMISSIONING_STOP: app signal 10 comm status 3
I (13720) ESP_ZB_ON_OFF_LIGHT: Network steering was not successful (status: ESP_FAIL)

The log indicates that the light device has a different global TC link key compared to the coordinator, which causes it to parse the network key from the coordinator during the "Transport key" process.
Have you used the esp_zb_secur_ic_add() function to add the install code of the device on the coordinator side?


Debug: hit count breakpoint can't work well  in required module

Issue Type: Bug
The execution always breaks when hit count breakpoint in required codes.
Reproduce:
// main.js
require('./lib');
[1, 2].forEach(i => {
  console.log(i, 'main hit count') // set hit count in this line. For example: 100
})

// lib.js
[1, 2].forEach(i => {
  console.log(i, 'lib hit count') // set hit count in this line. For example: 100
})

VS Code version: Code 1.33.1 (51b0b28134d51361cf996d2f0a1c698247aeabd8, 2019-04-11T08:22:55.268Z)
OS version: Darwin x64 18.5.0

System Info

Item
Value

CPUs
Intel(R) Core(TM) i5-5257U CPU @ 2.70GHz (4 x 2700)

GPU Status
2d_canvas: enabledchecker_imaging: disabled_offflash_3d: enabledflash_stage3d: enabledflash_stage3d_baseline: enabledgpu_compositing: enabledmultiple_raster_threads: enabled_onnative_gpu_memory_buffers: enabledrasterization: enabledsurface_synchronization: enabled_onvideo_decode: enabledwebgl: enabledwebgl2: enabled

Load (avg)
1, 2, 2

Memory (System)
8.00GB (0.07GB free)

Process Argv
-psn_0_57358

Screen Reader
no

VM
0%

Extensions: none

Does a normal breakpoint (non-hit count) work?

Yes, a normal breakpoint or conditional breakpoint can work.

What is the hit condition you are using?

In the code above, set expression i === 2

i will start at 0, then be 1, it will never be == 2 in your code

i is the element in the array, so it will be 2 in the second iteration.

Ack, I was thinking it was the index parameter. Sorry.

I can't reproduce this. Please set "trace": true in your launch config and upload the log from the path written to the debug console.

debugadapter.txt

I just see setBreakpoints({"source":{"name":"lib.js","path":"/Users/liuqian26/project/common/playground/node/lib.js"},"lines":[3],"breakpoints":[{"line":3,"hitCondition":"100"}],"sourceModified":false}), so hitCondition=100, I don't see i == 2 like you said

I only set hit count and debug code as shown in the last log file.
Remove the old log file and replace the hitCondition with condition(i==2) in lib.js: debugadapter.txt

I think I got confused, so you said that the conditional bp does work but the hit count doesn't work? So what is the hit count that doesn't work? 100 will not be hit because the code doesn't run 100 times.

I'm sorry that I didn't make myself clear. In lib.js, When setting hit count 100,  expect code does not hit the breakpoint, but in fact, the code will always hit the breakpoint, so I said the hit count doesn't work. When set the conditional breakpoint i==2, the code only hit breakpoint once, so  I said it does work.

Oh, now I've got it.
I think I just need to move addHitConditionalBp above this line: https://github.com/Microsoft/vscode-chrome-debug-core/blob/master/src/chrome/chromeDebugAdapter.ts#L1712

We are rebuilding the debug adapters currently, so this isn't going to get fixed.


On .NET 7+ use System.Formats.Tar

https://learn.microsoft.com/en-us/dotnet/api/system.formats.tar?view=net-7.0

I did a quick test of this and System.Formats.Tar extracts in many cases fewer files than our existing implementation. Would require additional research to figure out which implementation is "correct" and how to make the behaviors match. Seems less trivial than I'd like.
It is however very easy to use this API to implement so it that portion is not a large lift.

Next step could be to examine the test tar tar that has either 5 or 6 files depending on the api called to figure out which is correct.


HUB-813 Update run.Dockerfile to use Java 11

This uodates the run.Dockerfile to use the same image as our other Dockerfiles

What is this Dockerfile used for?

What is this Dockerfile used for?

It used by the verify-hub/docker-run.sh script apparently


Overridden search component loses focus upon table rerender

When using an overridden Search component to replace the built-in search bar, focus is lost when the parent table component re-renders due to a data change.
When you use the built-in search functionality, i.e. options: {search: true}, then you can focus and type in the bar, through rerenders. In my case, I have polling going on. If you then do options: {search: false} and then insert your own input component with a Search component override, the input loses focus with each change to the table's input data.
Example: https://codesandbox.io/s/agitated-einstein-xs6f0?file=/src/MTable.js
To Reproduce
Use a custom search component in the table, and attempt to type in the resulting search bar with a polling (i.e. setTimeout) running that changes the table's data set periodically.
Expected behavior
When using a custom search component, focus is not lost when the table re-renders (presumably due to a data change)
Desktop (please complete the following information):

OS: MacOS Big Sur (Intel)
Browser Chrome
Version 88

I believe this is related to a known issue. We are working on separating the actual table body state from the header, in order to prevent rerenders like this.
This one is a work in progress.

I believe this is related to a known issue. We are working on separating the actual table body state from the header, in order to prevent rerenders like this.
This one is a work in progress.

@misterlocations This is because how react handles the stable function references internally. If a new function is passed, it will lose its state aka its focus and content.
You need to create a stable reference to the Search component to keep the state.
function Seach() {
return <input />
}

and
Toolbar: Search


Error decompressing go1.15.8.linux-amd64.tar.gz

Here the error log:
-----> New Go Version, clearing old cache
-----> Installing go1.15.8
-----> Fetching go1.15.8.linux-amd64.tar.gz...
gzip: stdin: not in gzip format
tar: Child returned status 1
tar: Error is not recoverable: exiting now
 !     Push rejected, failed to compile Go app.
 !     Push failed

Sorry about that, should be fixed now. Can you please confirm?

Yes! Thanks!


Support array type Options

see #7

Changes Unknown when pulling 28af095168a8138624b1fe77bd06a491c2bcd961 on Zzzen:master into ** on Brooooooklyn:master**.

LGTM
thank you for your pull request.
could you please squlash the commits and update the docs.
Thank you.

Changes Unknown when pulling 4c07608757dbb55444180a80ac275e2f9065517b on Zzzen:master into ** on Brooooooklyn:master**.

My pleasure.

Changes Unknown when pulling 4c07608757dbb55444180a80ac275e2f9065517b on Zzzen:master into ** on Brooooooklyn:master**.


Inventory fixes

Description
Fixes the Admin Ghost inventory not working properly.
Fixes the cuffs sprite error on punpun
Makes it so that ghosts can now have hats forced onto them by aghosts. To make sure the hats are visible, the ghost transparency has been toned down considerably.
Changelog
:cl: SomeCabbage

add: Player ghosts can now be forced to wear hats by admins.

:trollface:

hehe

Mayhaps consider making the ghost sprite itself transparent, and then removing transparency altogether?
In addition, if you can make the sprite layers themselves unshaded, that would fix things not being visible in the dark. That'd be appreciated.

cant seem to make hats unshaded but otherwise this should be good to merge


Add method AllocateIfNotExist to interface GroupCounter in proxy

Add method IfAllocateNotExist to generate a unique group ID for a Service
if the group ID has not been generated, then return the group ID (new
allocated or already allocated). Method Get is reserved and can be
only to get the allocated group ID.
Fix #3339
Signed-off-by: Hongliang Liu<EMAIL_ADDRESS>

Codecov Report

Merging #3340 (d508ea2) into main (3f30d84) will decrease coverage by 1.36%.
The diff coverage is 53.57%.

@@            Coverage Diff             @@
##             main    #3340      +/-   ##
==========================================
- Coverage   60.85%   59.49%   -1.37%
==========================================
  Files         266      266
  Lines       26520    26527       +7
==========================================
- Hits        16139    15782     -357
- Misses       8591     9016     +425
+ Partials     1790     1729      -61

Flag
Coverage Δ

kind-e2e-tests
45.95% <50.00%> (-2.01%)
:arrow_down:

unit-tests
41.58% <27.77%> (ø)

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


[BUG] Incorrect documentation formulas for SMAPE and MAPE

🐛 Bug Report
Currently formula for SMAPE looks like this:

It isn't correct and summation should be made over the fraction, not over the numerator.
The same error also holds for MAPE.
Expected behavior
Summation should be made over the fraction
How To Reproduce
Look at page for SMAPE and page for MAPE.
Environment

Additional context
No response
Checklist

[X] Bug appears at the latest library version

Closed in favor of #301.


Support of the Databend database. With the "show create table” statement

Description
In databend, there are currently differences between the displayed DDL and when users directly call show create table. For example:

DBeaver

CREATE TABLE table_with_null (
	a Int32,
	b String
);

databend bendsql

CREATE TABLE `table_with_null` (
       `a` INT NULL,
       `b` VARCHAR NULL DEFAULT NULL
) ENGINE=FUSE;

There is a difference in displaying whether the field is null.
DBeaver Version
DBeaver Lite <IP_ADDRESS>312201943
Operating System
macOS Sonama 14.1.2
Database and driver

database: Databend Query v1.2.344-3340c38f77(rust-1.77.0-nightly-2024-02-22T01:38:36.376265655Z)
driver: https://mvnrepository.com/artifact/com.databend/databend-jdbc/0.1.9

Steps to reproduce
Why do I ask this question?

I use Wireshark to observe the packets of MySQL. When clicking on DDL, it triggers the execution of show create table.

However, in observing the transmission packets of databend, it was found that there was no packet sent for show create table:

During the display DDL process, 3 APIs were called. They are:

getColumns
getImportedKeys
getPrimaryKeys

a. send getColumns request

b. the getColumns ResultSet

From the return result of getColumns, it meets the requirements. But why is it inconsistent on the display of DDL?
So my question is: under what cases or configurations can DBeaver send show create table?
Additional context
No response

Hello @hanxuanliang
We do not have official support for the Databend database.
You can find the previous attempt to add it here: https://github.com/dbeaver/dbeaver/pull/19558
If you look into the code, you will see the show create table statement there for table reading.
But without this code in our codebase - we can not use it. By default, DBeaver tries to create the table DDL from the columns, PK and FK info.
We need to add support for the Databend database to solve your issue.

And, by default, DBeaver shows nothing for the "NULL" columns. Only the "NOT NULL" status.

OK! So should I reactivate the driver's plan? But I am a beginner in dbeaver, what information can I start with?

Hello @hanxuanliang
We do not have official support for the Databend database. You can find the previous attempt to add it here: #19558 If you look into the code, you will see the show create table statement there for table reading. But without this code in our codebase - we can not use it. By default, DBeaver tries to create the table DDL from the columns, PK and FK info. We need to add support for the Databend database to solve your issue.

@LonwoLonwo Thanks for explain! You mean we should add databend into Dbeaver firstly and then show create table statement will be used for table reading?

@hantmac
https://github.com/dbeaver/dbeaver/pull/19558 we need to rethink this PR. It was good, but it had some critical issues for us.
But yes, it is close to what we are looking for for this issue.


Split UART transport into host and controller parts

nimble/transport/uart handles now both host and controller - we could split this into two separate transports to make maintaining code easier.

with latest changes to ll and hs transport + common h4 code this shouldn't be an issue anymore, right?


Use distribution's ValidateRepositoryName for remote name validation.

Signed-off-by: Shishir Mahajan<EMAIL_ADDRESS>

Follow up on #11116.

Can you please sign your commits following these rules:
https://github.com/docker/docker/blob/master/CONTRIBUTING.md#sign-your-work
The easiest way to do this is to amend the last commit:
$ git clone -b "cleanup_cmd_tag" git@github.com:shishir-a412ed/docker.git somewhere
$ cd somewhere
$ git commit --amend -s --no-edit
$ git push -f

This will update the existing PR, so DO NOT open a new one.

ping @dmcgowan
any updates on this one ?

@shishir-a412ed Could you rebase.

@rhatdan rebased.

Code LGTM
Although I still think we should enumerate what the differences are in validation caused by this change. The validate function will be enforcing this grammar.
// 	alpha-numeric := /[a-z0-9]+/
//	separator := /[._-]/
//	component := alpha-numeric [separator alpha-numeric]*
//	namespace := component ['/' component]*

Code LGTM, as well.

@stevvooe
'FAIL: docker_cli_tag_test.go:114: DockerSuite.TestTagWithSuffixHyphen
docker_cli_tag_test.go:122:
c.Fatal("tag a name begin with '-' should failed")
... Error: tag a name begin with '-' should failed
'
Jenky failed with this error. I think this was the reason why I added that extra check in registry/config.go earlier. Do you feel we should put the check back ?
Shishir

@shishir-a412ed I added the exact same test cases to the distribution source and they all pass. Looking at the failure, it seems to be happening in a tagging test. There may be a bug elsewhere.

@shishir-a412ed I added a few more test cases in distribution: docker/distribution#596.

@shishir-a412ed I see you pushed changes to this PR; did you update the code for that failing test, because I see it's still failing.

@thaJeztah Please check now.

Thanks @shishir-a412ed I'll restart the experimental build once more.
ping @stevvooe @dmcgowan PTAL

update looks good, tests passing
LGTM

ping @tibor @RichardScothern

Tidy.  LGTM

@tiborvass any updates on this one ?

@shishir-a412ed what is the purpose of this PR? To allow /foo/bar/image ? Is there any other change?

@tiborvass, yeah and using the distribution's validation for both local and registry.

LGTM

LGTM

Thanks @shishir-a412ed !

woohoo


error in pseudotime()

Hi,
first of all thank you for curating this package! it is super useful and convenient to use :)
TBH I am not sure the behavior i encounter is a bug in the code or a consequence of a "bad" tree assignment due to lack of signal in the data. With that said  i would appreciate your input.
I am running the analysis pipeline following the tutorial  Tree_Analysis_Bone_marrow_fates.ipynb
Now, upon calling pseudotime() i encounter an error in line 210 (see content below) since cells_back is defined over segs from allsegs (there are segs that do not appear after allsegs = allsegs.apply(lambda x: x.value_counts(), axis=1)) whereas boo contains all segs  (of dim).
i thought of modifying this - - after defining allsegs relating only to segs according to allsegs.columns but wanted to verify this makes sense or could it be the problem is in the cells assignment i obtained in previous steps.
Thank you in advance.
ValueError:  Unable to coerce to DataFrame, shape must be (10, 37): given (10, 42)

It could be indeed a lack of signal in the data.
If you are following the tutorial exactly, tl.pseudotime is run with multiple mappings, meaning that cell pseudotime assgnment is performed n times by selecting the closest node randomly using the values from R matrix as probabilities.
The error happing at line 210 tells me that the first run of reassignment of cells having a pseudotime below their assigned segment went through, but that it might have led to empty segments. If that is the case, that means that some segments of the tree are not stable enough and the tree require more careful tweaking to get a more robust one.
Two solutions:

You can avoid doing multiple mapping by removing the parameters n_map and n_jobs in tl.pseudotime, but the fact it breaks down during multiple mapping could tell something about the validity of such tree.
Re-run the tree algorithm in order to capture a more robust one, how stable is that tree? are trees looking the same among differents runs?

All of this is under the assumption that my interpretation of that error is right, but to be sure I would be happy to have a look at your data so I could try and debug myself!

Thank you for the prompt response!
Let me first try to test your hypothesis, if I fail to reach a conclusion I will share the data and code for reproducibility (wouldn't want to waste your time atm).

I had a similar issue, and it got solved by removing the n_map and n_jobs hope it works for you too.


Category collections

Build collection of categories based on categories property in page front-matter

category helper to iterate over the pages for a specified category (see clients.hbs for an example)

Move layout, data, and partial loading inside the assemble task so those files are reloaded when watch is triggered.

We're still working on making this easier and the permalinks thing that you'd like will come then. For now, you could move template's into sub folders to build the URL structure you're looking for. I can update it when we get those features built-in.

Can u tell me a little more about this block? side note: did I write this correctly?
assemble.set('categories', {
  categories: {
   clients: {
     "polyon": {}
   }
  }
});

What's the ETA on the permalinks feature again? My boss wants to know ;)

I just added the comment with what the structure of the categories object might look like after the onLoad middleware has run for all the pages.
doing assemble.set('categories', {}) is just creating an empty object on assemble's internal cache object to store categories later. (this is like doing app.set('categories', {}) in an express app.
When the onLoad middleware runs for a single file, it looks at the file's front-matter (file.data) to see if it contains a categories property. This property can be a string or an array of strings. If it exists, then the middleware updates the categories object for each category in the array. In the case of polyon.hbs, there is only 1 category called client, so the categories object becomes:
categories: {
  client: {
    polyon: { /* actual file object */ }
  }
}

I think there's already a "permalinks" gulp plugin that will work in the pipeline for something like that, but what we're working on is a way to also easily make index pages (e.g. all the pages in the client category would be at /categories/clients.html or something like that). That part is close and an example of how it might work as a custom loader is in the indices example on the template branch that I showed you. That's not going to be the final version, and will probably be updated within the next few days.


fix issues with enabling ImGuiConfigFlags_ViewportsEnable

There are major issues with the popup when using the ImGuiConfigFlags_ViewportsEnable and the popup keeps moving around as the window moves around. The solution for now is to display the popup in the corner of the monitor. (instead of the corner of the window)

What imgui version are you using ? And what implementation ? It looks like I do not have any reference to ImGuiConfigFlags_ViewportsEnable in imgui v1.81 (dx12 impl).

What imgui version are you using ? And what implementation ? It looks like I do not have any reference to ImGuiConfigFlags_ViewportsEnable in imgui v1.81 (dx12 impl).

sorry for replying pretty late, but you have to use the docking branch


Consider current directory if parent directory is blank

Small QOL fix.
Currently when the model is in the current directory, using the model name directly throws awkward "non-specific I/O error".
Better to simply check if we're in the current directory.

Well spotted! Totally forgot that some people might have models in the same folder as the executable.

@philpax fixed fmt issues, should be okay for merge.