Blinky works with GPIO23/25 but not GPIO24

Hi, I'm working with your project to build something with the m0-sense from sipeed: https://wiki.sipeed.com/hardware/en/maixzero/sense/maix_zero_sense.html
The blinky example works for the red and blue LEDs on 23/25, but not the green on 24. I tried about everything I could think of (except that I do not have a risc-v core debugger). Mostly working down to direct PAC writes for 24, but nothing could make it work.
Writing to the cfgctl12 or possibly the cfgctl34 for output enable typically turns on all three leds.
Do you have any idea what might cause this on bl702?
I added lines to add the GPIOs up to 31:
    Pin23: (pin23, gpio_cfgctl11, UartSig7, sig7, sclk, sda, gpio_23, gpio_int_mode_set3,23),
    Pin24: (pin24, gpio_cfgctl12, UartSig0, sig0, miso, scl, gpio_24, gpio_int_mode_set3,24),
    Pin25: (pin25, gpio_cfgctl12, UartSig1, sig1, mosi, sda, gpio_25, gpio_int_mode_set3,25),
    Pin26: (pin26, gpio_cfgctl13, UartSig2, sig2, ss, scl, gpio_26, gpio_int_mode_set3,26),
    Pin27: (pin27, gpio_cfgctl13, UartSig3, sig3, sclk, sda, gpio_27, gpio_int_mode_set3,27),
    Pin28: (pin28, gpio_cfgctl14, UartSig4, sig4, miso, scl, gpio_28, gpio_int_mode_set3,28),
    Pin29: (pin29, gpio_cfgctl14, UartSig5, sig5, mosi, sda, gpio_29, gpio_int_mode_set3,29),
    Pin30: (pin30, gpio_cfgctl15, UartSig6, sig6, ss, scl, gpio_30, gpio_int_mode_set4,30),
    Pin31: (pin31, gpio_cfgctl15, UartSig7, sig7, sclk, sda, gpio_31, gpio_int_mode_set4,31),
    ```

No idea to be honest! GPIO24 wasn't broken out on any of my other boards.
And while I did check things when copying over GPIO support from bl602 it's possible I got them wrong.
I do have an M0 sense, so I can test it out locally + I'll review your pin configs and see if something stands out...

Oh.. do the pin numbers have some weird offsets here?
I'll have to check the RM...
    Pin9: (pin9, gpio_cfgctl4, UartSig1, sig1, mosi, sda, gpio_9, gpio_int_mode_set1,9),
    Pin10: (pin10, gpio_cfgctl5, UartSig2, sig2, ss, scl, gpio_10, gpio_int_mode_set2,11), // Should we have jumped to 11 here
...
    Pin22: (pin22, gpio_cfgctl11, UartSig6, sig6, ss, scl, gpio_22, gpio_int_mode_set3,23),
    Pin23: (pin23, gpio_cfgctl11, UartSig7, sig7, sclk, sda, gpio_23, gpio_int_mode_set3,23), // shouldn't this be 24?

I incorporated your changes (with a co-author tag) + a fix to the pin numbers + updated from the older riscv/riscv-rt, was intending to push it to a branch but instead I pushed it to main :sweat_smile:
I tested it on all the pins exposed on my XT-ZB1 board, so pins 0,1,2,7,8,9,14,15,17,25,27,28
Haven't been able to get my M0 sense into bootloader mode, so testing on that will have to wait until I get a debugger on it.

Finally worked it out, what a pain!
Anyway, after these changes I tested with pins 23, 24, and 25.
pin 23 blinks blue
pin 24 blinks green
pin 25 blinks red
This matches what the schematic says should happen.

With the LCD attached:
blue blinks
green stays lit at all times
red blinks

Hmm, switching pin to gpio24 still causes all three LEDs to turn on, very unusual.
Trying to remember different things I tried:

Ran code on 3 different m0sense units and with/without LCD
Directly write GLB/CFGCTL via bl702_pac
Directly write GLB/CFGCTL via addresses/pointers/write_volatile
Verified write addresses for write_volatile in disassembly
Called GLB_Select_Internal_Flash via rom function during init (https://bbs.bouffalolab.com/d/65-bl70xkeyscan/6)
Updated riscv/riscv-rt crates and tried nightly compiler
Played around with ram memory space (seemed to help at some point)

It seemed that in some instances changing between debug and release build, and switching between units would sometimes produce slightly different behavior.
As far as I can tell, all of the values for gpio24 related registers in the pac seem correct, or at least they match the datasheet values.
Unfortunately my older model segger can't connect so I couldn't read registers. I'm mostly out of ideas to try other than maybe trying to run a C blinky with the bl_mcu_sdk to try to rule out hardware. Will need to get one of the sipeed debuggers or similar to inspect the registers surrounding writes.
For reference I'm using the cargo objcopy to generate the bin and bflb-mcu-tool for loading on a windows host.

I have a newer j-link, plus a bunch an ftdi-based probe that could check registers (via probe-rs or openocd).
But it's no use, once I load the Rust firmware it can't connect. Works fine while it's still in the bootloader though (the ROM bootloader, the one you need to jumper 3V and BOOT pins to enter, not the sipeed one you need to flash first then press boot and reset buttons).
So either we're doing something, not doing something, or the ROM bootloader is messing with things.
Have you tested this out with the C SDK yet? That's next on my list for testing...

Official blinky (in bl_mcu_sdk) does not work with GPIO24.
Unlike the Rust one, the green LED stays off the whole time, instead of staying lit the whole time.

the M0sense_BL702_example version definitely cycles through green successfully. now we have something to check!

the M0sense code uses an older version of the SDK, maybe that's it?
trawling through the init code I find this:
https://github.com/bouffalolab/bl_mcu_sdk/blob/4b4e4c95449e902206e0d92025c6dc05f3e355d5/drivers/bl702_driver/std_drv/src/bl702_glb.c#L3101
not sure if this is a smoking gun yet but it looks promising.

That does look promising. It should apply to the m0sense, being an integrated flash device. I made an attempt to implement it in the Rust, but still can't get the green to come on.
AFAICT, what they're doing in the init for gpio 23-28 is:

Add 9 and configure CFGCTL (including func_sel which doesn't exist for gpio >31 per manual)
Also configure lower value CFGCTL, but only the func_sel
Use OE for GPIO+9
Use O for GPIO base index

I added the missing registers manually to the pac, so I may have screwed something up, but it doesn't seem to help for GPIO24. Going to add the registers to try for 25 and see if it works for that LED.

I do have it blinking now, nothing related to gpio33 seems to be required, but still testing to see what the minimum is to get it to function.
It appears on the surface that clearing the IE bit for gpio24 in particular also stops the output from working

Okay, I did more testing and it seems to come entirely down to the GP24IE bit, clearing it seems to also disable the output buffer. In this minimal code snippet, its still required to set GP24FUNC to 0xB even though it should be the reset default. It is also unusual that GP24 supposedly has the pulldown on by default according to the RM, so unless it is a typo, something seems different about GP24 in particular. Or it may be that startup code is messing with it.
        w.reg_gpio_24_func_sel().bits(11) // required
                                          //.reg_gpio_24_ie() // disables output
                                          //.clear_bit()
    });
    glb.gpio_cfgctl34
        .modify(|_, w| w.reg_gpio_24_oe().set_bit());
    loop {
        glb.gpio_cfgctl32.modify(|_, w| w.reg_gpio_24_o().set_bit());
        d.delay_ms(1000).unwrap();

        glb.gpio_cfgctl32.modify(|_, w| w.reg_gpio_24_o().clear_bit());
        d.delay_ms(1000).unwrap();
    }```

    The simplest fix might just be to leave the input buffer and schmitt trigger on even when set to output mode. I don't think the chip will be setting any records for low power consumption (current isn't even in the data) so burning a little more current may be a fair compromise. Planning to play with a simple fix in the hal crate now.

Resolved by #9


Update original selectmenu with new custom dropdown

Summary
Use new custom dropdown instead of default select box.

[X] Design panel text style panel and font panel
[X] Document panel select boxes to custom dropdown

Address issue #255  (Part of) :)
PS: I think font panel should be removed.

PS: I think font panel should be removed.

Font panel is removed within #412, it's just taking time to get merged.

Should this be rebased against shared-component/dropdown instead? Currently, it seems to include both PR-s. Not clear which changes come from this PR only.

Should mask panel also get the new dropdown? Even though doesn't seem like it's in the design at all, so perhaps not relevant.
Are you keeping the old select component for some specific reason?

Not needed. We can merged to original dropdown PR. #453


feat: add support for auto (safe) interface deletion and a new endpoint to delete a disabled intf

This is a feature request from @italovalcy.
Context:

It turns out that recently in prod this was needed, when a logical interface got created and then deleted via switch configuration, but still the intf persisted, and actually also resulted in another issue.

Requirements:

When handling an interface deleted event '.*.switch.interface.deleted' that comes from a OFPPR_DELETE (you can simulate this by deleting an interface on OvS - sudo ip link delete s1-eth4), if the given interface has no links and no flows (either on in_port match or {"action_type": "output", "port": x} ), no allocated vlans, then it should be OK to automatically hard delete it. Otherwise just log.info that the interface couldn't automatically safely be deleted.
Add a new endpoint such as DELETE v3/interfaces/{intf_id} (similar to how @Alopalao implemented for links and switches recentely). On this endpoint, it should only hard delete if the interface has been disabled, has no associated links, and has no associated flows (same as previous paragraph)

To hard delete: The interface should be removed on a switch switch.remove_interface(intf), and then remove from the DB in the switches.interfaces[] collection it should be pulled from the array, and removed from interface_details.
The priority and target will still be defined.
Side note, this following script has been used recently to hard delete a non existing disabled interface (it was also filtering for not active due to special case in prod):
topology = controller.napps[("kytos", "topology")]
dpid = "00:00:00:00:00:20:00:01"
port_no = 1000
switch = controller.switches[dpid]
intf = switch.get_interface_by_port_no(port_no)

print(f"found intf {intf}")

if intf and not intf.is_enabled() and not intf.is_active() and not topology._get_link_from_interface(intf):
    switch_before = switch.as_dict()
    switch.remove_interface(intf)
    upserted = topology.topo_controller.upsert_switch(switch.id, switch.as_dict())
    print(f"upserted switch {upserted} before={switch_before}")

    res = topology.topo_controller.db.interface_details.find_one_and_delete({"_id": intf.id})
    print(f"db.interface_details deleted: {res}")

if not switch.get_interface_by_port_no(port_no):
    print(f"intf {intf} deleted")
else:
    print(f"intf {intf} NOT deleted")

About VLAN usage, of_lldp uses all the interfaces of a switch or none of them. This would mean that currently to delete an interface, first it is needed to disable its switch to de-allocate all the VLANS from the switch interfaces.
This behavior it is not a blocker but it would require more work from the user. Because, the switch and its component would need to be enabled once the interface is deleted.
Found a partly of_lldp issue related to what was explained. Flows would only be installed in NNIs and allocate the respective VLAN.

@Alopalao, good observation, maybe we can in the meantime ignore allocated vlans and only rely on the flows in the DB? At the end of the day, the allocated vlans are primarily for validation purposes, in this case as you know it's ensuring that nobody will allocate a vlan that interferes with reserved of_lldp, but in practice as you mentioned there's no flow matching on a particular interface yet, and as far as deletion is concerned it cares about specific flows associated with an interface.
Potentially, in the meantime, you could:

Make a request to http GET 'http://<IP_ADDRESS>:8181/api/kytos/flow_manager/v2/stored_flows?state=installed&dpid=<dpid>', and then in the client topology here, you filter if you find any match: {"in_port": port_no}, or actions or instructions with output port_no. We could one day support this on flow_manager but for now, since this is the first usage and it's not that intensive it's probably not worth yet to add an index for it.

Let me know if you can see a simpler idea that wouldn't create tech debt.


