Add explicit tie-breaker in pending balance deposits sort

PR Description
Out of caution, this PR adds a thenComparing(index) call when sorting validators for pending balance deposits. See a screenshot of the relevant spec below. Because we're iterating from 0-len(vals), the current implementation should be fine but if this doesn't affect performance (which it shouldn't) I see no harm in adding this.

Documentation

[x] I thought about documentation and added the doc-change-required label to this PR if updates are required.

Changelog

[x] I thought about adding a changelog entry, and added one if I deemed necessary.

I'm not sure this won't trigger another sorting round.
The IntStream.range(0, validators.size()) already gave a sequential ordered stream as you mentioned, we could simply add a comment to make it clear.
Plus, since there is a filtering step in between, I'm almost sure that a second unnecessary sorting will be trigger anyway.
Parallelising this logic might be a good optimisation otherwise

I think this doesn't trigger an additional round, should be indistinguishable from a perf perspective IMO.
Thus I'm for the change because it makes the correct sorting criteria explicit.

I'm almost sure that a second unnecessary sorting will be trigger anyway.

Hmm I don't think so. I made this simple test. See that b isn't used in the 2nd comparison.
@Test
void tieBreakerIsNotCalled() {
  record Item(String name, int foo, int bar) {}
  final List<Item> items = new ArrayList<>();
  items.add(new Item("a", 10, 100));
  items.add(new Item("b", 20, 200));
  items.add(new Item("c", 10, 150));

  final var sorted = IntStream.range(0, items.size()).boxed().sorted(
      Comparator.comparing(
          (Integer index) -> {
            System.out.println("Comparing " + items.get(index).name + ".foo: " + items.get(index).foo);
            return items.get(index).foo;
          }).thenComparing((Integer index) -> {
        System.out.println("Comparing " + items.get(index).name + ".bar: " + items.get(index).bar);
        assertThat(items.get(index).name).isNotEqualTo("b");
        return items.get(index).bar;
      }));

  sorted.forEach(System.out::println);
}

Parallelising this logic might be a good optimisation otherwise

Yes, this is good idea. But it will need the thenComparing call for that. Because with parallel streams, the sorted() operation does not guarantee that elements with equal sort keys will retain their original order.

About the parallelism argument, we do parallel stream only in one case, (IIRC to go through all validators). To make it profitable you need to have a lot of elements to stream, otherwise you're just adding thread coordination overhead.
I don't think in this case we will have a deposit queue large enough to actually get some benefits.


REST API tutorial for this module

Hello!
Thanks a lot for this module - it helps with user-related features of web application a lot indeed.
But could you advise on the plans of REST API support for yii2-user to improve opportunities for mobile applications development as well? Under issue #114 I found that you planned to add it quite long time ago but it still doesn't seem to be implemented.
Is there any chance we can see it in any of the nearest releases?

Unfortunately, I don't think there will be any implementation of REST API support for Yii2-user in the nearest future. However you are very welcome to implement it yourself and then send a pull-request ;)


Fixed example for function definiton

The example code did not actually conform to the following rules:

auto return type
trailing return type syntax
newline after oc-token
closing oc-token on new line

Furthermore:

the function returns a const int. AFAIK there is no defined semantic
for const-qualifiers in the return-type. This only adds noise and produces
warnings. Was removed.
if there should be a const-qualifier for a METHOD, this should come
after the   oc-token ), as in the example 5 lines above? But
probably no const-qualifier, since the method is static and const
is not really useful here because we don't have an object instance.
the function takes a const-reference as argument and then casually
increments it. This will not compile.

thanks for fixing and the description!


Feature request - friendlier API for calling operations

I've written a wrapper for working with pyswagger that makes it easier to call operations. Maybe someday you can include some of this to make calling a simple operation a bit easier. It has a lot of magic in it (the exec is ugly, I know), but it's the best way I could find to get functions with the right signature.
import functools
from pyswagger import SwaggerApp, SwaggerSecurity
from pyswagger.contrib.client.requests import Client

OP_FUNC = '''def op_func(client, op, override_url, {}):
    kwargs = locals()
    del kwargs['client']
    del kwargs['op']
    del kwargs['override_url']

    return client.request(
        op(**kwargs),
        opt={{'url_netloc': override_url}},
    )'''

class SwaggerWrapper(object):
    def __init__(self, swagger_path, oauth_token='', override_url=''):
        self.app = SwaggerApp._create_(swagger_path)

        if oauth_token:
            auth = SwaggerSecurity(self.app)
            auth.update_with('api_token', oauth_token)
            self.client = Client(auth)
        else:
            self.client = Client()

        self.override_url = override_url

        for op in self.app.op.values():
            exec(OP_FUNC.format(', '.join(p.name for p in op.parameters)))

            op_func = functools.partial(op_func, self.client, op, self.override_url)

            op_func.__name__ = op.operationId
            op_func.__doc__ = op.description
            setattr(self, op.operationId, op_func)

It's made just for my use case (single API token), but having the function signature be based off of the docs is helpful. It also has the docstring on it based off of the description from the swagger document (I  suppose I should also have it fall back to summary if description is missing).
In the example below I can just call c.post_import(some_data=data) and it returns the response. I find this a lot easier than calling the operation to get the request/response tuple, and then calling client.
In [1]: from swagger_wrapper import SwaggerWrapper
In [2]: c = SwaggerWrapper('http://swagger.dev.mysite.com/v1.yaml', 'mytoken123', 'my.local.instance:8003')

In [3]: c.post_import?
Type:            partial
String form:     <functools.partial object at 0x111d2be68>
File:            ~/.pyenv/versions/2.7.10/lib/python2.7/functools.py
Signature:       c.post_import(import_definition, property_id)
Docstring:
This is the description of the operation from the swagger doc.
Class docstring:
partial(func, *args, **keywords) - new function with partial application
of the given arguments and keywords.

Also, some problems with my current implementation:

The 'Class docstring' in ipython for partials
If you call the function incorrectly, you get an unhelpful error for 'op_func' instead of the actual operation name

