Initial Python3 support

Unit tests pass when compiled for python 3.

@nathanielmanistaatgoogle Could we clarify the intent of the reassignment?

I thought @thunderboltsid might do the first code review? Feel free to steal assignment, review, and drive this where it needs to go.

@thunderboltsid Repeating a gchat message here to make sure it's not lost: I'll be stealing this now, but feel free to chime in!

@kpayson64 should I wait for the rebase or just start sifting through?

Ah I rebased yesterday but it looks like I need to rebase again, it should be good for review now.

Made changes based on feedback.

LGTM. W.r.t. tests, portability test failures make no sense, kicking them off again.

Having previously contributed Python 3 compatibility to this codebase I'd like @leifurhauks to feel invited to review this change in addition to the rest of us.

Completed a review pass.
When this change gets a passing pre-integration test result, how should I interpret it? Are there Python 3 tests failing without this change that pass with it? Where can I look to see what failed before and now passes?

I've addressed the comments.  As far as validating the Python3 support, I've added Python3 versions of all the tests to the existing test suite.

Luhguhtum; @soltanmm will also review.

@soltanmm I think the only major changes since your last review are the series of small build hacks for Python3.  After reviewing those I think this should be ready.

I've squashed the commits and updated for the GA API,
@soltanmm please review

How likely is it that this can be merged today?

Adressed comments and rebased.
@soltanmm Back to you

Thirty-two days.

Never forget #2286

Adding the API BREAKING label.  Before, python would quietly accept and encode Unicode strings containing non-ascii characters using UTF-8.  This was not well defined and possibly problematic for things like non-ascii method names.  Now python will fail fast when receiving a Unicode string containing non-ascii characters.  This is included in the python documentation, but we may decide to include it in the release notes.


advise to support Automatic expansion

in init the var,i can use queue.WithCapacity to limit the size of new queue,but i wanna the queue can auto expand,so ican pass a small initial count to init the var ,and it will auto expand when i offer some elems rather than return an error,so can you add this option and feature,thank you!

Hello @Nyx2022,
If you omit the WithCapacity option, the queue will be configured to expand dynamically. You can create such queues using queue.NewBlocking(elems), which does not enforce a specific capacity limit.


Stalebot policy

After using it for six months, I don't think anyone is happy with the stalebot policy. Let's remove it.

After discussion within the team, it will still tag issues but not close them.
Implemented in: https://github.com/opencollective/opencollective/pull/1859


No exported method for creating TCPReaders

There is a newTCPReader function, however it isn't exported. There doesn't seem to be an exported method of creating TCP-based reader applications that use this library.
https://github.com/Graylog2/go-gelf/blob/v2/gelf/tcpreader.go#L22

@zbuc TCPReader is just a helper class for the test cases of go-gelf and is not supposed to be exported.
https://github.com/Graylog2/go-gelf/blob/4143646226541087117ff2f83334ea48b3201841/gelf/tcpwriter_test.go#L22

Is there any way of creating a TCP reader instead of UDP? The exported method in Reader.go is only a UDP reader. The readme file for the v2 branch says TCP is supported.

On Feb 28, 2018, at 2:59 AM, Jochen Schalanda<EMAIL_ADDRESS>wrote:
@zbuc TCPReader is just a helper class for the test cases of go-gelf and is not supposed to be exported.
https://github.com/Graylog2/go-gelf/blob/4143646226541087117ff2f83334ea48b3201841/gelf/tcpwriter_test.go#L22
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub, or mute the thread.

@zbuc go-gelf is a GELF client  library and doesn't provide any GELF server parts.

Oh. In V1 (and V2) some GELF server parts are exposed (and work fine), but
only for UDP.
On Wed, Feb 28, 2018 at 10:13 AM, Jochen Schalanda<EMAIL_ADDRESS>
wrote:

@zbuc https://github.com/zbuc go-gelf is a GELF client library and
doesn't provide any GELF server parts.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Graylog2/go-gelf/issues/21#issuecomment-369269294,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAiyuHhwmdoMuLEvbnfi5Xt8bKNREIJiks5tZWxdgaJpZM4SVpzV
.

Maybe @mariussturm would like to add a comment here.

Like @joschi said, this is a pure client library. The reader parts you see are used exclusively for testing and should not be used in any application project.

FWIW, this code: https://github.com/Graylog2/go-gelf/blob/v2/gelf/reader.go#L24 is publicly exported and works fine for UDP GELF servers from my testing.


Error ：AssertionError: Box tensor contains infinite or NaN!

📚 Documentation
I used the coco dataset to train centernet2, but  got a error:
Traceback (most recent call last):
  File "./train_net.py", line 245, in <module>
    args=(args,),
  File "/dataset/datacode/code/CenterNet2/detectron2/engine/launch.py", line 62, in launch
    main_func(*args)
  File "./train_net.py", line 226, in main
    do_train(cfg, model, resume=args.resume)
  File "./train_net.py", line 128, in do_train
    loss_dict = model(data)
  File "/home/das/anaconda3/envs/centernet2/lib/python3.7/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/dataset/datacode/code/CenterNet2/detectron2/modeling/meta_arch/rcnn.py", line 166, in forward
    _, detector_losses = self.roi_heads(images, features, proposals, gt_instances)
  File "/home/das/anaconda3/envs/centernet2/lib/python3.7/site-packages/torch/nn/modules/module.py", line 727, in _call_impl
    result = self.forward(*input, **kwargs)
  File "/dataset/datacode/code/CenterNet2/projects/CenterNet2/centernet/modeling/roi_heads/custom_roi_heads.py", line 166, in forward
    losses = self._forward_box(features, proposals, targets)
  File "/dataset/datacode/code/CenterNet2/projects/CenterNet2/centernet/modeling/roi_heads/custom_roi_heads.py", line 116, in _forward_box
    proposals = self._create_proposals_from_boxes(prev_pred_boxes, image_sizes)
  File "/dataset/datacode/code/CenterNet2/detectron2/modeling/roi_heads/cascade_rcnn.py", line 290, in _create_proposals_from_boxes
    boxes_per_image.clip(image_size)
  File "/dataset/datacode/code/CenterNet2/detectron2/structures/boxes.py", line 200, in clip
    assert torch.isfinite(self.tensor).all(), "Box tensor contains infinite or NaN!"
AssertionError: Box tensor contains infinite or NaN!

where is the main wrong? I think the coco dataset is OK

Hi,
Are you using the default training script in the model zoo? If so, please specify which model you are using and I can have a check. Otherwise, this means the training diverged. If this happens in the first few iterations (e.g., < iteration 1000), you can try increasing the warmup iteration. Otherwise you can consider decreasing the learning rate, or change the normalization layers in the backbone to "SyncBN".

Hi,
Are you using the default training script in the model zoo? If so, please specify which model you are using and I can have a check. Otherwise, this means the training diverged. If this happens in the first few iterations (e.g., < iteration 1000), you can try increasing the warmup iteration. Otherwise you can consider decreasing the learning rate, or change the normalization layers in the backbone to "SyncBN".

I uesd theCenterNet2_R2-101-DCN-BiFPN_4x+4x_1560_ST.yaml as well as the default training script in the model zoo. I think the main error came from Detectron2, so I dealt with the errror after recompiling it.  Thank you!


resolve dependency issue with sphinx doc generation and markupsafe

Seeing this error in the "Generate Docs" step of CI:
INFO:root:Sphinx api-doc command: ['sphinx-apidoc', '--no-toc', '--module-first', '-o', '.tox/dist/unzipped/docgen', '.tox/dist/unzipped/', '.tox/dist/unzipped/test*', '.tox/dist/unzipped/example*', '.tox/dist/unzipped/sample*', '.tox/dist/unzipped/setup.py']
Traceback (most recent call last):
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/bin/sphinx-apidoc", line 5, in <module>
    from sphinx.ext.apidoc import main
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/lib/python3.9/site-packages/sphinx/ext/apidoc.py", line 31, in <module>
    from sphinx.cmd.quickstart import EXTENSIONS
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/lib/python3.9/site-packages/sphinx/cmd/quickstart.py", line 44, in <module>
    from sphinx.util.template import SphinxRenderer
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/lib/python3.9/site-packages/sphinx/util/template.py", line 16, in <module>
    from jinja2 import TemplateNotFound
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/lib/python3.9/site-packages/jinja2/__init__.py", line 12, in <module>
    from .environment import Environment
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/lib/python3.9/site-packages/jinja2/environment.py", line 25, in <module>
    from .defaults import BLOCK_END_STRING
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/lib/python3.9/site-packages/jinja2/defaults.py", line 3, in <module>
    from .filters import FILTERS as DEFAULT_FILTERS  # noqa: F401
  File "/mnt/vss/_work/1/s/sdk/formrecognizer/azure-ai-formrecognizer/.tox/sphinx/lib/python3.9/site-packages/jinja2/filters.py", line 13, in <module>
    from markupsafe import soft_unicode
ImportError: cannot import name 'soft_unicode' from 'markupsafe'

Example build: https://dev.azure.com/azure-sdk/internal/_build/results?buildId=1376909&view=logs&j=3dc8fd7e-4368-5a92-293e-d53cefc8c4b3&t=651a14cc-88df-515d-1311-e0e8b23b578a&l=1229
sphinx uses jinja2 which takes a dependency on a library called markupsafe.
markupsafe released a new package, 2.1.0, which appears to have breaking changes which are failing our CI.

Resolved in #23132


Updated the links in kubelet flag's docs.

Linked issue: #31584
Description: The kubelet flag's docs will render links now.

This page is autogenerated. @harshitasao did you use the docs generation code to update this? If not, then I'm afraid we must first fix the generation system to handle hyperlinks better, and then run those tools.
/hold
because I suspect this PR is the wrong fix (sorry about that).

This kubelet.md file is an exception. It has been manually maintained (rather than generated from upstream source code) for quite some releases.
/hold cancel
/lgtm

/label tide/merge-method-squash


#141 use cactoos'es primitives(continued)

@yegor256 please, pay attention to this pull request

@rultor try to merge

@rultor try to merge

@yegor256 OK, I'll try to merge now. You can check the progress of the merge here

@rultor try to merge

@yegor256 Done! FYI, the full log is here (took me 11min)


DO NOT MERGE: Simulate DB failure during tx processsing

Simulates the failure in #1318.
One of the peers only partially updates the DB, leading to them failing to submit blind sig shares and getting banned by peers.

No we can close it, unfortunately I wasn't able to reproduce although we fixed some related issues.


fix(52212): No member completions, and irrelevant value completions, when class property initializer has no semicolon

Fixes #52212

Merge conflict 😞

@typescript-bot pack this
@typescript-bot test tsserver top100


Command line interface

[ ] Start out/**/UserService.js:

nyan User

[ ] Start out/**/ApiService.js and out/**/UserService.js in one process:

nyan Api User

[ ] Start out/**/*Service.js in one process:

nyan

https://github.com/shannonmoeller/require-glob

[ ] Types

[ ] Wrapper


Implement endpoints

Implemented, tested and partially documented endpoints for PlatzKiecker Application
Issue ticket names and links

implement user endpoints