⚠ Bofrost.fr has degraded performance

In 9418edc, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1150 ms

Resolved: Bofrost.fr performance has improved in 4cfd4f1.


Undeprecate it by using MGL for opengl on macos?

Hi. How feasible would it be to switch the project to https://github.com/openglonmetal/MGL ? I'm a Linux user, but it's a shame this was deprecated simply because apple decided it doesn't like opengl anymore. MGL seems maintained enough

Hey! Thanks for the heads up on the OpenGL on Metal project, I wasn't aware of it. The question of how feasible it might be to port to it is maybe a bit difficult to cleanly answer though.
I think the main thing would be changing the haskell OpenGL and OpenGLRaw libraries to use MGL. If that was done (and MGL supported the features that improviz uses) then it could maybe just be a question of bumping the library and things would work. My suspicion is that updating those libraries would be non-trivial unfortunately and that's kind of the rub with this project as a whole.
Most of the work to fix it on MacOs now would be non-trivial. Either updating those libraries, switching to using a different graphics layer library (there are haskell bindings for vulkan https://hackage.haskell.org/package/vulkan) rewriting a graphics layer in a language better suited to it and then binding to that (OpenGL in haskell is kind of miserable to be honest) or even just rewriting the whole thing. And unfortunately I don't really have the energy, inclination, or in some ways the ability to do that kind of deep software engineering work any more (burnout is rough).
TLDR; It's almost certainly possible, but probably not by me in the foreseeable future.


Organ size should all be zero in Grey You

This does that.
I also had problems getting spotless to run, so attempted fixing everything in AdventureResult in an attempt to get my problem to go away. Turns out upgrading spotless sorted it for me, but I kept the improvements that I made to AdventureResult!

Was the spotless upgrade required because of the instance pattern matching or was there some other trigger?  If the former can we think of other tools that may need to be upgraded as we actually start using Java 17 features?

Was the spotless upgrade required because of the instance pattern matching or was there some other trigger? If the former can we think of other tools that may need to be upgraded as we actually start using Java 17 features?

No, spotless just wouldn't run for me at all! I added the pattern matching after the spotless failure (by making changes IntelliJ told me to make hoping I'd fix some underlying spotless issue).

Was the spotless upgrade required because of the instance pattern matching or was there some other trigger? If the former can we think of other tools that may need to be upgraded as we actually start using Java 17 features?

No, spotless just wouldn't run for me at all! I added the pattern matching after the spotless failure (by making changes IntelliJ told me to make hoping I'd fix some underlying spotless issue).

Thanks.  I had not seen evidence of spotless failures and so wondered if I wasn't paying attention or whether there were environmental differences or what.

This is ready for re review!


Log statement passing along wrong number of arguments

Hello to all.
I was checking some of the source code and this error popped up in Intellij.
This log statements is passing along the wrong number of parameters.
When passing along a Throwable parameters, the calls from the LOGGER class only ever have 2 arguments: the already formatted String, and the Throwable. As can be seen in the source code of the LOGGER object.
I copied the permalinks from version 1.7.25:
The code that was actually being called: https://github.com/qos-ch/slf4j/blob/a81440ea36676f3b090f5a4ccba70d17c7b80f6e/slf4j-api/src/main/java/org/slf4j/Logger.java#L255
The code being called after this change: https://github.com/qos-ch/slf4j/blob/a81440ea36676f3b090f5a4ccba70d17c7b80f6e/slf4j-api/src/main/java/org/slf4j/Logger.java#L280
I used a String.format() to fix it, not sure if that's optimal.
Also, this one file had unused imports, removed them.

I believe that your IDE is mistaken.  The point of slf4j methods that accept (String, Object, Object) or (String, Object...) is to avoid actually performing the format operation if DEBUG logging is disabled.  Your code unconditionally formats the message.
Slf4j checks the type of the last parameter at runtime to determine if it is an instanceof Exception.  Maybe this confuses the IDE, but rest assured that slf4j is not confused.

Didn't know that last part. Ah well, life goes on :P


Zabbix not supported the Azure key

Zabbix server does not support the azure-zabbix-templates key.
STATUS needs to be enabled but it shows comment "Unsupported item key" , my item key is azure.monitoring.discovery .

By the way, I check the connections btw zabbix server - azure, azure vm - zabbix server.
If I read the conf.json file in Zabbix Server, I can see the info about the azure and if changing templates to zabbix-agent from azure-zabbix-templates then the graph shows up.
I think the key as azure.monitroing.discovery needs to be changed, if not, please tell me what I missed.
p.s. I found out the troubleshooting in wiki , /opt/azure-zabbix/bin/discovery ran well, but, /opt/azure-zabbix/bin/vmdiag query -s vmname1 doesn't work maybe because of key.

@janeunbi  Thanks for reporting this.
What is the Zabbix server version you're using?

hi @karataliu
I'm using Zabbix 4.0, is that what you mean?


kivy.uix.label.Label: Unable to draw Labels without attatching the widget

I'm attempting to make a scrabble game using kivy, and have been frustrated at every turn with the inability to draw a Label without adding the Widget to the application. Adding and removing Label widgets is constantly bogging down my program.
This isn't a problem with my rectangles because I draw my Rectangles using:
'''with game.canvas:
Color(....)
Rectangle(.....)
'''
Could you make it so I can do this with Label too? Or is there something I'm missing?

This is a support question, use a support forum.


Unable to start Ocelot because using ServiceDiscoveryOptions but no ServiceDiscoveryFinderDelegate

I've just updated package from 8.0.0 to 11.0.2 and got this error:

Unable to start Ocelot, errors are: Unable to start Ocelot because either a ReRoute or GlobalConfiguration are using ServiceDiscoveryOptions but no ServiceDiscoveryFinderDelegate has been registered in dependency injection container. Are you missing a package like Ocelot.Provider.Consul and services.AddConsul() or Ocelot.Provider.Eureka and services.AddEureka()?

I do not use ServiceDiscovery feature. My config is
"ReRoutes": [
    {
      "DownstreamPathTemplate": "/profile",
      "DownstreamScheme": "http",
      "UpstreamPathTemplate": "/profile",
      "UpstreamHttpMethod": [ "Get" ],
      "DownstreamHostAndPorts": [
        {
          "Host": "localhost",
          "Port": 5001
        }
      ]
    }
  ],
  "GlobalConfiguration": {
    "RequestIdKey": "X-RequestId",
    "BaseUrl": "http://localhost:58134"
  }

Specifications

Version: 11.0,2
Platform: Win10
Subsystem: ASP.NET CORE  2.1

I found
var useServiceDiscovery = !string.IsNullOrEmpty(fileReRoute.ServiceName);
So, now if I add ServiceName property then I need to use ServiceDiscovery. But why? I'm using that property for name service (for swagger documentations). It's not obvious that property  ServiceName
enables ServiceDiscovery , isn't it? Where is UseServiceDiscovery?

@Marusyk Yeh maybe it is not a good name, I might change it to KeyForServiceDiscovery, There is a Key property on the ReRoute you can use for swagger maybe?

@TomPallister, thanks for quick response.
Yes, Key property will help.  Thx


Documentation?

Hi, I'm working with dicomParser and am on the search for some sort of documentation on the API it offers. Is there any sort of documentation with specifications on all the functions available in this library? Thanks in advance and apologies if I missed it in an obvious place. I've tried searching this repository and its page on NPM.

I can't find it either!

Something like this:

https://github.com/cornerstonejs/dicomParser/blob/master/index.d.ts

@malaterre This link doesn't point to a documentation page, as of this moment.
From the README.md page, the authors clearly said that this library has documentation, see below:

Has documentation and examples on how to use it

Anyways, this library is awesome and the efforts they put in is unimaginable.
Thanks a lot 4 all contributors.


TEST - DO NOT MERGE: libphonenumber library test

Test phone number library
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of the namex license (Apache 2.0).

Temporary Url for review: https://strr-platform-dev--pr-387-se6hp77e.web.app

Temporary Url for review: https://strr-platform-dev--pr-387-se6hp77e.web.app

Closing as not needed


add build script, tests, cli, api and 100% coverage

cssProperties() is async function (which live in build.js) or return array with all properties if dont have arguments.
Through CLI can update/build list of all available (170+) CSS2/3 css properties, scraped from W3C website

add more tests
add cli
add async function
update travis to run coverage
add coverage
add bin in pkg json
add more scripts for automation

css-properties --help for more info

currently properties are 178

This is rad! Thanks @tunnckoCore

Published as<EMAIL_ADDRESS>

Thanks! :) Is there more something for v1.0.0? Cuz for sure I want v1.0.0 for filter-css-properties

Nope. Published to npm as<EMAIL_ADDRESS>

Great :+1:


fix MDTF implementation

Improves the functionality of MDTF

ADF now waits for the MDTF to be done before exiting
The default settings for MDTF to save_nc = false and make_tar = false, so that the output can just be tarred with ADF output
The file permissions are fixed so that figures are viewable from the webpag

Thanks for the update @bitterbark


Adding a note about splitChunks.name = false functionality

Hi people!
This adds a note about what splitChunks.name = false means and that it is probably a good setting for production. This (hopefully) is an easy win, as it was recommended by sokra: https://github.com/webpack/webpack/issues/8426#issuecomment-442375207
Thanks!

Thanks!


[constellation] Fix missing bracket

CI seems to fail because https://github.com/cloudflare/cloudflare-docs/blob/production/.github/actions/owners.ts does not have entry for constellation. 😅


Reference createSwitchNavigator in the auth-flow.md

createSwitchNavigator was not being referenced in the setup guide.

thanks!


Use a main file as the package entrypoint.

Instead of resume_cli.main(). See the python docs. This may be opinionated but I think it looks nicer. I don't think it's a PEP but it's a good practise.

I think the big question is can this be the file to put in the setup.py as the entry point, I never did this or seen it used, so I don't know how it will work.
My point is that I don't want to duplicate code for this.
How is this supposed to be done? (I want to implement this locally and check that everything works as before, may be except the name of the program, before updating the repository and/or pypi)

Just create a file named __main__.py in the package, then move your if __name__ == __main__: block from resume_cli.py in here. Import your main() from resume_cli.py. Done.
That will allow you to replace the absolute import with relative one and prevent redundant imports.
You will also be able to call the module with python -m resume_json_python.

Why do you prefer it this way?
I ask because it just add a bit of code just to enable the python -m running, but the code become a bit more messy to make it work as a script, and with the -m option.
I don't think there are any redundant imports, can you point me to one (even if I except this I need to know about them)?
I think I will do this (did most of the work already), but need to understand better the benefits (it's OK if it's only enabling the python -m, just want to know about it), it seems like the relative import are possible even without the __main__ so I think it's not relevant for this

Have a read of https://stackoverflow.com/a/28154841. I'm more inclined to use the solution 1, it's easier for everyday developments, as far as I'm concerned.

First, thanks for the link, I still need to read it again to understand all the details, but I think I can learn from it.
I think we will need to keep the absolute imports so it won't break when using as a script, but since __main__ is improving the way to work with the app (because it enables the option to do python -m resume_json, without losing any functionality) I will add it.


upgrade openssh to min 8.2 for fido2 support

it would be great to use openssh-server version 8.2 as it introduced fido2 support by default

I would love to see fido2 on Raspiblitz
I would be interested in a use case where you could leave the unit on an untrusted network, and lock down ssh unless the security key is inserted into the pi. I'm not aware of anything quite like that in the wild, and all the node stacks have an evil maid weakness - so this would be a big step in the right direction, imho.

login with a local fido2 device is supported by openssh 8.2. not sure if its possible to configure it to require fido2 on the remote side. i guess your use case could be implemented as a PAM script

I would love to see fido2 on Raspiblitz
I would be interested in a use case where you could leave the unit on an untrusted network, and lock down ssh unless the security key is inserted into the pi. I'm not aware of anything quite like that in the wild, and all the node stacks have an evil maid weakness - so this would be a big step in the right direction, imho.