Hi,
I just checked your code and felt surprised by the usage of exec, it's magic.
Right now the design of pyswagger focus on correctness first, then is usage friendly. In your case, the code might not work when operationId is not assigned (it's an optional field of Operation object)
for op in self.app.op.values():

I will suggest you to try to create a scanner to collect Operation objects to your dict, indexed by any mean your like. Refer to this issue, an example implementation is there.


DOCS Add reference in performance -> profiling to SilverStripe DebugBar module

Add a short section referencing the SilverStripe DebugBar to the "Performance -> Profiling" section of the 3.x dev docs.

I realise this module may be useful, but I'm not sure if we should adopt the practice of linking to helpful third party modules. Adding coupling to third party modules increases the maintenance burden of our own docs, and isn't really the goal of the documentation.
As an alternative, could we not link to addons with a search time like http://addons.silverstripe.org/add-ons?search=logging+debug&type=module?

@tractorcow good point re: doc rot. This module will become a "supported dependency" via our team - does that change anything?

We'll just put this into the CWP docs, since the intention is that it'll become part of the dev recipe which makes it more relevant there. Thanks @tractorcow!


chore: add tests serve functionality

chore: add test for serve
chore: remove unneeded await

Closes https://github.com/netlify/pod-compute/issues/103.

Looks good, looks like the Windows tests are failing in the most vague way possible, though

Looks good, looks like the Windows tests are failing in the most vague way possible, though

I think that's unrelated to this PR, see https://netlify.slack.com/archives/C0359548J07/p1663067013856019


Spawn Wither and Break the End Crystal will show some errors

And when get into the End world. Break the End Crystal will show some errors
https://paste.ubuntu.com/p/NMFCXG8qb8/
When Wither spawn, it will show the some error message(but a little different)
https://paste.ubuntu.com/p/snYqCp9G75/
(All test in an official forge server)

The pastes are showing 404s.


Re-alignment of Koji proxy repos in case Brew builds get moved into volumes

One thing to mention is the way I tested it. The test is RepairKojiRepositoryTest. It is an external unit test and ignored by default. To run this test, we will start an Indy instance with correct Koji.conf. This INdy will access a real Koji instance.
To repair, we input either a remote repo or a group. In case of a group, all repos in it will be scanned and repaired.
Here is a sample input/output of repair.
request
{
"source" : "maven:remote:koji-org.dashbuilder-dashbuilder-parent-metadata-0.4.0.Final_redhat_10-1",
"dryRun" : true
}
response
{
"request" :
{
"source" : "maven:remote:koji-org.dashbuilder-dashbuilder-parent-metadata-0.4.0.Final_redhat_10-1",
"dryRun" : true
},
"results" :
[
{
"storeKey" : "maven:remote:koji-org.dashbuilder-dashbuilder-parent-metadata-0.4.0.Final_redhat_10-1",
"changes" : [
{
"name" : "url",
"originalValue" : "http://download.eng.bos.redhat.com/brewroot/packages/org.dashbuilder-dashbuilder-parent-metadata/0.4.0.Final_redhat_10/1/maven",
"value" : "http://download.eng.bos.redhat.com/brewroot/vol/01/packages/org.dashbuilder-dashbuilder-parent-metadata/0.4.0.Final_redhat_10/1/maven",
"changed" : true
}
],
"ignored" : false,
"changed" : true
}
]
}

retest this please

retest this please

@ruhan1 Can we capture the external test case in a maven build in commonjava/indy-integration-tests?

Update commented items in PR https://github.com/Commonjava/indy/pull/919


Button Utilities

One thing that could be pretty useful is an extension that interacts with the buttons of a project (green flag, stop, pause, fullscreen).
I've made mockups of some of the blocks I'd like to see from this extension.

I'm going to try and add most of these in ShovelUtils since it already has the Green Flag block.

Yeah, there is already a block like that in a couple of extensions. It just fit the theme well enough not to include.

Perhaps this can also be included in the "interface"
https://github.com/TurboWarp/extensions/issues/367#issuecomment-1528724856

a block that locks you into fullscreen when the project is packaged would be good

this can be useful.

pause blocks wouldnt be possible (if it means the pause button that the addon adds to the bar) because it doesnt allow any code to run while paused
allowing the pause blocks to be excused from that pause would make it so games can ignore the pause button & would probably annoy the user

Yeah but it'd make pause menus easier to make

Yeah but it'd make pause menus easier to make

I'd say for pause menus, a "deactivate/activate sprite ()" block would be better.

Control Controls did most of this


Update can_i_download_a_public_image_to_my_local_pc.rst

edited the statement

recheck

obsolete as there was #74 merged with more correct statement


Fix project's noxfile sessions definition

Fixes an error in the project's own noxfile.py where the blacken session was explicitly
listed in nox.options.sessions but no longer exists due to being replaced by the pre-commit checks introduced in #530.
Without this fix, just running nox will result in the following:

Weird! The lint job has failed on the checkout code step, not seen that before

I'll try re-running it

Weird! The lint job has failed on the first step, not seen that before

I've been seeing this today in unrelated repositories, so this should not be caused by recent changes in our CI.


Can NPM ignore nginx: [emerg] host not found in upstream error?

Checklist

Have you pulled and found the error with jc21/nginx-proxy-manager:latest docker image?

Yes

Are you sure you're not using someone else's docker image?

Yes

Have you searched for similar issues (both open and closed)?

Yes

Describe the bug

Nginx Proxy Manager Version

NPM shows error at container up and won't start.
To Reproduce
Steps to reproduce the behavior:

back up docker compose directory data with autorestic
restore the exact same files with autorestic
restart npm
error log
This is the errored line:

    proxy_pass       http://nextcloud:80/remote.php/dav;

Expected behavior

Just start right up, same container and host machine.
Screenshots
no
Operating System
ubuntu 20.04
Additional context
latest pulled docker version.
~/npm$ sudo docker compose pull
[+] Running 1/1
 ⠿ app Pulled

 "NPM_BUILD_VERSION=2.9.18",

compose file:
version: '3'
services:
  app:
    image: 'jc21/nginx-proxy-manager:latest'
    restart: unless-stopped
    ports:
      - '80:80'
      - '443:443'
      #- '81:81'
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    container_name: npm

My current solution is to bomb the whole data folder and manually add back each domain, but that is a huge hassle, why doesn't the exact same data directory work?
EDIT:
Once I removed that conf file, the next conf files just continues to show the same error.

Ok, so problem is that the proxy hosts have sub directories, and those are directing to hosts that are not up at that point yet. What would be a way for nginx to wait for other docker npm to just ignore the fact that they are not resolvable and just get up?

Solution: use the ip address of the container so npm won't have to resolve domain names.

Ok, so problem is that the proxy hosts have sub directories, and those are directing to hosts that are not up at that point yet. What would be a way for nginx to wait for other docker npm to just ignore the fact that they are not resolvable and just get up?

Also ran into this. I didn't connect what exactly sub directories meant here. For others running into this issue, if you have any Custom locations or sub directories that point to a host that is down (for me it was stopped docker container on shared internal npm network) this error will occur.
It's weird that npm/nginx has no issue starting up if a host is down without custom locations. I'm not sure what makes it a required dependency only as a custom location.
One workaround I did was to stop npm, edit the conf file to point to a container host that was running, and then restart.

@eddywashere
Very clever solution, never thought I would ever had to use information in those lines of text.
Would you mind to show me how you defined the $server variable though? Is it in the text box under Advanced?
I am imagining something like this:
$server = nextcloud

@Horuyuki those 3 variables including $server in the screenshot are tied to the settings of the proxy host (set in the Details tab). So reusing $server is only helpful if it happens to be the same hostname you need to reference in the custom location.
If you need to define another hostname variable to reference in custom location(s), you do need to set it in the Advanced tab when editing Proxy Host and add something like set $custom_server nextcloud2;
You have to do it that way due to the render ordering of the conf template here https://github.com/NginxProxyManager/nginx-proxy-manager/blob/4db34f5894a2eb86e99683d52e9b7a859dd206a8/backend/templates/proxy_host.conf#L25

Solution: use the ip address of the container so npm won't have to resolve domain names.

There is a problem with this solution. Docker uses dynamic ip addresses for containers and discourages using static ones.

I came across this issue. I've raised a PR which I believe fixes the issue:
https://github.com/NginxProxyManager/nginx-proxy-manager/pull/2672
If anyone on this thread can test my fix, that would be really helpful.

@denppa Could this issues please be reopened or the #2672  being considered for review, since still lot's of people seem to have troubles with it.


Sim Settlements Industrial Revolution Conflicts with Magazine location

The location of the magazine conflicts with sim settlements (or its addon industrial revolution can't remember which) as it adds a beer and recipe to the same spot.
Just so you know

Heres a screenshot of the original too.

Moved perk magazine to BeaconHillPub, confirmed compatible with Sim Settlements and its expansions by kinggath himself and my own playtesting.
https://github.com/Scrivener07/FO4_Games/commit/5bdd898149b27da925bf59359ef63dc0240ca1ef

Excellent.


configuration of the signal server?

Are there any configuration requirements for the signal server? Is this compatible with simple peer? When I use the signal server from a browser I do not see the standard SDP that I expect for WebRTC!!!

Did you read through the readmes of the submodules already?

yes...no clear client level api. it is written like the docker image pre-configures everything; and I assume it does. But then where is the api for getting and giving peer details? example: do I access the singalserver using a URL scheme like "?room=some_room" or a subdirectory query like "{signalserver}/this_is_my_room_name"? ...or is it something completely different? please explain.

There is no Docker image in this stack. Signalhub is for relaying signaling messages from simple-peer. Regarding the scheme you can take a look here: https://github.com/mafintosh/signalhub/blob/master/index.js#L110

Thanks


[XSLT converter] xslt-with-param does not work

The XSLT converter xslt-with-param does not work on freme-dev and freme-live.  This CURL
curl -X POST -H "Content-Type: text/xml" -H "Cache-Control: no-cache" -H "Postman-Token: 3b4f7b6c-33e6-9506-5a36-7381d5167652" -d '<?xml version="1.0"?>
<note>
    <to>Tove</to>
    <from>Jani</from>
    <heading>Reminder</heading>
    <body>Dont forget me this weekend!</body>
</note>' "http://api-dev.freme-project.eu/current/toolbox/xslt-converter/documents/xslt-with-param?myparam=TEST"

produces
<?xml version="1.0" encoding="UTF-8"?>TEST

I think it works fine. When you have a look at the converter, just the value of the parameter 'myparam' is printed, which can be set when the user submits a value for it, otherwise it defaults to 'set internally'. In general, this converter was just created to have a (very) simple example to demonstrate the usage of parametrized converters. Perhaps it should be replaced by sth more meaningful.

oh cool. so it is not a bug but a feature. thanks @ArneBinder  :)


infrence the python demo was wrong!!!!

the infrence code :
from groundingdino.util.inference import load_model, load_image, predict, annotate
import cv2
model = load_model("groundingdino/config/GroundingDINO_SwinT_OGC.py", "weights/groundingdino_swint_ogc.pth")
IMAGE_PATH = "0.jpg"
TEXT_PROMPT = "cat"
BOX_TRESHOLD = 0.35
TEXT_TRESHOLD = 0.25
image_source, image = load_image(IMAGE_PATH)
boxes, logits, phrases = predict(
model=model,
image=image,
caption=TEXT_PROMPT,
box_threshold=BOX_TRESHOLD,
text_threshold=TEXT_TRESHOLD
)
annotated_frame = annotate(image_source=image_source, boxes=boxes, logits=logits, phrases=phrases)
cv2.imwrite("annotated_image.jpg", annotated_frame)
can't laod model line. the wrong is show :
OSError: We couldn't connect to 'https://huggingface.co' to load this file, couldn't find it in the cached files and it looks like bert-base-uncased is not the path to a directory containing a file named config.json.
Checkout your internet connection or see how to run the library in offline mode at 'https://huggingface.co/docs/transformers/installation#offline-mode'.
how to selvo this problem????  anyone can help me

This is because the Bert encoder still needs to be downloaded from huggingface. You may download it on Link and put those files into ~/.cache/huggingface/hub/models--bert-base-uncased/

I solved it by downloading the files specified above and change text_encoder_type in https://github.com/IDEA-Research/GroundingDINO/blob/60d796825e1266e56f7e4e9e00e88de662b67bd3/groundingdino/models/GroundingDINO/groundingdino.py#L107-L108 to the path of downloaded files.

I solved it by downloading the files specified above and change text_encoder_type in
https://github.com/IDEA-Research/GroundingDINO/blob/60d796825e1266e56f7e4e9e00e88de662b67bd3/groundingdino/models/GroundingDINO/groundingdino.py#L107-L108
to the path of downloaded files.

you means replace 'text_encoder_type' with downloaded files. but What exactly is it.
self.tokenizer = get_tokenlizer.get_tokenlizer('')
self.bert = get_tokenlizer.get_pretrained_language_model('')
What should I write in parentheses???

Download the files and save them to a local folder; then put in parentheses the path of the folder.

Download the files and save them to a local folder; then put in parentheses the path of the folder.

I solved this pbl.thanks..谢谢大老表

Download the files and save them to a local folder; then put in parentheses the path of the folder.

when i down all the files, and put in parentheses the path of the folder:
ValueError: Tokenizer class QWenTokenizer does not exist or is not currently imported

Download the files and save them to a local folder; then put in parentheses the path of the folder.

when i down all the files, and put in parentheses the path of the folder: @xjtupanda @sssssshf
ValueError: Tokenizer class QWenTokenizer does not exist or is not currently imported

I guess this method only works for the official implementation. Since you're using another tokenizer, rather than the 'bert-base-uncased', you may need to figure out how to adapt.

Download the files and save them to a local folder; then put in parentheses the path of the folder.

I solved this pbl.thanks..谢谢大老表

halo, can u explain how you solve this pbl in detail? thanks!!!

Download the files and save them to a local folder; then put in parentheses the path of the folder.

I solved this pbl.thanks..谢谢大老表

halo, can u explain how you solve this pbl in detail? thanks!!!

like this

Download the files and save them to a local folder; then put in parentheses the path of the folder.

I solved this pbl.thanks..谢谢大老表

halo, can u explain how you solve this pbl in detail? thanks!!!

 like this

thanks! But I do this then got the problem as below? Do you know why?
(GroundDINO3.8) ubuntu@SYS-7049GP:~/jyh/Gounding_DINO/GroundingDINO$ python demo/inference_on_a_image.py -c groundingdino/config/GroundingDINO_SwinT_OGC.py -p weights/groundingdino_swint_ogc.pth -i .asset/cat_dog.jpeg -o 'output' -t 'chair'
/home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/torch/functional.py:568: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at  ../aten/src/ATen/native/TensorShape.cpp:2228.)
return _VF.meshgrid(tensors, **kwargs)  # type: ignore[attr-defined]
final text_encoder_type: /home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased
Traceback (most recent call last):
File "demo/inference_on_a_image.py", line 201, in
model = load_model(config_file, checkpoint_path, cpu_only=args.cpu_only)
File "demo/inference_on_a_image.py", line 81, in load_model
model = build_model(args)
File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/init.py", line 17, in build_model
model = build_func(args)
File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/GroundingDINO/groundingdino.py", line 394, in build_groundingdino
model = GroundingDINO(
File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/GroundingDINO/groundingdino.py", line 113, in init
self.bert = get_tokenlizer.get_pretrained_language_model("/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased")
File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/util/get_tokenlizer.py", line 25, in get_pretrained_language_model
return BertModel.from_pretrained(text_encoder_type)
File "/home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/transformers/modeling_utils.py", line 3019, in from_pretrained
state_dict = load_state_dict(resolved_archive_file)
File "/home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/transformers/modeling_utils.py", line 463, in load_state_dict
with safe_open(checkpoint_file, framework="pt") as f:
safetensors_rust.SafetensorError: Error while deserializing header: MetadataIncompleteBuffer

Download the files and save them to a local folder; then put in parentheses the path of the folder.

I solved this pbl.thanks..谢谢大老表

halo, can u explain how you solve this pbl in detail? thanks!!!

 like this

thanks! But I do this then got the problem as below? Do you know why?
(GroundDINO3.8) ubuntu@SYS-7049GP:~/jyh/Gounding_DINO/GroundingDINO$ python demo/inference_on_a_image.py -c groundingdino/config/GroundingDINO_SwinT_OGC.py -p weights/groundingdino_swint_ogc.pth -i .asset/cat_dog.jpeg -o 'output' -t 'chair' /home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/torch/functional.py:568: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at ../aten/src/ATen/native/TensorShape.cpp:2228.) return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined] final text_encoder_type: /home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased Traceback (most recent call last): File "demo/inference_on_a_image.py", line 201, in model = load_model(config_file, checkpoint_path, cpu_only=args.cpu_only) File "demo/inference_on_a_image.py", line 81, in load_model model = build_model(args) File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/init.py", line 17, in build_model model = build_func(args) File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/GroundingDINO/groundingdino.py", line 394, in build_groundingdino model = GroundingDINO( File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/GroundingDINO/groundingdino.py", line 113, in init self.bert = get_tokenlizer.get_pretrained_language_model("/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased") File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/util/get_tokenlizer.py", line 25, in get_pretrained_language_model return BertModel.from_pretrained(text_encoder_type) File "/home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/transformers/modeling_utils.py", line 3019, in from_pretrained state_dict = load_state_dict(resolved_archive_file) File "/home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/transformers/modeling_utils.py", line 463, in load_state_dict with safe_open(checkpoint_file, framework="pt") as f: safetensors_rust.SafetensorError: Error while deserializing header: MetadataIncompleteBuffer

I have solved this problem by re-downloading the file below and use scp to my host path "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased". Then its ok.

Download the files and save them to a local folder; then put in parentheses the path of the folder.

I solved this pbl.thanks..谢谢大老表

halo, can u explain how you solve this pbl in detail? thanks!!!

 like this

thanks! But I do this then got the problem as below? Do you know why?
(GroundDINO3.8) ubuntu@SYS-7049GP:~/jyh/Gounding_DINO/GroundingDINO$ python demo/inference_on_a_image.py -c groundingdino/config/GroundingDINO_SwinT_OGC.py -p weights/groundingdino_swint_ogc.pth -i .asset/cat_dog.jpeg -o 'output' -t 'chair' /home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/torch/functional.py:568: UserWarning: torch.meshgrid: in an upcoming release, it will be required to pass the indexing argument. (Triggered internally at ../aten/src/ATen/native/TensorShape.cpp:2228.) return _VF.meshgrid(tensors, **kwargs) # type: ignore[attr-defined] final text_encoder_type: /home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased Traceback (most recent call last): File "demo/inference_on_a_image.py", line 201, in model = load_model(config_file, checkpoint_path, cpu_only=args.cpu_only) File "demo/inference_on_a_image.py", line 81, in load_model model = build_model(args) File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/init.py", line 17, in build_model model = build_func(args) File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/GroundingDINO/groundingdino.py", line 394, in build_groundingdino model = GroundingDINO( File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/models/GroundingDINO/groundingdino.py", line 113, in init self.bert = get_tokenlizer.get_pretrained_language_model("/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased") File "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/groundingdino/util/get_tokenlizer.py", line 25, in get_pretrained_language_model return BertModel.from_pretrained(text_encoder_type) File "/home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/transformers/modeling_utils.py", line 3019, in from_pretrained state_dict = load_state_dict(resolved_archive_file) File "/home/ubuntu/anaconda3/envs/GroundDINO3.8/lib/python3.8/site-packages/transformers/modeling_utils.py", line 463, in load_state_dict with safe_open(checkpoint_file, framework="pt") as f: safetensors_rust.SafetensorError: Error while deserializing header: MetadataIncompleteBuffer

I have solved this problem by re-downloading the file below and use scp to my host path "/home/ubuntu/jyh/Gounding_DINO/GroundingDINO/.cache/huggingface/hub/models--bert-base-uncased". Then its ok.

May I ask if Should I download the entire code repository, or is it sufficient to download only the files you've marked?

download https://huggingface.co/google-bert/bert-base-uncased, and save them in a LOCAL-FOLDER.
then set value of "text_encoder_type=LOCAL-FOLDER" in file "groundingdino/config/GroundingDINO_SwinT_OGC.py".

be sure to use absolute path

@sssssshf do u know dowdload what files? all of them? and can i place it in other place instead of ~/.cache/huggingface/hub/models--bert-base-uncased/


abusehelper.core.roomgraph: Simplify subprocess communication

This pull request simplifies how abusehelper.core.roomgraph's multiprocess communication gets set up and used.
Previously the spawned subprocesses connected to a unix domain socket opened by the main process and performed a handshake. Now we just create a socket pair per subprocess and deliver one end of a pair to each subprocess (by hooking up the connection to the subprocess stdin and wrapping fd 0 with socket.fromfd).
The subprocess main loop gets more straightforward too. As there is no need to concurrency in the subprocesses we can skip using idiokit and avoid its overhead. This seems to save a noticeable amount of CPU cycles when listening busy rooms.
As these changes use the idiokit.socket.socketpair functionality the idiokit also gets bumped to version >=2.5.0 (up from >=2.4.0).

Looks great.

Added this pull request to CHANGELOG.md.


Virtual Network Data Gateways & PPU Licensing

Hi,
This documentation mentions that Virtual Network data gateways are only available in Power BI Premium and Premium Per User (PPU) workspaces.

Is this correct based on the below screenshot? In this scenario the user has a 'Premium Per User' license but they are unable to use the VNET Gateway I have configured for them.

Lastly, this may not be correct forum but is there any timeline on when this feature will be GA'd and therefore available to more licensing arrangements? This limitation is preventing us from removing public IPs of our data infrastructure.
Regards,
James

Thanks for your question @jamesdbxt. This was updated in PR https://github.com/MicrosoftDocs/data-integration-pr/pull/515 to reflect that PPU licensing no longer supports VNet since the public preview ended. #please-close


Enabling alternative controller rest API classes in preprocess

Adding ability to override ControllerRestAPI in custom implementations of SegmentPreprocessingJob

Codecov Report

Merging #4646 into master will decrease coverage by 0.07%.
The diff coverage is n/a.

@@             Coverage Diff              @@
##             master    #4646      +/-   ##
============================================
- Coverage     64.55%   64.47%   -0.08%
  Complexity       32       32
============================================
  Files          1076     1076
  Lines         56080    56080
  Branches       8189     8189
============================================
- Hits          36204    36160      -44
- Misses        17211    17266      +55
+ Partials       2665     2654      -11

Impacted Files
Coverage Δ
Complexity Δ

...ller/validation/OfflineSegmentIntervalChecker.java
32.05% <0%> (-52.57%)
0% <0%> (ø)

...apache/pinot/common/metrics/ValidationMetrics.java
41.09% <0%> (-34.25%)
0% <0%> (ø)

...elix/core/relocation/RealtimeSegmentRelocator.java
35% <0%> (-10%)
0% <0%> (ø)

...he/pinot/controller/util/SegmentIntervalUtils.java
0% <0%> (-7.15%)
0% <0%> (ø)

...e/impl/dictionary/LongOnHeapMutableDictionary.java
82.6% <0%> (-6.53%)
0% <0%> (ø)

...impl/dictionary/FloatOffHeapMutableDictionary.java
87.5% <0%> (-1.79%)
0% <0%> (ø)

...r/validation/RealtimeSegmentValidationManager.java
81.96% <0%> (-1.64%)
0% <0%> (ø)

...rEqualitiesToInClauseFilterQueryTreeOptimizer.java
93.33% <0%> (-1.34%)
0% <0%> (ø)

...ache/pinot/common/metadata/ZKMetadataProvider.java
67.41% <0%> (-1.13%)
0% <0%> (ø)

.../broker/routing/HelixExternalViewBasedRouting.java
90.03% <0%> (-0.94%)
0% <0%> (ø)

... and 18 more

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 09d3735...7a1a5aa. Read the comment docs.


rootful real part 1

main.c:25:10: fatal error: 'libimobiledevice/libimobiledevice.h' file not found
I got that error

join the discord and stop commenting on commits for the love of god

ask in https://discord.gg/palera1n, we don't do issues here


chore: improve integration tests

Feedbacks on integration tests
When I first started to work on integration tests, I didn't know there was the great
prqlc/prql-compiler/tests/integration/dbs/README.md file that explains clearly how to run those tests.
I first had an issue by running
cargo nextest run --all-targets -F "test-dbs,test-dbs-external

and got bitten by the "it doesn't handle multiple processes"
Fortunately I saw the message
# test-dbs runs database setup when the connection is established,
# and because nextest runs test in separate processes, this happens on every test.
# To prevent mutliple setups running at once, we set max-threads to 1.

in nextest.toml and managed to run them properly
I also had issues with just starting the mssql container but this is due to my M1 and I found this issue that was already
linked in the docker-compose (https://github.com/microsoft/mssql-docker/issues/668#issuecomment-1436802153)
Thank you for that!
Once MSSQL was up and running, I thought everything would work. I was wrong 😬
The first time I run the test I got a timeout on the MSSQL server
test queries::results::aggregation has been running for over 60 seconds
.test queries::results::aggregation ... FAILED

failures:

---- queries::results::aggregation stdout ----
thread 'queries::results::aggregation' panicked at 'called `Result::unwrap()` on an `Err` value: Tls("connection closed via error")', prqlc/prql-compiler/tests/integration/dbs/protocol/mssql.rs:32:18

I also got once the error
thread 'queries::results::aggregation' panicked at 'Failed to insert row: no such table: albums.my

Caused by:
    Error code 1: SQL error or missing database

I don't remember if I stopped a test during execution or whatever but I had to dig a bit in the code
that it's just a side effect of the MySQL test that copies the csv files into xyz.my.csv.
And since they are git ignored, you don't see anything in a git status.
Anyway easy fix:
find . -type f -name '*.my.csv' -delete

So how do we fix the MSSQL timeout error?
It appears there is an issue with the TLS handshake on M1 (see https://github.com/prisma/tiberius/issues/65)
I propose the switch to rustls since it doesn't require headers or runtime libraries.
(it conflicts with async_native_tls and is in the default features henece the need to deactive
those: see https://github.com/prisma/tiberius/issues/317)
And when I went with this approach the handshake was done! Great so it works finally!!!
OR NOT
error[E0277]: the trait bound `BigDecimal: tiberius::FromSql<'_>` is not satisfied
   --> prqlc/prql-compiler/tests/integration/dbs/protocol/mssql.rs:64:48
    |
64  | ...                   .get::<BigDecimal, usize>(i)
    |                                          ^^^^^ the trait `tiberius::FromSql<'_>` is not implemented for `BigDecimal`
    |
    = help: the following other types implement trait `tiberius::FromSql<'a>`:
              bool
              i16
              i32
              i64
              u8
              f32
              f64
              Uuid
            and 5 others
note: required by a bound in `tiberius::Row::get`
   --> /Users/ericjolibois/.cargo/registry/src/index.crates.io-6f17d22bba15001f/tiberius-0.12.2/src/row.rs:375:12
    |
373 |     pub fn get<'a, R, I>(&'a self, idx: I) -> Option<R>
    |            --- required by a bound in this associated function
374 |     where
375 |         R: FromSql<'a>,
    |            ^^^^^^^^^^^ required by this bound in `Row::get`

For more information about this error, try `rustc --explain E0277`.
error: could not compile `prql-compiler` (test "integration") due to previous error

Ahhhh right! By setting default-features = false, I forgot to add tds73 which is also enabled by default
Annnnnnd TADA!
Improvements
When you run a test and see
test queries::compile::math ... ok

you don't know which dialects have been tested
And with a little dbg!() macro you see that MSSQL is not tested by default!
[prqlc/prql-compiler/tests/integration/queries.rs:164] test_name = "math"
[prqlc/prql-compiler/tests/integration/queries.rs:164] dialect = DuckDb
[prqlc/prql-compiler/tests/integration/queries.rs:164] test_name = "math"
[prqlc/prql-compiler/tests/integration/queries.rs:164] dialect = Postgres
[prqlc/prql-compiler/tests/integration/queries.rs:164] test_name = "math"
[prqlc/prql-compiler/tests/integration/queries.rs:164] dialect = MySql
[prqlc/prql-compiler/tests/integration/queries.rs:164] test_name = "math"
[prqlc/prql-compiler/tests/integration/queries.rs:164] dialect = ClickHouse
[prqlc/prql-compiler/tests/integration/queries.rs:164] test_name = "math"
[prqlc/prql-compiler/tests/integration/queries.rs:164] dialect = GlareDb

So you NEED to add # mssql:test on top of the file to run it. That's weird compared to the others...
I think we need to change that
And the second point is just to improve/update a bit the documentation

So I would go with those changes in this PR if you're ok with it

[x] make integration tests pass on M1 (for that I would like to know if it doesn't break anything for tests on Linux)
~[ ] run mssql tests by default~ I feel like it's more a question of "What's missing for the SupportLevel be Supported ?"
[x] improve documentation

@max-sixty Here you go 😄


initial work on multipart requests, issue #8

Here is the initial work for performing multipart post requests. added to the API are:
func (c *Collector) PostMultipartRaw(URL string, requestData map[string][]byte) error
func (r *Request) PostMultipartRaw(URL string, requestData map[string][]byte) error

Internally, scrape was modified to support custom headers and a helper function for fomatting the multipart request body was also added.
An example can be found in examples/multipart.go

Good PR, thanks!
Wouldn't be simply PostMultipart a better name instead of PostMultipartRaw? What is the meaning of "raw" here?

I used raw to follow the precedent set by the PostRaw method where the payload is a []byte as opposed to a string.  I'm not too attached to it though.

PostRaw is raw because it receives "raw" data and not a structured one. PostMultipart(Raw)'s parameter is a key-value data structure which is not "raw" to me. ..And PostMultipart is shorter =)

No problem, will make that change right now


Incorrect parameter values for deploymentMode

The documentation lists the possible values for deploymentMode as Incremental, Complete, and Validate. The functionality of these are described accurately, except 'Validate' should be 'Validation'. Unfortunately unknown values (like 'Validate') are ignored by the task and the default of Incremental applies, meaning anyone who follows this documentation will immediately deploy whatever they are attempting to validate assuming the validation succeeds, possibly overwriting production infrastructure (ask me how I know)..

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

ID: a59ea95e-b51a-e529-37a8-215e383c9a0b
Version Independent ID: f1afdb0e-f090-3193-9bb8-ce5952016768
Content: Azure Resource Group Deployment task - Azure Pipelines
Content Source: docs/pipelines/tasks/deploy/azure-resource-group-deployment.md
Product: devops
Technology: devops-cicd-tasks
GitHub Login: @RoopeshNair
Microsoft Alias: ronai

Thanks for letting us know. This issue is fixed in our new task reference, which is generated using the task source code and includes all task inputs, including any aliases here:
https://learn.microsoft.com/en-us/azure/devops/pipelines/tasks/reference/azure-resource-group-deployment-v2?view=azure-pipelines
Please check it out and let us know what you think. Thank you.


Add Windows Support

Coming from https://github.com/opensearch-project/opensearch-plugins/issues/95, add Windows support.

[ ] Passing CI on Windows
[ ] opensearch-project/documentation-website#1714
[ ] https://github.com/opensearch-project/security/issues/1476
[ ] #2232

BWC tests are not running on windows, added a new task and reopenning


[RUN]<EMAIL_ADDRESS>postinstall: 'bower install' causes error

This occurs if bower is not installed on the users system and should be mentioned in the installation file

I'm encountering the same issue. I then installed bower via npm but still getting errors at that point.

Are you working on windows? could you enter the exact error message here? Did you install bower globally like "npm install -g bower" or locally?

I am indeed working on windows and installed bower globally. Unfortunately, I didn't save the error msg and it was on the PC at work so I can't tell you right now :/


showMultiDayTimes rendering wrong - top and height aren't set

I have an event that goes from Fri 15/12 10:00pm to Sat 16/12 at 3:00am. I did showMultiDayTimes={true} and this is how it's rendering:

Could you see if this was fixed by https://github.com/intljusticemission/react-big-calendar/pull/677? :)

seems fixed to me


check pnginfo for some cases

some extensions save_image() before/after image processing without proper pnginfo["parameters"] setted.
this fix checks some cases.

Is this different to simply catching a AttributeErrors and KeyErrors?

Is this different to simply catching a AttributeErrors and KeyErrors?

It is simply a matter of taste I guess. my suggestion is simply ignore any images without parameters info. (BTW this issue encouraged me to fix that extension issue.)


Adjust uglify settings

https://github.com/substack/bundle-collapser

Couldn't produce a smaller build after trying many other methods.


provide alternative to Font::glyph_id for specifying glyphs for whom no char exists

i would like to use ab-glyph with a font-shaping library, like harfbuzz.
ab-glyph is great for writing-systems with nice char->glyph mappings, but many writing systems have glyphs that are effected by the surrounding text or glyphs that are composed of multiple char.
if there was some way of feeding a glyph id as an integer value, i could ask my font-shaping library what glyph i need, and ab-glyph could render it for me.

If you know the integer id you don't need to call Font::glyph_id, you can construct directly
GlyphId(123).with_scale(48.0)

thanks!


#Production Build Error

When i have tried to make a production build I am getting below Error :
ERROR in src/app/config.service.ts(21,24): error TS2339: Property 'apiUrl' does not exist on type '{ production: boolean; }'.
src/app/config.service.ts(22,26): error TS2339: Property 'emailUrl' does not exist on type '{ production: boolean; }'.

please verify if you have environment .prod.ts file under src->environment folder
and this file contains the variables mentioned in the list


node: command not found [iOS]

I've been trying to track down a way to reliably inject an environment variable or update PATH used by xcodebuild when kicking off phasescriptexecution for LiquidCore.
It appears the root cause of my problems are that I'm using nvm and so my node bins are not global. I was trying to figure out a more elegant solution, i.e. specifying NODE_BIN or NODE_BIN_PATH etc as a user defined environment variable in build settings (in particular those appear to be ignored when building modules) or the like but keep hitting walls.
I'm mostly creating this issue for posterity and for any other poor souls down the line as it seems the ideas I was exploring might not even be possible at the moment according to a related thread.
Anyway, I suppose I'll just give up for now and add a symlink in /usr/local/bin.

Interesting.  I am also using nvm and it never occurred to me that the build script is ignoring that.
This is the only place that it matters, though, no?  You could change the line to:
s.script_phase = { :name => 'Bundle JavaScript Files', :script => '(cd ..; nvm use 10.15.3; node node_modules/liquidcore/lib/cli.js bundle --platform=ios)' }

Including the nvm use xxx line should do what you want but I haven't tried it.
Is there somewhere else it causes a problem?

I found this thread on Stackoverflow and this command helped me on Android Studio. Maybe it can work on Xcode too.
ln -s $(which node) /usr/local/bin/node


[Feature] Add postprocessing on project file

Sometimes, there may be some additional steps required to handle for a project file before putting it into the correct location. As such, there should be an added ability to handle some sort of post processing script.
Additionally, this would add something like a unpackage flag for files that are provided as zips.

Closed by 02f800d14ee148f670d03ebb7dd340e94ae74a4e
Technically, this still needs to address missing libraries like git or nbconvert, but I'll do that with #23


Fix incorrect module traversal for BSP classpath retrieval

Issue reported in #1792 by @abernardi597.

@abernardi597 I added a test case which detects the incorrect bspCompileClasspath implementation and also added the fix.


Issue with gRPC channel class missing request method

What version of gRPC and what language are you using?
What operating system (Linux, Windows,...) and version?
OSx Big Sur 11.5.2
What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.9
What did you do?
Generated a Python client using protoc-gen-grpclib_python, attempted to use the generated client:
import sys
import asyncio

sys.path.insert(0, '../clients/python')

import grpc

from proto.hot_storage_pb2 import SetRequest, GetRequest
from proto.hot_storage_grpc import HotStorageServiceStub

from google.protobuf import struct_pb2 as struct

async def main():
    with grpc.insecure_channel('<IP_ADDRESS>:9000') as channel:
        stub = HotStorageServiceStub(channel=channel)

        await stub.Set(SetRequest(key='key', values=struct.Struct(fields={'value': struct.Value(string_value='value')})))
        result = await stub.Get(GetRequest(key='key'))
        print(result)

if __name__ == '__main__':
    loop = asyncio.get_event_loop()
    loop.run_until_complete(main())

What did you expect to see?
I expected the code snippet to call my gRPC server, and return a result.
What did you see instead?
Instead, I got the following error:
Traceback (most recent call last):
  File "/Users/ewanvalentine/work/hot-storage-rollout/playground/test.py", line 24, in <module>
    loop.run_until_complete(main())
  File<EMAIL_ADDRESS>line 642, in run_until_complete
    return future.result()
  File "/Users/ewanvalentine/work/hot-storage-rollout/playground/test.py", line 17, in main
    await stub.Set(SetRequest(key='key', values=struct.Struct(fields={'value': struct.Value(string_value='value')})))
  File "/Users/ewanvalentine/work/hot-storage-rollout/playground/venv/lib/python3.9/site-packages/grpclib/client.py", line 881, in __call__
    async with self.open(timeout=timeout, metadata=metadata) as stream:
  File "/Users/ewanvalentine/work/hot-storage-rollout/playground/venv/lib/python3.9/site-packages/grpclib/client.py", line 853, in open
    return self.channel.request(self.name, self._cardinality,
AttributeError: 'Channel' object has no attribute 'request'

Anything else we should know about your project / environment?
$ pip freeze . generates:
asyncio==3.4.3
cachetools==4.2.4
certifi==2021.10.8
charset-normalizer==2.0.7
coverage==6.0.2
Cython==0.29.24
google-api-core==2.1.1
google-api-python-client==2.27.0
google-auth==2.3.0
google-auth-httplib2==0.1.0
googleapis-common-protos==1.53.0
greenlet==1.1.1
grpcio==1.41.0
grpcio-tools==1.41.0
grpclib==0.4.2
h2==4.1.0
hpack==4.0.0
httplib2==0.20.1
hyperframe==6.0.1
idna==3.3
msgpack==1.0.2
multidict==5.2.0
mypy-extensions==0.4.3
protobuf==3.12.2
pyasn1==0.4.8
pyasn1-modules==0.2.8
pynvim==0.4.3
pyparsing==2.4.7
python-engineio==3.12.1
requests==2.26.0
rsa==4.7.2
ruamel.yaml==0.16.13
ruamel.yaml.clib==0.2.6
six==1.16.0
typed-argument-parser==1.7.1
typing-extensions==<IP_ADDRESS>
typing-inspect==0.7.1
uritemplate==4.1.1
urllib3==1.26.7

File "/Users/ewanvalentine/work/hot-storage-rollout/playground/venv/lib/python3.9/site-packages/grpclib/client.py", line 853, in open
return self.channel.request(self.name, self._cardinality,
AttributeError: 'Channel' object has no attribute 'request'

The error is in grpclib, which is a separate project: https://github.com/vmagamedov/grpclib.

Oh! My apologies @drfloob, silly me!

How did you solve it, I got the same problem

I am also having same issue.. How is that fixed?

Anyone have any contributions to the above issue?


Update UPGRADE.md

No Yii::debug() method in <IP_ADDRESS>

Q
A

Is bugfix?
yes

New feature?
no

Breaks BC?
no

Tests pass?

Fixed issues
Error in documentation

No Yii::debug() method in <IP_ADDRESS>

These are instructions for upgrading to 2.0.14, and it will have such method: https://github.com/yiisoft/yii2/blob/78d54bc54148d2834a680501c2dcdf0054bad3cf/framework/BaseYii.php#L382-L397

But its in section fron 2.0.12

No, it's not.

Really. Sorry. Why section "from 2.0.13" exists without 2.0.14? I upgraded to <IP_ADDRESS> and thought that i should check that section too

You should check UPGRADE.md from release, which you're using. There is no such section in <IP_ADDRESS>: https://github.com/yiisoft/yii2/blob/<IP_ADDRESS>/framework/UPGRADE.md
UPGRADE.md from master branch is for current master status - you should use these instructions only i you're using this branch.

I see now, thanks

19 февр. 2018 г., в 0:06, Robert Korulczyk<EMAIL_ADDRESS>написал(а):
You should check UPGRADE.md from release, which you're using. There is no such section in <IP_ADDRESS>: https://github.com/yiisoft/yii2/blob/<IP_ADDRESS>/framework/UPGRADE.md https://github.com/yiisoft/yii2/blob/<IP_ADDRESS>/framework/UPGRADE.md
UPGRADE.md from master branch is for current master status - you should use these instructions only i you're using this branch.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub https://github.com/yiisoft/yii2/pull/15660#issuecomment-366547643, or mute the thread https://github.com/notifications/unsubscribe-auth/AGeJ0qCcInrOF4bZCf_4vYqWZbzqHDQmks5tWJDXgaJpZM4SJVTo.


int have upperbound limit too low for graphql?

"Variable "$value" got invalid value<PHONE_NUMBER>; Expected type Int. Int cannot represent non 32-bit signed integer value:<PHONE_NUMBER>"
https://console.cloud.google.com/logs/query;pinnedLogId=2020-11-13T16:26:17.438910790Z%2Fryxcfi2amkf239f68;query=resource.type%3D"k8s_container"
resource.labels.cluster_name%3D"testnet-cluster"
resource.labels.namespace_name%3D"mainnet"
resource.labels.container_name%3D"graphql-server"
jsonPayload.level>%3D"40";timeRange=PT3H?project=galoyapp

afaik this has been fixed/handled with the new graphql API @samerbuna


Talk: Machine Learning and Software Development

Machine Learning and Software Development
I think the following article sums it up better than I could by filling in the form ...

Sorry but this is not a valid talk proposal. There's a form for a reason.


Fix NPAW

Description
I did some major refactorings around playback in v4.3.6, and I completely forgot to test npaw.
I of course broke it so I need to fix it.
The technical problem
We initialize youbora at player creation at the moment.
Youbora needs the accountCode when it is being initialized, otherwise it fails silently except for an error about "fastdata format wrong" (or similar). This is the same on both iOS and Android.
I changed to creating a new player on bccm_player's native-side initialization. This initialization happens automatically at launch, before our flutter code can send the accountCode.
How to fix
Should be to just change youbora to not initialize until it has a valid accountCode.
Note: Need to make sure it properly populates current metadata etc upon initialization.

@mulundapm

Fixed by
https://github.com/bcc-code/bcc-media-app/commit/6e9ac9dc9faea5e5704762d3b76fe81e9168023b
and
https://github.com/bcc-code/bcc-media-app/commit/30cc1d3085b191ff7ec5ba2ced56adf073e02870


About singlebatch

I went to build/install/benchmarks/cudapoa/ and when I run singlebatch, I get the following output
$ ./singlebatch
2019-07-29 13:14:25
Running ./singlebatch
Run on (16 X 3600 MHz CPU s)
CPU Caches:
  L1 Data 32K (x8)
  L1 Instruction 64K (x8)
  L2 Unified 512K (x8)
  L3 Unified 8192K (x2)
Load Average: 0.33, 0.15, 0.16
***WARNING*** CPU scaling is enabled, the benchmark real time measurements may be noisy and will incur extra overhead.
------------------------------------------------------------------
Benchmark                        Time             CPU   Iterations
------------------------------------------------------------------
BM_SingleBatchTest/1          1594 ms         1593 ms            1
BM_SingleBatchTest/4          2429 ms         2427 ms            1
BM_SingleBatchTest/16         2687 ms         2685 ms            1
BM_SingleBatchTest/64         3231 ms         3228 ms            1
BM_SingleBatchTest/256        8233 ms         8225 ms            1
terminate called after throwing an instance of 'std::runtime_error'
  what():  GPU Error:: out of memory /home/mahmood/cactus/cl/ClaraGenomicsAnalysis/cudapoa/src/allocate_block.cpp 46
Aborted (core dumped)

I would like to test a specific batch size and not variable sizes. It seems that singlebatch is a binary file. Any idea for that?

Hi @mahmoodn - could you provide information about your system (especially your GPU)?

Quadro M2000 with 4GB of memory.
I know that it will eventually runs out of memory. However, I want to analyze a specific batch size, e.g. 128.

Unfortunately, you cannot choose the size for singlebatch freely at the moment, but only select one of the predefined values, e.g.
./singlebatch --benchmark_filter=BM_SingleBatchTest/64

Thant is also good.
Is there any other examples (such as getting started) and not benchmarks? I see limited guides about Clara.
Moreover, is google benchmark something different than benchmarks/cudapoa/?

Also, may I know what are the sequences in the cudapoa/singlebatch benchmarks? What does it calculate and then measure the time?

Hi @mahmoodn
Google benchmarks is the framework we use for writing microbenchmarks. Benchmarks/cudapoa is the folder with the benchmark binaries for cudapoa.
Right now the only guides we have are the documentation in doxygen (make docs install), the benchmarking code in single-batch.hpp or multi-batch.hpp and our integration into racon. We have plans to write sample programs, but haven't released ant. My guess is those would be easier to parse than the benchmark code. We can prioritize those for the next release.
The sequences used are set of groups (or windows) we extracted from a racon run of long read data from e coli. The source file is under cudapoa/data.
Our next release of cudapoa (v0.2 slatwd for mis August) will have better memory management, and will only use available GPU memory to run the compute. So you won't see out of memory problems like you noticed here.

Thanks for explanation.
It seems that batch size of 128 is not used in the benchmark. I tried to understand single-batch.hpp and main.cpp to see how can I do that. Is that possible?

Hi @mahmoodn,
https://github.com/clara-genomics/ClaraGenomicsAnalysis/blob/20f0ed107fdad90e66609ae053c5fb0521613b93/cudapoa/benchmarks/single-batch/main.cpp#L35 sets up the benchmark cases. Line 37,
->RangeMultiplier(4)

says that it will create the benchmark sizes by multiplying the size of the previous benchmark size by  4. So it jumps from 64 to 256. If you change this to 2, it will create benchmarks for more batch sizes, including 128.

Thank you very much.


Updated to use different class name to avoid tab-layer class conflict

Previous .active class was also being used / removed by the tab UI component
This caused a bug that removed the green highlight from the active layer
Layer name changed to prevent conflict

:+1:

https://travis-ci.org/cfpb/mapusaurus/builds/53812938


Make error message more clear

Hello,
In my case I had tabs instead of spaces in my .cpd.yaml, it was preventing config from loading, but due to error message I spent some time on checking whether I named file correctly.
I propose to extend error message.

Coverage remained the same at 90.44% when pulling ad6fb121b95759956a4b8676ff63e507c3767947 on titarenko:patch-1 into d79fcb8462ca744915a2c04620119b0c0e55ab1a on kucherenko:master.


FluentRadio Check Checked state

🐛 Bug Report
Hey I want to check if FluentRadio is checked.
💻 Repro or Code Sample
Whole code:
@page "/settings"
@using System.IO.Ports;
@using Microsoft.Fast.Components.FluentUI

Settings

Selected port @(selectedPort != null ? selectedPort : "none")

@if (ports != null)
{
    <FluentRadioGroup>
        @foreach (string p in ports)
        {
            // TO DO FIX THIS!
            <FluentRadio @Checked="@(p == selectedPort)" @onclick="@(e => SetPort(p))">@p</FluentRadio>
            // OR ?
            <FluentRadio Checked="@(p == selectedPort)" @onclick="@(e => SetPort(p))">@p</FluentRadio>
        }
    </FluentRadioGroup>
}

@code {
    string selectedPort = null;
    List<string> ports = new List<string>();
    string[] pList = SerialPort.GetPortNames();

    protected override void OnInitialized()
    {
        foreach (string p in pList)
        {
            ports.Add(p);
        }
        selectedPort = Preferences.Get("port", null);
    }

    private void SetPort(string portName)
    {
        Preferences.Set("port", portName);
        selectedPort = portName;
    }
}

🤔 Expected Behavior
When the page loads i will have a radio button
😯 Current Behavior
With @Checked="@(selectedPort == port)" still error.
💁 Possible Solution
Would be fine create docs based on Blazor, not React, with examples and API like Angular Material:
Example
🔦 Context

🌍 Your Environment
Windows 10, .NET MAUI Blazor (Windows Machine App), .NET 6, Fast latest version, Microsoft Edge version 103.0.1264.62

Try replacing foreach (string p in ports) with foreach (string port in ports). Basically, foreach is using variable named p for iterating over ports but you're using variable named port (probably component level field if it's compiling) inside the block..

Sorry, I rewrote that here on github, otherwise I'm using the p string in the ports there. But I'm still stuck in checked state.

Hi, I missed the examples folder so I put it together somehow
<FluentRadioGroup ValueChanged="@(e => SetPort(e))" Value="@selectedPort">
        @foreach (string p in ports)
        {
            <FluentRadio Value="@p" Checked="@(p == selectedPort)">@p</FluentRadio>
        }
    </FluentRadioGroup>


Optimize random reads over boolean array

Problem Statement
Currently, when we call take(indices) a boolean array, it reads the array from indices[0]..indices[-1], when the indices are sparse, such read path is not optimial.
For example, if we want to read indices=[1, 100000, 500000], the data buffer of [1..500000]` will be read, instead, we can just issue three small reads for 1, 100000, and 500000 respectively.

I would work on this.


Unable to create new user using SCIM as per the documentation

The scim create user doesn't work. After entering the command as shown in the documentation. I've replaced  and , the earlier commands of getting user by ID and filtering works.
It errors going saying
Warning: Couldn't read data from file "create-user.json", this makes an empty  Warning: POST. {"schemas":["urn:ietf:params:scim:api:messages:2.0:Error"],"scimType":"Invalid JSON provided in request body.","detail":"Request is unparsable, syntactically incorrect, or violates schema.","status":"400"}
the cretae-user.json is the same as in the documentation with the userName field changed to an email address
Document Details
⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

ID: 8bebd29d-63c1-9f12-6460-15af4ca4a156
Version Independent ID: 4cca2ccf-b99e-6eee-43fd-a9cbae057c59
Content: SCIM API 2.0 (Me) - Azure Databricks
Content Source: databricks/dev-tools/api/latest/scim/scim-me.md
Service: azure-databricks
GitHub Login: @mssaperla
Microsoft Alias: saperla

Thank you for reaching out. At this time we are reviewing the ask and will provide an update as appropriate

Thanks for your dedication to our documentation. Unfortunately, we have been unable to address your issue and apologize for the delayed response. We are closing this issue, but if you feel that it's still a concern, please let us know directly at<EMAIL_ADDRESS>#please-close

#please-close


Add v1.17.1-1.2

2 month has passed away, so bump version to -1.2.

TODO: rebase with #1541

Now rebased with master.

pushed v1.17.1-1.2 tag.


Merge docker and code repos.

Also, one more Q, we're not controlling the repgen version anymore, this will just be latest/master?

Yeah, so like the other merged repos this just installs Repgen from whatever sources are downloaded with the Dockerfile. So if you clone this down to your machine and build it'll be building from master. if we cut a release and make new changes then to build the old release you'd checkout that tag locally and then just run the docker build since it builds from the current checked-out sources.
If we need to rebuild an old release from before this merge then we'll need to use the old Dockerfile that pulls the code from GitHub.

Coverage remained the same at 97.469% when pulling 0ca966d29c14f7d32e8983327112538e2584ad4c on zmoore-usgs:merge into 7db056f9242d648b304cee53b08ae30004179f9b on USGS-R:master.

Going to go ahead and merge since Travis seems to give up pulling our Rserve base image. Will look into moving that from our Artifactory to our DockerHub account


MayaEvent() handlers don't work properly in LayoutDialogs

By default mGui widgets are created with MayaEvent() objects as their event delegates. Ordinarily that's nice because it minimizes damage from UI reacting across threads...
but it also means that the events for a widget created using cmds.layoutDialog don't fire until after the dialog closes, since we never hit the idle state while the dialog is open.
The workaround it to replace the MayaEvent()  with an Event() -- that's synchronous so it doesn't get hung up.  Here's an example:
    def _layout(self):
        with forms.LayoutDialogForm('root') as self.root:
            with forms.VerticalThreePane(None):
                gui.Text( label='Please log into Perforce. This is only required once per project.')
                with forms.VerticalExpandForm(None):
                    gui.Text( label='Enter your p4 client workspace. E.G. "bryce-class4"')
                    self.p4Client = gui.TextField('P4ClientWorkspace')
                    gui.Text( label='Enter p4 user name. E.G. "Bryce"')
                    self.p4User = gui.TextField('P4UserName')
                    gui.Text( label='Enter p4 password.')
                    self.p4Password = gui.TextField('P4Password')
                    gui.Text( label='Enter p4 port.')
                    self.p4Port = gui.TextField('p4port', text='p4proxy.undeadlabs.net:1667')
                login_button = gui.Button('login', label='Login')
                login_button.command = Event()
                login_button.command += self.attempt_p4_login

where the login_button is post-edited to switch types. That's an annoying piece of trivia for users to remembr

Options I can think of:

don't fix, add a note.  Not ideal, it's a nasty gotcha
add a flag to Nested which can change the MayaEvents to Events when a layout context manager closes.  That would make it safer - but you'd still have to remember to hook events after layout time... which is the style I use most often but it may not seem natural
add a cmds.layoutDialog replacement which hides the issue: maybe for the duration we replace MayaEvent with Event?
add some logic to MayaEvent.fire() that knows when a layoutDialog is open and works synchronously....

So I'm not running into any problems with the following code:
from maya import cmds

from mGui import gui, forms, lists
from mGui.bindings import bind, BindingContext, BindableObject
from mGui.observable import ObservableCollection
from mGui.events import Event

@object.__new__
class testDialog(object):
    def _layout(self):
        with forms.LayoutDialogForm() as self.base:
            with BindingContext() as bc:
                with forms.FooterForm() as form:
                    with forms.FillForm() as main:
                        self._menu = gui.OptionMenu()
                        self._menu.label = 'Items: '
                        self._menu < bind() < (self, '_menu_items')
                    with forms.HorizontalStretchForm() as footer:
                        okay = gui.Button()
                        okay.label = 'Okay'
                        okay.command += self._okay
                        update = gui.Button()
                        update.label = 'Duplicate'
                        update.command += self._duplicate
                        cancel = gui.Button()
                        cancel.command += self._cancel
                        cancel.label = 'Cancel'

    @property
    def _menu_items(self):
        return cmds.ls(type='transform')

    def _duplicate(self, *args, **kwargs):
        cmds.duplicate(self._menu.value)

    def _cancel(self, *args, **kwargs):
        cmds.layoutDialog(dismiss='dismiss')

    def _okay(self, *args, **kwargs):
        cmds.layoutDialog(dismiss='Okay')

    def __call__(self):
        return cmds.layoutDialog(uiScript=self._layout, title='Test Dialog Events')

td = testDialog()
print(td)

Each of the buttons is working, and the duplicate command is firing properly while the dialog is active.

Does the duplicate work more than once? If you press it a few times with the dialog opne?

Yeah, and when I was duplicating some cameras it was even spawning the little on screen boxes talking about messing with the FOV. So it seemed to only be blocking user interaction, and not actually stalling the idle thread. This is in 2016 btw, might be different in older versions.

I'll have to dig in a bit deeper with @mouthlessbobcat ; he and I have bumped into this in 2016 on different occasions

The only time I've really bumped into something similar is when an uncaught exception gets raised. So at the very least the default exception handler is getting blocked. Which certainly makes debugging the dialog a pain.
I wonder if another solution might be checking which thread we're attempting to fire the event from, and if its the main thread to avoid the executeDeferred call.

So, we tried a cut and paste of your example, and it still showed the incorrect behavior for us. What version are you on?

More mystery:
import inspect
import maya.cmds as cmds
import maya.utils

def ll(*x):
    def close(*_):
        cmds.layoutDialog(dismiss = "close")

    def ok (*_):
        cmds.layoutDialog(dismiss = "OK")

    def do(*_):
        def anon():
            print "DONE"
        maya.utils.executeDeferred(anon)

    c = cmds.columnLayout()

    d = cmds.button("do", c=do)
    b1 = cmds.button("cancel", c = close)
    b2 = cmds.button("ok", c = ok)

print cmds.layoutDialog(ui=ll)

This... works.  so maybe MayaEvent is not exactly the culprit...

Maya 2016 sp6(no extensions) and Maya 2017, are the primary versions I've been working with.
So when it does go haywire, the dialog is still responsive, we just don't see anything useful until after it closes correct? We're not completely locking up Maya?

Now I'm extra confused.
import inspect
import maya.cmds as cmds
import maya.utils

def ll(*x):
    def close(*_):
        cmds.layoutDialog(dismiss = "close")

    def ok (*_):
        cmds.layoutDialog(dismiss = "OK")

    def do(*_):
        def anon():
            cmds.polySphere()
            print "DONE"
        maya.utils.executeDeferred(anon)

    c = cmds.columnLayout()

    d = cmds.button("do", c=do)
    b1 = cmds.button("cancel", c = close)
    b2 = cmds.button("ok", c = ok)

print cmds.layoutDialog(ui=ll)

Won't create any of the spheres until the dialog closes. (Maya 2017)

That's more in line with the behavior we're seeing. It's along the lines of:

Show LayoutDialog.
Click buttons that fire events from their command.
Nothing happens.
Close dialog.
All the events have been queued up and fire now.

Ah, so maybe this is in part a testing artifact.  The prints in my example
didn't wait for the closure of the dialog -- but scene activities do?
On Thu, Jan 5, 2017 at 8:21 AM, Mouthlessbobcat<EMAIL_ADDRESS>wrote:

That's more in line with the behavior we're seeing. It's along the lines
of:

Show LayoutDialog.
Click buttons that fire events from their command.
Nothing happens.
Close dialog.
All the events have been queued up and fire now.

—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/theodox/mGui/issues/56#issuecomment-270685658, or mute
the thread
https://github.com/notifications/unsubscribe-auth/AD3mGOgjDD4881P5RLOpmllXZIBgrWCCks5rPRiUgaJpZM4LUhQ8
.

Doesn't seem to be consistent though, I tried testing again with the scene activity, and it triggers properly.

Came up with a potential idea, instead of relying on cmds.layoutDialog we could get at the underling QWidget on a Window and just enable Modality directly.
No idea if this actually sidesteps the issue or now, given how random this seems to be, it could just be a dice roll that I haven't run into it again.

I wonder if this is a part of the problem?
http://around-the-corner.typepad.com/adn/2016/07/the-idle-queue-isnt-100-a-queue.html
Also, there seem to be some weird edge cases on the Qt side when using exec to block execution with a dialog, which I think is how cmds.layoutDialog  actually works.
http://blog.qt.io/blog/2010/02/23/unpredictable-exec/

So, my fun ModalWindow patch won't actually fix this problem.
I think option 2 from the above list might be the better starting point.
But instead of relying on the closing of the LayoutDialogForm context manager, we could add a value when it opens, and then any event created inside of a CallbackProperty could then use an Event instead of a MayaEvent. This way we could still hook events during layout time (which is something I do a lot, so I'd like to preserve that if possible.

that's in line with stuff that eric and I have discussed, I think it's the least complex of all the solutions we've considered .

@bob-white that link from ADSK is almost certainly why my print test was a false indicator...

Fixed


tjson: Fix schema comparison

This task is a part of #683 epic.
🎯  Currently, schema comparison method func (s *Schema) Equal(other *Schema) bool is implemented with reflect.DeepEqual. The goal of this task is to come up with a better approach.
The target code is located here.
Tigris' data types consist of type and format. For int64 and double format is not required but might be set.
Having that in mind, the following schemas must be equal:
	doubleSchema = &Schema{
		Type: Number,
	}
	doubleSchemaWithFormat = &Schema{
		Type:   Number,
		Format: Double,
	}

As well as:
	int64Schema = &Schema{
		Type: Integer,
	}
	int64SchemaWithFormat = &Schema{
		Type:   Integer,
		Format: Int64,
	}

We need to fix comparison to make such schemas equal.
Checklist:

[ ] Have a look at the Tigris doc once again to make sure that int64 and double are the only cases that can cause different schemas need to be equal.
[ ] Implement the changes and add tests to check that the comparison works equally for the different schemas that describe the same data type.

@AlekSi I finalized the description for this task. Please have a look!


Update DC Vaccine demographics

This still needs a long-term fix for when DC changes the order of the data on their dashboard, but this updates it temporarily
see most recent commit + comment

This last commit should fix the ongoing headache these scrapers have been. Removes the individual demographic classes and creates DCVaccineDemographics. All demographic data is fetched at once using the TableauScraper module, and handled in one normalize function. This should eliminate the issue of the dashboard changing the ordering of the results.

Thank you for fixing this @smcclure17!


VueSignaturePad not display properly until browser resize

Hi, I am clearly doing something wrong but when I view the page with the signature pad on it all I get is the border until I manually resize the browser window, then the signature pad appear along with anything that may have been scribbled onto the blank space. Below is the code:
<template>
    <v-container fluid grid-list-md>

Create a new order

        <v-dialog v-model="dialog" fullscreen hide-overlay transition="dialog-bottom-transition">
          <v-btn slot="activator" color="primary" dark>Sign For Order</v-btn>
          <v-card height="100%">
            <v-toolbar dark color="primary">
              <v-toolbar-title>Sign Below</v-toolbar-title>
              <v-btn icon dark @click="dialog = !dialog"></v-btn>
            </v-toolbar>

            <VueSignaturePad
              width="95%"
              height="80%"
              ref="signaturePad"
              :options="sigopt"
              :customStyle="sigStyle"
            />

            <v-btn @click="clear">Clear</v-btn>
            <v-btn @click="save">Finalize Order</v-btn>
          </v-card>
        </v-dialog>
    </v-container>
</template>

Sorry if this isn't the place to ask this but,=, is it my code or a bug of some kind. Kindly appreciate any help. Thanks.

@TheRagingLoser can you reproduce this problem on CodeSanxbox? In #54 had a similar problem, but I can't reproduce.

@neighborhood999 Thanks for your quick response. It seems identical to the issue in #54. I have tried in CodeSandbox and it seemed to work fine. I'm thinking it may have something to do with the Vuetify dialog box I am placing it in. I will do some test with it on the page without the dialog box. P.S. thanks for the great work on this compoinent.

An interesting thing I've noticed (I'm also using Vuetify's framework) is that when the component is displayed the canvas width and height are both 0, after the browser resize these attributes then have values.
Before resizing browser:

After resizing browser window:

Did you manage to solve this @TheRagingLoser ?

More info (found on Vuetify's discord 'need-help' channel):

toki - 17/04/2018
Because the signature pad uses touch events, it may not work properly under scrollable element (like v-app).
So I just put it into a full screen v-dialog, set scrollable = false and hope it work well.
But it still can't get any touch event unless

resize the window manually (not suitable for mobile usage)
try to scroll (yes, it can still scroll with v-dialog + scrollable = false)

Is there a way I could completely turn off scroll on v-dialog or there's other component is suitable for this job?

So I'm going to test some ideas out - if I get something working I'll update this so that it can hopefully help others in the future.

Isolated the issue down to these two lines causing the canvas to become zero in width and height:
var canvas = document.getElementById('signature-pad')
// Adjust canvas coordinate space taking into account pixel ratio,
// to make it look crisp on mobile devices.
// This also causes canvas to be cleared.
function resizeCanvas() {
    // When zoomed out to less than 100%, for some very strange reason,
    // some browsers report devicePixelRatio as less than 1
    // and only part of the canvas is cleared then.
    var ratio =  Math.max(window.devicePixelRatio || 1, 1)
    canvas.width = canvas.offsetWidth * ratio
    canvas.height = canvas.offsetHeight * ratio
    canvas.getContext("2d").scale(ratio, ratio)
}

//window.onresize = resizeCanvas
//resizeCanvas()

Just comment them out...

@traic - thanks for the info. I did however manage to get it working without needing a custom version.
The signature pad is being used in a navigation drawer, and was being called when the navigation drawer was displayed. However, the navigation drawer also contains Vuetify's v-stepper component, so what I've done is only set the signature pad to display if the v-stepper-step is the showing containing the signature pad.
This is working like a dream!

I can confirm @Leemanbok 's solution worked for me. I placed it within my display property (used with v-show) on the watch section. Placing it on the mounted section does not work.
watch: {
            display: function(value){
                this.displayDialog = value;
                this.$nextTick(function () {
                    this.$refs.signaturePad.resizeCanvas();
                    this.$refs.signaturePad.fromDataURL(this.editedItem._signature);
                }
           };
        },

I ran into this same issue and the best solution I found was <VueSignaturePad :options="{onBegin: () => {$refs.signaturePad.resizeCanvas()}}"  ref="signaturePad"/>

I do this, works if you set the signaturePad width to a percentage like 100%
mounted() {
      var sig = this.$refs.signaturePad.$el
      sig.querySelector('canvas').setAttribute('width', sig.offsetWidth)
      sig.querySelector('canvas').setAttribute('height', sig.offsetHeight)
}

If you are using v-dialog in vuetify, you need to use eager prop in your dialog.
The problem is when your vue-signature-pad is loaded, v-dialog size was not fixed.
So v-dialog set width and height zero.
For fixing this problem, I spent around 2hours holly..
I hope other people do not waste of time like me

I ran into this same issue and the best solution I found was to call the resizeCanvas in the onBegin function
<VueSignaturePad :options="{onBegin: () => {$refs.signaturePad.resizeCanvas()}}" ref="signaturePad"/>

This appears to work for the situation where you would like to start drawing. However, if you've already provided data and wish to regenerate it, then you'll run into the same rendering issue. I've been able to solve this using the following workaround:
// don't forget to set the data using:
// this.$refs.signaturePad.fromData(...);
// set a timeout of 0ms to force a render
setTimeout(() => this.$refs.signaturePad.resizeCanvas(), 0);

By setting the timer on 0, you'll notice no delay, but it will force the pad to render the signature.

@marknuyens

This appears to work for the situation where you would like to start drawing. However, if you've already provided data and wish to regenerate it, then you'll run into the same rendering issue.

I faced the same problem, but in my case I was using .fromDataURL( to set the “initial” signature.
I fixed this by rewriting the resizeHandler( method:
     <VueSignaturePad
        :ref="refName"
        class="vue-signature-pad"
        :width="width"
        :height="height"
        :options="{
          throttle: 8,
          onBegin,
          onEnd,
          resizeHandler
        }"
      />

...

    methods: {
        resizeHandler() {
            let ref = this.$refs[this.refName];

            const canvas = ref.$refs.signaturePadCanvas;
            const data = ref.signaturePad.toData();
            const ratio = ref.scaleToDevicePixelRatio
                ? Math.max(window.devicePixelRatio || 1, 1)
                : 1;

            canvas.width = canvas.offsetWidth * ratio;
            canvas.height = canvas.offsetHeight * ratio;
            canvas.getContext('2d').scale(ratio, ratio);

            ref.signaturePad.clear();
            ref.signatureData = ref.TRANSPARENT_PNG;

            if (data.length) {
                ref.signaturePad.fromData(data);
            } else {
                // hack, cause original resizeHandler doesn't work
                ref.fromDataURL(this.form.signature);
            }
        },

signaturePad.fromData( - always returns an empty array
Anyone have any ideas on how to fix this so I don't have to do smells code?

https://github.com/szimek/signature_pad?tab=readme-ov-file#api
// NOTE: This method does not populate internal data structure that represents drawn signature. Thus, after using #fromDataURL, #toData won't work properly.
signaturePad.fromDataURL("data:image/png;base64,iVBORw0K...");

Thus, after using #fromDataURL, #toData won't work properly.

Oh... nevermind)


Add node to track Hubitat hub mode

I registered the mode callback with a deviceId of 0 to fit it in with the way you've been doing the callback lookups.  It's a bit of a hack, but should be safe from any ID collisions.

I wrestled with how to handle the extra fields we get from an event vs. what is returned from a GET to the Maker API modes/ endpoint.
In the end, I left the extra fields in because they may be of use to someone in the future.  I'm not sure descriptionText will be all that helpful, but I think displayName will help people who need to distinguish between multiple homes or hubs.
Given that, what do you think about updating the documentation to something like the following:

I'm ok with that :+1:
In this case, can you rewrite the payload of the event output to only have these four fields?


just need help for notification

Hello,
First of all, thank you for this amazing application.
I am a little confused about adding an alert to the users' list if they have new messages. So please can you help me to get a solution on how I can add a badge to the users' list if they have a message or not.
Thanks in advance

This would require some changes in database. For chat between any two persons ,you can maybe keep a last seen field track. And messages coming after that time can be stored and shown as count in list. Maybe i will try to push these changes when i get time.


How to send an Anycast message

Anycast addresses are described on https://openthread.io/guides/thread-primer/ipv6-addressing#anycast
I have a Thread device freshly connected to a Thread network thanks to an Android phone commissioner. I would like to send an Anycast message to the Commissioner. It is said to use ALOC16 0xfc30 – 0xfc37 for the Commissioner but I don't know how to use it.
Would you have indications about how to send such Anycast message to the Commissioner?
Thank you

Hi Jonathan,
Thank you for your message.
In my case, the Commissioner is an Android app and doesn't have a CLI. Maybe that my first question was not clear enough: This is on the Joiner device (freshly connected to the thread network) that I want to send an anycast message to the Commissioner. Is there a way to get the Commissioner Anycast Address? I have seen this commit (https://github.com/openthread/openthread/pull/4707) which adds GetLocator(). Could it help me to retrieve the Commissioner Anycast Address?
Thank you

In my case, the Commissioner is an Android app and doesn't have a CLI. Maybe that my first question was not clear enough: This is on the Joiner device (freshly connected to the thread network) that I want to send an anycast message to the Commissioner. Is there a way to get the Commissioner Anycast Address? I have seen this commit (#4707) which adds GetLocator(). Could it help me to retrieve the Commissioner Anycast Address?

As mentioned in https://github.com/openthread/openthread/issues/7291#issuecomment-1006761122, after attaching to the Thread network, a Thread device can determine the Commissioner Anycast Address using the Commissioner Session ID contained within the Thread Network Data.

My Commissioner is in the Wifi network and not in the Thread network. Is it possible, in that case, to reach it with an Anycast Address?

Yes. Thread should route packets with a Commissioner Anycast destination to the Thread border router that the commissioner is attached to.

Ok, thank you Jonathan.
On the device that freshly joined the Thread network, is it possible to determine the Commissioner Anycast address? (programmatically)

We could probably add an API to provide the Commissioner Anycast Address.

IMO, that would be useful.

On the device that freshly joined the Thread network, is it possible to determine the Commissioner Anycast address? (programmatically)

I can explain the reason of my question:
When I have started working on Thread, I have focused on trying to echange data between the Android phone (the commissioner) and the freshly commissioned device. Thanks to the help obtained on this forum, I have been able to configure the BR and to send UDP packets between the Android phone (connected to the wifi) and the Thread device.
For the moment, I'm doing the commissioning, I then use the CLI to read the IP address matching the OMR prefix and I give this address to the Android application. It can then send UDP packet to the thread device.
I'm now looking how they could identify each other automatically.
In another issue, you advised me to implement a SRP service. I will not get that in a short time so I was looking for an alternate solution. From the Thread device, is it possible to determine the Commissioner Anycast address?
I have thought to a workaround that seems to work. On the thread device, I'm allocating a static IPV6 Address starting from OMR prefix and finishing by some bytes arbitrary chosen. By this way the Android phone can guess the IP Address of the Thread device. They can then talk to each other and possibly switch to the IP address dynamically allocated.
This is just for a demo (and not a real product) so that seems an acceptable workaround until I get the SRP service, isn't it?
In Openthread Android Commissining App, is there a way to determine the OMR prefix?
Thank you

When I have started working on Thread, I have focused on trying to echange data between the Android phone (the commissioner) and the freshly commissioned device.

You can exchange data between an Android phone and a commissioned device without a commissioner. You can use Android socket to send/recv IP traffics as if you are talking to a WiFi device, as long as you have the IPv6 address of the end device.
Even if you can get the Commissioner Anycast address, packets sent to this address is not routed directly to the mobile phone but to the border router and then relayed to the commissioner app via the DTLS connection between the commissioner app and the border router. That said, the packets sent from the end device will not be received by other network applications on the mobile phone but as I said, you don't need (and shouldn't use) the commissioner app to exchange data between mobile phone and Thread device.
The SRP service solution is the recommended solution to discover a specific Thread device from WiFi network. On your Android phone, you just need to subscribe to and resolve your registered SRP/mDNS service to get the IPv6 address of your Thread device with NsdManager.

I'm now looking how they could identify each other automatically.
In another issue, you advised me to implement a SRP service. I will not get that in a short time so I was looking for an alternate solution

Setting up a SRP service on a Thread end device seems pretty simple per https://openthread.io/codelabs/openthread-border-router#4 and you can make a script on the end device to automate this process for demo purpose.
Could you share the specific blocker that stops you from using SRP?

You can exchange data between an Android phone and a commissioned device without a commissioner. You can use Android socket to send/recv IP traffics as if you are talking to a WiFi device, as long as you have the IPv6 address of the end device.

Yes, I have that working. I'm able to send UDP packets between the Android phone and the commissioned device. It is working both ways. I indeed need the IPV6 address of the end device.

Setting up a SRP service on a Thread end device seems pretty simple per https://openthread.io/codelabs/openthread-border-router#4 and you can make a script on the end device to automate this process for demo purpose.
Could you share the specific blocker that stops you from using SRP?

The HW that I use is under development and SRP is not available yet.
The end device uses a version of the OpenThread lib that is old.
I had the same problem with the RCP of the Border Router. I have been able to update it to the latest version and it works (I'm compiling it for Thread 1.1.1 though).
I have seen that it is not straighforward to update the openthread lib of my end device (due to dependencies with the rest of the SW). And then I should see how to configure the SRP service. I'm not sure that I will succeed to do that...


  Are app services and functions running in a a vnet integrated App Service Plan considered to be "on a virtual network" or must they be hosted on an Isolated (ASE) instance?

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

ID: 837fb356-5b57-1834-3a27-947d6fbea90e
Version Independent ID: b5b26db9-4a31-27d7-5961-bff59fda29f8
Content: Integrate Azure Service Bus with Azure Private Link Service - Azure Service Bus
Content Source: articles/service-bus-messaging/private-link-service.md
Service: service-bus-messaging
GitHub Login: @spelluru
Microsoft Alias: spelluru

Thanks for the question! We are taking a look into this and will get back to you soon.

Hello @rhendrie, function app requires VNet inegration in order to access Private Endpoints. Additionally you can also go through this documentation here regarding how to connect to private endpoints using function app. This blog here can also be helpful in understanding about inbound private endpoints with Azure Functions.
I will now proceed to close this issue out, please tag me in your reply if there are any additional concerns, I will be glad to continue with our discussion.


Operationalization: Riak S2 Integration

Modify the framework such that Riak S2 can be run as a task.

Start Riak and Riak S2 under the same executor potentially
Configure Riak to work with Riak S2
Start a singleton Stanchion as well

Done, implemented as scripts and configurations for Marathon deployment.


PaperMC Setup Docu outdated

On the documentation for mscs to setup a PaperMC Server the mscs-server-url is linking to an outdated download page.
mscs-server-url=https://papermc.io/ci/job/Paper-$SERVER_VERSION/lastSuccessfulBuild/artifact/paperclip.jar

According to the documentation of PaperMC this needs to be
mscs-server-url=https://papermc.io/api/v1/paper/$SERVER_VERSION/latest/download

Thanks!
If you are feeling up to it, you can update the documentation and submit a pull request here
https://github.com/MinecraftServerControl/MinecraftServerControl.github.io

sure.
i was already looking for it but couldnt find it.
PR is open.


Setup sigstore/cosign

Setup sigstore/cosign for the container images
https://github.blog/2021-12-06-safeguard-container-signing-capability-actions/
https://github.com/sigstore/cosign

Fixed & working via https://github.com/mtougeron/k8s-pvc-tagger/pull/62 and https://github.com/mtougeron/k8s-pvc-tagger/pull/63


fix: apply token adapter to template tokens

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Project coverage is 94.70%. Comparing base (54964a6) to head (34d34d4).

Additional details and impacted files
@@           Coverage Diff           @@
##             main      #27   +/-   ##
=======================================
  Coverage   94.69%   94.70%
=======================================
  Files          55       55
  Lines        1113     1115    +2
  Branches      153      153
=======================================
+ Hits         1054     1056    +2
  Misses         59       59

Flag
Coverage Δ

unittest
94.70% <100.00%> (+<0.01%)
:arrow_up:

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

Files with missing lines
Coverage Δ

src/tokenizer/tokenize.ts
96.15% <ø> (ø)

src/utils/create-templates.ts
100.00% <100.00%> (ø)


Update content to WS 2019 LTSC version

Cx needs updated content for WS 2019. changes in recommendations for SET LoadBalance algorithm, VMMQ support (aka vrss offload) and compatibilities, like RSC enabled in the vSwitch in WS2019.

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

ID: bcdc6c48-ad04-d715-5e7b-03ba9c50a709
Version Independent ID: 141be0cf-264f-f0d8-9fdd-937d45df45e1
Content: Remote Direct Memory Access (RDMA) and Switch Embedded Teaming (SET)
Content Source: WindowsServerDocs/virtualization/hyper-v-virtual-switch/RDMA-and-Switch-Embedded-Teaming.md
Product: windows-server
Technology: networking-hv-switch
GitHub Login: @shortpatti
Microsoft Alias: pashort

#assign:dknappettmsft

hello, I am closing this issue, the referenced page was removed from @dcuomo and updated page has been added in the HCI docs.
thanks


Question: resources (css, js files) by multiple sites

Hello,
I'm using Fabio as load balancer on my nomad cluster and have following issue, that my resources (css and js files) cannot be loaded correctly. This is how my 2 sites are configured:

urlprefix-/my-first-site strip=/my-first-site
urlprefix-/my-second-site strip=/my-second-site

I added strip because in html pages resources will be accessed i.e. <link href="/main.css"..
Question: is this a "right" approach? I checked documentation but didn't found an example with multiple sites behind fabio. I'm sure that the question is simple, but I don't get how to fix my issue :)

If your sites refer to resources with absolute paths, rewriting the path will not work. That's true for any loadbalancer, not just fabio. Either

change your site to use relative paths (i.e. main.css instead of /main.css)
or configure your site such that path rewriting is unnecessary (i.e. http://<internal ip>/my-first-site Just Works (tm)`)
or use a dedicated (sub)domain for each site.

@pschultz, thanks for answer :). I'll try it.


Connection errors

Environment
HikariCP version: 2.6.2
JDK version     : 1.8.0_111
Database        : MySQL
Driver version  : 5.1.42

Hello, I'm starting to see a lot of the following in my logs.  Should I increase my pool size?  My current size is at 15 each, with two web apps behind a load balancer.
Caused by: java.sql.SQLTransientConnectionException: HikariPool-1 - Connection is not available, request timed out after 30014ms. 	at com.zaxxer.hikari.pool.HikariPool.createTimeoutException(HikariPool.java:601) 	at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:194) 	at com.zaxxer.hikari.pool.HikariPool.getConnection(HikariPool.java:144) 	at com.zaxxer.hikari.HikariDataSource.getConnection(HikariDataSource.java:112) 	at org.hibernate.engine.jdbc.connections.internal.DatasourceConnectionProviderImpl.getConnection(DatasourceConnectionProviderImpl.java:122) 	at org.hibernate.internal.NonContextualJdbcConnectionAccess.obtainConnection(NonContextualJdbcConnectionAccess.java:35) 	at org.hibernate.resource.jdbc.internal.LogicalConnectionManagedImpl.acquireConnectionIfNeeded(LogicalConnectionManagedImpl.java:115)

Not enough information to tell.  Enable DEBUG logging for com.zaxxer.hikari and watch the pool stats logged every 30s.  Configuring a metrics collector like DropWizard or Prometheus might be useful as well.


moves fixParentage to apply for all browsers.

I think this should fix https://github.com/tomhuda/metamorph.js/issues/10.
I'd appreciate some wider testing, though. I don't have a browser version installed where fixParentage isn't needed, although I'm guessing from the initial commit of this fix that these versions exist.

Good catch. What browsers has this been tested in?

IE 7,8,9
Safari 5.1
Chrome 17
Firefox 8, 9
Sidenote: FF 8,9 can't run all of the test suite. It chokes on https://github.com/tomhuda/metamorph.js/blob/master/tests/metamorph_test.js#L133-L145
I can open a separate issue for that


Option in context menu overlapped with title bar not working

VSCode Version: 1.51.0
OS Version: Windows 10 1909

Steps to Reproduce:

Right click to open a context menu, make sure at least one option in the menu is overlapped with title bar
Move cursor over the overlapped area, it doesn't trigger hover effect and will not trigger event if you click

Does this issue occur when all extensions are disabled?: Yes

for reference, the original fix for this was here: https://github.com/microsoft/vscode/pull/58467 which was regressed by the Shadow DOM feature of the context view

/verified