https://www.notion.so/platzkiecker/implement-user-endpoints-8049990b0b684885893f1d8331537370?pvs=4

implement restaurant endpoints

https://www.notion.so/platzkiecker/implement-restaurant-endpoints-df59cecc498e435da148416603993fcf?pvs=4

implement booking endpoints

https://www.notion.so/platzkiecker/implement-booking-endpoints-7317baa012954f67b26341b43d78c3cc?pvs=4

document booking endpoints

https://www.notion.so/platzkiecker/Document-booking-endpoints-75f24674bffb4bd2bea6a96451f8c8df?pvs=4

Checklist before requesting a review

[X] I have performed a self-review of my code -> tested it
[X] If it is a core feature (modules, functions, endpoints, ...), I have added documentation.

[X] I added documentation for the booking endpoints

[ ] the rest is being done in other tickets

[X] Which ENV Vars need to be changed?

[X] None

[X] How does it affect production environment? - write a few words:
- Deploy should be monitored by @aaronroters

@appl3burg3r please do not merge yet, deployment needs to be monitored.


Don't hide axis tip when user selects a range

Fixes #148.
CR: @javierarce
cc @saleiva

<3
2016-03-07 11:20 GMT+01:00 Javier Álvarez Medina<EMAIL_ADDRESS>
[image: screen shot 2016-03-07 at 11 20 12]
https://cloud.githubusercontent.com/assets/132146/13566597/94d7261e-e456-11e5-9094-010cf0d68ec2.png
Fixes #148 https://github.com/CartoDB/deep-insights.js/issues/148.
CR: @javierarce https://github.com/javierarce
cc @saleiva https://github.com/saleiva
You can view, comment on, or merge this pull request online at:
https://github.com/CartoDB/deep-insights.js/pull/270
Commit Summary

Don't hide axis tip when user selects a range

File Changes

M src/widgets/histogram/chart.js
https://github.com/CartoDB/deep-insights.js/pull/270/files#diff-0
(4)
M themes/scss/widgets/themes/light.scss
https://github.com/CartoDB/deep-insights.js/pull/270/files#diff-1
(3)

Patch Links:

https://github.com/CartoDB/deep-insights.js/pull/270.patch
https://github.com/CartoDB/deep-insights.js/pull/270.diff

—
Reply to this email directly or view it on GitHub
https://github.com/CartoDB/deep-insights.js/pull/270.

--
Sergio Alvarez Leiva

:+1:


[Bug]: Load LoRA adaptor for Llama3 seems not working

Your current environment
Collecting environment information.
PyTorch version: 2.3.0+cu121
Is debug build: False
CUDA used to build PyTorch: 12.1
ROCM used to build PyTorch: N/A
0S: Cent0S Linux release 7.9.2009 (Core) (x86 64)
GCC version: (GCC) 11.1.0
Clang version: Could not collect
CMake version: version 3.27.2
Libc version:qlibc-2.17
Python version: 3.11.4 (main, Jul5 2023,13:45:01) [GCC 11.2.0] (64-bit runtime)
Python platform: Linux-3.100-1160.e17.x86 64-x86 64-with-glibc2.17
Is CUDA available:True
CUDA runtime version: 12.1.105
CUDA MODULE LOADING set to: LAZY
GPU models and confiquration:
GPU 0: NVIDIA.A100 80GB PCIe
GPU 1: NVIDIA A100 80GB PCIe
GPU 2: NVIDIA A100 80GB PCIe
GPU 3:NVIDIA A100 80GB PCIe
GPU 4:NVIDIA A100 80GB PCIe
GPU 5:NVIDIA A100 80GB PCIe
GPU 6: NVIDIA A100 80GB PCIe
GPU 7: NVIDIA A100 80GB PCIe
Nvidia driver version: 535.129.03
cuDNN version: Could not collect
HIP runtime version: N/A
MIOpen runtime version: N/A
Is XNNPACK available:True
CPU:
x86 64
Architecture:
32-6it64-bit
CPU op-mode(s):
Little Endian
Byte Order:
CPU(S):
48
On-Line CPU(s) list: Θ-47
Thread(s) per core:  1
Core(s) per socket: 24
Socket(s):
2
NUMA node(s):
2
Vendor ID:
GenuineIntel
CPU family:
6
Model:
85
Model name:  Intel(R) Xeon(R) Gold 6240R CPU @ 2.40GHZ
Stepping:
7
CPU MHz：  1000.048
CPU max MHz:  4000.0000
CPU min MHz：  1000.0000
BogoMIPS:
4800.00
VT-x
Virtualization;
L1d cache;  32K
L1i cache
32K
L2 cache:  1024K
L3 cache:  36608K
NUMA nodeO CPU(s):  θ-23
24-47
NUMAnode1CPU(s)
🐛 Describe the bug
There is no error or warning during my code running stage, but compared the model that merged the LoRA's weights into the original layer's weight  by peft.PeftModel.merge_and_unload()  with the model dynamically load LoRA adaptor using vLLM's  LoRARequest. Their output is very different, it seems the LoRA adaptor is not working when using vLLM to load the adaptor.
My base model is Llama3-8B-chinese-chat.
when start the server I set the cli args as:
...
--enable-lora \
--max-loras 4 \
--max-lora-rank 32 \
...

And the python code where I init the AsyncEngine and AsynIterator is demonstrated as below:
    engine_args = AsyncEnginArgs.from_cli_args(cli_args)
    vllm_engine = AsyncLLMEngine.from_engine_args(engine_args)

    input_ids = prompt_to_input_ids(input_prompt, mode, tokenizer)
    sampling_params = SamplingParams(**generation_kwargs)
    lora_request = LoRARequest("lora_adaptor", 1, "my_local_peft_Lora_adaptor_weights_path")
    request_id = random_uuid()

    model_cfg = await vllm_engine.get_model_config()
    max_model_len = model_cfg.max_model_len
    if len(input_ids) > max_model_len:
        msg = f"Input tokens length {len(input_ids)} exceed 'max_model_len': {max_model_len}"
        LOGGER.error(msg)
        raise InputExceedError(msg)

    async_iterator: AsyncIterator = vllm_engine.generate(
        prompt=None,
        prompt_token_ids=input_ids,
        sampling_params=sampling_params,
        request_id=request_id,
        lora_request=lora_request
    )

I am getting a even strager issue, where I attemps to load vLLM + LoRA for Llama3-8B-Instruct
outputs = llm.generate(
    prompts,
    sampling_params,
    lora_request=LoRARequest("adaptor_iter1", 1, lora_path)
)

And I got error:
RuntimeError: Loading lora /root/.cache/huggingface/hub/models--Ksgk-fy--IGR-Adaptor-Meta-Llama-3-8B-Instruct-1/snapshots/37a69f049c3d0233bc77e9c8ac481d909cd6699b failed

I see the same issue as OP, but with gemma-2b. My lora trained model works as expected when I merge it and use it that way, but when running as a lora adapter as per the vllm documentation seemingly the original base model is replying.
python -m vllm.entrypoints.openai.api_server --model ../gemma-2b/ --port 8889 --enable-lora --lora-modules num=../outputs_gemma-2b_delme_num/checkpoint-1200/ --max_lora_rank 64 --max_loras 2
The reply is the same for the original gemma-2b and the num model when I query it.

I see the same issue as OP, but with gemma-2b. My lora trained model works as expected when I merge it and use it that way, but when running as a lora adapter as per the vllm documentation seemingly the original base model is replying. python -m vllm.entrypoints.openai.api_server --model ../gemma-2b/ --port 8889 --enable-lora --lora-modules num=../outputs_gemma-2b_delme_num/checkpoint-1200/ --max_lora_rank 64 --max_loras 2 The reply is the same for the original gemma-2b and the num model when I query it.

I am not sure it can solve your issue if you reduce your max_lora_rank <= 16, according to this comment:  https://github.com/vllm-project/vllm/issues/6333#issuecomment-2241511418
I haven't got a chance to try it.

Well my model is trained with lora rank 64. I have to retrain and try.

I appear to be encountering the same issue with vllm versions 0.6.2 and 0.6.3post1

@mgoldey do you see the issue with previous vllm versions? are there any configs that are getting this to work for you?
I have the same issue, whether loading dynamically or statically, I get the base model response.

I believe this to be related to how models are saved by different training libraries, but it's not particularly vLLM's responsibility to standardize training libraries' exports. I've not dug in deeper since merged models have solved my issues for now.

For me, adapters worked well with 0.5.3-0.5.4 using other base models.


bug: metamask connector saves connection even when shimDisconnect is true

Is there an existing issue for this?

[X] I have searched the existing issues

Package Version
0.6.0
Current Behavior
using rainbow and metamask

connect to metamask using rainbow when shimDisconnect is true
disconnect from rainbow
refresh the page

Rainbow wallet automatically connects to meta mask.  This behaviour is in rainbow's documentation website as well.
Expected Behavior
When shimDisconnect is true, it does not connect to metamask
Steps To Reproduce
No response
Link to Minimal Reproducible Example (CodeSandbox, StackBlitz, etc.)
https://www.rainbowkit.com/
Anything else?
No response

This has already been addressed here: https://github.com/wagmi-dev/wagmi/issues/38#issuecomment-1006685000


Configure documentation

I saw some cool features of the Writerside in Kandy and decided to add media links, logo and enable link to GitHub editing from the documentation pages
Just so you can see how it looks:

I think we need another logo for Dataframe, no? I'm a fan of the rest :)

I think we need another logo for Dataframe, no? I'm a fan of the rest :)

I'll remove it for now


MM-20526: Migrate 'components/backstage' module and associated tests to TypeScript

Summary
This PR migrates 'components/backstage' module, convert to FC (where possible) and associated tests to TypeScript
Ticket Link
Fixes https://github.com/mattermost/mattermost-server/issues/13714
JIRA: https://mattermost.atlassian.net/browse/MM-20526
Release Note
NONE

Hello @sinansonmez,
Thanks for your pull request! A Core Committer will review your pull request soon. For code contributions, you can learn more about the review process here.

E2E tests not automatically triggered, because PR has no approval yet. Please ask a developer to review and then try again to attach the QA label.

/update-branch

/e2e-test

Successfully triggered e2e testing!
https://git.internal.mattermost.com/qa/cypress-ui-automation/-/pipelines/246935


[Launcher] Application list should not use outdated term "UWP"

Environment
PowerToys version:  0.18.0 RC
PowerToy module for which you are reporting the bug (if applicable): Launcher

Steps to reproduce
Type in "Terminal" and observe that it's called a "UWP application". Terminal is no such thing; it's simply a packaged application.
The term UWP is not no longer the state of the art.

@crutkas
I don't think that normal users know what 'packaged app' means.
Can we use only the word 'app' like start does?

@crutkas I have seen the Resolution-Fix-Committed tag. How did you fix that? Can you consider https://github.com/microsoft/PowerToys/issues/3191#issuecomment-631395454 ?

It will be corrected, both is tweaking a string.


[BUG] [PSoC6] [lock-app] LED is not reflect in chip-tool command

Reproduction steps
1. build and flash lock-app example for PSoC6 by following URL.
https://github.com/project-chip/connectedhomeip/tree/v1.0-branch/examples/lock-app/infineon/psoc6