login with a local fido2 device is supported by openssh 8.2. not sure if its possible to configure it to require fido2 on the remote side. i guess your use case could be implemented as a PAM script

Because we have a lot going on with refactoring I will push this to v1.8.1 to reconsider. But if someone is running tests please report and we may can add this update/feature earlier.


Spartacus on github works in Firefox, Safari but not Chrome (for some people)

https://sap.github.io/cloud-commerce-spartacus-storefront/
For Bill/Matt: Doesn't work on Chrome
For Gil: Works on Chrome
What's the diff?
I tried using CORS plugin to disable CORS blocking but no effect.
On the other hand, Firefox gives a CORS message yet allows the site anyway:

Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://storefront.c39j2-walkersde1-d4-public.model-t.cc.commerce.ondemand.com/rest/v2/electronics/languages?lang=en&curr=USD. (Reason: CORS request did not succeed).[Learn More]
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://storefront.c39j2-walkersde1-d4-public.model-t.cc.commerce.ondemand.com/rest/v2/electronics/cms/pages?pageType=ContentPage&pageLabelOrId=homepage&lang=en&curr=USD. (Reason: CORS request did not succeed).[Learn More]
Cross-Origin Request Blocked: The Same Origin Policy disallows reading the remote resource at https://fonts.gstatic.com/s/opensans/v15/mem8YaGs126MiZpBA-UFVZ0bf8pkAg.woff2. (Reason: CORS header ‘Access-Control-Allow-Origin’ does not match ‘https://storefront.c39j2-walkersde1-d2-public.model-t.cc.commerce.ondemand.com’).[Learn More]

timebox to 2-3 days and come to the team a standup, if not resolved

investigate cors configuration some more?

corsfilter.default.allowedOrigins needed to be updated in HAC (it was pointing to localhost)

it works in chrome when i open an incognito mode but not in regular
i cleared my cookies and still same

Looks like it's just Bill, works with matt, gil, scott, jim

finally figured this out. i have an extension, privacy badger, that was blocking the modelt server from dropping a cookie. once i whitelisted it, it worked


onPlayerError not being called after getting SocketTimeout

Media3 Version
ExoPlayer 2.18.4
Devices that reproduce the issue
I have used an emulator to reproduce issue.
Devices that do not reproduce the issue
No response
Reproducible in the demo app?
Yes
Reproduction steps
Description:
When there is an error (SocketTimeout) Using even logger I can see that onLoadError is called but onPlayerError is not called at all.
Step to reproduce issue:
Open playback and observer that playback is working
Using Charles proxy create a rule to force a timeout error
Observe that EventLogger is reporting the timeout but onPlayerError callback function is not being called.
Exoplayer version: 2.18.4
Using drm license: yes
Protocl use: DASH
Content: Live
Expected result
onPlayerError should be called
Actual result
onPlayerError is not called after getting SocketTimeoutExeotion.
Media
Not applicable
Bug Report

[X] You will email the zip file produced by adb bugreport to<EMAIL_ADDRESS>after filing this issue.

Hi @javaboboApp,
Thank you for sharing the bug report.
Quoting from Javadoc:
onLoadError : Called when a media source loading error occurred. This method being called does not indicate that playback has failed, or that it will fail.
onPlayerError: Called when a fatal player error occurred.
So onLoadError getting triggered should not necessarily mean onPlayerError will be triggered. We retry loading the media source a few times before triggering a player error. The default behaviour is to retry it 3 times before triggering a player error.  You can customise this behaviour by defining a custom LoadErrorHandlingPolicy.
Coming back to the issue, the bug report shared only logs the loadError once, so it might be possible that it was able to load media source in its second attempt. My question to you is: Does the playback stop when you get onLoadError or it continues to play the media? If not, I think this is working as expected.

Hi I have done several test and when I block the cdn we get retries and after a fatal error but when I reduce dramatically backwithd we get a lot of retries but never a fatal error:
So we get this error many times:
internalError [eventTime=10.04, mediaPos=13.31, window=0, loadError
                                                                                com.google.android.exoplayer2.upstream.HttpDataSource$HttpDataSourceException: java.net.SocketTimeoutException: timeout
                                                                                at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:382)
                                                                                at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:262)
                                                                                at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:84)
                                                                                at com.google.android.exoplayer2.upstream.DataSourceInputStream.checkOpened(DataSourceInputStream.java:99)
                                                                                at com.google.android.exoplayer2.upstream.DataSourceInputStream.open(DataSourceInputStream.java:62)
                                                                                at com.google.android.exoplayer2.upstream.ParsingLoadable.load(ParsingLoadable.java:174)
                                                                                at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:412)
                                                                                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
                                                                                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
                                                                                at java.lang.Thread.run(Thread.java:1012)
                                                                                Caused by: java.net.SocketTimeoutException: timeout
                                                                                at com.android.okhttp.okio.Okio$3.newTimeoutException(Okio.java:214)
                                                                                at com.android.okhttp.okio.AsyncTimeout.exit(AsyncTimeout.java:263)
                                                                                at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:217)
                                                                                at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:307)
                                                                                at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:301)
                                                                                at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:197)
                                                                                at com.android.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:188)
                                                                                at com.android.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:129)
                                                                                at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:750)
                                                                                at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622)
                                                                                at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475)
                                                                                at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411)
                                                                                at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542)
                                                                                at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106)
                                                                                at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30)
                                                                                at com.newrelic.agent.android.instrumentation.HttpsURLConnectionExtension.getResponseCode(HttpsURLConnectionExtension.java:249)
                                                                                at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:378)
                                                                                at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:262)
                                                                                at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:84)
                                                                                at com.google.android.exoplayer2.upstream.DataSourceInputStream.checkOpened(DataSourceInputStream.java:99)
                                                                                at com.google.android.exoplayer2.upstream.DataSourceInputStream.open(DataSourceInputStream.java:62)
                                                                                at com.google.android.exoplayer2.upstream.ParsingLoadable.load(ParsingLoadable.java:174)
                                                                                at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:412)
                                                                                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
                                                                                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
                                                                                at java.lang.Thread.run(Thread.java:1012)
                                                                                Caused by: java.net.SocketException: Socket closed
                                                                                at java.net.SocketInputStream.read(SocketInputStream.java:188)
                                                                                at java.net.SocketInputStream.read(SocketInputStream.java:143)
                                                                                at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readFromSocket(ConscryptEngineSocket.java:945)
                                                                                at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.processDataFromSocket(ConscryptEngineSocket.java:909)
                                                                                at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.readUntilDataAvailable(ConscryptEngineSocket.java:824)
                                                                                at com.android.org.conscrypt.ConscryptEngineSocket$SSLInputStream.read(ConscryptEngineSocket.java:797)
                                                                                at com.android.okhttp.okio.Okio$2.read(Okio.java:138)
                                                                                at com.android.okhttp.okio.AsyncTimeout$2.read(AsyncTimeout.java:213)
                                                                                at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:307)
                                                                                at com.android.okhttp.okio.RealBufferedSource.indexOf(RealBufferedSource.java:301)
                                                                                at com.android.okhttp.okio.RealBufferedSource.readUtf8LineStrict(RealBufferedSource.java:197)
                                                                                at com.android.okhttp.internal.http.Http1xStream.readResponse(Http1xStream.java:188)
                                                                                at com.android.okhttp.internal.http.Http1xStream.readResponseHeaders(Http1xStream.java:129)
                                                                                at com.android.okhttp.internal.http.HttpEngine.readNetworkResponse(HttpEngine.java:750)
                                                                                at com.android.okhttp.internal.http.HttpEngine.readResponse(HttpEngine.java:622)
                                                                                at com.android.okhttp.internal.huc.HttpURLConnectionImpl.execute(HttpURLConnectionImpl.java:475)
                                                                                at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponse(HttpURLConnectionImpl.java:411)
                                                                                at com.android.okhttp.internal.huc.HttpURLConnectionImpl.getResponseCode(HttpURLConnectionImpl.java:542)
                                                                                at com.android.okhttp.internal.huc.DelegatingHttpsURLConnection.getResponseCode(DelegatingHttpsURLConnection.java:106)
                                                                                at com.android.okhttp.internal.huc.HttpsURLConnectionImpl.getResponseCode(HttpsURLConnectionImpl.java:30)
                                                                                at com.newrelic.agent.android.instrumentation.HttpsURLConnectionExtension.getResponseCode(HttpsURLConnectionExtension.java:249)
                                                                                at com.google.android.exoplayer2.upstream.DefaultHttpDataSource.open(DefaultHttpDataSource.java:378)
                                                                                at com.google.android.exoplayer2.upstream.DefaultDataSource.open(DefaultDataSource.java:262)
                                                                                at com.google.android.exoplayer2.upstream.StatsDataSource.open(StatsDataSource.java:84)
                                                                                at com.google.android.exoplayer2.upstream.DataSourceInputStream.checkOpened(DataSourceInputStream.java:99)
                                                                                at com.google.android.exoplayer2.upstream.DataSourceInputStream.open(DataSourceInputStream.java:62)
                                                                                at com.google.android.exoplayer2.upstream.ParsingLoadable.load(ParsingLoadable.java:174)
                                                                                at com.google.android.exoplayer2.upstream.Loader$LoadTask.run(Loader.java:412)
                                                                                at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
                                                                                at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
                                                                                at java.lang.Thread.run(Thread.java:1012)
                                                                                ]

I send you bug report. I have tried with differents cnd .. always got same behavier.
bugreport-sdk_google_atv64_amati_arm64-TRB2.220506.002-2023-04-28-00-13-18.zip

@rohitjoins  any update on it?

Hi @javaboboApp,
Thank you for sharing the bug report.
Quoting from Javadoc: onLoadError : Called when a media source loading error occurred. This method being called does not indicate that playback has failed, or that it will fail. onPlayerError: Called when a fatal player error occurred.
So onLoadError getting triggered should not necessarily mean onPlayerError will be triggered. We retry loading the media source a few times before triggering a player error. The default behaviour is to retry it 3 times before triggering a player error. You can customise this behaviour by defining a custom LoadErrorHandlingPolicy.
Coming back to the issue, the bug report shared only logs the loadError once, so it might be possible that it was able to load media source in its second attempt. My question to you is: Does the playback stop when you get onLoadError or it continues to play the media? If not, I think this is working as expected.

Hi @javaboboApp,
Thank you for sharing the bug report.
Quoting from Javadoc: onLoadError : Called when a media source loading error occurred. This method being called does not indicate that playback has failed, or that it will fail. onPlayerError: Called when a fatal player error occurred.
So onLoadError getting triggered should not necessarily mean onPlayerError will be triggered. We retry loading the media source a few times before triggering a player error. The default behaviour is to retry it 3 times before triggering a player error. You can customise this behaviour by defining a custom LoadErrorHandlingPolicy.
Coming back to the issue, the bug report shared only logs the loadError once, so it might be possible that it was able to load media source in its second attempt. My question to you is: Does the playback stop when you get onLoadError or it continues to play the media? If not, I think this is working as expected.

@rohitjoins any update on it?

Hey @javaboboApp, please can you host some media on a server that behaves in the way you're describing here, so that we're able to reproduce the problem you're seeing by playing a URL you provide? That way we can be sure we're looking at exactly the same situation you are (rather than us trying to set up a proxy like Charles in exactly the same way you've got, which honestly we don't really have the time to do).


Hotfix: Profile didn't remove records from manifest during uninstallation

@borisspektor, your feedback was processed.


Z-wave user code via UI is broken