2. commissioning from chip-tool on linux.
./chip-tool pairing ble-wifi 12344321 $SSID $PASS 20202021 3840 --ble-adapter 1

3. do on/off command
./chip-tool onoff on 12344321 1
./chip-tool onoff off 12344321 1

LED8 and LED9 were not working.

4. read on/off status
onoff status is followed above onoff command result.

./chip-tool onoff read on-off 12344321 1

5. LED8 and LED9 were working by pressing USER_BTN1
However,the result is now reflected in read onoff command.
for example,
 LED9 is emitting(status = lock) by USER_BTN1, however, the result of `chip-tool onoff read on-off` is `false`.

Bug prevalence
always
GitHub hash of the SDK that was being used
commit 7f2b0a5920d1a7acc202c2932ac4c626c54cd31e (HEAD -> v1.0-branch, origin/v1.0-branch)
Platform
other
Platform Version(s)
No response
Anything else?
the chip-tool command does not reflect to LED8/9.
set onoff to on by chip-tool on linux, but LED8/9 does not work and not emit.
when USER_BTN1 is pressed, LED8 and LED9 are working.
however, LED8/9 status is not reflect result of chip-tool onoff read on-off.
LED9 status is LOCK ( LED9 is emitting), but, chip-tool onoff read on-off is false.
USER_BTN1 and LED8/9 are chip-tool command independent.
How do I control LED8/9 from chip-tool command?

@bzbarsky-apple
I could control LED, but I don't know this solution is correct or not.

USER_BTN1 -> ZCL_ON_OFF_ATRRIBUTE
https://github.com/project-chip/connectedhomeip/blob/0b17bce8005fb155e78e243f31111cdaf2c92797/examples/lock-app/infineon/psoc6/src/AppTask.cpp#L651

void AppTask::UpdateCluster(intptr_t context)
{
    uint8_t newOnOffState = !LockMgr().NextState();
    EmberAfStatus OnOffstatus =
        emberAfWriteAttribute(1, ZCL_ON_OFF_CLUSTER_ID, ZCL_ON_OFF_ATTRIBUTE_ID, (uint8_t *) &newOnOffState, ZCL_BOOLEAN_ATTRIBUTE_TYPE);

    if (OnOffstatus != EMBER_ZCL_STATUS_SUCCESS)
    {
        P6_LOG("ERR: updating lock state %x", OnOffstatus);
    }
}

ZCL_ON_OFF_ATRRIBUTE -> LED
https://github.com/project-chip/connectedhomeip/blob/0b17bce8005fb155e78e243f31111cdaf2c92797/examples/lock-app/infineon/psoc6/src/ZclCallbacks.cpp#L37

void MatterPostAttributeChangeCallback(const chip::app::ConcreteAttributePath & attributePath, uint8_t type, uint16_t size,
                                       uint8_t * value)
{
    EndpointId endpointId   = attributePath.mEndpointId;
    ClusterId clusterId     = attributePath.mClusterId;
    AttributeId attributeId = attributePath.mAttributeId;
    ChipLogProgress(Zcl, "Cluster callback: " ChipLogFormatMEI, ChipLogValueMEI(clusterId));

    if (clusterId == DoorLock::Id && attributeId == DoorLock::Attributes::LockState::Id)
    {
        ChipLogProgress(Zcl, "Door lock cluster: " ChipLogFormatMEI, ChipLogValueMEI(clusterId));
    }

    if (clusterId == ZCL_ON_OFF_CLUSTER_ID)
    {
        OnOnOffPostAttributeChangeCallback(endpointId, attributeId, value);
    }
}

// add below callback
void OnOnOffPostAttributeChangeCallback(EndpointId endpointId, AttributeId attributeId, uint8_t * value)
{
    VerifyOrExit(attributeId == ZCL_ON_OFF_ATTRIBUTE_ID, ChipLogProgress(Zcl, "Unhandled Attribute ID: '0x%04x", (int)attributeId));
    VerifyOrExit(endpointId == 1 , ChipLogProgress(Zcl, "Unexpected EndPoint ID: `0x%02x'", (int)endpointId));
    if (*value)
    {
        LockMgr().InitiateAction(AppEvent::kEventType_Lock, LockManager::LOCK_ACTION);
    }
    else
    {
        LockMgr().InitiateAction(AppEvent::kEventType_Lock, LockManager::UNLOCK_ACTION);
    }
exit:
    return;
}

    emberAfWriteAttribute(1, ZCL_ON_OFF_CLUSTER_ID, ZCL_ON_OFF_ATTRIBUTE_ID, (uint8_t *) &newOnOffState, ZCL_BOOLEAN_ATTRIBUTE_TYPE);

May I suggest using the functions in app-common/zap-generated/attributes/Accessors.h?  So:
   EmberAfStatus OnOffstatus = chip::app:Clusters::OnOff::Attributes::OnOff:Set(newOnOffState);

(and using as desired to make the namespacing simpler).

if (clusterId == ZCL_ON_OFF_CLUSTER_ID)

if (clusterId == OnOff::Id)

VerifyOrExit(attributeId == ZCL_ON_OFF_ATTRIBUTE_ID, ChipLogProgress(Zcl, "Unhandled Attribute ID: '0x%04x", (int)attributeId));

Again, please use the namespaced ids.  We're trying to remove the ZCL_* bits.

   LockMgr().InitiateAction(AppEvent::kEventType_Lock, LockManager::LOCK_ACTION);

This seems like a very strange way to change the state of an LED.  This "map the On/Off state tothe lock manager state of the lock" is the one weird part I see here.  The rest looks reasonable.

@bzbarsky-apple
Thank you for your suggestion.
I will try it.
And, ESP32 and other platform examples uses ZCL_ON_OFF_ATTRIBUTE_ID.
I hope examples are update to modern code.
BTW, would you please follow below issue?
https://github.com/project-chip/connectedhomeip/issues/23414

I hope examples are update to modern code.

I hope so too, and the ones I reviewed were, but I can't review every PR personally....


Menu driven program for singly linked list

A menu driven program to perform various operations in a singly linked list. I have added comments to explain what a function is performing and how is it doing so as well to make the code more readable. Thank you!

A menu driven program to perform various operations in a singly linked list. I have added comments to explain what a function is performing and how is it doing so as well to make the code more readable. Thank you!


Can't login to superhero.chat

Describe the bug
Can't login to superhero.chat
To Reproduce
Steps to reproduce the behavior:

Go to chat.superhero.chat
Click on login with wallet
See error

Expected behavior
A clear and concise description of what you expected to happen.
Screenshots
If applicable, add screenshots to help explain your problem.
Desktop (please complete the following information):

OS: MacOS
Browser : chrome
Version 123

Additional context
reproducible on commit f644ad1

{"nativeError":{"code":"ERR_JWS_INVALID","name":"JWSInvalid"},"name":"JWSInvalid","message":"Invalid Compact JWS","stack":[{"fullFilePath":"file:///src/node_modules/jose/dist/node/esm/jws/compact/verify.js:13:15","fileName":"verify.js","fileNameWithLine":"verify.js:13","fileColumn":"15","fileLine":"13","filePath":"/node_modules/jose/dist/node/esm/jws/compact/verify.js","filePathWithLine":"/node_modules/jose/dist/node/esm/jws/compact/verify.js:13","method":"compactVerify"},{"fullFilePath":"file:///src/node_modules/jose/dist/node/esm/jwt/verify.js:5:28","fileName":"verify.js","fileNameWithLine":"verify.js:5","fileColumn":"28","fileLine":"5","filePath":"/node_modules/jose/dist/node/esm/jwt/verify.js","filePathWithLine":"/node_modules/jose/dist/node/esm/jwt/verify.js:5","method":"jwtVerify"},{"fullFilePath":"/src/src/support/jwt.ts:23:9","fileName":"jwt.ts","fileNameWithLine":"jwt.ts:23","fileColumn":"9","fileLine":"23","filePath":"/src/support/jwt.ts","filePathWithLine":"/src/support/jwt.ts:23","method":"verifyJWT"},{"fullFilePath":"node:internal/process/task_queues:95:5","fileName":"task_queues","fileNameWithLine":"task_queues:95","fileColumn":"5","fileLine":"95","filePath":"internal/process/task_queues","filePathWithLine":"internal/process/task_queues:95","method":"process.processTicksAndRejections"},{"fullFilePath":"/src/src/routes/express.ts:176:11","fileName":"express.ts","fileNameWithLine":"express.ts:176","fileColumn":"11","fileLine":"176","filePath":"/src/routes/express.ts","filePathWithLine":"/src/routes/express.ts:176","method":""}],"_meta":{"runtime":"Nodejs","runtimeVersion":"v20.12.2","hostname":"c9629746170b","date":"2024-04-16T10:34:00.922Z","logLevelId":5,"logLevelName":"ERROR","path":{"fullFilePath":"/src/src/routes/express.ts:188:15","fileName":"express.ts","fileNameWithLine":"express.ts:188","fileColumn":"15","fileLine":"188","filePath":"/src/routes/express.ts","filePathWithLine":"/src/routes/express.ts:188","method":""}}}
{"nativeError":{},"name":"Error","message":"jwt signature verification error","stack":[{"fullFilePath":"/src/src/routes/express.ts:189:17","fileName":"express.ts","fileNameWithLine":"express.ts:189","fileColumn":"17","fileLine":"189","filePath":"/src/routes/express.ts","filePathWithLine":"/src/routes/express.ts:189","method":""},{"fullFilePath":"node:internal/process/task_queues:95:5","fileName":"task_queues","fileNameWithLine":"task_queues:95","fileColumn":"5","fileLine":"95","filePath":"internal/process/task_queues","filePathWithLine":"internal/process/task_queues:95","method":"process.processTicksAndRejections"}],"_meta":{"runtime":"Nodejs","runtimeVersion":"v20.12.2","hostname":"c9629746170b","date":"2024-04-16T10:34:00.924Z","logLevelId":5,"logLevelName":"ERROR","path":{"fullFilePath":"/src/src/support/ejs.ts:71:7","fileName":"ejs.ts","fileNameWithLine":"ejs.ts:71","fileColumn":"7","fileLine":"71","filePath":"/src/support/ejs.ts","filePathWithLine":"/src/support/ejs.ts:71","method":"renderError"}}}

its a fault in the oidc provider, will track it here: https://github.com/superhero-com/oidc-provider/issues/24#event-12487712944


Can you add ref unwrapping for reactive array?

What problem does this feature solve?
Check out: https://jsfiddle.net/g3xjmsz0/1/
What does the proposed API look like?
const {ref, reactive} = Vue;

const reactiveArray = reactive([ref("a"), ref("b"), ref("c")]);

// Does not resolve ref
console.log(reactiveArray[0]);

// Can you add automatically ref unwrapping for reactive array like this ^?

// It's very uncomfortable
console.log(reactiveArray[0].value);

reactive does not work with arrays. And this feature request doesn't matter.


Numpy union1d

This is an implementation of numpy.union1d from issue #70 (and #2078). It follows the same structure as the original implementation with changes for Jax compatibility.
np.union1d is intrinsically hard to make jit-compatible since it depends on np.unique and its output shape depends on the values in the array. This problem will be resolved as soon as np.unique is jit-compaitible (#2760).
The test check all one dimensional arrays and number dtypes which are not complex (as by #2760, unique does not work with complex dtypes). The test does not compile with jit since unique is not compatible with it.

Okay, thank you for your feedback! I will incorporate them and finish it on the weekend!

Incorporated above changes!

The tests are running smooth on my local machine but I am getting errors here which seem to be outside of my code. Can you help me with them?

We are in the process of migrating from using import numpy as onp; import jax.numpy as np to using import numpy as np; import jax.numpy as jnp, and this PR is a bit caught in the middle.
The best thing to do would be to rebase on master, update your use of onp so the tests pass locally, and then force push to this branch (let me know if you're not clear on how to do that).

Looks good - please also remove the two .orig files that were added along the way.

Okay, this has happened now!

As with #2943, we'll need a rebase against master before we can merge this.

Hello - are you still interested in finishing this contribution?

Since there has been no action here for a while, I'm going to close this. Feel free to re-open if you'd like to re-visit this contribution! Thanks


Refactoring in various ways

Hi,
this is my first pull request, so this will be a learning experience ;)
In order to get myself familiar with the codebase I went through the code and refactored some things which I noticed. I have written down quite a few questions on my notebook, but we can discuss those things in person somewhen in the future.

I noticed that you were mostly using traditional foreach loops instead of Collections.stream.foreach. I guess we should discuss which of the two we prefer, because mixing it up every other method might get weird ;)
I used the Java 9's List.of feature in order to get all result maps in the OrganismCountQuery class into a single list. This greatly reduces the boilerplate code when clearing all the maps or doing other things with all of the maps
In the same class I noticed that you were sometimes converting collections to arrays and then to collections again. This is redundant, because one can create collections of collections in java, so the intermediate step of converting to arrays, sorting and then converting again can be skipped.
I renamed the Helper class to MapUtil, this clarifies, that this class will hold helper methods which deal with maps. Furthermore I guess that the name "Helper" is kind of too general and no one will know which kind of methods this class holds.
I added a private constructor in the MapUtil class. This is supposed to prevent users from creating objects of this class. For reasoning: Stackoverflow
In the same class I removed redundant conversions to arrays again, same reasoning as in (3).

Any questions and comments are much appreciated, criticism is vital for improvement, so don't hesitate to tell me what I should/should not do.
Thanks

Lukas

Unfortunately I did not notice that the developer branch has more commits than the master branch, so there are some conflicts now.


[#noissue] Fix: Set isAuthorized property on the server map data correctly

If the node/link is a merged one, isAuthorized property has to be set as true
Else, isAuthorized property value will be evaluated by the target node state

Codecov Report

Merging #5072 into master will decrease coverage by <.01%.
The diff coverage is n/a.

@@            Coverage Diff             @@
##           master    #5072      +/-   ##
==========================================
- Coverage   40.77%   40.77%   -0.01%
==========================================
  Files        2649     2649
  Lines       79300    79300
  Branches    10717    10717
==========================================
- Hits        32337    32332       -5
- Misses      44032    44038       +6
+ Partials     2931     2930       -1

Impacted Files
Coverage Δ

...p/pinpoint/rpc/client/WriteFailFutureListener.java
56.25% <0%> (-18.75%)
:arrow_down:

...pc/server/LoggingServerMessageListenerFactory.java
90% <0%> (-10%)
:arrow_down:

...rc/main/java/com/navercorp/pinpoint/test/Item.java
65.51% <0%> (-3.45%)
:arrow_down:

...java/com/navercorp/pinpoint/rpc/DefaultFuture.java
72.5% <0%> (-1.67%)
:arrow_down:

...inpoint/profiler/sender/AsyncQueueingExecutor.java
81.81% <0%> (-1.14%)
:arrow_down:

...orp/pinpoint/rpc/server/DefaultPinpointServer.java
78.81% <0%> (-0.7%)
:arrow_down:

...ofiler/sender/StandbySpanStreamDataSendWorker.java
83.58% <0%> (+2.98%)
:arrow_up:

...vercorp/pinpoint/web/vo/ApplicationAgentsList.java
73.13% <0%> (+2.98%)
:arrow_up:

...pinpoint/profiler/instrument/AccessorAnalyzer.java
65.71% <0%> (+8.57%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update c6f2110...921a3f1. Read the comment docs.


Updates to CHANGES

Updates to CHANGES related to Pull Request
https://github.com/cbeust/testng/pull/606

@cedricrefresh
I have updated the CHANGES file as you had asked for. Please help merge this PR.


Improve configuration schema for Geniushub integration

Breaking Change:
Nil, original PR, #21598, is still in dev
Description:
See config section, below.
Pull request in home-assistant.io with documentation (if applicable): https://github.com/home-assistant/home-assistant.io/pull/8815
Example entry for configuration.yaml (if applicable):
As per @MartinHjelmare request, config is now be either of:
geniushub:
  token: skdjflksjfsljd...

... or ...
geniushub:
  host: <IP_ADDRESS>
  username: my_username
  password: my password

Checklist:

[x] The code change is tested and works locally.
[x] Local tests pass with tox. Your PR cannot be merged unless tests pass
[x] There is no commented out code in this PR.

If user exposed functionality or configuration variables are added/changed:

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

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

[x] N/A The manifest file has all fields filled out correctly (example).
[x] N/A New dependencies have been added to requirements in the manifest (example).
[x] N/A New dependencies are only imported inside functions that use them (example).
[x] N/A New or updated dependencies have been added to requirements_all.txt by running script/gen_requirements_all.py.
[x] New files were added to .coveragerc.

If the code does not interact with devices:

[x] N/A - Tests have been added to verify that the new code works.

The first PR for this integration is already in 0.92 beta, so tagging this for 0.92 too.

Woot! Merged!
Thanks @MartinHjelmare 💐  @GeoffAtHome 🥇


Create Screen Components

Screen is the base component that the other components go in. Takes up the full size of the screen, and sets display: flex and flex-direction: column.
ScreenBar is a generic bar container. It's built to take up exactly 10% of the total screen space. Has a backgroundColor prop that defaults to var(--primary).
ScreenHeader is a ScreenBar. Nothing special atm though will eventually have room for a button if we want.
ScreenBody component is built to take up all remaining screen space after ScreenBars are rendered. Adds a border to the top and uses a background of linear-gradient(var(--primary), var(--primary-dark)). Also sets display: flex and flex-direction: column so its contents display vertically.
ScreenFooter is a ScreenBar using backgroundColor: 'var(--secondary).
ExpandoButton takes up the entire width and height of its parent and acts as a link.

Example Usage
import React from 'react'

import Screen from './Screen'
import ScreenHeader from './ScreenHeader'
import ScreenBody from './ScreenBody'
import ScreenFooter from './ScreenFooter'
import ExpandoButton from './ExpandoButton'

const AutomagicSettingsScreen = () => (
  <Screen className="AutomagicSettings">
    <ScreenHeader>Automagic</ScreenHeader>
    <ScreenBody>

Viral Top 50

Time 20 Second Duration

Whole Thing

    </ScreenBody>
    <ScreenFooter>
      <ExpandoButton href="#">GO</ExpandoButton>
    </ScreenFooter>
  </Screen>
)

export default AutomagicSettingsScreen


Waiting for http://localhost:3000 to be ready - Could not connect

Before filing this issue, please ensure you're using the latest CLI by running swa --version and comparing to the latest version on npm.
Are you accessing the CLI from the default port :4280 ?

[ ] No, I am using a different port number (--port) and accessing the CLI from that port
[Y] Yes, I am accessing the CLI from port :4280

Make sure you are accessing the URL printed in the console when running!

Describe the bug
A clear and concise description of what the bug is.
To Reproduce
Steps to reproduce the behavior:

Start React Development Server: npm start
Returns: You can now view web-app in the browser.    http://localhost:3000
swa start http://localhost:3000

Expected behavior
Connects to the react web app, and proxies with swa.
Screenshots

Desktop (please complete the following information):

OS: Windows
Browser Edge
Version Latest release

Additional context
When I run npm start the website does open, and I do see the website at the url provided not only by npm, but also in the error.

Figured it out, similar issue to ISSUE 335. Installed nvm, and set node version to 14.
Leaving this open as I believe that issue 335 is related to functions, while this one is the frontend itself. Being that node version 14 is no longer supported, and the current lts doesn't work, this is something that should be reviewed.

I faced the same problem with node v18.15.0 and swa v1.1.1 in my M1 pro, it always told me "waiting for http://localhost:3000 to be ready", and I tried a lot but all not work for me. Just now I used <IP_ADDRESS> instead of localhost, all goes well to me. Very strange, not sure it related to my mac setting or something else.
Hope this helps.


Is capture rng possible yet?

Sorry this isn't really an issue. I just wasn't sure where to ask this. I know a WIP of capture rng is in the program at the moment (where you rng if a pokemon will be caught with a pokeball). I was wondering if it is possible to do it with what is available now? it at least seems to be able to be functional enough to do it. I have attempted to try it, but seem to have an issue with figuring out what the delay between throwing a pokeball and when it actually calculates capture. Anyway, I was just wondering if it is possible at all, and if so, is there any guide/way to do it?
Again, sorry this isn't an issue. I have been asking around about this, and people have told me to ask you since you created the program. I wasn't sure how to do that so I came here. Sorry if i am being a bother.

Yes it is now possible. Come to PokemonRNG channel to ask how to do this!


Added flag to fail execution when no test classes exist for specified manifest and/or regex only if it's set to true

Currently, when no test class is found for specified manifest and/or regex, then the execution fails. I've added a flag -require.at.least.one.test which doesn't fail the execution in such a scenario unless it's set to true (which is a default value).
Motivation: our case is that we are running tests while validating Pull Requests in our CI/CD pipeline and we are running only these tests which have changed or which source classes have changed, e.g. when MyClassApex has changed, then we are running test MyClassApexTest. We are simply appending 'Test' to the class name (by convention) but not all classes have tests and in such a situation, we don't want to fail the build.
Feel free to merge, maybe someone will have a similar situation to ours :)

Expected feature release number in range of 9 to 14, but got: 7

How about adding dist: trusty to .travis.yml?
https://travis-ci.community/t/error-installing-oraclejdk8-expected-feature-release-number-in-range-of-9-to-14-but-got-8/3766/4


chore(Dependencies) : update zio, zio-streams from 1.0.18 to 2.1.7

About this PR
📦 Updates

dev.zio:zio
dev.zio:zio-streams

from 1.0.18 to 2.1.7 ⚠
📜 GitHub Release Notes - Version Diff
Usage
✅ Please merge!
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

⚙ Adjust future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "dev.zio" } ]

Or, add this to slow down future updates of this dependency:
dependencyOverrides = [{
  pullRequests = { frequency = "30 days" },
  dependency = { groupId = "dev.zio" }
}]

labels: library-update, early-semver-major, semver-spec-major, commit-count:1

Superseded by #742.


Set-PnPListItem not working for Created, Modified or Editor