Home Assistant release (hass --version):
0.59
Component/platform:
Z-Wave Manager
Description of problem:
Yesterday I was able to set codes via GUI running the previous version 0.58. Today, after updating to the current release, the change to using hex input has broken the ability to update user codes.  I was working great when it accepted regular text characters. I can deal with it being hex, but it's now not accepting the codes.
Maybe @turbokongen can advise as I saw he added the ascii comments in the docs.
Expected:
Be able to set usercode via GUI
Steps to reproduce:

Configuration > Z-Wave Manager > Select Node > Node user codes
Type "\x31\x32\x33\x34" and hit 'Set Usercode' to change user code to 1234
Response text is "\x35\x39\x36\x36\xd8\xf2\xef\x76\x11\x00" showing "Ascii: [5966Øòïv]"
1234# does not work

Additional info:
Yale Z-Wave Lock YRD210-ZW-605

That's wierd.. I just tested with  my own lock, different though (BTZE150) And it works like it should.
You should check the output in OZW_Log.txt. There you will see first the raw data sent to the lock, and the response from the lock. I have experienced that the lock doesn't store the lock , but not like you describe here.

Here's another example trying to delete a code.  Manually setting the code to \x00\x00\x00\x00\x00\x00\x00\x00\x00\x00 returns the same as the screen shot below.  This makes sense as based on the log it looks like it's performing the same thing.
UI is virtually unchanged pre and post button press.  (After pressing the button and the response comes back, the text user code above the user code field overwrites the text, but then moves back into place if you place your cursor into the field. Minor bug.)