Not entirely sure if this is the right place (it seems to have sent me to the documentation GitHub, instead of the Uservoice...) but I'll log it here first (I know MS watch this and act on it) and then see if I can find something on Uservoice.
Back in the day, if you were using traditional SharePoint PowerShell to create new items in a list/library, you had to put Created, Author, Editor and Modified into a separate update statement, after the item had been created.
I'm now trying to do the same thing in PnP with SharePoint Online, but I'm finding that Created, Modified and Editor will not update.
Author is fine.
I should still be able to update these fields right?
[Enter feedback here]

Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: cc3efa2d-f7d5-d9d0-d306-7707e4906065
Version Independent ID: f30dd9c9-c9fc-f3f9-d5f4-ee4e1b8d3f53
Content: Set-PnPListItem (SharePointPnPPowerShell)
Content Source: sharepoint/sharepoint-ps/sharepoint-pnp/Set-PnPListItem.md
Service: sharepoint-powershell
GitHub Login: @pamgreen-msft
Microsoft Alias: pamgreen

How are you?
Even though the PnP documentation articles are on this repository, I need to kindly redirect you to open PnP cmdlets issues here, in that repository, where a member of the PnP community will be able to correct the article with your feedback.
The documentation for PnP cmdlets is then sync from that repo into this one.
Thank you!

Thanks @get-itips
I found a an old report of this issue HERE and a more recent one HERE.  So sounds like it's a problem that's been around for a while and hasn't been addressed.
Perhaps the documentation could be updated, in the mean time, to reflect the short-coming?
Thanks
Craig

@get-itips Thank you very much for the contribution and sharing this explanation. @Craig-Humphrey  as directed kindly open PnP cmdlets issues in that repository,  We proceed here to close it. Thanks for taking out some time to open the issue. Appreciate and encourage you to do the same in future also.


Dont work this  Enhanced Terrain Layer

Hi,
Thanks for you mod :)
I have a problem with your mod. I use Enhanced Terrain Layer with your mod (and Drag ruler for the mouvement).
When I move a token to a diffucult terrain nothing happens.
The ruler stop to work if "Measure Distance with Diffucult Terrain" is check "On" from the toolbox. I dont use Diffucult Terrain so maybe it's normal.

Thanks

Press F12 to open the JS console and see if any errors (red) or warnings (yellow) show up. If so, please post a screenshot of them here.

Thanks again, yes I have a big red error. You can see it in attached file :
foundry.rp.fr-1636132410209.log
r

This is a bug that's happening in Enhanced Terrain Layer currently. There's some invalid invisible terrain (with no width and no height) in your scene. Unfortunately the only way I know to work around this issue is to delete terrain until the bug is gone and then rebuild from there.

I have delete all terrain and it's work now. Unfortunately the bug come back some time.
I will wait a new version :)


chore(package): update husky to version 0.13.0

https://greenkeeper.io/

Current coverage is 100% (diff: 100%)

Merging #69 into master will not change coverage

@@           master   #69   diff @@
===================================
  Files           7     7
  Lines          69    69
  Methods         1     1
  Messages        0     0
  Branches       17    17
===================================
  Hits           69    69
  Misses          0     0
  Partials        0     0

Powered by Codecov. Last update 1c38504...c63bbc5


why browse over navigate? =)

Hi! I don't have any feedback, but my team is curious why you recommend browse over navigate. Thanks for any info you can provide!

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 6d781cad-e670-1161-966f-e7cd5f9e4ea1
Version Independent ID: 6dd87ed3-c055-b86d-ef0d-59564ae602fd
Content: navigate - Microsoft Style Guide
Content Source: styleguide/a-z-word-list-term-collections/n/navigate.md
Product: non-product-specific
GitHub Login: @pallep
Microsoft Alias: pallep

My $0.02: I prefer "browse" over "navigate" for readability reasons.
Browse has

one syllable, not three.
fewer possible meanings, so people with low literacy (the majority worldwide) are more likely to pick the correct meaning.

Also, if you didn't know the word "navigate" and looked it up in a dictionary, it could lead to confusion (boat and aircraft navigation, physical movement of objects with respect to each other or a point in ground or water...).
Navigate is just "messier" than browse. If that makes sense. LOL :-)

Hi there - @LauraDSchneider got here before me with excellent reasoning :)


Error when opening notebooks: Unrecognized runtime "nma"; defaulting to "python3"