Here is the log from the event:
2017-12-11 09:02:06.820 Info, Node006, Value::Set - COMMAND_CLASS_USER_CODE - Code 4: - 4 - 1 - 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
2017-12-11 09:02:06.820 Detail, Node006, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2017-12-11 09:02:06.820 Detail, Node006, Queuing (Send) UserCodeCmd_Set (Node=6): HIDDEN
2017-12-11 09:02:06.820 Detail, Node006, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2017-12-11 09:02:06.820 Detail, Node006, Queuing (Send) UserCodeCmd_Get (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x63, 0x02, 0x04, 0x25, 0x50, 0xf3
2017-12-11 09:02:06.821 Detail,
2017-12-11 09:02:06.821 Info, Node006, Processing (Send) Nonce Request message (Callback ID=0x4f, Expected Reply=0x13)
2017-12-11 09:02:06.821 Info, Node006, Sending (Send) message (Callback ID=0x4f, Expected Reply=0x13) - Nonce_Get(UserCodeCmd_Set) - 0x01, 0x09, 0x00, 0x13, 0x06, 0x02, 0x98, 0x40, 0x05, 0x02:
2017-12-11 09:02:06.829 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:02:06.829 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:02:08.106 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x80, 0x69
2017-12-11 09:02:08.106 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2017-12-11 09:02:08.106 Info, Node006, Request RTT 1285 Average Request RTT 1425
2017-12-11 09:02:16.821 Error, Node006, ERROR: Dropping command, expected response not received after 1 attempt(s)
2017-12-11 09:02:16.822 Detail, Node006, Removing current message
2017-12-11 09:02:16.822 Detail, Node006, Notification: Notification - TimeOut
2017-12-11 09:02:16.843 Detail,
2017-12-11 09:02:16.843 Info, Node006, Processing (Send) Nonce Request message (Callback ID=0x50, Expected Reply=0x04)
2017-12-11 09:02:16.843 Info, Node006, Sending (Send) message (Callback ID=0x50, Expected Reply=0x04) - Nonce_Get(UserCodeCmd_Get) - 0x01, 0x09, 0x00, 0x13, 0x06, 0x02, 0x98, 0x40, 0x05, 0x02:
2017-12-11 09:02:16.852 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:02:16.852 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:02:18.098 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x7d, 0x94
2017-12-11 09:02:18.098 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2017-12-11 09:02:18.098 Info, Node006, Request RTT 1255 Average Request RTT 1340
2017-12-11 09:02:18.138 Detail, Node006,   Received: HIDDEN
2017-12-11 09:02:18.138 Info, Node006, Received SecurityCmd_NonceReport from node 6
2017-12-11 09:02:18.138 Info, Node006, Sending (Send) message (Callback ID=0x51, Expected Reply=0x04) - UserCodeCmd_Get (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x63, 0x02, 0x04, 0x25, 0x51, 0xf2
2017-12-11 09:02:18.149 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:02:18.150 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:02:18.221 Detail, Node006,   Received: 0x01, 0x08, 0x00, 0x04, 0x00, 0x06, 0x02, 0x98, 0x40, 0x2f
2017-12-11 09:02:18.221 Info, Node006, Received SecurityCmd_NonceGet from node 6
2017-12-11 09:02:18.221 Info, NONCES: 0x17, 0xd3, 0x0a, 0x31, 0x59, 0xef, 0x09, 0x1a
2017-12-11 09:02:18.221 Info, NONCES: 0x6b, 0x92, 0x19, 0xe6, 0x7b, 0x0e, 0x76, 0x09
2017-12-11 09:02:18.222 Info, NONCES: 0x3a, 0x03, 0x54, 0xc5, 0xf8, 0x81, 0x12, 0xf8
2017-12-11 09:02:18.222 Info, NONCES: 0x42, 0xd9, 0xe7, 0x08, 0x68, 0x9a, 0xc5, 0x04
2017-12-11 09:02:18.222 Info, NONCES: 0xd4, 0x24, 0x47, 0x4c, 0x66, 0x6f, 0x25, 0x9b
2017-12-11 09:02:18.222 Info, NONCES: 0x07, 0x73, 0xd4, 0x7d, 0x1e, 0x7a, 0x4d, 0x85
2017-12-11 09:02:18.222 Info, NONCES: 0xee, 0x9e, 0x2a, 0x37, 0xe2, 0x47, 0x8e, 0x45
2017-12-11 09:02:18.222 Info, NONCES: 0x56, 0x4b, 0xd7, 0x79, 0xee, 0xd5, 0xc4, 0x4f
2017-12-11 09:02:18.222 Info, Node006, Sending (Send) message (Callback ID=0x01, Expected Reply=0x04) - Nonce_Report - HIDDEN:
2017-12-11 09:02:18.232 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:02:18.233 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:02:21.898 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x01, 0x00, 0x01, 0x6f, 0x84
2017-12-11 09:02:21.898 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x01 received (expected 0x01)
2017-12-11 09:02:21.899 Info, Node006, Request RTT 5055 Average Request RTT 3197
2017-12-11 09:02:22.001 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x01, 0x00, 0x01, 0x7a, 0x91
2017-12-11 09:02:22.001 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x01 received (expected 0x01)
2017-12-11 09:02:22.001 Info, Node006, Request RTT 5159 Average Request RTT 4178
2017-12-11 09:02:22.340 Detail, Node006,   Received: HIDDEN
2017-12-11 09:02:22.340 Info, Raw: HIDDEN
2017-12-11 09:02:22.344 Detail, Node006, Decrypted Packet: 0x00, 0x63, 0x03, 0x04, 0x01, 0x32, 0x35, 0x31, 0x35
2017-12-11 09:02:22.344 Detail,
2017-12-11 09:02:22.345 Info, Node006, Response RTT 5502 Average Response RTT 3238
2017-12-11 09:02:22.345 Info, Node006, User Code Packet is 4
2017-12-11 09:02:22.345 Detail, Node006, Initial read of value
2017-12-11 09:02:22.345 Info, Node006, Received User Code Report from node 6 for User Code 4 (Occupied)
2017-12-11 09:02:22.345 Detail, Node006, Notification: ValueChanged
2017-12-11 09:02:26.843 Error, Node006, ERROR: Dropping command, expected response not received after 1 attempt(s)
2017-12-11 09:02:26.844 Detail, Node006, Removing current message
2017-12-11 09:02:26.844 Detail, Node006, Notification: Notification - TimeOut
2017-12-11 09:05:01.316 Info, Node006, Value::Set - COMMAND_CLASS_USER_CODE - Code 4: - 4 - 1 - 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
2017-12-11 09:05:01.317 Detail, Node006, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2017-12-11 09:05:01.317 Detail, Node006, Queuing (Send) UserCodeCmd_Set (Node=6): HIDDEN
2017-12-11 09:05:01.317 Detail, Node006, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2017-12-11 09:05:01.317 Detail, Node006, Queuing (Send) UserCodeCmd_Get (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x63, 0x02, 0x04, 0x25, 0x53, 0xf0
2017-12-11 09:05:01.318 Detail,
2017-12-11 09:05:01.318 Info, Node006, Processing (Send) Nonce Request message (Callback ID=0x52, Expected Reply=0x13)
2017-12-11 09:05:01.318 Info, Node006, Sending (Send) message (Callback ID=0x52, Expected Reply=0x13) - Nonce_Get(UserCodeCmd_Set) - 0x01, 0x09, 0x00, 0x13, 0x06, 0x02, 0x98, 0x40, 0x05, 0x02:
2017-12-11 09:05:01.326 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:05:01.326 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:05:02.587 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x7e, 0x97
2017-12-11 09:05:02.588 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2017-12-11 09:05:02.588 Info, Node006, Request RTT 1269 Average Request RTT 2723
2017-12-11 09:05:02.790 Detail, Node006,   Received: HIDDEN
2017-12-11 09:05:02.791 Info, Node006, Received SecurityCmd_NonceReport from node 6
2017-12-11 09:05:02.791 Info, Node006, Sending (Send) message (Callback ID=0x54, Expected Reply=0x13) - UserCodeCmd_Set (Node=6): HIDDEN
2017-12-11 09:05:02.803 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:05:02.803 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:05:02.827 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x54, 0x00, 0x00, 0x03, 0xbc
2017-12-11 09:05:02.827 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x54 received (expected 0x54)
2017-12-11 09:05:02.827 Info, Node006, Request RTT 1509 Average Request RTT 2116
2017-12-11 09:05:02.827 Detail,   Expected callbackId was received
2017-12-11 09:05:02.827 Detail,   Expected reply was received
2017-12-11 09:05:02.828 Detail,   Message transaction complete
2017-12-11 09:05:02.828 Detail,
2017-12-11 09:05:02.828 Detail, Node006, Removing current message
2017-12-11 09:05:02.828 Detail,
2017-12-11 09:05:02.828 Info, Node006, Processing (Send) Nonce Request message (Callback ID=0x53, Expected Reply=0x04)
2017-12-11 09:05:02.828 Info, Node006, Sending (Send) message (Callback ID=0x53, Expected Reply=0x04) - Nonce_Get(UserCodeCmd_Get) - 0x01, 0x09, 0x00, 0x13, 0x06, 0x02, 0x98, 0x40, 0x05, 0x02:
2017-12-11 09:05:02.836 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:05:02.836 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:05:02.877 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x04, 0xed
2017-12-11 09:05:02.878 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2017-12-11 09:05:02.878 Info, Node006, Request RTT 49 Average Request RTT 1082
2017-12-11 09:05:03.076 Detail, Node006,   Received: HIDDEN
2017-12-11 09:05:03.077 Info, Node006, Received SecurityCmd_NonceReport from node 6
2017-12-11 09:05:03.077 Info, Node006, Sending (Send) message (Callback ID=0x55, Expected Reply=0x04) - UserCodeCmd_Get (Node=6): 0x01, 0x0a, 0x00, 0x13, 0x06, 0x03, 0x63, 0x02, 0x04, 0x25, 0x55, 0xf6
2017-12-11 09:05:03.089 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:05:03.089 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:05:03.109 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x55, 0x00, 0x00, 0x02, 0xbc
2017-12-11 09:05:03.110 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x55 received (expected 0x55)
2017-12-11 09:05:03.110 Info, Node006, Request RTT 282 Average Request RTT 682
2017-12-11 09:05:03.110 Detail,   Expected callbackId was received
2017-12-11 09:05:03.186 Detail, Node006,   Received: 0x01, 0x08, 0x00, 0x04, 0x00, 0x06, 0x02, 0x98, 0x40, 0x2f
2017-12-11 09:05:03.186 Info, Node006, Received SecurityCmd_NonceGet from node 6
2017-12-11 09:05:03.186 Info, NONCES: 0x17, 0xd3, 0x0a, 0x31, 0x59, 0xef, 0x09, 0x1a
2017-12-11 09:05:03.186 Info, NONCES: 0x6b, 0x92, 0x19, 0xe6, 0x7b, 0x0e, 0x76, 0x09
2017-12-11 09:05:03.187 Info, NONCES: 0x3a, 0x03, 0x54, 0xc5, 0xf8, 0x81, 0x12, 0xf8
2017-12-11 09:05:03.187 Info, NONCES: 0x42, 0xd9, 0xe7, 0x08, 0x68, 0x9a, 0xc5, 0x04
2017-12-11 09:05:03.187 Info, NONCES: 0xd4, 0x24, 0x47, 0x4c, 0x66, 0x6f, 0x25, 0x9b
2017-12-11 09:05:03.187 Info, NONCES: 0x07, 0x73, 0xd4, 0x7d, 0x1e, 0x7a, 0x4d, 0x85
2017-12-11 09:05:03.187 Info, NONCES: 0xfd, 0xf7, 0xd7, 0x37, 0x89, 0xd4, 0x55, 0xab
2017-12-11 09:05:03.187 Info, NONCES: 0x56, 0x4b, 0xd7, 0x79, 0xee, 0xd5, 0xc4, 0x4f
2017-12-11 09:05:03.187 Info, Node006, Sending (Send) message (Callback ID=0x01, Expected Reply=0x04) - Nonce_Report - HIDDEN:
2017-12-11 09:05:03.196 Detail, Node006,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2017-12-11 09:05:03.196 Detail, Node006,   ZW_SEND_DATA delivered to Z-Wave stack
2017-12-11 09:05:03.216 Detail, Node006,   Received: 0x01, 0x07, 0x00, 0x13, 0x01, 0x00, 0x00, 0x02, 0xe8
2017-12-11 09:05:03.217 Detail, Node006,   ZW_SEND_DATA Request with callback ID 0x01 received (expected 0x01)
2017-12-11 09:05:03.217 Info, Node006, Request RTT 389 Average Request RTT 535
2017-12-11 09:05:03.239 Detail, Node006,   Received: HIDDEN
2017-12-11 09:05:03.240 Info, Raw: HIDDEN
2017-12-11 09:05:03.240 Detail, Node006, Decrypted Packet: 0x00, 0x63, 0x03, 0x04, 0x01, 0x32, 0x35, 0x31, 0x35
2017-12-11 09:05:03.240 Detail,
2017-12-11 09:05:03.240 Info, Node006, Response RTT 412 Average Response RTT 1825
2017-12-11 09:05:03.240 Info, Node006, User Code Packet is 4
2017-12-11 09:05:03.240 Detail, Node006, Refreshed Value: old value=55b7ea80, new value=71cc85b4, type=raw
2017-12-11 09:05:03.240 Detail, Node006, Changes to this value are not verified
2017-12-11 09:05:03.240 Info, Node006, Received User Code Report from node 6 for User Code 4 (Occupied)
2017-12-11 09:05:03.241 Detail, Node006,   Expected reply and command class was received
2017-12-11 09:05:03.241 Detail, Node006,   Message transaction complete
2017-12-11 09:05:03.241 Detail,
2017-12-11 09:05:03.241 Detail, Node006, Removing current message
2017-12-11 09:05:03.241 Detail, Node006, Notification: ValueChanged

Any suggestions on what to try to resolve this?  Should I delete the node?

I came here seeking answers regarding this as well. My lock is a Schlage BE469NXCEN. When I select a Code Slot the User code field remains empty. Looking at the ozw.log I don't see any calls to that node. Perhaps I am misunderstanding how this UI works, isn't it supposed to retrieve the usercode and put it in the input field in the UI?
On a side note I also attempted retrieving a code using the dev services page:

This logs the following to the logs:
2017-12-11 14:55:14 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=lock, service=get_usercode, service_data=node_id=37, code_slot=1, service_call_id=1965710992-41>
2017-12-11 14:55:14 INFO (SyncWorker_15) [homeassistant.components.lock.zwave] Usercode at slot 1 is: **********
2017-12-11 14:55:14 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=1965710992-41>

No I did not censor that, it actually came through that way.
I also tried sending a code which I think is successful:

2017-12-11 14:56:43 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=lock, service=set_usercode, service_data=node_id=37, code_slot=4, usercode=1234, service_call_id=1965710992-42>
2017-12-11 14:56:43 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=1965710992-42>

after calling lock.clearcode:
2017-12-11 15:02:15 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=lock, service=clear_usercode, service_data=node_id=37, code_slot=4, service_call_id=1965710992-44>
2017-12-11 15:02:15 INFO (SyncWorker_1) [homeassistant.components.lock.zwave] Usercode at slot 4 is cleared
2017-12-11 15:02:15 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=1965710992-44>

a subsequent lock.get_usercode indicates it was not cleared:
2017-12-11 15:02:38 INFO (MainThread) [homeassistant.core] Bus:Handling <Event call_service[L]: domain=lock, service=get_usercode, service_data=node_id=37, code_slot=4, service_call_id=1965710992-45>
2017-12-11 15:02:38 INFO (SyncWorker_19) [homeassistant.components.lock.zwave] Usercode at slot 4 is: **********
2017-12-11 15:02:38 INFO (MainThread) [homeassistant.core] Bus:Handling <Event service_executed[L]: service_call_id=1965710992-45>

The OZW.log file is not showing any of these commands

The clear usercode function is only partially supported by OZW, hence it will not work on all locks. It does not work on my test lock (Danalock V2). Some people have reported other locks to be working, but there are no guarantee for it to work.

@turbokongen - While that may be true, all of these functions worked fine on v.58 including remote code setting, code clearing, and viewing codes.  Now, it seems like none of these work.
Is there a way to downgrade hass.io?

@turbokongen are you sure your config is okay? I wouldn't think a new version would break everything. I know of another guy with that lock, will confirm with him his version of hass.

The actual services has not changed, only the input from the UI. Maybe there are encoding issues?
Could you test with setting the code to 1234 in the ui, and the do it via the service, and post the log on hastebin?

@turbokongen regarding the issue I thought was at hand here (the title of this issue). I read from others in forum that setting the usercode to '0000' on some locks simply clears it. https://community.home-assistant.io/t/schlage-connect-zwave-locks/6220/81?u=nalipaz
Is it possible that the lock.clear_usercode service could be changed to use this on certain devices? Or perhaps a way to configure locks to use this sort of method for clearing and still use the service as named.

This is not limited to resetting the user code. This applies to setting of new user codes and what is shown in the GUI when you update the codes. Right now, it shows gibberish.

@poldim
Could you provide the following:
Set usercode 1234 in UI. (\31\32\33\34) and provide logsnippet from OZW_Log.txt from the transaction.
Set usercode 1234 with developer services menu. (lock.set_usercode {"node_id": YOUR_NODE_ID, "code_slot": YOUR_CODESLOT, "usercode": 1234}" and provide logsnippet from OZW_Log.txt from the transaction.
That way I can see what is going on.
I see some random characters with my lock too, but that does not seem to matter, and is in the response, not in the sent message to the lock. Before we limited the ui to oonly show numbers. BEcause of the ability to set hex numbers for some devices, we show the raw message now.

I will try this when I get back from traveling and post a reply.
On Sun, Dec 24, 2017 at 2:13 AM John Arild Berentsen <
<EMAIL_ADDRESS>wrote:

@poldim https://github.com/poldim
Could you provide the following:
Set usercode 1234 in UI. (\31\32\33\34) and provide logsnippet from
OZW_Log.txt from the transaction.
Set usercode 1234 with developer services menu. (lock.set_usercode
{"node_id": YOUR_NODE_ID, "code_slot": YOUR_CODESLOT, "usercode": 1234}"
and provide logsnippet from OZW_Log.txt from the transaction.
That way I can see what is going on.
I see some random characters with my lock too, but that does not seem to
matter, and is in the response, not in the sent message to the lock. Before
we limited the ui to oonly show numbers. BEcause of the ability to set hex
numbers for some devices, we show the raw message now.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/home-assistant/home-assistant/issues/11018#issuecomment-353747099,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AQFpUTyT_LNb8LHttCgKK_H-oUhl9z3Mks5tDWXrgaJpZM4Q6kbU
.

I'm still having this issue on 0.65.

Also still having issues.
This is what it looks like when I first click on a user code.  It should be just four numbers.

@turbokongen - Any thoughts?

@poldim
Could you provide the following:
Set usercode 1234 in UI. (\31\32\33\34) and provide logsnippet from OZW_Log.txt from the transaction.
Set usercode 1234 with developer services menu. (lock.set_usercode {"node_id": YOUR_NODE_ID, "code_slot": YOUR_CODESLOT, "usercode": 1234}" and provide logsnippet from OZW_Log.txt from the transaction.
That way I can see what is going on.
I see some random characters with my lock too, but that does not seem to matter, and is in the response, not in the sent message to the lock. Before we limited the ui to only show numbers. Because of the ability to set hex numbers for some devices, we show the raw message now.

@turbokongen wouldn't it be \x31\x32\x33\x34

yes, a typo.

@turbokongen I can do this when I get home tonight. Which logs can I see the result of get_usercode in? OZW or HASS?

homeassistant.log will show the data sent to OZW and ozw_log.txt will show what ozw gets and returns to HA.

I am also having the same trouble setting, changing, and deleting user code. I am on 0.66.1.
When I attempt to add codes normally, I get this in the homeassistant.log:
2018-04-05 18:49:14 ERROR (SyncWorker_18) [homeassistant.components.lock.zwave] Invalid code provided: (#) usercode must be atleast 4 and at most 10 digits

Nothing shows up in the OZW log.
I am also seeing if you use "\x31\x32\x33\x34" the user displays correctly underneath (1234) and the lock is able to be unlocked using that code after setting it.

However, the page refreshes shortly after and displays:

OZW Log for using \x31\x32\x33\x34:
2018-04-05 18:53:01.865 Info, Node004, Value::Set - COMMAND_CLASS_USER_CODE - Code 1: - 1 - 1 - 0x31 0x32 0x33 0x34
2018-04-05 18:53:01.866 Detail, Node004, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2018-04-05 18:53:01.867 Detail, Node004, Queuing (Send) UserCodeCmd_Set (Node=4): 0x01, 0x0f, 0x00, 0x13, 0x04, 0x08, 0x63, 0x01, 0x01, 0x01, 0x31, 0x32, 0x33, 0x34, 0x25, 0xb3, 0x1f
2018-04-05 18:53:01.867 Detail, Node004, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2018-04-05 18:53:01.868 Detail, Node004, Queuing (Send) UserCodeCmd_Get (Node=4): 0x01, 0x0a, 0x00, 0x13, 0x04, 0x03, 0x63, 0x02, 0x01, 0x25, 0xb4, 0x10
2018-04-05 18:53:01.868 Detail,
2018-04-05 18:53:01.868 Info, Node004, Processing (Send) Nonce Request message (Callback ID=0xb3, Expected Reply=0x13)
2018-04-05 18:53:01.869 Info, Node004, Sending (Send) message (Callback ID=0xb3, Expected Reply=0x13) - Nonce_Get(UserCodeCmd_Set) - 0x01, 0x09, 0x00, 0x13, 0x04, 0x02, 0x98, 0x40, 0x05, 0x02:
2018-04-05 18:53:01.877 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 18:53:01.877 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 18:53:03.153 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x80, 0x69
2018-04-05 18:53:03.154 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2018-04-05 18:53:03.154 Info, Node004, Request RTT 1286 Average Request RTT 840
2018-04-05 18:53:03.181 Detail, Node004,   Received: 0x01, 0x10, 0x00, 0x04, 0x00, 0x04, 0x0a, 0x98, 0x80, 0x0b, 0x15, 0x0f, 0x3d, 0x8c, 0x9f, 0xab, 0xc5, 0xac
2018-04-05 18:53:03.182 Info, Node004, Received SecurityCmd_NonceReport from node 4
2018-04-05 18:53:03.182 Info, Node004, Sending (Send) message (Callback ID=0xb5, Expected Reply=0x13) - UserCodeCmd_Set (Node=4): 0x01, 0x0f, 0x00, 0x13, 0x04, 0x08, 0x63, 0x01, 0x01, 0x01, 0x31, 0x32, 0x33, 0x34, 0x25, 0xb5, 0x19
2018-04-05 18:53:03.194 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 18:53:03.195 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 18:53:03.217 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0xb5, 0x00, 0x00, 0x03, 0x5d
2018-04-05 18:53:03.217 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0xb5 received (expected 0xb5)
2018-04-05 18:53:03.218 Info, Node004, Request RTT 1349 Average Request RTT 1094
2018-04-05 18:53:03.218 Detail,   Expected callbackId was received
2018-04-05 18:53:03.218 Detail,   Expected reply was received
2018-04-05 18:53:03.218 Detail,   Message transaction complete
2018-04-05 18:53:03.218 Detail,
2018-04-05 18:53:03.219 Detail, Node004, Removing current message
2018-04-05 18:53:03.219 Detail,
2018-04-05 18:53:03.219 Info, Node004, Processing (Send) Nonce Request message (Callback ID=0xb4, Expected Reply=0x04)
2018-04-05 18:53:03.219 Info, Node004, Sending (Send) message (Callback ID=0xb4, Expected Reply=0x04) - Nonce_Get(UserCodeCmd_Get) - 0x01, 0x09, 0x00, 0x13, 0x04, 0x02, 0x98, 0x40, 0x05, 0x02:
2018-04-05 18:53:03.227 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 18:53:03.228 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 18:53:03.243 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x02, 0xeb
2018-04-05 18:53:03.244 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2018-04-05 18:53:03.244 Info, Node004, Request RTT 24 Average Request RTT 559
2018-04-05 18:53:03.374 Detail, Node004,   Received: 0x01, 0x08, 0x00, 0x04, 0x00, 0x04, 0x02, 0x98, 0x40, 0x2d
2018-04-05 18:53:03.374 Info, Node004, Received SecurityCmd_NonceGet from node 4
2018-04-05 18:53:03.375 Info, NONCES: 0x17, 0x62, 0xee, 0x01, 0x02, 0x24, 0x3d, 0xcb
2018-04-05 18:53:03.375 Info, NONCES: 0x4c, 0x60, 0xd4, 0x71, 0x6c, 0x23, 0x9b, 0xb9
2018-04-05 18:53:03.375 Info, NONCES: 0x9a, 0x66, 0xce, 0x45, 0x38, 0xb3, 0x21, 0x98
2018-04-05 18:53:03.376 Info, NONCES: 0xc4, 0x8e, 0x22, 0x8b, 0xbb, 0x44, 0xa1, 0x24
2018-04-05 18:53:03.377 Info, NONCES: 0xb1, 0x3f, 0x54, 0xcc, 0x89, 0xc0, 0x8c, 0x6c
2018-04-05 18:53:03.377 Info, NONCES: 0xea, 0x6e, 0xbd, 0x4b, 0xc5, 0x8d, 0x21, 0x4f
2018-04-05 18:53:03.378 Info, NONCES: 0x14, 0x29, 0x90, 0x2d, 0xbe, 0x83, 0xf8, 0x64
2018-04-05 18:53:03.378 Info, NONCES: 0xa7, 0x49, 0x1a, 0x5a, 0x6f, 0x2f, 0x74, 0x00
2018-04-05 18:53:03.379 Info, Node004, Sending (Send) message (Callback ID=0x01, Expected Reply=0x04) - Nonce_Report - 0x01, 0x11, 0x00, 0x13, 0x04, 0x0a, 0x98, 0x80, 0xa7, 0x49, 0x1a, 0x5a, 0x6f, 0x2f, 0x74, 0x00, 0x05, 0x01, 0x75:
2018-04-05 18:53:03.389 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 18:53:03.389 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 18:53:03.397 Detail, Node004,   Received: 0x01, 0x10, 0x00, 0x04, 0x00, 0x04, 0x0a, 0x98, 0x80, 0xb6, 0xe9, 0xf4, 0xe7, 0x63, 0x8c, 0x68, 0xee, 0xd8
2018-04-05 18:53:03.397 Info, Node004, Received SecurityCmd_NonceReport from node 4
2018-04-05 18:53:03.398 Info, Node004, Sending (Send) message (Callback ID=0xb6, Expected Reply=0x04) - UserCodeCmd_Get (Node=4): 0x01, 0x0a, 0x00, 0x13, 0x04, 0x03, 0x63, 0x02, 0x01, 0x25, 0xb6, 0x12
2018-04-05 18:53:03.411 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 18:53:03.411 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 18:53:03.421 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0xb6, 0x00, 0x00, 0x01, 0x5c
2018-04-05 18:53:03.421 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0xb6 received (expected 0xb6)
2018-04-05 18:53:03.422 Info, Node004, Request RTT 202 Average Request RTT 380
2018-04-05 18:53:03.423 Detail,   Expected callbackId was received
2018-04-05 18:53:03.442 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0xb6, 0x00, 0x00, 0x04, 0x59
2018-04-05 18:53:03.443 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0xb6 received (expected 0x00)
2018-04-05 18:53:03.443 Warning, Node004, WARNING: Unexpected Callback ID received
2018-04-05 18:53:03.505 Detail, Node004,   Received: 0x01, 0x1e, 0x00, 0x04, 0x00, 0x04, 0x18, 0x98, 0x81, 0x25, 0xaf, 0xb3, 0xc4, 0x01, 0x69, 0x0a, 0x9c, 0x9f, 0x4d, 0x4f, 0x2c, 0x95, 0xa7, 0x4d, 0x60, 0x6f, 0x9c, 0xcc, 0xd9, 0xbe, 0x8f, 0x9a
2018-04-05 18:53:03.505 Info, Raw: 0x98, 0x81, 0x25, 0xaf, 0xb3, 0xc4, 0x01, 0x69, 0x0a, 0x9c, 0x9f, 0x4d, 0x4f, 0x2c, 0x95, 0xa7, 0x4d, 0x60, 0x6f, 0x9c, 0xcc, 0xd9, 0xbe, 0x8f, 0x9a
2018-04-05 18:53:03.505 Detail, Node004, Decrypted Packet: 0x00, 0x63, 0x03, 0x01, 0xfe
2018-04-05 18:53:03.505 Detail,
2018-04-05 18:53:03.505 Info, Node004, Response RTT 286 Average Response RTT 638
2018-04-05 18:53:03.505 Info, Node004, User Code Packet is 0
2018-04-05 18:53:03.506 Detail, Node004, Refreshed Value: old value=55686a30, new value=707185b4, type=raw
2018-04-05 18:53:03.506 Detail, Node004, Changes to this value are not verified
2018-04-05 18:53:03.506 Info, Node004, Received User Code Report from node 4 for User Code 1 (Not Available)
2018-04-05 18:53:03.506 Detail, Node004,   Expected reply and command class was received
2018-04-05 18:53:03.506 Detail, Node004,   Message transaction complete
2018-04-05 18:53:03.506 Detail,
2018-04-05 18:53:03.506 Detail, Node004, Removing current message
2018-04-05 18:53:03.507 Detail, Node004, Notification: ValueChanged
2018-04-05 18:53:08.388 Detail, Node004,   Received: 0x01, 0x08, 0x00, 0x04, 0x00, 0x04, 0x02, 0x98, 0x40, 0x2d
2018-04-05 18:53:08.388 Info, Node004, Received SecurityCmd_NonceGet from node 4
2018-04-05 18:53:08.388 Info, NONCES: 0x32, 0x8e, 0x1b, 0x1e, 0x7d, 0x95, 0xb3, 0xb6
2018-04-05 18:53:08.388 Info, NONCES: 0x4c, 0x60, 0xd4, 0x71, 0x6c, 0x23, 0x9b, 0xb9
2018-04-05 18:53:08.389 Info, NONCES: 0x9a, 0x66, 0xce, 0x45, 0x38, 0xb3, 0x21, 0x98
2018-04-05 18:53:08.389 Info, NONCES: 0xc4, 0x8e, 0x22, 0x8b, 0xbb, 0x44, 0xa1, 0x24
2018-04-05 18:53:08.389 Info, NONCES: 0xb1, 0x3f, 0x54, 0xcc, 0x89, 0xc0, 0x8c, 0x6c
2018-04-05 18:53:08.389 Info, NONCES: 0xea, 0x6e, 0xbd, 0x4b, 0xc5, 0x8d, 0x21, 0x4f
2018-04-05 18:53:08.389 Info, NONCES: 0x14, 0x29, 0x90, 0x2d, 0xbe, 0x83, 0xf8, 0x64
2018-04-05 18:53:08.389 Info, NONCES: 0xa7, 0x49, 0x1a, 0x5a, 0x6f, 0x2f, 0x74, 0x00
2018-04-05 18:53:08.389 Info, Node004, Sending (Send) message (Callback ID=0x01, Expected Reply=0x00) - Nonce_Report - 0x01, 0x11, 0x00, 0x13, 0x04, 0x0a, 0x98, 0x80, 0x32, 0x8e, 0x1b, 0x1e, 0x7d, 0x95, 0xb3, 0xb6, 0x05, 0x01, 0xbb:
2018-04-05 18:53:08.398 Detail,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 18:53:08.398 Detail,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 18:53:08.417 Detail,   Received: 0x01, 0x07, 0x00, 0x13, 0x01, 0x00, 0x00, 0x02, 0xe8
2018-04-05 18:53:08.417 Detail,   ZW_SEND_DATA Request with callback ID 0x01 received (expected 0x01)
2018-04-05 18:53:08.482 Detail, Node004,   Received: 0x01, 0x28, 0x00, 0x04, 0x00, 0x04, 0x22, 0x98, 0x81, 0x10, 0x57, 0x39, 0x82, 0x10, 0xb8, 0x39, 0xd5, 0x1d, 0x52, 0x87, 0xe5, 0xf5, 0x77, 0x1d, 0x6b, 0x5f, 0x69, 0x26, 0xa9, 0x4c, 0x71, 0x02, 0x32, 0x23, 0x27, 0x2f, 0x1d, 0x21, 0xdb, 0x5f, 0xcf, 0x65
2018-04-05 18:53:08.482 Info, Raw: 0x98, 0x81, 0x10, 0x57, 0x39, 0x82, 0x10, 0xb8, 0x39, 0xd5, 0x1d, 0x52, 0x87, 0xe5, 0xf5, 0x77, 0x1d, 0x6b, 0x5f, 0x69, 0x26, 0xa9, 0x4c, 0x71, 0x02, 0x32, 0x23, 0x27, 0x2f, 0x1d, 0x21, 0xdb, 0x5f, 0xcf, 0x65
2018-04-05 18:53:08.483 Detail, Node004, Decrypted Packet: 0x00, 0x63, 0x03, 0x01, 0x01, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a
2018-04-05 18:53:08.483 Detail,
2018-04-05 18:53:08.483 Info, Node004, User Code Packet is 10
2018-04-05 18:53:08.483 Detail, Node004, Refreshed Value: old value=55729c10, new value=707185b4, type=raw
2018-04-05 18:53:08.483 Detail, Node004, Changes to this value are not verified
2018-04-05 18:53:08.483 Info, Node004, Received User Code Report from node 4 for User Code 1 (Occupied)
2018-04-05 18:53:08.484 Detail, Node004, Notification: ValueChanged

Now when I try to delete a code slot, it does not work. I can still use 1234 (set by using "\x31\x32\x33\x34"). I try to set the code to "\x30\x30\x30\x30" (0000) but then I can use 0000 to unlock the door.
OZW Log while trying to delete a code slot:
2018-04-05 19:05:29.180 Info, Node004, Value::Set - COMMAND_CLASS_USER_CODE - Code 1: - 1 - 1 - 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00
2018-04-05 19:05:29.180 Detail, Node004, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2018-04-05 19:05:29.181 Detail, Node004, Queuing (Send) UserCodeCmd_Set (Node=4): 0x01, 0x15, 0x00, 0x13, 0x04, 0x0e, 0x63, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0xdf, 0x6b
2018-04-05 19:05:29.181 Detail, Node004, Setting Encryption Flag on Message For Command Class COMMAND_CLASS_USER_CODE
2018-04-05 19:05:29.181 Detail, Node004, Queuing (Send) UserCodeCmd_Get (Node=4): 0x01, 0x0a, 0x00, 0x13, 0x04, 0x03, 0x63, 0x02, 0x01, 0x25, 0xe0, 0x44
2018-04-05 19:05:29.183 Detail,
2018-04-05 19:05:29.183 Info, Node004, Processing (Send) Nonce Request message (Callback ID=0xdf, Expected Reply=0x13)
2018-04-05 19:05:29.183 Info, Node004, Sending (Send) message (Callback ID=0xdf, Expected Reply=0x13) - Nonce_Get(UserCodeCmd_Set) - 0x01, 0x09, 0x00, 0x13, 0x04, 0x02, 0x98, 0x40, 0x05, 0x02:
2018-04-05 19:05:29.192 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 19:05:29.192 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 19:05:30.453 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x7f, 0x96
2018-04-05 19:05:30.454 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2018-04-05 19:05:30.454 Info, Node004, Request RTT 1269 Average Request RTT 1258
2018-04-05 19:05:30.482 Detail, Node004,   Received: 0x01, 0x10, 0x00, 0x04, 0x00, 0x04, 0x0a, 0x98, 0x80, 0x94, 0x32, 0x05, 0x3e, 0xd9, 0x2f, 0xb7, 0x94, 0xb5
2018-04-05 19:05:30.482 Info, Node004, Received SecurityCmd_NonceReport from node 4
2018-04-05 19:05:30.482 Info, Node004, Sending (Send) message (Callback ID=0xe1, Expected Reply=0x13) - UserCodeCmd_Set (Node=4): 0x01, 0x15, 0x00, 0x13, 0x04, 0x0e, 0x63, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x25, 0xe1, 0x55
2018-04-05 19:05:30.494 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 19:05:30.495 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 19:05:30.518 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0xe1, 0x00, 0x00, 0x03, 0x09
2018-04-05 19:05:30.519 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0xe1 received (expected 0xe1)
2018-04-05 19:05:30.519 Info, Node004, Request RTT 1334 Average Request RTT 1296
2018-04-05 19:05:30.519 Detail,   Expected callbackId was received
2018-04-05 19:05:30.519 Detail,   Expected reply was received
2018-04-05 19:05:30.519 Detail,   Message transaction complete
2018-04-05 19:05:30.519 Detail,
2018-04-05 19:05:30.519 Detail, Node004, Removing current message
2018-04-05 19:05:30.519 Detail,
2018-04-05 19:05:30.519 Info, Node004, Processing (Send) Nonce Request message (Callback ID=0xe0, Expected Reply=0x04)
2018-04-05 19:05:30.519 Info, Node004, Sending (Send) message (Callback ID=0xe0, Expected Reply=0x04) - Nonce_Get(UserCodeCmd_Get) - 0x01, 0x09, 0x00, 0x13, 0x04, 0x02, 0x98, 0x40, 0x05, 0x02:
2018-04-05 19:05:30.527 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 19:05:30.527 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 19:05:30.544 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0x02, 0x00, 0x00, 0x02, 0xeb
2018-04-05 19:05:30.544 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0x02 received (expected 0x02)
2018-04-05 19:05:30.544 Info, Node004, Request RTT 24 Average Request RTT 660
2018-04-05 19:05:30.680 Detail, Node004,   Received: 0x01, 0x08, 0x00, 0x04, 0x00, 0x04, 0x02, 0x98, 0x40, 0x2d
2018-04-05 19:05:30.680 Info, Node004, Received SecurityCmd_NonceGet from node 4
2018-04-05 19:05:30.680 Info, NONCES: 0x9d, 0xcf, 0x68, 0x48, 0xa0, 0xaa, 0x29, 0xc8
2018-04-05 19:05:30.681 Info, NONCES: 0x4e, 0xb6, 0xc5, 0x33, 0x31, 0xb3, 0x38, 0x4e
2018-04-05 19:05:30.681 Info, NONCES: 0x6b, 0x56, 0x96, 0x0c, 0x56, 0x70, 0xa8, 0x3c
2018-04-05 19:05:30.681 Info, NONCES: 0xa4, 0x93, 0xa8, 0xae, 0x87, 0x18, 0x04, 0x5f
2018-04-05 19:05:30.681 Info, NONCES: 0xe6, 0x7a, 0x4d, 0x68, 0x69, 0x37, 0xf7, 0x60
2018-04-05 19:05:30.681 Info, NONCES: 0x71, 0x91, 0x96, 0x33, 0xbf, 0xad, 0x2e, 0xd5
2018-04-05 19:05:30.681 Info, NONCES: 0x17, 0xca, 0xc2, 0x42, 0xe0, 0xb8, 0xb2, 0xb3
2018-04-05 19:05:30.681 Info, NONCES: 0x97, 0xa0, 0x8c, 0xcc, 0x8b, 0x2c, 0x9e, 0xb4
2018-04-05 19:05:30.681 Info, Node004, Sending (Send) message (Callback ID=0x01, Expected Reply=0x04) - Nonce_Report - 0x01, 0x11, 0x00, 0x13, 0x04, 0x0a, 0x98, 0x80, 0xa4, 0x93, 0xa8, 0xae, 0x87, 0x18, 0x04, 0x5f, 0x05, 0x01, 0x1a:
2018-04-05 19:05:30.690 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 19:05:30.690 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 19:05:30.709 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0x01, 0x00, 0x00, 0x02, 0xe8
2018-04-05 19:05:30.710 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0x01 received (expected 0x01)
2018-04-05 19:05:30.710 Info, Node004, Request RTT 190 Average Request RTT 425
2018-04-05 19:05:30.729 Detail, Node004,   Received: 0x01, 0x10, 0x00, 0x04, 0x00, 0x04, 0x0a, 0x98, 0x80, 0xf9, 0x28, 0x75, 0xd4, 0xc3, 0xad, 0x2f, 0x48, 0x84
2018-04-05 19:05:30.729 Info, Node004, Received SecurityCmd_NonceReport from node 4
2018-04-05 19:05:30.729 Info, Node004, Sending (Send) message (Callback ID=0xe2, Expected Reply=0x04) - UserCodeCmd_Get (Node=4): 0x01, 0x0a, 0x00, 0x13, 0x04, 0x03, 0x63, 0x02, 0x01, 0x25, 0xe2, 0x46
2018-04-05 19:05:30.740 Detail, Node004,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 19:05:30.741 Detail, Node004,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 19:05:30.762 Detail, Node004,   Received: 0x01, 0x07, 0x00, 0x13, 0xe2, 0x00, 0x00, 0x02, 0x0b
2018-04-05 19:05:30.762 Detail, Node004,   ZW_SEND_DATA Request with callback ID 0xe2 received (expected 0xe2)
2018-04-05 19:05:30.762 Info, Node004, Request RTT 242 Average Request RTT 333
2018-04-05 19:05:30.762 Detail,   Expected callbackId was received
2018-04-05 19:05:30.777 Detail, Node004,   Received: 0x01, 0x1e, 0x00, 0x04, 0x00, 0x04, 0x18, 0x98, 0x81, 0x88, 0xc8, 0x93, 0xa4, 0xaf, 0x84, 0x35, 0x95, 0x30, 0x7b, 0xd2, 0xb6, 0xf1, 0xa4, 0x94, 0x58, 0x52, 0x94, 0x91, 0xd4, 0x39, 0x0f, 0x1f
2018-04-05 19:05:30.778 Info, Raw: 0x98, 0x81, 0x88, 0xc8, 0x93, 0xa4, 0xaf, 0x84, 0x35, 0x95, 0x30, 0x7b, 0xd2, 0xb6, 0xf1, 0xa4, 0x94, 0x58, 0x52, 0x94, 0x91, 0xd4, 0x39, 0x0f, 0x1f
2018-04-05 19:05:30.778 Detail, Node004, Decrypted Packet: 0x00, 0x63, 0x03, 0x01, 0xfe
2018-04-05 19:05:30.778 Detail,
2018-04-05 19:05:30.778 Info, Node004, Response RTT 258 Average Response RTT 624
2018-04-05 19:05:30.778 Info, Node004, User Code Packet is 0
2018-04-05 19:05:30.778 Detail, Node004, Refreshed Value: old value=5572acb0, new value=707185b4, type=raw
2018-04-05 19:05:30.778 Detail, Node004, Changes to this value are not verified
2018-04-05 19:05:30.778 Info, Node004, Received User Code Report from node 4 for User Code 1 (Not Available)
2018-04-05 19:05:30.779 Detail, Node004,   Expected reply and command class was received
2018-04-05 19:05:30.779 Detail, Node004,   Message transaction complete
2018-04-05 19:05:30.779 Detail,
2018-04-05 19:05:30.779 Detail, Node004, Removing current message
2018-04-05 19:05:30.779 Detail, Node004, Notification: ValueChanged
2018-04-05 19:05:30.904 Detail, Node004,   Received: 0x01, 0x08, 0x00, 0x04, 0x00, 0x04, 0x02, 0x98, 0x40, 0x2d
2018-04-05 19:05:30.904 Info, Node004, Received SecurityCmd_NonceGet from node 4
2018-04-05 19:05:30.904 Info, NONCES: 0x9d, 0xcf, 0x68, 0x48, 0xa0, 0xaa, 0x29, 0xc8
2018-04-05 19:05:30.905 Info, NONCES: 0x4e, 0xb6, 0xc5, 0x33, 0x31, 0xb3, 0x38, 0x4e
2018-04-05 19:05:30.905 Info, NONCES: 0x6b, 0x56, 0x96, 0x0c, 0x56, 0x70, 0xa8, 0x3c
2018-04-05 19:05:30.905 Info, NONCES: 0xa4, 0x93, 0xa8, 0xae, 0x87, 0x18, 0x04, 0x5f
2018-04-05 19:05:30.905 Info, NONCES: 0x07, 0xc6, 0x7b, 0x10, 0x1a, 0xa0, 0x5a, 0xca
2018-04-05 19:05:30.905 Info, NONCES: 0x71, 0x91, 0x96, 0x33, 0xbf, 0xad, 0x2e, 0xd5
2018-04-05 19:05:30.905 Info, NONCES: 0x17, 0xca, 0xc2, 0x42, 0xe0, 0xb8, 0xb2, 0xb3
2018-04-05 19:05:30.905 Info, NONCES: 0x97, 0xa0, 0x8c, 0xcc, 0x8b, 0x2c, 0x9e, 0xb4
2018-04-05 19:05:30.905 Info, Node004, Sending (Send) message (Callback ID=0x01, Expected Reply=0x00) - Nonce_Report - 0x01, 0x11, 0x00, 0x13, 0x04, 0x0a, 0x98, 0x80, 0x07, 0xc6, 0x7b, 0x10, 0x1a, 0xa0, 0x5a, 0xca, 0x05, 0x01, 0x6f:
2018-04-05 19:05:30.914 Detail,   Received: 0x01, 0x04, 0x01, 0x13, 0x01, 0xe8
2018-04-05 19:05:30.915 Detail,   ZW_SEND_DATA delivered to Z-Wave stack
2018-04-05 19:05:30.933 Detail,   Received: 0x01, 0x07, 0x00, 0x13, 0x01, 0x00, 0x00, 0x03, 0xe9
2018-04-05 19:05:30.933 Detail,   ZW_SEND_DATA Request with callback ID 0x01 received (expected 0x01)
2018-04-05 19:05:30.998 Detail, Node004,   Received: 0x01, 0x28, 0x00, 0x04, 0x00, 0x04, 0x22, 0x98, 0x81, 0xa6, 0xf5, 0xf7, 0x35, 0x74, 0x4c, 0x92, 0x7d, 0x23, 0x1e, 0x66, 0xe9, 0x11, 0xe8, 0x8a, 0xec, 0x5c, 0x6c, 0xce, 0x2b, 0xdf, 0x0b, 0x01, 0x07, 0xfe, 0xed, 0x19, 0xb9, 0x8b, 0xeb, 0x3c, 0x64, 0x0b
2018-04-05 19:05:31.007 Info, Raw: 0x98, 0x81, 0xa6, 0xf5, 0xf7, 0x35, 0x74, 0x4c, 0x92, 0x7d, 0x23, 0x1e, 0x66, 0xe9, 0x11, 0xe8, 0x8a, 0xec, 0x5c, 0x6c, 0xce, 0x2b, 0xdf, 0x0b, 0x01, 0x07, 0xfe, 0xed, 0x19, 0xb9, 0x8b, 0xeb, 0x3c, 0x64, 0x0b
2018-04-05 19:05:31.007 Detail, Node004, Decrypted Packet: 0x00, 0x63, 0x03, 0x01, 0x01, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a, 0x2a
2018-04-05 19:05:31.007 Detail,
2018-04-05 19:05:31.007 Info, Node004, User Code Packet is 10
2018-04-05 19:05:31.007 Detail, Node004, Refreshed Value: old value=557d2080, new value=707185b4, type=raw
2018-04-05 19:05:31.008 Detail, Node004, Changes to this value are not verified
2018-04-05 19:05:31.008 Info, Node004, Received User Code Report from node 4 for User Code 1 (Occupied)
2018-04-05 19:05:31.008 Detail, Node004, Notification: ValueChanged


fix: grpc doc generation failing for options and extensions

Motivation:
GRPC doc generation was failing when options and extensions were being used in proto files.
The test cases have been modified so the test.proto file contains an example option. Before changing GrpcDocStringExtractor, it wasn't able to produce documentation because of a duplicate key in the map. It was causing the whole Documentation Service to crash.
We might want to consider displaying options in documentation service in the future but this implementation un-blocks users who can't use the service because of the aforementioned bug.
The issue is described in #4123 in more detail.
Modifications:

Ignore comments written on proto service options or extensions.

Result:

Closes #4123
The documentation service doesn't crash the whole Armeria service anymore when proto files have comments on service options or extensions.

 Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.

@ikhoon @jrhee17 @minwoox @trustin Can you please take a look?

Thanks a lot for the PR! Today is a holiday in Korea so let us take a look at this tomorrow. 😄

Thanks, @Dogacel!

I have updated this solution to work with a broader range of options. Can we re-run the workflow?

I have fixed the linting problem but I didn't get why macos build failed.

I don't think the documentation service will crash the app again after my changes but how about making it fail-safe just in case? Or do you think this is unnecessary?
GrpcDocStringExtractror:115
 .collect(toImmutableMap(Entry::getKey, Entry::getValue));

to
 .collect(toImmutableMap(Entry::getKey, Entry::getValue, (first, second) -> {
   logger.warn("Multiple keys found while parsing proto comments, skipping entry \"{}\".", second);
   return first;
 });

how about making it fail-safe just in case?

sounds good to me 👍

how about making it fail-safe just in case?

sounds good to me 👍

I have made the change, I would be glad if you can re-run the workflow 🙇
For some reason, macOs builds are failing. I think they were flaky and resolved in the latest master, so I updated my branch to track the latest master. I hope it won't fail again 🙏
Let's merge this after it passes CI! I am excited.

@jrhee17 @minwoox I do not have write access to the repo, so I can't merge it. I would be glad if you can merge it 🙇
Thank you all 🚀

I would be glad if you can merge it 🙇

When maintainers have reviewed and approved this PR, we will merge this PR. Thanks for your effort on this issue. 🙇♂


Add ensure-clean-repo

ensure-clean-repo
Ensure there are no uncommitted files in your git repo. Otherwise fail with a helpful message.
"scripts": {
  "ensure-clean-repo": "if [ -n \"$(git status --porcelain)\" ]; then echo 'Ooops-a-daisy! Make sure the repo is clean.'; exit 1; fi"
}

I’ve rebased to include all recent updates by @stoeffel.
By the way, this script depends on bash. Do you guys have any clue how to make it cross-shell?

There is no straight forward way but check $SHELL and change the code accordingly or use something like shelljs for now we could stick to bash :)?

Yeah, but putting js into npm scripts makes the thing even more messy.

Closing to remove clutter 🙂
Feel free to open if you think this is mergeable.


CT is header 1.
Call PartialValidationSucceeded on header 2.
Make sure that reorg that is returned is true.

@thefazzer please apply changes and fix conflicts

Again there is no code, please find out why this happened and don't repeat

Resolved this with Ivan's help.  All changes should be present now.

Conflicts

Looks good to me.


python3Packages.plugp100: init at 5.1.3

Description of changes
Adds plugp100 python module in preperation for adding custom home-assistant component for TP-Link Tapo devices (component)

https://github.com/petretiandrea/plugp100
https://pypi.org/project/plugp100/

Notes:

Disabled integration tests as they require a device on the network.
Disabled some unit tests that were already failing.
Added self as maintainer (no other suitable person?)

Things done

Built on platform(s)

[x] x86_64-linux
[ ] aarch64-linux
[ ] x86_64-darwin
[ ] aarch64-darwin

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[x] Tested, as applicable:

NixOS test(s) (look inside nixos/tests)
and/or package tests
or, for functions and "core" functionality, tests in lib/tests or pkgs/test
made sure NixOS tests are linked to the relevant packages

[x] Tested compilation of all packages that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review rev HEAD". Note: all changes have to be committed, also see nixpkgs-review usage
[x] Tested basic functionality of all binary files (usually in ./result/bin/)
24.11 Release Notes (or backporting 23.11 and 24.05 Release notes)

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module

[x] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Thanks!


Fumo

Currently no 1.19.2 release. one can hope though...
https://modrinth.com/mod/fumo

1.19.2 RELEASE LET's GOOO


Paths not being added to history

Unless I run eval "$(fasd --init auto)" directly in the terminal, paths I cd to are not being added to ~/.fasd. Having eval "$(fasd --init auto)" in the bashrc doesn't seem to work.
OSX 10.11.3
awk version 20070501
I cannot for the life of me find out (or google how to find out) my sed version - it's whatever ships with El Capitain
here's bit of ~/.fasd.log
/usr/local/bin/fasd: line 61: original-awk: command not found
/usr/local/bin/fasd: line 61: nawk: command not found
/usr/local/bin/fasd: line 61: mawk: command not found
/usr/local/bin/fasd: line 61: gawk: command not found
/usr/local/bin/fasd: line 61: original-awk: command not found
/usr/local/bin/fasd: line 61: nawk: command not found
/usr/local/bin/fasd: line 61: mawk: command not found
/usr/local/bin/fasd: line 61: gawk: command not found
/usr/local/bin/fasd: line 61: original-awk: command not found
/usr/local/bin/fasd: line 61: nawk: command not found
/usr/local/bin/fasd: line 61: mawk: command not found
/usr/local/bin/fasd: line 61: gawk: command not found
/usr/local/bin/fasd: line 61: original-awk: command not found
/usr/local/bin/fasd: line 61: nawk: command not found
/usr/local/bin/fasd: line 61: mawk: command not found
/usr/local/bin/fasd: line 61: gawk: command not found
/usr/local/bin/fasd: line 61: original-awk: command not found
/usr/local/bin/fasd: line 61: nawk: command not found

I cannot for the life of me find out (or google how to find out) my sed version

You tried sed --version right? Not sure about the BSD/OS X version, but on Linux the GNU sed provides a version string.

Well that's curious behaviour.

I had the same issue. In my case, moving the eval to the end of the bashrc fixed it. I'm trying to isolate the issue and so far it seems any change to any of the HISTFILE related variables after the eval causes fasd to go haywire.

I am having the same issue on one of my computers (while it works on other computers). No matter where I put eval "$(fasd --init auto)", it just doesn't work unless I manually execute it in the terminal.

I am having this happen but nothing works. Did anyone figure out this issue?


feat(erc20-price): get price from chainlink feeds

See issue https://github.com/messari/substreams/issues/97

see https://github.com/messari/substreams/pull/106


ForgotInmerge

Hello @DaluS! Thanks for opening this PR.

In the file pygemmes/_models/_def_fields.py:

Line 585:21: E241 multiple spaces after ':'
Line 590:21: E241 multiple spaces after ':'

Do see the Hitchhiker's guide to code style


Enrich RUM events

Context: we're using @datadog/mobile-react-navigation that automatically tracks views, and track XHR resources is enabled. Our backend service will respond with a special-Id on the response header, but the response header seems not being collected.
Is your feature request related to a problem? Please describe.
On RUM page, I'd like to add a new column for this special-Id, that it is collected as a response header only when the request fails.
Something like the beforeSend from @datadog/browser-rum described on this doc - https://docs.datadoghq.com/real_user_monitoring/browser/modifying_data_and_context/?tab=npm#identify-user-sessions
A function can be accepted as a part of config for the DdSdkReactNative.initialize, within the function, I can check the event type, response.statusCode, then add the response.headers to the context conditionally.

Hi @Connor-Tang, thanks for reaching out!
Adding event mappers is a popular demand and is high in our backlog!
I cannot give you a release date for it, but I'll link the PR to this issue once it's implemented and let you know when it is released :)

Second this!
We are using GraphQL and default instrumentation is more or less useful as all requests goes to same domain.com/graphql endpoint.
Are there other ways to customise resource tracking, e.g. not using default tracer?

Hi @Connor-Tang,
Sorry for not coming back to you earlier, there is now a resourceEventMapper parameter to the configuration that will enable you to edit the reported resource.
You should be able to access your header by calling getResponseHeader on resourceEvent.resourceContext, where resourceEvent is the argument provided to the mapper.
This is available since version 1.3.0 of the SDK.
@lukas-dzikaras-tg you can now use our dedicated Apollo GraphQL integration to display more information about your GraphQL requests since version 2.0.0 :)
I'll close the issue, feel free to reopen it if you encounter any issue with


Live backed project reward states

What ❓

Renamed button_manage_pledge to button_pledge_manage to match the naming convention of the other colors.
For a live backed project:

Backed reward:

Your selected reward is focused when you open the rewards sheet.
The pledge button is blue and says Manage your pledge.
The checkmark is blue with a blue background.

Other available rewards:

The pledge button is green and says Select this instead.

Added RewardUtils.checkmarkBackgroundDrawable that returns the drawable resource ID of the check background based on project status.
Updated the output backedRewardPosition in RewardFragmentViewModel to also emit when the project is live.

How to QA? 🤔
View a live project that you've backed (check your profile). (Note: The PR does not include any work in the PledgeFragment.)
Story 📖
Trello Story
See 👀

 Reward States -  Manage your pledge (backer, live project)

Hey @eoji , I started reviewing your PR and I noticed something:

When I open the rewards sheet in order to manage my reward, the buttons of the other rewards say Select this instead regardless if it's available or not. I think it makes sense to only show this text for Rewards that are still available, showing No longer available otherwise.