Not sure whether this error has any impact (doesn't seem to) but thought I should flag it in case it does.

Opening the notebooks how?

I get the same error on that notebook.

The problem itself is innocuous; the notebook stores a record of the local environment it was last executed in, and it's saying Colab doesn't have such an environment, so you have to pick one it does have.
I'm not sure why that notebook alone is causing issues, though. It's possibly the last person that edited it checked it back into the github repo after running locally, rather than on Colab.


Highligh of th2 bins in lego plot

@PWhiddy @bellenot
Hi Peter,
Some time ago your improve drawing of th2 lego plot and change method how bins are highlighted.
But now there is side effect, which could be very nice seen on small th2 histogram:
http://jsroot.gsi.de/dev/?nobrowser&json=http://jsroot.gsi.de/files/tmp/th2.json.gz&opt=lego
Same histogram, drawn with last stable version (code in master branch)
http://jsroot.gsi.de/latest/?nobrowser&json=http://jsroot.gsi.de/files/tmp/th2.json.gz&opt=lego
Could you fix it.

Seems to be, #69 fixes the problem also with th2.


treewide: appease clippy

The usual: clippy have been updated in GitHub's CI runner image that we use and it has new lints that our codebase doesn't currently pass.
This time, clippy complains about some impl Defaults being unnecessarily hand-written where they could be easily implemented with an automatic derive. This commit removes two problematic impls - for PartitionerName and Consistency - and replaces them with an automatic derive.
Pre-review checklist

[x] I have split my patch into logically separate commits.
[x] All commit messages clearly explain what they change and why.
[ ] ~I added relevant tests for new features and bug fixes.~
[x] All commits compile, pass static checks and pass test.
[x] PR description sums up the changes and reasons why they should be introduced.
[ ] ~I added appropriate Fixes: annotations to PR description.~

Oops, It looks like deriving Default and TryFromPrimitive interact in a weird way, failing frame::types::type_consistency test?

Oops, It looks like Default and TryFromPrimitive derives interact in a weird way, failing frame::types::type_consistency test?

Yes, TryFromPrimitive unnecessarily interacts with the #[default] annotation. For now I just marked the impl for Consistency with allow, but it will be possible to fix this properly after https://github.com/illicitonion/num_enum/issues/75 is fixed.


SDMMC driver

I'am working for hours on my problem to interface a SD card to my ESP-WROOM-32.
Is there any example code, or documentation how to use SDIO on ESP32?
I didn't found official, or unofficial documentation. Sarching throw the whole repository, including and all *.h and *.c files gave me also no result.
Please help me, my new love "ESP32" is in danger.. : (

Not yet, supposed to be released in the next few weeks.  But you can try spi interface for now.

@negativekelvin is correct, a driver for SDMMC support is being worked on right now. A generic SPI driver (which can access SD cards in SPI mode) is also currently in progress.

Available in master since edd924f.


about inference time

How long is the inference time for a picture? (Device and Resolution)

Hi, I do not  count time specifically. However, it will be very time consuming. The image resolution is 256x128. The inference time is similar with other Reid projects. Thanks.
发自我的iPhone
------------------ Original ------------------
From: viki-li @.>
Date: Tue,Nov 23,2021 9:21 AM
To: WangWenhao0716/DomainMix @.>
Cc: Subscribed @.***>
Subject: Re: [WangWenhao0716/DomainMix] about inference time (Issue #2)
How long is the inference time for a picture? (Device and Resolution)
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub, or unsubscribe.
Triage notifications on the go with GitHub Mobile for iOS or Android.


Short solution needed: "ffmpeg overlay image or video" (ffmpeg)

Please help us write most modern and shortest code solution for this issue:
ffmpeg overlay image or video (technology: ffmpeg)
Fast way
Just write the code solution in the comments.
Prefered way

Create pull request with a new code file inside inbox folder.
Don't forget to use comments explain solution.
Link to this issue in comments of pull request.

How to overlay image on video


Disable Client IP check when running in the Cloud

The Socket server grants at most one ticket per client IP. That was nice in the classroom, when everyone connected directly to the same WLAN. But it doesn't work when the server is hosted in a Kubernetes cluster in the Cloud. There's a routing component in the way, and all the client IPs are the same.
Disable the client IP check when running as a pod.

Had to do that live during the online lecture. But that was just a hack that disabled the check unconditionally.

Same problem with the RMI server.


[UX/UI] Description label and text are not aligned to each other

Description label and text are not aligned to each other
https://drive.google.com/file/d/13tL14bQCQ0mI6LJsDGj-BBPUDIHwuW1L/view?usp=drive_link

@wrenaria this should be ready to test on dev.


Try to use polling instead of mio.

@George-Miao you've always want this:)
However I've found some problems:

The key of Event is said to identify the fd, I don't know whether an fd could be registered with multiple different keys.
Don't know if it is allowed to add one fd several times with different keys.

Bonus: Closes #67

Cool! Also this should bring more platforms into supported list of compio.

Well there's a big problem here: if one fd added with different keys, it will only show up once. That means we cannot perform multiple read operations on one file.

I have to maintain a queue myself to control the interest.

The performance will be poor if one fd registers a lot operations. We can only pop one operation each time.
I have a question: when a fd is readable, how many read operation could we perform? What if it is writable?
@George-Miao

I have a question: when a fd is readable, how many read operation could we perform? What if it is writable?
@George-Miao

It really depends on what type of fd is. I think most of the time it only means at most one read/write operation is non blocking.


k8s object fields with false value are removed

Describe the bug
Inside function PatchMaker.Calculate, right before the three way patch calculation logic, DeleteNullInJson(modified) is called. The function removes not only nil fields but boolean fields with value false (code path). It causes a problem that we are unable to set a field, that has true as default value, to false. For example, in gloo edge service, this field has true as default but we want to set it as false.
Also wonder why we are removing all zero valued fields before 3 way diff. It causes problems when service have a different default value than zero value in golang.

Hey, any progress on the PR ^^?

Friendly ping ^^


PSA UPDATED SeaFile to V11 and had a ton of CSRF issues

Not sure where else to post; but if anyone else has issues:
https://github.com/haiwen/seafile/issues/2707

Just came here to say; this "trusted origins" thing "fixes" this but I truly don't believe it to be the real fix. Trying to do this but can't seem to figure out how to get it to work with this container - any ideas?
https://github.com/ggogel/seafile-containerized/issues/138#issuecomment-1793815602


report number of rpc calls during a call to task.Converge

A shovel integration which only requires data from eth_getLogs should make 1 RPC request per batch. However, if the integration requires data from the header, it will make len(batch) RPC requests. Since this configuration difference has an outsized impact on performance, we should log the number or RPC requests made ruing the processing of a batch. This way the operator can compare the number of requests made vs. the expected number of requests to be made.
See this issue for context and motivation: https://github.com/daimo-eth/daimo/pull/692

Fixed in a6cc8c012da2b9c5369a10eb38f03a3d595afdc5


Added extra data parameter for partial urls

Coverage remained the same at 90.789% when pulling fa44c14834c2ff93bc3f0f46aa6f01f17edb13e1 on feat/views into 8a6d82a84685cb6a6cd23598dd0ed45de18c7060 on master.


Generate solidity interface from Anchor IDL files so that anchor contracts can be called

This PR contains a bunch of commits to make calling Anchor programs possible.

Fix for borsh encoding
Check for duplicate selectors
New subcommand solang idl which generates Solidity interface file. I imagine that the Substrate implementation will be very similar (read metadata, print Solidity) and will re-use this subcommand
Add Anchor and Solana to CI container for testing
Test anchor program and test for calling it from Solang
Documentation

this looks dope!


Added demo for #131

Demos for BRQI #116
I added a demo on how to use this module in demos/brqi_demo.py along with a step-by-step explanation in the demos/brqi.md file.

Hi @Dljdd, Thanks for the PR. I will get back to this asap.


Custom intervals do not work

Describe the bug
When trying to set any interval that isn't the default ones it fails with error "invalid interval"
Reproduction steps

Set an interval that isn't one of the default ones
Get error

Expected behavior
Custom intervals should work and not error
Additional context
I've tried all kinds of cronstrue intervals and none of them will stick

You need to give a cron expression. For example 0 4 * * *.

Ah, I assumed it would be able to parse it from human readable to cron expression.

It will translate to human-readable format but not the other way :)


Dataset metrics

Adds two scripts to bfasst, allowing for efficient computation of metrics on randsoc-based graphs for gnn training datasets. The metrics can be computed ad-hoc through the use of command line options. Bfasst is used to iterate through a dataset, run process_graph.py on each graph in it, then run accumulate_metrics.py at the end.
If things run for too long, and you don't want to wait for all instances of process_graph.py to finish, kill the run and invoke the accumulation script on the output directory directly.
The final output is contained in a file called summary_stats.log, with individual metrics for each instance of each ip contained in master_metrics.log. accumulate_metrics.py will overwrite these files every time, but options are available to specify a different output name, if the utility is used directly.

Needs dependencies on the scripts in the ninja build statements, still, so that rebuild triggers when utils update

@KeenanRileyFaulkner It looks like this is failing CI.  Anything I can help with?

Sorry. I didn't realize there was a formatting issue. I'm out of town I'm right now, but will try to fix it when I have a chance this weekend.

@jgoeders All tests are passing now


Questions about BLE and the Internet

Can the movement information and light information of Xiaomi Night Light 2 (MJYD02YL-A) be available without the Internet?

Answer in readme https://github.com/AlexxIT/XiaomiGateway3#faq


Updating server npm modules into extension's server location...
server/src/server.ts(25,5): error TS6133: 'workspaceRoot' is declared but its value is never read.
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR<EMAIL_ADDRESS>compile: tsc -p client/tsconfig.json && cd server && npm run installServer && cd .. && tsc -p server/tsconfig.json
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the<EMAIL_ADDRESS>compile script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.
npm ERR!      /Users/panda/.npm/_logs/2017-11-09T14_58_14_572Z-debug.log

Hi @Catlite91 , I am also getting this error. How did you resolve it? I can see you closed the issue again...?

I just run the compile script in the package.json file manually
tsc -p client/tsconfig.json && cd server && npm run installServer && cd .. && tsc -p server/tsconfig.json
be sure you'v installed the tsc -g

Hmmm, it still fails for me. I changed the server/tsconfig.json option noUnusedLocals from true to false and that did the trick. I am running tsc version 2.6.1

Hello
The solution proposed by @Catlite91 does not wait for me.
I get:
tsc -p client/tsconfig.json && cd server && npm run installServer && cd .. && tsc -p server/tsconfig.json

><EMAIL_ADDRESS>installServer /Users/pascalpoizat/Documents/Code/vscode-extension-samples/lsp-sample/server
> installServerIntoExtension ../client ./package.json ./tsconfig.json

Copying package.json to extension's server location...
Updating server npm modules into extension's server location...
server/src/server.ts(25,5): error TS6133: 'workspaceRoot' is declared but its value is never read.

tsc 2.6.2
After doing the change proposed by @hessellund then it works and npm run compile also works.
Thanks to you both.


Wrong path for NotoSansRegular.ttf font

When refreshing the asset manager window error appear in the Godot output, one of the errors is
Cannot open font file 'res://addons/library/NotoSansRegular.ttf
library should be replaced with asset-manager

Ah thanks! Seems to be an old path somewhere! I'll fix it :)


decode abi

Hello safe team
please decode abis included in this contract
https://etherscan.io/address/0x7893405d9d968a4e3637897f4fd734ca59f338f6
Best

As long as you interact with the contract ABI will be added to the service


[Suggestion] Complete freedom with admin mode

Is your feature request related to a problem?
Yes it is.  I want to be able to edit all the properties of the chestshop without limitations.

Describe the solution you'd like.
That's why I suggest that with admin mode turned on, you can edit other's chest shops as if they were yours and you can edit any user (owners, managers, members), use any command without getting the error message that you do not have the permissions to edit the shop...
Describe alternatives you've considered.
I tried using /ts setcost, /ts setproduct, /ts addmanager, /ts addmember on shops that are not mine to edit them, or to help players, but I couldnt really do that, which was really a pain.
Agreements

[X] I have searched for and ensured there isn't already an open issue regarding this.
[X] I have ensured the feature I'm requesting isn't already in the latest supported TradeShop build.
[X] I have asked the Developers and they have confirmed that it is not already in development.

Other
No response

@Teslicek Try out the newest dev release and let me know if it functions the way you need it to


Add navigation active route drive state data

Addresses https://github.com/teslamate-org/teslamate/discussions/3250
There are additional fields from the drive_state object that contain destination name and metadata if it is set in the vehicle routing.
        "drive_state": {
            "active_route_destination": "Home",
            "active_route_energy_at_arrival": 73,
            "active_route_latitude": -1.123456,
            "active_route_longitude": 1.123456,
            "active_route_miles_to_arrival": 6.485299,
            "active_route_minutes_to_arrival": 23.466667,
            "active_route_traffic_minutes_delay": 0.0,
            "gps_as_of":<PHONE_NUMBER>,
            "heading": 254,
            "latitude": -1.123456,
            "longitude": 1.123456,

Unfortunately I don't have the environment set up so I didn't test this but this matches the existing logic. I'm also hoping this automatically flows through the MQTT broker since the entire drive state is already sent.

Thanks for your suggestion. Please also add a test for this.

Thanks for your suggestion. Please also add a test for this and update existing once, so CI pass.

@JakobLichterfeld I've set up a local environment and a MQTT broker and verified the new values now show up in MQTT.
I don't have any experience with Elixir so I'm a bit stuck with adding a new test. I'm not really sure where it should go and what we would be testing. Could I get some suggestions/help?

I am kind of uneasy having these sent as separate MQTT topics. For example, think of a program receiving MQTT events, it will receive destination, and then latitude, and then longitude. Although order is unpredictable. There will be a brief time when it has a mismatch of old values and new values. Outputting all of this in one json blob might be better.
Yes, I think this is already a problem with the latitude/longitude output.
Apart from that looks good.

I am kind of uneasy having these sent as separate MQTT topics. For example, think of a program receiving MQTT events, it will receive destination, and then latitude, and then longitude. Although order is unpredictable. There will be a brief time when it has a mismatch of old values and new values. Outputting all of this in one json blob might be better.
Yes, I think this is already a problem with the latitude/longitude output.
Apart from that looks good.

Agreed, I didn't want to break the existing pattern.
I also didn't bother adding in the other fields to the MQTT output but happy to do so. The only one that needs some transforming is active_route_miles_to_arrival which I think needs to be converted to km?

I am kind of uneasy having these sent as separate MQTT topics. For example, think of a program receiving MQTT events, it will receive destination, and then latitude, and then longitude. Although order is unpredictable. There will be a brief time when it has a mismatch of old values and new values. Outputting all of this in one json blob might be better.
Yes, I think this is already a problem with the latitude/longitude output.
Apart from that looks good.

I fully agree, for latlong, for the other travel ETA's not so much, these update throughout the journey (where latlong does not), which will require to update the complete blob. Also adding more stuff to a big json requires the processing client (often HA) to parse this json, where normally an mqtt topic can be read easily.
I think both ways can be done and advocated for, zigbee2mqtt is more json based too, but i'd suggest to not wait for a possible complete revamp of the mqtt structure for this awesome change already.

Please shift follow up discussion in #3660


.matchdg opt

Codecov Report

Merging #191 (3eaf142) into master (e81da59) will increase coverage by 0.01%.
The diff coverage is 94.56%.

:exclamation: Current head 3eaf142 differs from pull request most recent head 849ddc6. Consider uploading reports for the commit 849ddc6 to get more accurate results

@@            Coverage Diff             @@
##           master     #191      +/-   ##
==========================================
+ Coverage   95.27%   95.28%   +0.01%
==========================================
  Files         124      124
  Lines        4147     4159      +12
==========================================
+ Hits         3951     3963      +12
  Misses        196      196

Flag
Coverage Δ

unittests
95.28% <94.56%> (+0.01%)
:arrow_up:

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

Impacted Files
Coverage Δ

domainlab/algos/compos/matchdg_ctr_erm.py
95.41% <93.90%> (+0.51%)
:arrow_up:

domainlab/algos/compos/matchdg_base.py
97.82% <100.00%> (-0.22%)
:arrow_down:

domainlab/algos/trainers/a_trainer.py
95.58% <100.00%> (+0.20%)
:arrow_up:

domainlab/algos/trainers/train_basic.py
100.00% <100.00%> (ø)

domainlab/algos/trainers/train_matchdg.py
100.00% <100.00%> (ø)

:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


Clarification needed on whether paging path constraints also applies to IRPs sent by IoCallDriver

IRQL-Related Constraints
Note: For information about which types of IRPs are used in paging I/O, see Dispatch Routine IRQL and Thread Context.

Dispatch routines in the paging I/O path should never call IoCallDriver at any IRQL above APC_LEVEL. If a dispatch routine raises IRQL, it must lower it before calling IoCallDriver.
Dispatch routines in the paging path, such as read and write, cannot safely call any kernel-mode routines that require callers to be running at IRQL PASSIVE_LEVEL.

Suppose we're in the paging read path. Per 2nd point above, we cannot call ZwCreateFile as it requires PASSIVE_LEVEL. However, the 1st point above seems to imply that we can instead roll our own CreateFile IRP (IRP_MJ_CREATE) using IoCallDriver. But, the Dispatch Routine IRQL and Thread Context page states that the maximum allowed IRQL for Create dispatch routines is PASSIVE_LEVEL, which seems to violate the 2nd point.
So is sending our own IRPs via IoCallDriver a valid workaround for the 2nd point? Or are the IRPs we can send also constrained by the 2nd point and the maximum allowed IRQL of their dispatch routines?

Document Details
⚠ Do not edit this section. It is required for learn.microsoft.com ➟ GitHub issue linking.

ID: 854abc51-a990-3990-997e-2755acb4c7f7
Version Independent ID: 7db8ed7c-65fd-dabf-2611-82704fbd5fd3
Content: Constraints on Dispatch Routines - Windows drivers
Content Source: windows-driver-docs-pr/ifs/constraints-on-dispatch-routines.md
Product: windows-hardware
Technology: ifs
GitHub Login: @lorihollasch
Microsoft Alias: loriwhip

To be clear, you can not issue other IRPs from a paging IO path.  You can queue a worker thread that issues IO but you must not wait synchronously for that worker thread to complete.  If you do you will cause deadlocks.  The answer to your last question is no, I have just provided the only way to do this.
The first bullet simply says you can't do paging IO (or any IO) at dispatch level because you will never see the operation completed.  This is because process IO completion is processed via APCs.
I think the 2nd bullet is self-explanatory, you can't lower IRL.

The constraint that you should never call IoCallDriver above APC_LEVEL does not automatically imply that it is safe to call IoCallDriver at APC_LEVEL in all situations.  Whether you may be at APC_LEVEL or must be at PASSIVE_LEVEL is detailed in Dispatch Routine IRQL and Thread Context.  Since it is based on the type of dispatch routine that ends up getting called (e.g. Create), the specific constraints are the same whether you call IoCallDriver directly (e.g. with an IRP_MJ_CREATE Irp) versus calling a higher level kernel routine (e.g. ZwCreateFile) that in turn calls IoCallDriver.

@wmjdgla, I've added the clarifying information that Neal and Craig provided to the page - hope that helps. Thanks for the issue!


Target Support

Lots of developers add two targets inside their projects, one for Debug and one for Release. I think it's a good idea to add support to select Debug target in choosing projects (if possible)

Thanks for the suggestion. Yes, that can be supported with a few modifications to the code. Just need to find the time which is always the tricky bit. :)

Those aren't usually targets. They are build configurations. And most devs add a third config named "App Store".


Additions to gitignore, storagedata.db relocated properly

storagedata.db creates itself automatically if it doesn't exist and now does so in the databaseFiles directory (versus the root directory). It has also been added to the gitignore.
cotw.json has been added to the gitignore.
The previous storagedata.db and storagedatas.db files in the root directory have been removed from the working tree.

This resolves #122


error: mismatched types

I've tried your example. It gives the following error:
/home/ccwu/.cargo/registry/src/github.com-1285ae84e5963aae/rustty-0.1.8/src/core/termctl.rs:60:53: 60:63 error: mismatched types:
expected u32,
found u64
(expected u32,
found u64) [E0308]
/home/ccwu/.cargo/registry/src/github.com-1285ae84e5963aae/rustty-0.1.8/src/core/termctl.rs:60             ioctl::read_into::(self.fd, TIOCGWINSZ, &mut ws)

First of all, thank you for reporting this!
Interesting, I can't reproduce this error on my dev box or the travis build. Looks like its because of a different ioctl function signature on your platform. What platform did you get this error on?

The example seems to work under 64-bit version of Ubuntu 14.04 LTS, but not under 32-bit version.

I believe #12 should fix this, however I don't have a 32-bit machine to test it on. Closing the issue now as this should be fixed, but please let me know if you still get the error.

it is fixed. Thank you.


add :retry_after_filter option

Thank you for the PR.
I thought we'd just change:
https://github.com/wojtekmach/req/blob/v0.3.10/lib/req/steps.ex#L1375
to handle both 429 and 503. Why is that not enough?

if it's important to have total control over using or not using retry-after header, I'd be ok with passing {request, response} to the retry_delay function so someone could do:
retry_delay: fn {request, response} ->
  case get_header(response, "retry-after") do
    [number_or_date] ->
      case Integer.parse(number_or_date) do
        {seconds, ""} ->
          seconds ** 1000

        :error ->
          # parse_http_date(...)
      end
    [] ->
      (2 ** request.private.req_retry_count) * 1000
  end
end

would that help?

It's not that 429 and 503 would not be enough, it's that in this particular case I, for instance, only need it for the 503 and not for the 429. Maybe someone else will need it for both, maybe with different delay logic etc. That's why we need some flexibility and why hard coded status codes may not be such a good idea.

As for the suggested function, yes, generally it would help. Although this above example as such requires the user to replicate some of the library code. Personally, I'd go for more code reuse. The get_header/2 is not expensive so the retry-after can be supplied to the function as well, resulting in something like this (I'm not into implementation now, just the interface):

  @type falsey() :: false | nil
  @type retry_delay_result() :: integer() | falsey()

  @type retry_delay_fun() ::
          ( retry_count :: integer() -> retry_delay_result())
          | ( Req.Request.t(), Req.Response.t(), retry_after :: integer() -> retry_delay_result())

  # usage in my case:
  Req.get!( url, fn _, response, retry_after ->
    response.status == 503 && retry_after
  end)

or better yet:
  @type retry_delay_args() ::
          %{
            required( :request) => Req.Request.t(),
            required( :response) => Req.Response.t(),
            required( :retry_after) => integer()
          }

  @type retry_delay_fun() ::
          ( retry_count :: retry_count() -> retry_delay_result())
          | ( retry_delay_args() -> retry_delay_result())

  # usage, again in my case:
  Req.get!( url, & &1.response.status == 503 && &1.retry_after)

@wojtekmach Please check if the suggested function interface is ok with you and let me know if you want to implement it yourself or I can make a PR.

Thanks for the update, I need some more time to think about it.

@wojtekmach Hey, any chance to confirm this or make an alternative suggestion for I kind of need this feature quite soon.
Thanks

In your proposal what happens if the retry_delay fun returns false?
The problem with %{request:, response:, retry_delay:} as input is the retry might have been caused by getting an exception. We could extend the map to have an :exception key too. And then either :response OR :exception field would be non-nil but I'm not sure if such API would be easy to use.
My proposal is to add a fun(req, resp_or_exception, delay) -> milliseconds where delay can be nil (ie we got an exception or a response without the header)
A nice thing about a 3-arity function is that it's backwards compatible. We can deprecate passing 1-arity function in favour of the new one.
WDYT? If that sounds good a PR is welcome.

Alternatively it's fun(req, resp) but we add a Req.Response.get_retry_after(unit \\ :millisecond) :: non_neg_integer() | nil and the users can grab the value of the header themselves.
According to https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After the header might also appear on HTTP 301 Moved Permanently (which we currently do not take into account) so this function can be more generally useful in users own code too.
I think I slightly prefer this over sending fun(req,resp,delay) where the latter can be nil. WDYT?

In your proposal what happens if the retry_delay fun returns false?

falsey -> Retrial stops immediately.

The problem with %{request:, response:, retry_delay:} as input is the retry might have been caused by getting an exception. We could extend the map to have an :exception key too. And then either :response OR :exception field would be non-nil but I'm not sure if such API would be easy to use.

My suggestion is based on the same presumptions as the Steps.retry/1 :retry fun arity 1 option. Therefore, yes, we can have it accept a response or an exception.
I agree with not using a map as a single argument. It was probably just me going a bit too far to make it as convenient for the user as possible (which in the end turns out not be so).

Alternatively it's fun(req, resp) but we add a Req.Response.get_retry_after(resp, unit \\ :millisecond) :: non_neg_integer() | nil and the users can grab the value of the header themselves.

That one would be a plain code reuse approach, but I personally like the other approach better as this one is making the user implement the loop the library could easily provide for them (as it does in other cases).

According to https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Retry-After the header might also appear on HTTP 301

I don't think we should worry bout the status codes if we provide the response to the use function (and we do).

I think I slightly prefer this over sending fun(req,resp_or_error,delay) where the 3rd argument will sometimes be nil for responses and always nil for errors. WDYT?

We can easily have the function receive :error as the third argument if an exception is provided. There's nothing wrong about it since what we're really talking about here is coping with the anonymous function limitation of having a fixed number of arguments.
The altered proposal would then be as follows:
@type retry_delay_fun() ::
  ( retry_count :: retry_count() -> retry_delay_result()) # for backward compatibility
  | ( Req.Request.t(), Req.Response.t() | Exception.t(), retry_after :: integer() | :error -> retry_delay_result())

falsey -> Retrial stops immediately.

About falsey, retry delay option controlling whether retries happen is to me mixing concerns. If anything perhaps I'd do the opposite, :retry option could return true/false or delay. But not sure how flexible that is.

retry_after :: integer() | :error

this needs to also have | nil for when the response does not have retry-after header. But then I think it's a bit much, I think I'd be ok with just non_neg_integer() | nil then, nil can happen when we got the responds without the header or the exception.

In general, I would say avoid booleans. Could you return :stop or {:continue, 10} or whatever union of things that are not true|false (boolean)?
Something that defines an intent.

retry delay option controlling whether retry happen is to me mixing concerns. If anything perhaps I'd do the opposite, :retry option could return true/false or delay. But not sure how flexible that is.

I don't see it that way because here we come down to :retry and :retry_delay options being mutually exclusive i.e. two distinct alternatives each of which then must be complete and have its own way of saying when to stop. Your suggestion confirms that, it's just that you suggest moving it into the :retry option which I wouldn't have anything against if the flexibility as kept but then we risk the backward compatibility.

this needs to also have | nil for when the response does not have retry-after header. But then I think it's a bit much, I think I'd be ok with just non_neg_integer() | nil then, nil can happen when we got the response without the header or the exception.

I now see what you meant by adding the Req.Response.get_retry_after/2. Ok, we can do it this way so the user function only receives the request and response or exception.

:retry is a fn req, we can always add a fn req, resp_or_error in a backwards compatible way. Again not sure this is the right path.
Actually going back to what you wrote before:
Req.get!(url, retry_delay: & &1.response.status == 503 && &1.retry_after)

is this really what you want? Why wouldn't you retry on 429 (too many requests), 504 (gateway timeout) or exceptions like %Mint.TransportError{reason: :timeout}?

Why wouldn't you retry on 429 (too many requests), 504 (gateway timeout) or exceptions like %Mint.TransportError{reason: :timeout}?

Because I have to abide by the API specs that explicitly state to retry just on 503. It's like you have much choice if you're building just the front end.

.. and this is why I am insisting so much on the status code interpretation flexibility.

Got it, thank you.
On one hand keeping :retry and :retry_delay orthogonal keeps things simpler, more predictable, and there are no weird interactions between the two. On the other hand if you'd need something really custom then it's not ideal to have some logic in :retry and them some more logic in :retry_delay and most likely duplicating some conditionals between the two.
So the only way I can see it is this:

retry: fn req is deprecated in favour of retry: fn req, resp_or_error
If retry: fn req, resp_or_error -> false | nil we don’t retry
If retry: fn req, resp_or_error -> true, we retry with a delay that from response with “retry-after” header, otherwise we use :retry_delay (defaults to simple exp backoff)
If retry: fn req, resp_or_error -> {:delay, milliseconds} we delay for that time. If :retry_delay is set, we raise because in this particular case these are mutually exclusive.

And so for your use case we'd have:
retry: fn
  _req, %Req.Response{status: 503} = resp ->
    if delay = Req.Response.get_retry_after(resp) do
      {:delay, delay}
    end

  _req, _resp_or_error ->
    false
end

wdyt?

I agree in principle specific atoms are better than booleans but I can't think of a good replacement for true nor particularly like :halt or :stop for this use case.
Making this extremely convenient to use is not the highest priority for me but the falsy return you were pushing for is obviously especially useful with if like shown above.
Btw, I just realised that for your use case this is the shortest (again LOC not being the highest priority):
retry: fn _req, resp_or_error -> match?(%Req.Response{status: 503}, resp_or_error end

That is unless the frontend is like you can retry only if it's a 503 AND we send a Retry-After sigh.

It is, but never mind. This is now ok (the former usage example)

So, we're settled then? I can go with a new PR in the following days for these specs?

Yup please send the PR. Thanks!

If retry: fn req, resp_or_error -> true, we retry with a delay from response with “retry-after” header, otherwise we use :retry_delay (defaults to simple exp backoff)

Note that this differs from your current behavior. Currently, if a :retry fun/1 returns true, the retry-after header will only be considered if the status code is 429. My recommendation is to keep it this the same or it may become a breaking change for some users.

Yes if users blindly change behaviour their code might break but the whole point of introducing a new function is to have an opportunity to do things right. We can help users by explaining things in the documentation and in the changelog. Please handle retry-after on 503s as well. Unless I'm missing some downsides of doing so?

Closing in favour of #226.


docs: remove unused references to generated samples

The Spanner team is not using auto-generated samples, so references to them should be removed.
#1517

This will partially fix #1517, but we still need to fix publishing as well (#1813)


docs: add blog for Vault

Changes:
Add blog for Vault integration.

cc @guoqqqi @oil-oil to have a review 😉

LGTM


Flux dose not create clusterrole and service account in team namespace

Using fluxcd multi-tenancy , in the flux namespace i've cluster role and service account manifests my customization is like so
workloads/controller/kustomization.yaml
resources:

clusterrole.yaml
clusterrolebinding.yaml
deployment.yaml
serviceaccount.yaml

Flux only create the deployment but not clusterrole and sa
.flux.yaml
version: 1
commandUpdated:
generators:
- command: kustomize build .
This is the log
flux" cannot get resource "clusterroles" in API group "rbac.authorization.k8s.io" at the cluster scope; :clusterrole/goldilocks-dashboard: running kubectl: Error from server (Forbidden): error when retrieving current configuration of:\nResource: "rbac.authorization.k8s.io/v1beta1, Resource=clusterroles", GroupVersionKind: "rbac.authorization.k8s.io/v1beta1,

Resolved


Auto login to server

Hi,
My public servers have passwd auth disabled. The logins are done through ssh authorized keys.
I am not being able to login. I am either forced to enter a password or to select a private key file.
I have selected my private key file (that matches the public key on the server it doesn't work.
Thanks

first sorry delay for the reply too much.
plz make sure the your private key created by openssl whether or not.
Synapse supported to the file is just a Openssl type.


Config related changes & windowing

This pull request brings all path defs into the config file. Allows for the use of docker paths and introduces a resolution for the nvidia rtx 20xx bug encountered while training. Lastly, the option for windowing ct scans has been added as several functions. These functions were mainly copied from Richard McKinley's kaggle kernel.

possible issue will crop up in the data loader around line 92 in the with statement, this is principally where a lot data is being juggled and passed around (checking for dim sizes, windowing being applied and so on).


DC MILO 0.2343.1

Adding .ing domains for Google Presser

Codecov Report

Merging #432 (30a2522) into main (b12ce6c) will increase coverage by 0.03%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##             main     #432      +/-   ##
==========================================
+ Coverage   96.58%   96.62%   +0.03%
==========================================
  Files          26       26
  Lines        2987     2990       +3
==========================================
+ Hits         2885     2889       +4
+ Misses        102      101       -1

Files
Coverage Δ

.../blocks/dc-converter-widget/dc-converter-widget.js
99.03% <100.00%> (+<0.01%)
:arrow_up:

acrobat/scripts/contentSecurityPolicy/csp.js
100.00% <100.00%> (ø)

... and 1 file with indirect coverage changes
:mega: We’re building smart automated test selection to slash your CI/CD build times. Learn more


[ui] default value of "Docker version on nodes" is not selected when create cluster from RKE template.

What kind of request is this (question/bug/enhancement/feature request):
bug
Steps to reproduce (least amount of steps as possible):

create an RKE template and allow the user to override Docker version on nodes

confirm the default value is setting to true

create a new cluster by using the template.

Result:
None of the 2 options is selected.

I expected the default one should be selected.
Other details that may be helpful:
Environment information

Rancher version (rancher/rancher/rancher/server image tag or shown bottom left in the UI): 2.4.10 and 2.4.15
Installation option (single install): Docker single install

Cluster information
The issue is happened before creating the cluster.

Cluster type (Hosted/Infrastructure Provider/Custom/Imported): N/A
Machine type (cloud/VM/metal) and specifications (CPU/memory): N/A
Kubernetes version (use kubectl version): N/A
Docker version (use docker version): N/A

gz#15627

Internal reference: SURE-3517

Tested in 2.6.5 and this is no longer an issue

Test Environment:
Rancher version: v2.6-head bca5ada
Rancher cluster type: HA
Docker version: 20.10
Browser: Chrome Build 101.0.4951.67

Testing:
Tested this issue with the following steps:

Create an RKE template and allow the user to override Docker version on nodes
Confirm the default value is setting to true
Create a new cluster by using the template
Verify selection from the template is selected by default

Result
The selection from the RKE template is preserved when loading the template while creating a new cluster.


fix: macros with only 1 block argument

This patch fixes a crash where macros with a single do block argument
that were being piped into a function.
Now, the following code transformation will occur instead of a crash:
# from
foo do
  "hi"
end
|> IO.puts()

# to
IO.puts(
  foo do
    "hi"
  end
)

[x] Please sign Adobe's CLA if this is your first time contributing to an Adobe open source repo. Thanks!

any reason you prefer the macro block as a valid start vs having it lifted out like every other kind of block?

There is none, but tend to like to be able to pipe into IO.puts, IO.inspect, and dbg no matter what, so that it is easy to delete once i'm done. I'm okay with what ever you'd like, I mostly would like it to not crash haha.

i take it the example you have in the PR description raises an exception + should get thrown in tests too? :)

I hope so, i'll double check

i take it the example you have in the PR description raises an exception + should get thrown in tests too? :)

I hope so, i'll double check

It didn't, but i didn't realize that assert_style took a second argument, adding that to the test

It didn't, but i didn't realize that assert_style took a second argument

Yeah, assert_style/1 means "it doesn't change" and /2 means "it rewrites a to b". welcome to my undocumented world

thanks dude!

i added some more work to this so that it'll work with any do-block macro, no longer looking for the elixir kernel sanctioned ones ❤  but, it'll extract them all (like it does with case) rather than marking 'em valid pipe starts
(foo_result = foo do ... end; foo_result |> pipes |> ...)

commit here: https://github.com/adobe/elixir-styler/commit/483d467c15493c377847c6acaf2a6a0bf0984f73

Excellent, thanks!

(oh also, released as v0.10.0. thx for making styler much more future proof dude! it was your code that made me realize i could make it work for all do-block macros)

Woo!

(no mitch we can only communicate in parens now shh)


[REFACTOR] Unify case usage, seperators and punctuation for logging

Requirements
Flagd logs have mixed usage of uppercase and lowercase.
je.Logger.Error(fmt.Sprintf("parseFractionalEvaluationData: %v", err)) vs fs.Logger.Error(fmt.Sprintf("Error fetching after Create notification: %s", err.Error()))
This issue focuses on unifying case usage throughout the source and setting the standards for logging formats.

Prefered first letter case - lowercase
ex:- fs.Logger.Debug("configuration modified")

Prefered separator for details - :
(Note the : usage for for uri detail )
ex:- Logger.Info(fmt.Sprintf("watching filepath: %s", fs.URI))

Prefer log line end punctuation - NONE (i.e - No full stop)
ex:- fs.Logger.Info("Starting filepath sync notifier")

Hi, can I be assigned this issue

Sure, thanks @mihirm21!

Could this be merged though DCO not permitting since I am unable to sign off my commit.

plz check my PR


#1935: cache.hasFrameData ignores cache type

The cache is being heavily refactored, so I'm not sure if this PR is appropriate. Is the intent to only allow items stored in the Phaser.Cache.IMAGE portion of the cache to have frame data?
components.loadTexture suggests that getFrameData and setFrameData can take a parameter for which cache to check, eg. line 62. Is that being phased out?

Thank you for the PR, but this has been rolled into the 2.4.2 release already.


imagePullPolicy : IfNotPresent?

can you give us option to set IfNotPresent in RedisCluster YAML ?

Will be supported in the next version.


Fix snabbvmx tests

Snabbvmx conf file points to lwaftr conf file (lwaftr property) For instance:
snabbvmx-lwaftr-xe0.cfg
return {
   lwaftr = "snabbvmx-lwaftr-xe0.conf",
   ipv6_interface = {
      cache_refresh_interval = 1,
      mtu = 9500,
   },
   ipv4_interface = {
      ipv4_address = "<IP_ADDRESS>",
      cache_refresh_interval = 1,
      mtu = 1460,
   },
   settings = {
      vlan = false,
      ingress_drop_monitor = 'flush',
      ingress_drop_threshhold = 100000,
      ingress_drop_wait = 15,
      ingress_drop_interval = 1e8,
   },
}

When snabbvmx is run pointing to a conf file not in the current directory:
$ sudo ./snabb snabbvmx lwaftr --conf ./program/snabbvmx/tests/conf/snabbvmx-lwaftr-xe0.cfg --id xe0 --pci 0000:81:00.0
lwAFTR conf file 'snabbvmx-lwaftr-xe0.conf' not found

Since lwaftr points to a file in the current directory. To avoid this, if file was not found tries to open it in the location of .cfg directory.
The second patch fixes nexthop test. It got stuck but when running snabbvmx within a screen program it worked. The patch cleans up the script too to show more output (trying to connect to VM prompt) since it gave the impression the script was frozen.

Fixed issues. Updated PR.


Markdown is now correctly updated when config changes

needs a test

lgtm with the minor nit fixes and a test

To test this, you would do this:

pumpWidgets() with a tree that has some data, markdownStyle, syntaxHighlighter, and onTapLink.
verify that the tree is what you expect
grab the toStringDeep() of the entire app (similar to what debugDumpApp does)
pumpWidgets() again, with the same data, markdownStyle, syntaxHighlighter, and onTapLink.
grab the toStringDeep() of the entire app (similar to what debugDumpApp does)
verify that the two toStringDeep strings are byte-for-byte identical
pumpWidgets() again, with different data
verify that the tree is what you expect

Then, add a debugFillDescription method on _MarkdownBodyRawState that includes the following line:
description.add('cached blocks identity: ${_cachedBlock.hashCode}');

WidgetFlutterBinding.instance.renderViewElement.toStringDeep()

You should test at least that rebuilds with only a style change cause the toStringDeep to change, otherwise the test you have here is meaningless (because it would pass even if that other test failed). This test is only meaningful if the other test passes as well. It's like one is the "control test" for the other.

Added a test for just changing the style, the other changes implemented as well.

@Hixie

lgtm!