Can we clear the selection in JavaScript?

I haven t found a way to do it programmatically...
Clear input clears the text but that’s it...

I also found that the clearChoices() method does not reset to the initial state, i.e.: the placeholder is missing.
It's a hack, but this is how I did it for now:
    CHOICES_INSTANCE.clearChoices();
    document.querySelector("div.choices__item").innerHTML="Make your choice";
    document.querySelector("div.choices__item").setAttribute("data-value","Make your choice");
    document.querySelector("div.choices__item").setAttribute("data-id","1");
    document.querySelector("div.choices__item").classList.add("choices__placeholder");
    CHOICES_INSTANCE.setChoices({value: 'whatever', label: 'whatever'}, 'value', 'label', false);

If you have multiple instances, make sure that you are more specific with the document.querySelector().

Wait...
Are you saying that clearing selected values to have default state of the choices requires above hack?
To reset values? This or destroy + clear selected + init of the whole thing?
I wish i knew that couple weeks ago...

For anyone else who stumbles across this thread, you can use the removeActiveItems method.

For anyone else who stumbles across this thread, you can use the removeActiveItems method.

Thanks, it works like a charm!

Hi, I was having problems clearing the select after a submit so, given that I haven't found a concise example on how to use removeActiveItems I ended up using the code on this link:
https://jsfiddle.net/pvvnxdementor5/og7yhu4t/42/
I added the clear button, give it and id (a class would work also) an on the function that handles the post success aftermath, I simulate a click to the clear button
document.getElementById("clearBtn").click()
So maybe this works for somebody else. I'm not an expert on JS and this library works awesome but I do find it really hard to find instructions on how to call methods after the select choice is created

Hello.
Taking advantage of this issue. Is there any way to unselect some items by passing an array of ids as a argument?

Hello.
I have a close problem with choices.js and form.reset.
I change values in a mysql database and i am using ajax for it. Everything is fine an works. But some values have to be values from a list, so a select is the correct way for me, but the select list ist very long, so i need a "search" in this too. I tried choices.js and it work very fine in a modal (select2 or selcetize works in a modal not).
But my problem is, if i press the button "add" or "change" to add or edit something, then i have to reset my form with form.reset, cause if not, then the values from before are still in the field. I know, it sounds complicated but i hope somebody can understand me. But if i reset my form, then the values of my choices select are empty and i can choose nothing. Can somebody help me how i can fix that? And by the "change value" i need the value, who is saved in database.
Maybe somebody have a little jsfiddle or something where i see how to use "setchoices" and that it not crash when i reset with form.reset().
Btw, i know my english is not the best, sorry if somebody can't understand me.

For anyone else who stumbles across this thread, you can use the removeActiveItems method.

My problem with this answer is that it also removes the placeholder of a select-one:
<select>
  <option value="">This is a placeholder</option>
  <option>...</option>
  <option>...</option>
  <option>...</option>
</select>

hi, guys do resetting dynamically work at all?  all of the options presented or on the documentation does not work at all.  ranging from javascript choices1.clearChoices(); choices1.setChoices(tagsArr, "value", "label", false); // even creating a new instance do not work

For anyone else who stumbles across this thread, you can use the removeActiveItems method.

My problem with this answer is that it also removes the placeholder of a select-one:
<select>
  <option value="">This is a placeholder</option>
  <option>...</option>
  <option>...</option>
  <option>...</option>
</select>

@MrCordeiro you can call the method by passing it 1 as a parameter, to avoid removing the first option (the empty option).

hi, guys do resetting dynamically work at all? all of the options presented or on the documentation does not work at all. ranging from javascript choices1.clearChoices(); choices1.setChoices(tagsArr, "value", "label", false); // even creating a new instance do not work

I have the same issue when trying to use single select.
Is it is what I'm doing wrong or it's a plugin mistake?
The way I have found how to solve a problem:

Call destroy method
Replace Select tag with the default one.
Call custom init function (not build-in Choices Plugin init function) with all parameters, events and etc again.

Below the code what I used and have found an issue.
HTML Code:
<select name="item_id">
  <option value="" disabled selected>Placeholder</option>
  <option value="1">Item #1</option>
  <option value="2">Item #2</option>
  <option value="3">Item #3</option>
</select>

JS Code for testing:
var choice = new Choices(element, {
  position: 'below',
  itemSelectText: '',
  shouldSort: false,
  searchPlaceholderValue: $(element).find('option[value=""]').text(),
  fuseOptions: {
    threshold: 0.0,
  },
});

element.addEventListener(
    'choice',
    function(event) {
      // How to reset selected options here correctly to default?
    },
    false,
  );
};

Oh, I have found a solution. If you use plugin methods in events then you need to put your plugin methods in setTimeout(). A great reminder to reread info about event loops!

clearChoices still doesn't work.
<button name="button" type="button" class="btn btn-secondary" data-action="click->check#clean"><i class="bi bi-eraser"></i> </button>

function clean(event) {
  let el = event.target.closest('form').querySelector('.form-select')
  let finded_choice_select = new Choices(el)
  finded_choice_select.clearChoices()
}

Any advance in this issue for select-one type? I want to change the options programatically. I'm using clearChoices() to remove old choices and setChoices() to add new ones but old selected value remains.

Any advance in this issue for select-one type? I want to change the options programatically. I'm using clearChoices() to remove old choices and setChoices() to add new ones but old selected value remains.

Nevermind, I just solved it:

clearChoices() to remove old choices
setChoices( choices ) to add new choices
setChoiceByValue( newChoices[0] )  to replace selected old choices with first new choice

I see that, there is one parameter which is accepted by the function removeActiveItems(excludedId: number).
So if you are using placeholder, passing 0 or 1 as per the index should work.

For anyone else who stumbles across this thread, you can use the removeActiveItems method.

My problem with this answer is that it also removes the placeholder of a select-one:
<select>
  <option value="">This is a placeholder</option>
  <option>...</option>
  <option>...</option>
  <option>...</option>
</select>

Call the destroy() method first and then init()
const example = new Choices(element);
example.destroy();
example.init();

For anyone else who stumbles across this thread, you can use the removeActiveItems method.

My problem with this answer is that it also removes the placeholder of a select-one:
<select>
  <option value="">This is a placeholder</option>
  <option>...</option>
  <option>...</option>
  <option>...</option>
</select>

Call the destroy() method first and then init()
const example = new Choices(element); example.destroy(); example.init();

It's work for me. Thanks.


UI issues with new header

Version - master 5/3
Issues:

[x] Set theme to dark - The three different sections in light theme are very distinguishable, but in dark theme they all pretty much look the same.

[x] Environment, Theme & Namespace drop-down selection should be consistent with other menu drop-down.  When you select an item from Catalog, Infrastructure or Admin, the selected item turns blue and stays selected.  In the Environment theme, it turns a opaque color.  Make the sub-selections match the rest of the application.

[ ] Environment & User drop-downs are click while all others are hover - All the regular menu items are hover, but the Environment & User menu (the ones on both ends of the screen) items you have to click to see drop-down.  Make them all hover so they are consistent.

[x] User Menu is light colored in dark theme

[x] Environment, Namespace & User caret (v) are different colors then regular menu items.  They are light blue while the others are grey.

[x] User icon & drop-down caret are not centered

[ ] Environment, NameSpace & User drop-down menu have space between main menu & submenu.

[ ] All the menus should be on hover instead of some (environment, namespace, user) requiring clicks
[ ] A11y: need to be able to tab through all the menus, use down arrow to open up the dropdowns and select things, etc

[ ] The icons in the submenus are a little too close to the text.  Should match icon/text spacing in environments drop-down

Version - master 5.19
Verified fixed


Adds PipelineContext to be passed to execution state.

spelling and checkstyle, otherwise, LGTM

@russorat addressed your comments.

addressed your comments

[10:21]
can I merge ?

Russ Savage [10:21]
yep

N1Tin m0Tg1 [10:23]
thanks


[SPARK-41312][CONNECT][PYTHON] Implement DataFrame.withColumnRenamed

What changes were proposed in this pull request?

Implement DataFrame.withColumnRenamed by reusing existing Connect proto RenameColumnsNameByName .
Why are the changes needed?

API coverage
Does this PR introduce any user-facing change?

NO
How was this patch tested?

UT

@zhengruifeng

merged into master


Performance optimizations

So I've been looking at the Git source code and found a couple of things that could be improved. For a scripted play-through of Counterfeit Monkey release 4 I get the following results on my laptop (Intel Core 2 Duo in 64 bit mode on Linux):

gcc-4.9 -O2 -DUSE_INLINE: from 239s to 190s (79%)
clang-3.4 -O2 -DUSE_INLINE: from 304s to 224s (74%)

The first few patches actually just fix various things that GCC and/or clang complain about. The optimization changes follow. None of the patches make large changes to the code, they mostly nibble away at small inefficiencies at the edges. The core of the compiler/interpreter is rather inscrutable :)

HI Peter, I have finally got round to looking at these, and I've included all your patches, except for "Optimized memory access code." I wasn't entirely happy about this one as I am unsure as to what GCC version introduced the byteswap intrinsic, and I find that older GCCs still give much better performance on straight C code - on my system git compiled with GCC 2.95 is about 30% faster than when compiled with GCC 4.8.


Update icap-stunnel.md

We have recently finished integration of MCAS with Russian DLP solution InfoWatch Traffic Monitor and wanted to provide notes on integration of the DLP solution with MCAS

ISV partner has finished integration and we proposed to update docks to include instructions from their side.

@rkarlin - Would you review the proposed changes and add a comment indicating how to proceed:

#sign-off to merge the changes
#please-close to close the request

Thanks

@GitHubber17: I'm sorry - only the author of this article, @rkarlin, can sign off on your changes. But we do have an exception process - if you are on the Microsoft content or product team for this product area, you can ask the PR review team to review and merge it by sending mail to the techdocprs alias.

@Kirbogd Hi, I'm sorry I didn't look at this sooner - I was on vacation for the last week and a half. I will review your suggested changes with the product team and get back to you. Thanks for your contribution!

Thank you Karlin.
There are a few things specific to InfoWatch, but we have recently finished onboarding them into Office 365 DLP story getting one of the major local DLP players into the cloud story. So it would be great to have their specific listed in docs from marketing point of view
With best regards,
Kirill Bogdanov

От: rkarlin<EMAIL_ADDRESS>Отправлено: воскресенье, июля 15, 2018 3:56 ПП
Кому: MicrosoftDocs/CloudAppSecurityDocs
Копия: Kirbogd; Mention
Тема: Re: [MicrosoftDocs/CloudAppSecurityDocs] Update icap-stunnel.md (#37)
@Kirbogdhttps://github.com/Kirbogd Hi, I'm sorry I didn't look at this sooner - I was on vacation for the last week and a half. I will review your suggested changes with the product team and get back to you. Thanks for your contribution!
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/CloudAppSecurityDocs/pull/37#issuecomment-405090308, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AkimwSkbgRCTcAY8k23YQ-3v6vwrMP6fks5uGzv0gaJpZM4VJcUZ.

@Kirbogd Thanks again for your update! we don't include instructions for each third-party DLP at this time, but we'll save your information for the future in the event that someone else is interested in using InfoWatch with MCAS.

#please-close

Do we have any plans to have an integration docs library, just like we do for Azure AD with 3rd parties and Azure MFA with 3rd party vpn solutions? May be just referencing online documentation of our partners? For RUssia and CIS InfoWatch and Solar Security are much more relevant then Symantec or Forcepoint and help us to close gap in our DLP solution working with Cyrillic languages.
With best regards,
Kirill Bogdanov

От: rkarlin<EMAIL_ADDRESS>Отправлено: воскресенье, июля 15, 2018 4:01 ПП
Кому: MicrosoftDocs/CloudAppSecurityDocs
Копия: Kirbogd; Mention
Тема: Re: [MicrosoftDocs/CloudAppSecurityDocs] Update icap-stunnel.md (#37)
@Kirbogdhttps://github.com/Kirbogd Thanks again for your update! we don't include instructions for each third-party DLP at this time, but we'll save your information for the future in the event that someone else is interested in using InfoWatch with MCAS.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHubhttps://github.com/MicrosoftDocs/CloudAppSecurityDocs/pull/37#issuecomment-405090587, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AkimwQBfeOCouY6m0XyzAJp01QzKBRCWks5uGz0igaJpZM4VJcUZ.

@Kirbogd
Hi Kirill, thanks for the idea. we don't have any plans for an integration library right now, but thanks a lot for the idea we'll consider it.
Also, feel free to reach out to me with MCAS doc requests and feedback at<EMAIL_ADDRESS>thanks!


Updating Custom Layer interaction:

Passing Graph, Node, Builder and Err routine to custom method
This gives custom function more power e.g. can override/update input or attributes of layers
with unsupported options

Updating test case

is there a way we can make this a non breaking change....maybe not.

We need to make sure that add_custom_layers can be false but still we pick up the custom_conversion_functions argument. Not sure if that is the case right now.

@aseemw We can't make a non breaking change here. We are now giving complete control to custom function and treating them like internal conversion function.
Also, test case added when add_custom_layer is False (this is as such not required now) as we check custom_conversion_function first.

It might be useful to have a jupyter-notebook example on how to use these arguments (can do that in a separate PR)

Please also update the comment here https://github.com/onnx/onnx-coreml/blob/b0dffce34963e46ca4ed2c2b212ee87ca25dfeb1/onnx_coreml/converter.py#L367

@aseemw I have updated the comment
I would like to get your feedback once again before merging


Moved the accessibility link to the footer

Also removed the home link as this isn't needed.
Tidied up the css to remove redundant styles and updated the tab order for the page to reflect the changes.
https://www.pivotaltracker.com/story/show/95040936

LGTM :shipit:


Running on a non-FreeBSD host?

Hello, and thanks for your work on this image. I particularly appreciated the documentation!
Sorry if this is not the best place to ask this, but I'm having difficulty finding information about this. If you know of a better place to ask this, please advise.
My question is, can this image be made to run on a non-FreeBSD host, like Linux or Mac OS X? And for that matter, do you know what it doesn't work on a non-FreeBSD host? (I thought docker was supposed to avoid that kind of compatibility problem.)
Thanks for the help!

Hi Jeff,
Thanks for the comments and don't worry to get in touch.
Regarding running this image FreeBSD will only work on a FreeBSD host since Docker is not a virtualisation platform.
You can run a VM with FreeBSD and then run Docker on top of it: https://wiki.freebsd.org/Docker
Thanks!

Right! I figured that out about docker at some point, and forgot to circle around to this issue I opened. In case you're interested, I wrote about what I learned here.
Cheers, and thanks for the response!


Logstash / ELK

Have you given any thought to setting something up to forward to Logstash / ELK servers? I like Splunk, but the restrictions on throughput irk me, and every Wonderware system I've ever seen has a metric crapload of log messages happening.
Seems like it would be fairly easy, as the default for Logstash seems to be a JSON structure via TCP. Would need to set something up in the project as well as provide an input/filter for the Logstash server config.
Would this be something you'd be interested in having in this project if I get around to working on it? I'm certainly no professional programmer, but I'll take a crack at it if you're interested.

I haven't thought about it only for the reason that I haven't had a need.  I would love for someone else to jump in an work on something to help expand out the capabilities.
I should already have some examples of sending JSON straight to a TCP port.
I think the most appropriate approach might be to write something a little generic that sends the output to a TCP port in the format you specify.  It would be more work but seems like it would be more generic and useful across the board.
Let me take a look at what I have on my local repo this weekend and I'l try to make sure I've got my latest codeset up here so you can branch it and add this function.
Oh and one more thing is that my preference would also be to write this as a standalone App and not a core part of the library.  I want to keep the library to just a library.  Now, if we need to add something to generate a specific output format for a particular logging engine I think that's ok but the mechanics of transmission should be in an external app.
THX!
-Andy

I still have yet to dive in, so forgive any misunderstandings, but my vision for how I would use it would be to create a config file with the desired log source and output format, then run the forwarder as a service. I'm still trying to think if it would be better to have different services for JSON vs arbirtrary TCP / UDP vs syslog etc. or have that be configurable as well. Or we could just do a single "template" file that would contain the JSON markup or syslog or whatever, and use replacement variables for each of the log fields.
Do you do any filtering before forwarding?

I think we are generally on the same page with the concept of a forwarding service.  One thing I might encourage is to see if we can find something that does this already with just stdout from a console app.
Specifically I'm wondering if we could leverage something like http://www.rsyslog.com/ or a similar existing solution.  Then we could spend most of the time writing up great tutorials and maybe keep the actual console app required down to an ultra minimalist solutions, leveraging the great work of others for formats, filtering, etc.
As for filtering I do have some filtering capabilities built-in now.. but to be fair I'd need to go back and look at the library to remember exactly how I do it :-).

There is a logstash-forwarder which has the advantage of being native to Logstash, but there don't seem to be any binaries distributed for Windows. The one I started with is nxlog which has a neat setup where you specify the plugin you use to retrieve the data and how it gets forwarded.
I believe both of those will read from a file, but that's a bit clunky to repeat everything to a file only to send it on again. I think they both support stdin as well, but I'm not as clear on how that works. I haven't used rsyslog, but it looks more open-sourcey than nxlog, which does the community vs enterprise thing I find so infuriating.
I'll probably start with nxlog and see where I get. It may turn out that we only have to provide some config files for nxlog and logstash to handle formatting, though I would like to be able to have a single install script that would make it easy to set up. I'd also like to look at somehow extending nxlog to add a plugin for it, though I have no idea if that's feasible. I'll also take a look at rsyslog to see if it's easier to write a plugin for that.
I'm torn on the idea of filtering... it seems to me that you shouldn't log it locally if it's not worth forwarding, which would make me think that the appropriate place to filter is in SMC, then in Logstash if necessary.
Have you ever written a Windows service in C#?
One way or another I'll prob get into it sometime this month, I hope. I'm sure you're familiar with the schedules of the consulting business...

After a bit of poking about with rsyslog, it looks like the open source version is Linux-only, and the Windows version is paid. I'll focus on nxlog for now.

Sounds like a good direction to me.

I have an initial prototype working with nxLog. I'll throw some documentation in there and try to figure out this github pull request thing... prob this weekend you should see something.

Any progress to post?  I will be happy to integrate your work without a PR

Having dropped off the project that was driving my interest in 2015, and now back on a project that this would be good for... I am picking this back up, hopefully. I think this may be easier now as Elastic now has beats (forwarders) that can ingest a file, one of which claims to ingest data from stdin. I'll poke around a bit and see what I can figure out.

Sounds good.  Let me know if you need any support from my end.  As you can tell there hasn't been much activity on the core library in a while.  That's not a sign of lack of interest, it's more that there really isn't much else to add or change unless someone raises a PR for a bug or new feature.

Apologies for the questions... I barely remember anything about this from last time. Would the approach be for me to create an example project within the current solution showing how to create a Windows service that will use Filebeat to send data to elastic? Or is there a better way of doing it? I think I have Filebeat working with stdin, just not sure how to go about setting up the rest of it...

You are welcome to create a windows service but there might be easier ways these days.   For my recent applications I have been using NSSM to run console apps as services.   Also I don't know much about how you can run Filebeat but I know with Splunk you could configure something to run a command on an interval and then consume the output as a STDIN.  Don't know if that would be easier.

@fledder Were you able to get Filebeat to work? I looked at that a few months ago and it appeared to only handle text files. So I've been working on a custom Beat to read the logs. It's been a big learning curve as I learned Go and how to integrate with Elasticsearch and Kibana along the way. I've had it running on a handful of VMs here in my office for a few weeks and it seems to work OK.
@arobinsongit, I was wondering if that would be a project you'd be interested in incorporating into this aaLog repository, and now here we are talking about similar things. The timing is great.
The project is currently in a private Github repository but I'd be happy to share it with both of you if interested. My boss and I have had some discussions about making that repository public, but we also think it would be fine to add it to this aaLog repository (if you'd like) to give back and to keep all of the log reading projects together. What do you think?

@logic-danderson all contributions welcome.  I certainly appreciate the sentiment of giving back :-).  Two approaches I could see are to fold it into this repo or I can put a link in the ReadMe.  I'll let you make the call on what you think would work best.   Happy to work with you any whatever approach you want to take.

@arobinsongit Sweet. I'm fine with including it into this repo if that works for you. Just not sure mechanically how to do that.

You think I know :-).  Actually I think what you will need to do is fork the repo.  Clone your forked report down to your box.  Add your new code, commit, and then issue a pull request that I will accept.  The other method would just be to send it to me but let's try to do it the proper gitty way first.

@logic-danderson Filebeat now handles stdin as well. Not sure how long that has been a feature. I actually just yesterday got it to work, with a Windows service running the Filebeat exe periodically. I'll clean up the code and push it to my github in a few mins here. I'm going to try and figure out how to write an installer before I do a PR here, but for now here are the main bits of info I used to figure it out:
https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-input-stdin.html
https://discuss.elastic.co/t/filebeat-does-not-exit-on-eof-input-type-stdin/69545/2
A custom beat actually sounds really useful... my solution has a whole separate service to manage, so a new beat would probably be less overhead.

Basic working solution is up at https://github.com/fledder/aaLog/tree/aaLogElasticFileBeat but i have a few more things to do before I make a PR. Should be done this week.

Thank you both. I'll have to research how to integrate a Go project into a larger repository. I'm new to Go but it seems like it expects each project to be in its own repository. I'll investigate when I get time.

Short story is I decided to make the current repository public instead of trying to merge it into the aaLog repository. The repository is here: https://github.com/logic-danderson/aalogbeat
If you want the binary to test check the Releases tab or here: https://github.com/logic-danderson/aalogbeat/releases/tag/0.1
Since aaLog is a .NET solution and Aalogbeat is a Go project, I don't think merging them would go well. Go in general and the Elastic Beats tools in particular seem to be quite picky about the build environment. And you need to build this on Linux anyway (the readme shows to build for Windows despite being on Linux).
So for now, at least, I'm going to leave it where it is. Please take a look.
Thanks.

Aaahh - so you completely rewrote the library in Golang.  I had been wanting to learn Golang and actually thought this would be a good project to do it.  Looking forward to seeing how you did it.  I'll add something to my ReadMe directing people to your library.
Here's what I'd be really curious about.  Can you run a performance test to see how many messages/second you get?  It's been a while for me but on a laptop with 32GB of RAM and an i7 processor I remember getting about 50k/second.

Pull request is in. It may not be a masterpiece but it appears to work...

@arobinsongit Good question. I hadn't been all that worried about benchmarking it.
I just ran a test on my development Linux VM that has 4 GB RAM and 2 CPUs. I copied a several aaLOG files over to it and timed how long it took to read them. In repeated executions it's taking about 1.3 seconds to read 75,544 records, so about the same as what you saw. That's just reading the records into memory, not sending them anywhere.
IRL the Beat wouldn't be that fast. it sends the records to Elasticserach in much smaller batches, so there's the network latency, waiting to confirm the previous batch was received before sending the next one, etc.


Did everything, but 'th waifu2x.lua' doesn't run

Title.
Here is there error that I get when I run 'th waifu2x.lua':
maverik7773@ubuntu:~/torch$ th waifu2x.lua
/home/maverik7773/torch/install/bin/luajit: cannot open waifu2x.lua: No such file or directory
stack traceback:
[C]: in function 'dofile'
...7773/torch/install/lib/luarocks/rocks/trepl/scm-1/bin/th:145: in main chunk
[C]: at 0x00406670
maverik7773@ubuntu:~/torch$
I don't have a lot of experience with Linux so I'm not entirely sure what to make of this. Any help would be much appreciated.
Update: Restarted my Ubuntu VM and now I cannot log in, so I guess it's broken. Still, help would be nice so I can avoid this when I try again to set this up.

ubuntu:~/torch$

I think your working directory is not waiuf2x source directory.
$ cd
$ git clone --depth 1 https://github.com/nagadomi/waifu2x.git
$ cd waifu2x
$ th waifu2x.lua

And waifu2x is requried CUDA environment. It might be hard to run on VM.
If you are a windows user, waifu2x-caffe or waifu2x-conver-cpp are simple solution.

 Sorry. And thank you. Now I just have to fix the problem with CUDA.


github: save Github events ids.

Save event IDs so the future loader will know it will not have to process it again.
Signed-off-by: Alexandre Terrasa<EMAIL_ADDRESS>

+1

+1


Fx subnet replacement under PRC when upgrading provider

This prevents the Subnet resource from being replaced under PRC when upgrading the provider.
Note this is an intentional divergence from the TF provider but the TF behaviour here is bad and we are not taking up a patch for this.
Note this is already covered by Test_network, see failure in https://github.com/pulumi/pulumi-azure/actions/runs/10178181276/job/28152031872?pr=2306
fixes https://github.com/pulumi/pulumi-azure/issues/2323
stacked on https://github.com/pulumi/pulumi-azure/pull/2306

This is already covered by Test_network, see the failure in https://github.com/pulumi/pulumi-azure/actions/runs/10178181276/job/28152031872?pr=2306 in the previous PR


[QUESTION] Java class version of the Jcenter release

Hello @rohansuri, this is more a question than a issue.
I tried using you ART implementation for a personal project, but I soon realized that the only release available is compiled using Java 12 as per this message:
Caused by: java.lang.UnsupportedClassVersionError: com/github/rohansuri/art/BinaryComparable has been compiled by a more recent version of the Java Runtime (class file version 56.0), this version of the Java Runtime only recognizes class file versions up to 52.0
I'm curious, is there a specific reason for this? Like maybe, GC reasons, etc...
Thanks btw, awesome work.

Hi @TonioGela, the latest 1.0.1-beta is built with Java 8, give it a try.
There's no specific reason really. Java 12 was the latest release when I started work on this.

Okay, thanks for the info!


Siddhi application always repeated start

Description:
I try to run siddhi application with the siddhi-sdk but ,I found that the siddhi-application will always repeated start-action.
This is the command-line when I started application:
F:/studySoftware/siddhi-sdk-1.0.0\bin\siddhi.bat run E:/CompanyProj/siddhiDemo/src/com/pop.siddhi
Here is the result :
[org.wso2.extension.siddhi.io.http.source.HttpConnectorPortBindingListener] : siddhi: started HTTP server connector localhost:8081
[org.wso2.extension.siddhi.io.http.source.HttpSourceListener] : Source Listener has created for url http://localhost:8081/Api/public/test
[org.wso2.extension.siddhi.io.http.source.HttpSourceListener] : Source Listener has created for url http://localhost:8081/Api/public/test
ERROR [org.wso2.siddhi.core.stream.input.source.Source] - Error on 'TestExecutSionPlan'. Listener URL http://localhost:8081/Api/public/test already connectedError while connecting at Source 'http' at 'FooStream'.
org.wso2.siddhi.core.exception.SiddhiAppCreationException: Error on 'TestExecutSionPlan'. Listener URL http://localhost:8081/Api/public/test already connected
	at org.wso2.extension.siddhi.io.http.source.HttpConnectorRegistry.registerSourceListener(HttpConnectorRegistry.java:143)

The bug info obviously show the problem,the application will start when it is already started
Also,I use the siddhi-io-kafka,the problem exist too.the log shows that the kafka-consumer will be created again and again.
So, I guess that this may be a bug
siddhi application source code:
@App:name('testSiddhi')

--@source(type='kafka',
--        topic.list='localtopic',
--        partition.no='1',
--        threading.option='single.thread',
--        group.id="test",
--        bootstrap.servers='localhost:9092',
--        @map(type='json'))
@source(type = 'http',
        receiver.url='http://localhost:8081/Api/public/test',
        basic.auth.enabled='false',@map(type='json'))
define stream FooStream (symbol string, price float, volume long);

--
--@sink(type='kafka',
--    topic='resulttopic',
--    partition.no='0',
--    bootstrap.servers='localhost:9092',
--    @map(type='json')
--)
@sink(type='log', prefix="LOGGER")
define stream OutputStream (symbol string, price float, volume long,multiple float);
@info(name = 'query1')
from FooStream select symbol, price, volume,(price * volume) as multiple  insert into OutputStream;

By the way,I also use Stream Processor Studio to test my code.it run successfully~
Affected Product Version:
Siddhi-SDK 1.0.0
OS, DB, other environment details and versions:
Windows 10 , Idea Version: 2017.3.3 ,Siddhi-plugin-Idea 1.1.0
Steps to reproduce:

Write a siddhi code ,and run it with siddhi-sdk.......
Generally speaking~ I don't know how to describle the step to reproduce it .  There are normally step to run a application with siddhi-sdk.I strictly follow the guide to build it~

Thank you ~QvQ

Thank you for reporting this issue. We will look into this. Meantime you can use the Stream Processor Studio.

Thank you for fix it ~~~, (￣▽￣)~

@yourgentlesmile please find the latest available sdk here. Please try out and see.

Thanks ,I will try it and tell you the result~ Thank you ╮(￣▽￣)╭

It worked well, Thank you ~( • ̀ω•́ )✧


Incorrect comment for std_landmark in updateWeights of particle_filter

In particle_filter.h, the parameter std_landmark of ParticleFilter::updateWeights is described as the std dev of range and bearing. However, in main.cpp, we pass the array sigma_landmark, which is used in main.cpp to add noise to x and y, rather than range and bearing.

Sorry I see this is duplicate https://github.com/udacity/CarND-Kidnapped-Vehicle-Project/issues/8


Problem with "push" operational data validation

In my code, I am using both "push" and "pull" operational data. With the "push" data, when I apply_changes() it works (no error, and data is there). However, if I try to validate() the data first before apply_changes() then I get an error.
I've modified the example code, as shown below. I am using the asyncio version.
Q1) Is this bug or am I doing something wrong?
Q2) It seems like doing validate() before apply_changes() would be a good way of doing it, but maybe it's not really needed - since apply_changes() throws an error if it's wrong. What's the recommended practise?
(I marked my edits with "<<<" in the below code)...
#!/usr/bin/env python3
# Copyright (c) 2020 6WIND S.A.
# SPDX-License-Identifier: BSD-3-Clause

"""
Minimalist application that subscribes to module changes, operational data
requests and RPC calls for the sysrepo-example.yang module using an asyncio
event loop and coroutines.
"""

import argparse
import asyncio
import logging
import signal
import sys

import libyang

import sysrepo

# ------------------------------------------------------------------------------
def main():
    parser = argparse.ArgumentParser(description=__doc__)
    parser.add_argument(
        "-v", "--verbose", action="count", default=0, help="Increase verbosity."
    )
    args = parser.parse_args()

    if args.verbose >= 3:
        level = logging.DEBUG
    elif args.verbose >= 2:
        level = logging.INFO
    elif args.verbose >= 1:
        level = logging.WARNING
    else:
        level = logging.ERROR
    logging.basicConfig(level=level, format="[%(levelname)s] application: %(message)s")
    #sysrepo.configure_logging(py_logging=True)

    loop = asyncio.get_event_loop()
    stop_event = asyncio.Event()
    loop.add_signal_handler(signal.SIGINT, stop_event.set)
    loop.add_signal_handler(signal.SIGTERM, stop_event.set)

    try:
        with sysrepo.SysrepoConnection() as conn:
           # <<< Inserted these lines, which pushes the rx/tx stats for eth0
            with conn.start_session("operational") as sess:
                sess.set_item("/sysrepo-example:state/network/interface[name='eth0']/stats/rx", 9999)
                sess.set_item("/sysrepo-example:state/network/interface[name='eth0']/stats/tx", 8888)
                sess.validate() # <<< this causes an error
                sess.apply_changes()

            with conn.start_session() as sess:
                logging.info("subscribing to module changes: sysrepo-example")
                sess.subscribe_module_change(
                    "sysrepo-example", None, module_change_cb, asyncio_register=True
                )
                logging.info(
                    "subscribing to operational data requests: /sysrepo-example:state"
                )
                sess.subscribe_oper_data_request(
                    "sysrepo-example",
                    "/sysrepo-example:state",
                    oper_data_cb,
                    asyncio_register=True,
                    oper_merge=True
                )
                logging.info("subscribing to rpc calls: /sysrepo-example:poweroff")
                sess.subscribe_rpc_call(
                    "/sysrepo-example:poweroff", poweroff, asyncio_register=True
                )
                logging.info(
                    "subscribing to action calls: /sysrepo-example:conf/security/alarm/trigger"
                )
                sess.subscribe_rpc_call(
                    "/sysrepo-example:conf/security/alarm/trigger",
                    trigger_alarm,
                    asyncio_register=True,
                )
                loop.run_until_complete(stop_event.wait())
        return 0
    except sysrepo.SysrepoError as e:
        logging.error("%s", e)
        return 1

# ------------------------------------------------------------------------------
async def module_change_cb(event, req_id, changes, private_data):
    print()
    print("========================")
    print("Module changed event: %s (request ID %s)" % (event, req_id))
    print("----- changes -----")
    for c in changes:
        print(repr(c))
    print("----- end of changes -----")
    print()
    await asyncio.sleep(0)

# ------------------------------------------------------------------------------
async def oper_data_cb(xpath, private_data):
    print()
    print("========================")
    print("Operational data request for %s" % xpath)
    data = {
        "state": {
            "system": {"hostname": "foobar"},
            "network": {
                "interface": [
                    {
                        "name": "eth0",
                        "address": "<IP_ADDRESS>/24",
                        #"stats": {"rx": 123456789, "tx": 987654321},       # <<< commented out this node
                    },
                    {
                        "name": "vlan12",
                        "address": "<IP_ADDRESS>/24",
                        "stats": {"rx": 0, "tx": 42},
                    },
                ]
            },
        }
    }
    print("returning %s" % data)
    print("---------------")
    print()
    await asyncio.sleep(0)
    return data

# ------------------------------------------------------------------------------
async def poweroff(xpath, input_params, event, private_data):
    print()
    print("========================")
    print("RPC call: %s" % xpath)
    print("params: %s" % input_params)
    out = {"message": "bye bye"}
    print("returning %s" % out)
    print("---------------")
    print()
    await asyncio.sleep(0)
    return out

# ------------------------------------------------------------------------------
async def trigger_alarm(xpath, input_params, event, private_data):
    print()
    print("========================")
    print("Action call: %s" % xpath)
    print("params: %s" % input_params)
    _, _, keys = list(libyang.xpath_split(xpath))[2]
    _, alarm_name = keys[0]
    seconds = input_params["duration"]
    out = {"message": "%s alarm triggered for %s seconds" % (alarm_name, seconds)}
    print("returning %s" % out)
    print("---------------")
    print()
    await asyncio.sleep(seconds)
    return out

# ------------------------------------------------------------------------------
if __name__ == "__main__":
    sys.exit(main())

When running the code, I get the following error...
$ ./application_asyncio.py -vvv
[DEBUG] application: Using selector: EpollSelector
[ERROR] application: Internal error (/home/stevend/projects/sysrepo/src/edit_diff.c:2660).: Internal error

Note, if I move the block of code doing the "push" data to after the call-backs have been subscribed then it fails, but this time with a timeout error (see below). I guess it is trying to call one of the call-backs in order to validate maybe?
$ ./application_asyncio.py -vvv
[DEBUG] application: Using selector: EpollSelector
[INFO] application: subscribing to module changes: sysrepo-example
[INFO] application: subscribing to operational data requests: /sysrepo-example:state
[INFO] application: subscribing to rpc calls: /sysrepo-example:poweroff
[INFO] application: subscribing to action calls: /sysrepo-example:conf/security/alarm/trigger
[ERROR] application: EV ORIGIN: "oper get" ID 1 processing timed out., User callback failed.: User callback failed

If I remove the validate() then it works, and the data is expected, but I would prefer to validate() if possible, unless this is wrong.

Looks like this was fixed in latest sysrepo & libyang "devel" branch, see https://github.com/sysrepo/sysrepo/issues/3137


Generate .hgignore with syntax:glob

Fixes #4005

r? @alexcrichton
(rust_highfive has picked a reviewer for you, use r? to override)

@bors: r+

:pushpin: Commit 1ec8936 has been approved by alexcrichton

:hourglass: Testing commit 1ec8936 with merge 727a7b9...

:broken_heart: Test failed - status-appveyor

@bors: retry

:hourglass: Testing commit 1ec8936 with merge 3ca6a20...

:sunny: Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing 3ca6a20f1098a9efb36d4583491d229af8eeb8be to master...


remove creation of custom nova dataplane service

The default nova dataplane service now supports an optional
nova-extra-config configmap
This change removes the creation of the custom service
but keeps the creation fo the nova-extra-config configmap
Depends-On: https://github.com/openstack-k8s-operators/dataplane-operator/pull/920
Related: OSPRH-6407

/approve

check-rdo

im hoping that https://github.com/openstack-k8s-operators/install_yamls/pull/851 will work allowing us to merge the dataplane change then this pr can be rebase to clean up once the depency cycle is broken

https://github.com/openstack-k8s-operators/install_yamls/pull/851 does apeare to work so we have a path forward to merging : https://github.com/openstack-k8s-operators/dataplane-operator/pull/920 assuming that now passes with the depends on. then when both are merged ill drop the hold form this pr

addressed here https://github.com/openstack-k8s-operators/install_yamls/pull/810


"padding-line-between-statements" not working consistently within components

Hello!
Unsure if my problem resides in this plugin or whether I should open an issue elsewhere. If this is the wrong place maybe someone can point me in the right direction 🙃
I'm having some problems with eslint's padding-line-between-statements rule in arrow function components. I'm trying to add newlines before all return statements and --fix if the newlines are missing. This is the rule I'm using:
// eslint.rc
// ...
"rules": {
  "padding-line-between-statements": [
    "error",
    {
      blankLine: "always",
      prev: "*",
      next: "return"
    },
  ]
}

And here is some example code I'm trying to lint:
const Example = props => {
  const renderSomething = array => {
    return array.map(string => {
      return {string};
    });
  };
  return
{renderSomething(['hello', 'world'])}
;
};

This DOES work on the second to last line (where I'm returning the div), but does NOT work for the map function or the return in the map function. It will in fact delete any newlines that are added manually before those return statements.
Any help will be appreciated! Thank you!

This repo is for eslint-plugin-react; that rule is in eslint core. That it's applying to jsx doesn't change that :-) please file it there instead.


Inconsistent cross platform behavior when using multiprocessing in spawn mode (hashtag746)

Hi Delgan! First of all, thanks for the awesome library.
I'm currently developing a tool that is supposed to run on windows, linux and macos that uses multiprocessing, and to guarantee consistent behavior on all platforms we use multiprocessing in "spawn" mode on all platforms.
However, when using multiprocessing in spawn mode on linux, and setting up logging as suggested [here]( logging anything in the subprocesses seems to freeze or kill them.
The following minimal example should reproduce the issue on linux:
main.py:
import multiprocessing
import sys

from loguru import logger
import workers

def main():
    logger.remove()
    logger.add(sys.stderr, enqueue=True)

    with multiprocessing.get_context('spawn').Pool(4, initializer=workers.set_logger,
                                                   initargs=(logger,)) as pool:
        pool.map(
            workers.log_test,
            list(range(10))
        )

if __name__ == "__main__":
    main()

workers.py:
from loguru import logger

def set_logger(logger_):
    global logger
    logger = logger_

def log_test(num):
    print("before log")
    logger.info(f"hi {num}!")
    print("do we reach this?")

Only "before log" is printed, the log message is not and neither is the print statement after. I have also ran the same code on a windows machine, and it seems to work as expected there. Running in "fork" mode on linux also works as expected.
The subprocesses spawned by python seem to actually segfault, if it helps here's what coredumpctl says:
           PID: 21760 (python)
           UID: 1000 (tom)
           GID: 1000 (tom)
        Signal: 11 (SEGV)
     Timestamp: Mon 2022-11-14 15:57:36 CET (1min 22s ago)
  Command Line: /home/tom/projects/loguru_report/venv/bin/python -c $'from multiprocessing.spawn import spawn_main; spawn_main(tracker_fd=16, pipe_handle=26)' --multiprocessing-fork
    Executable: /usr/bin/python3.10
  Size on Disk: 2.4M
       Message: Process 21760 (python) of user 1000 dumped core.

                Stack trace of thread 21760:
                hashtag0  0x00007f60404a7724 sem_trywait (libc.so.6 + 0x8e724)
                hashtag1  0x00007f6040ad9514 n/a (_multiprocessing.cpython-310-x86_64-linux-gnu.so + 0x2514)
                hashtag2  0x00007f6040758204 n/a (libpython3.10.so.1.0 + 0x158204)
                hashtag3  0x00007f6040744f4a _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144f4a)
                hashtag4  0x00007f6040760da2 n/a (libpython3.10.so.1.0 + 0x160da2)
                hashtag5  0x00007f60407472da _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x1472da)
                hashtag6  0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag7  0x00007f6040744f4a _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144f4a)
                hashtag8  0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag9  0x00007f6040744f4a _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144f4a)
                hashtag10 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag11 0x00007f6040744f4a _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144f4a)
                hashtag12 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag13 0x00007f6040744f4a _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144f4a)
                hashtag14 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag15 0x00007f60407ac9c9 n/a (libpython3.10.so.1.0 + 0x1ac9c9)
                hashtag16 0x00007f6040783f95 n/a (libpython3.10.so.1.0 + 0x183f95)
                hashtag17 0x00007f60407b688b n/a (libpython3.10.so.1.0 + 0x1b688b)
                hashtag18 0x00007f6040744b16 _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144b16)
                hashtag19 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag20 0x00007f6040747585 _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x147585)
                hashtag21 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag22 0x00007f6040747585 _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x147585)
                hashtag23 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag24 0x00007f6040744f4a _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144f4a)
                hashtag25 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag26 0x00007f6040744f4a _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144f4a)
                hashtag27 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag28 0x00007f6040744b16 _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x144b16)
                hashtag29 0x00007f6040755959 _PyFunction_Vectorcall (libpython3.10.so.1.0 + 0x155959)
                hashtag30 0x00007f6040745c56 _PyEval_EvalFrameDefault (libpython3.10.so.1.0 + 0x145c56)
                hashtag31 0x00007f6040743760 n/a (libpython3.10.so.1.0 + 0x143760)
                hashtag32 0x00007f60407f0e04 PyEval_EvalCode (libpython3.10.so.1.0 + 0x1f0e04)
                hashtag33 0x00007f60408015b3 n/a (libpython3.10.so.1.0 + 0x2015b3)
                hashtag34 0x00007f60407fcd0a n/a (libpython3.10.so.1.0 + 0x1fcd0a)
                hashtag35 0x00007f60407f4031 PyRun_StringFlags (libpython3.10.so.1.0 + 0x1f4031)
                hashtag36 0x00007f60407f3f90 PyRun_SimpleStringFlags (libpython3.10.so.1.0 + 0x1f3f90)
                hashtag37 0x00007f604080dad9 Py_RunMain (libpython3.10.so.1.0 + 0x20dad9)
                hashtag38 0x00007f60407e25eb Py_BytesMain (libpython3.10.so.1.0 + 0x1e25eb)
                hashtag39 0x00007f604043c290 n/a (libc.so.6 + 0x23290)
                hashtag40 0x00007f604043c34a __libc_start_main (libc.so.6 + 0x2334a)
                hashtag41 0x000056101580d045 _start (python3.10 + 0x1045)
                ELF object binary architecture: AMD x86-64

Version info:
Python 3.10.8

Package    Version
---------- -------
loguru     0.6.0
pip        22.2.2
setuptools 63.2.0

Hey  glad you like Loguru, and thanks for the fully reproducible example!
So, I haven't investigated much yet, but a wild guess would be that the Loguru internal multiprocessing.SingleQueue() (required when enqueue=True) is created with the default context and thus can't be used from a different context. In your case, on Linux, it's created with "fork" context when logger.add() is called but it tries to be used with "spawn" context from inside the Pool, which causes a crash.
Quoting [the multiprocessing documentation](

Note that objects related to one context may not be compatible with processes for a different context. In particular, locks created using the fork context cannot be passed to processes started using the spawn or forkserver start methods.

A quick workaround is to use [multiprocessing.set_start_method()]( before calling logger.add().
For now, I don't think of any better solution. I'll think about it but I'm not sure it's even fixable from within Loguru.

Awesome! Thanks for getting back to me so quickly. It didn't occur to me that I was setting things up in a different context than the one that was being used by the subprocesses.
Changing main.py to:
import multiprocessing
import sys

from loguru import logger
import workers

def main():
    logger.remove()
    logger.add(sys.stderr, enqueue=True)

    with multiprocessing.Pool(4, initializer=workers.set_logger,
                                                   initargs=(logger,)) as pool:
        pool.map(
            workers.log_test,
            list(range(10))
        )

if __name__ == "__main__":
    multiprocessing.set_start_method("spawn")
    main()

Does indeed fix the problem!
Thanks for your help. Would it be nice to add a little note of this in the documentation? I could make a PR if you want.

Added the note in

For information I implemented a new context argument to logger.add() because I was dissatisfied with the multiprocessing.set_start_method() workaround.
See hashtag851.
It will be available when I release the next Loguru version, and should be used this way (start method name also accepted as str):
import multiprocessing

context = multiprocessing.get_context("spawn")

logger.add("file.log", enqueue=True, context=context)  hashtag Use "spawn" instead of default "fork" on Linux.

with context.Pool(4) as pool:
    ...


API: Window.takeScreenshot

Building off the excellent work that @OhadRau did in bryphe/reason-glfw#72 - exposing the glReadPixels API + screenshots in all the platforms, I think it makes sense to have this be a first-class API on our Window object.
Proposal
We add a Window.takeScreenshot(w: Window.t, fileName: string) API.
This would:

At the end of the next render frame, call glReadPixels into a new Image, and call Image.save. These would be synchronous operations

This code that @OhadRau added in the reason-glfw example basically does all of this already - just about wrapping it up in an API:
  let captureWindow(w, filename) {
    let size = glfwGetFramebufferSize(w);
    let image = Image.create(~width=size.width, ~height=size.height,
                             ~numChannels=4, ~channelSize=1);
    let buffer = Image.getBuffer(image);
    glReadPixels(0, 0, size.width, size.height, GL_RGBA, GL_UNSIGNED_BYTE, buffer);
    Image.save(image, filename);
    Image.destroy(image);
  };

Use Cases

For Oni 2 - I'd love to have this to make it easy to snap a screenshot of the editor! IE, bound a key press to 'take screenshot', and have a configurable place for screenshots to be stored
For Revery - this would be a simple API for #156 to use for automated testing

NOTE: The proposed implementation would save the image synchronously, so it wouldn't be something used in performance-critical code. But for the use cases outlined above - that's not an issue.

Guess I'll take this over since I'm already pretty familiar with the API. Want anything specific for the example code?

Awesome, thanks @OhadRau !
Regarding example - good question. Hmm, perhaps we could add a Take Screenshot button somewhere. Or maybe just a minimal Screenshot.re example with a Take Screenshot button?

So uh.... looks like I missed something with my TGA encoder.

Pretty sure I know why this happens but I'll have to go fix that before we can add this to Revery.

Nice catch! That's interesting that it's inverted - and looks like the red/blue color channels are inverted. And strange that the logo doesn't seem impacted by the color switch.

@bryphe So I finally actually sat down and started working on this. The issue has to do with little-endianness causing the color bits to be reversed. Kind of an architectural question for reason-glfw, but would you say to swap these bits inside of glReadPixels or inside of Image.save?


only check msrv in clippy checks

bors r+

bors r-
actually I missed something...

bors r=Alexhuszagh

timeout, bumped from 5 to 10 minutes.
It's only long now because we have no cache

bors r=Alexhuszagh


install models not working

Hi, whenever I click 'install models' i got spinning wheel and never access to the Civitai.
What would be the cause for this error?

i don't get any error code. i'm just sharing to show you my comfy version

Hi update the latest version and it should be solved

From: Garin2-colab @.>
Sent: Saturday, June 1, 2024 4:41:07 AM
To: 11cafe/comfyui-workspace-manager @.>
Cc: Subscribed @.***>
Subject: [11cafe/comfyui-workspace-manager] install models not working (Issue #397)
Hi, whenever I click 'install models' i got spinning wheel and never access to the Civitai.
What would be the cause for this error?
Capture.PNG (view on web)https://github.com/11cafe/comfyui-workspace-manager/assets/123702734/59f95ee1-4ea1-4061-a9b5-509e936591c4
—
Reply to this email directly, view it on GitHubhttps://github.com/11cafe/comfyui-workspace-manager/issues/397, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEMEEONZ4PE4WE5YMP4Z65DZFDN6HAVCNFSM6AAAAABITNWVESVHI2DSMVQWIX3LMV43ASLTON2WKOZSGMZDQNJVHAYTKNI.
You are receiving this because you are subscribed to this thread.Message ID: @.***>

Hi update the latest version and it should be solved
…
________________________________ From: Garin2-colab @.> Sent: Saturday, June 1, 2024 4:41:07 AM To: 11cafe/comfyui-workspace-manager @.> Cc: Subscribed @.> Subject: [11cafe/comfyui-workspace-manager] install models not working (Issue #397) Hi, whenever I click 'install models' i got spinning wheel and never access to the Civitai. What would be the cause for this error? Capture.PNG (view on web)https://github.com/11cafe/comfyui-workspace-manager/assets/123702734/59f95ee1-4ea1-4061-a9b5-509e936591c4 — Reply to this email directly, view it on GitHub<#397>, or unsubscribehttps://github.com/notifications/unsubscribe-auth/AEMEEONZ4PE4WE5YMP4Z65DZFDN6HAVCNFSM6AAAAABITNWVESVHI2DSMVQWIX3LMV43ASLTON2WKOZSGMZDQNJVHAYTKNI. You are receiving this because you are subscribed to this thread.Message ID: @.>

thank you, it worked!!!


use jxcore instead node.js

will better

Node.js is 2 times faster than JXcore. So it will only make things slower.

https://www.youtube.com/watch?v=xE_oH1tJI0w

Considering the performance it already has, I think it is fine the way it is.


Changes to tag saving to work windows

Changed a couple lines in tag.go that are not compatible with windows to be more cross-compatible. Tested on Windows 10 and Ubuntu 16.04

Thanks for PR! I'll merge it, but I have one question: why did you move file closings from defer to the end of the functions?

I think the cause may be to avoid the rename of open files.
A test-case to demontrate the issue (and be able to try on windows) would be nice.

@mro exactly. @forgiv also commented it in source files.
Ok, I merge it.

maybe keeping the defer would still be nice? https://github.com/mro/id3v2/commit/22f4e86ddd9a6bbac1d1fabaa32d54798bf8da98
The diff mostly is due to indentlevel+=1

@mro but it looks ugly :(

@bogem lol, the diff indeed looks horrible due to the increased indentation and lots of whitespace diff.
But the result (anon func) is quite nice, don't you think?
https://github.com/mro/id3v2/blob/22f4e86ddd9a6bbac1d1fabaa32d54798bf8da98/tag.go#L232

uh, what a garbage. Sorry for the confusion.

@mro Sorry, but I mean the anonymous function looks ugly. It shouldn't be implemented in this way


SEGV at embedded_elf_loader.c:305 when compiling ssd_mobilenet_v2_dynamic_1.0_float

This issue happens with asan enabled:
wget https://storage.googleapis.com/iree-model-artifacts/ssd_mobilenet_v2_dynamic_1.0_float.tflite
iree-import-tflite ssd_mobilenet_v2_dynamic_1.0_float.tflite --output-format=mlir-ir -o ssd_mobilenet_v2_dynamic_1.0_float.mlir
iree-benchmark-module --device=local-task --module=mobilenet_float.vmfb --function=main --input=1x244x244x3xf32 --task_topology_group_count=8 --device_allocator=caching --device_allocator=caching --time_unit=ns --benchmark_repetitions=10

==682945==ERROR: AddressSanitizer: SEGV on unknown address 0x7fbf76858000 (pc 0x7fbf76874682 bp 0x7fbf76a52920 sp 0x7fbf76a52868 T7)
==682945==The signal is caused by a WRITE memory access.
    #0 0x7fbf76874682  (<unknown module>)
    #1 0x555cff5f00e6 in iree_hal_elf_executable_issue_call /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/hal/local/loaders/embedded_elf_loader.c:305:13
    #2 0x555cff54da4c in iree_task_dispatch_shard_execute /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/task.c:800:11
    #3 0x555cff54face in iree_task_worker_execute /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/worker.c:188:7
    #4 0x555cff54face in iree_task_worker_pump_once /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/worker.c:249:3
    #5 0x555cff54face in iree_task_worker_pump_until_exit /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/worker.c:298:12
    #6 0x555cff54face in iree_task_worker_main /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/worker.c:376:5
    #7 0x555cff5696cb in iree_thread_start_routine /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/base/internal/threading_pthreads.c:130:29

AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (<unknown module>)
Thread T7 created by T0 here:
    #0 0x555cff3cd42c in pthread_create (/usr/local/google/home/diegocaballero/iree2/build/debug/tools/iree-benchmark-module+0x18742c) (BuildId: 0c7dbdd371f4ac15)
    #1 0x555cff568c62 in iree_thread_create /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/base/internal/threading_pthreads.c:180:10
    #2 0x555cff54f3e6 in iree_task_worker_initialize /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/worker.c:67:26
    #3 0x555cff5445e2 in iree_task_executor_create /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/executor.c:146:16
    #4 0x555cff543647 in iree_task_executors_create_from_flags /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/task/api.c:336:14
    #5 0x555cff537150 in iree_hal_local_task_driver_factory_try_create /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/hal/drivers/local_task/registration/driver_module.c:50:3
    #6 0x555cff5128d4 in iree_hal_driver_registry_try_create /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/hal/driver_registry.c:316:14
    #7 0x555cff512a7a in iree_hal_create_device /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/hal/driver_registry.c:344:3
    #8 0x555cff50eacf in iree_hal_create_device_from_flags /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/tooling/device_util.c:605:3
    #9 0x555cff509fa6 in iree_tooling_load_hal_async_module /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/tooling/context_util.c:113:3
    #10 0x555cff509fa6 in iree_tooling_resolve_module_dependency /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/tooling/context_util.c:315:5
    #11 0x555cff6289ea in iree_vm_bytecode_module_enumerate_dependencies /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/vm/bytecode_module.c:531:5
    #12 0x555cff50928e in iree_tooling_resolve_modules /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/tooling/context_util.c:379:14
    #13 0x555cff50ad3d in iree_tooling_create_context_from_flags /usr/local/google/home/diegocaballero/iree2/runtime/src/iree/tooling/context_util.c:461:3
    #14 0x555cff421981 in iree::(anonymous namespace)::IREEBenchmark::Init() /usr/local/google/home/diegocaballero/iree2/tools/iree-benchmark-module-main.cc:461:5
    #15 0x555cff421981 in iree::(anonymous namespace)::IREEBenchmark::Register() /usr/local/google/home/diegocaballero/iree2/tools/iree-benchmark-module-main.cc:437:7
    #16 0x555cff421981 in main /usr/local/google/home/diegocaballero/iree2/tools/iree-benchmark-module-main.cc:588:41
    #17 0x7fbf77246189 in __libc_start_call_main csu/../sysdeps/nptl/libc_start_call_main.h:58:16

Hey @dcaballe , it looks like a codegen issue. I don't have much context about the model. Could you help triage this?

I would really appreciate some help as I've been reporting and root-causing multiple issues full time for a week. Would you have cycles to help?

Thanks for reporting and root-causing those issues! As I'm just back to work, I'm still catching up with what's happening and addressing other issues. I won't have cycles in the next few days. I can help when I got some cycles. Could you paste the compilation flags? E.g., what's the target triple to reproduce the issue? Is it default?
Also, would @vmurali have cycles to help triaging it? IMO, it would be a good opportunity to get more familiar with the e2e compilation stack.

I narrowed it down to a single op. It seems like an issue for concat.
module {
  func.func @foo(%arg0: tensor<1x?x91xf32>, %arg1: tensor<1x?x91xf32>, %arg2: tensor<1x?x91xf32>, %arg3: tensor<1x?x91xf32>, %arg4: tensor<1x?x91xf32>, %arg5: tensor<1x?x91xf32>, %arg6: tensor<1x?x91xf32>) -> tensor<1x?x91xf32> {
    %0 = "tosa.concat"(%arg0, %arg1, %arg2, %arg4, %arg5, %arg6) {axis = 1 : i64} : (tensor<1x?x91xf32>, tensor<1x?x91xf32>, tensor<1x?x91xf32>, tensor<1x?x91xf32>, tensor<1x?x91xf32>, tensor<1x?x91xf32>) -> tensor<1x?x91xf32>
    return %0 : tensor<1x?x91xf32>
  }
}

To repro:
$ iree-compile --output-format=vm-bytecode --iree-hal-target-backends=llvm-cpu ~/repro.mlir -o /tmp/b.vmfb --iree-input-type=tosa --iree-llvm-sanitize=address --iree-llvm-link-embedded=false
$ iree-run-module --module=/tmp/b.vmfb --device=local-sync --function=foo --input=1x244x91xf32 --input=1x244x91xf32 --input=1x244x91xf32 --input=1x244x91xf32 --input=1x244x91xf32 --input=1x244x91xf32 --input=1x244x91xf32

note: I can only reproduced it with ASAN. It looks like there are issues in codegen.

@hanhanW Setting as a P2 'in progress' - please update here if needed.


Improvements to job launch and run script

Change: swap the order of setsid and sudo at task launch. This ensure sudo is in a different process group than the Genie app [1], as such it will respond to a signal by forwarding it to its children (the run script).
Motivation: a recent sudo patch [1] makes sudo not forward signals to its children if the signal comes from a process in the same group.
Change: write genie.done into a different file, and atomically swap it if one does not exist already.
Motivation: if the command completes during handing of a kill signal, it may overwrite the genie.done file created by the kill handler.
Change: use absolute paths for output files created in the run script.
Motivation: if a command performs a pushd or changes working directory, the run script may fail to write output files.
Change: use kill -0 to check for termination of the child process of the run script.
Motivation: the existing solution with pgrep was not working on Linux.
Change: increase verbosity of the run script.
Motivation: better visibility into what happened at runtime.
Change: disable 'failure' trap once inside the 'kill' trap.
Motivation: the 'failure' has no reason to execute and can override output files.
[1] https://www.sudo.ws/repos/sudo/rev/7ffa2eefd3c0 see also [2]
[2] https://stackoverflow.com/questions/34337840/cant-terminate-a-sudo-process-created-with-python-in-ubuntu-15-10/34376188#34376188

Coverage increased (+0.006%) to 88.801% when pulling 896a73824f2e7e8c8e2c65f4fd9d63683ea9bcbc on mprimi:GENIE-154-kill-job-on-xenial into 7c9f20d3ef9864536d6826bd2cb470606f5bc954 on Netflix:3.0.x.

Coverage increased (+0.006%) to 88.801% when pulling 896a73824f2e7e8c8e2c65f4fd9d63683ea9bcbc on mprimi:GENIE-154-kill-job-on-xenial into 7c9f20d3ef9864536d6826bd2cb470606f5bc954 on Netflix:3.0.x.

Coverage increased (+0.009%) to 88.804% when pulling 953ee1566ead0ba0cf591e6af4661c7190d6028f on mprimi:GENIE-154-kill-job-on-xenial into 7c9f20d3ef9864536d6826bd2cb470606f5bc954 on Netflix:3.0.x.


Replace custom version with setuptools_scm

There is an extension for setuptools, which provides the functionality we need and which
integrates nicely with the build system requirements handled by pyproject.toml.
Astropy is are also using this:
https://github.com/astropy/astropy/blob/master/pyproject.toml

can you explain what this does and if it really replaces what we use? There was a lot of tweaking to get the current system to work correctly with the conda builds, etc, so I would like to avoid changing this until the next version.


feat(keymaps): add the show_details option

Hi, thanks for this package!
I'm migrating from the telescope (because of slowness on large codebases), and I noticed that the keymaps picker is too restrictive, which is not very useful for those who provide detailed descriptions for all bindings:

This PR introduces the show_details option, which (if false) disables the detail column completely and shows this info only if description is empty.
By default, show_details = true, thus it doesn't affect existing users.
Result:

Ty for the PR @loyd, I answered your Q in the review and a minor comment.
Did you check the preview of the lua function callback works without show_detsil? I’m thinking perhaps we can have a more flexible approach to the issue reordering the entries with --with-nth?
We can set --delimiter=|, place the description last (with no substring limitation) and then use --with-nth=1,2,4,3 for a “show_detail” entry and --with-nth=1,2,4 without (the 3rd field being the details).

Ty for the PR @loyd, I answered your Q in the review and a minor comment.

Thanks for the fast review. Fixed.

Did you check the preview of the lua function callback works without show_detsil?

Yep, of course, it looks as previously, but without an extra three spaces in the description column.

We can set --delimiter=|, place the description last (with no substring limitation) and then use --with-nth=1,2,4,3 for a “show_detail” entry and --with-nth=1,2,4 without (the 3rd field being the details).

That would be nice. However, it means columns cannot include | (unlikely, but possible).

That would be nice. However, it means columns cannot include | (unlikely, but possible).

you’re right, perhaps we can add utils.nbsp .. | as separator and use utils.nbsp as delimiter?

use --with-nth=1,2,4,3 for a “show_detail”
and --with-nth=1,2,4 without

The column shouldn't be limited, but I doubt limiting detail is a good idea for users without good descriptions.
Thus, details should be limited (and with %-33s) if show_details=true and shouldn't be otherwise. That means it's not only about ordering, and --with-nth is not enough. So, I'm not sure it's significant improvements in code (I've tried it).
Maybe calculate the real width of columns?

use --with-nth=1,2,4,3 for a “show_detail”
and --with-nth=1,2,4 without

The column shouldn't be limited, but I doubt limiting detail is a good idea for users without good descriptions.
Thus, details should be limited (and with %-33s) if show_details=true and shouldn't be otherwise. That means it's not only about ordering, and --with-nth is not enough. So, I'm not sure it's significant improvements in code (I've tried it).
Maybe calculate the real width of columns?

Maybe I’m overthinking this, show_detail option the way you did it should be perfect :)

And ty so much for the contribution @loyd :)


Laravel 10.48.2 Shift

This pull request includes updates for the recent minor version release of Laravel as well as updates to your package dependencies. Feel free to commit any additional changes to the shift-ci-v10.48.2 branch.
Before merging, you need to:

Checkout the shift-ci-v10.48.2 branch
Review all pull request comments for additional changes
Run composer update
Thoroughly test your application (no tests?, no CI?)

:warning: The Shift build servers run PHP 8.2. If you are running a different version of PHP you should run composer update locally to ensure you have the proper versions of your dependencies to reflect your PHP environment.


See entire next-prev sequence

Would also be cool if we could see an entire linear sequence of next-prevs in a thread (like a forum thread / twitter-thread / etc).

New thread as requested!

Was thinking that it could be simply embeds on a parent page:
Parent
![[A]]
![[B]]
![[C]]
![[D]]
Where A => B => C => D
Would be pretty cool indeed, and have it auto-populate as the 'thread' becomes longer. I'm not too sure what to do with forks though

@crazymedguy @chaecramb I've added Breadcrumbs codeblocks in the latest release :D
There is a whole bunch of potential here, and one thing it can do is show a thread of next/prev notes!
Go to the "first" note in the thread, and add:
```breadcrumbs
type: tree
dir: next
```

Let me know how this works :)

Just tried it out - was wondering if it would be possible to present them as a flat threaded structure (like the forum here) instead of a continuously indenting structure, because threads can get quite long too

@crazymedguy I was also thinking that. One downside is that a flat structure doesn't show forks, so that meaning is lost. But I will make it optional.
If you add flat: true to the codeblock, it will be flat

This has been added in 2.24.0 :)

You could make it collapsible maybe? :)
Like a reddit thread with a [+]

@crazymedguy haha I like both of these ideas. Can you make separate FRs for both 😅

@crazymedguy checkout the latest version :D
If you add content: true, it will allow you to fetch the note content

@crazymedguy I've already changed this!
Use content: open or content: closed to show the content of each note, with the dropdown open or closed

Gonna close this out, thanks for prompting the idea for BC-Codeblocks :)


Support for encrypted MPQs

I still haven't encountered any, but according to references encrypted MPQs are possible. Possibly Warcraft III maps?

In my fork (https://github.com/TheSil/mpyq) I've added very basic support for encryption (method determined from https://github.com/ladislav-zezula/StormLib). Feel free to check it out, although its very dirt (works for my case where I just wanted to print map commands, see https://github.com/TheSil/w3mpq/blob/master/get_commands.py)


[BUG] Link not working on Bucket Notifications page

Describe the bug
The link to the ListenNotification doc in the Global Events section is appearing as text, not a link.
To Reproduce
Steps to reproduce the behavior:

Go to 'Bucket Notifications > Global Events'
In the first paragraph under Global Events, the link to ListenNotification is not working.

Expected behavior
I'd love a link, of course.
Screenshots

Desktop (please complete the following information):

OS: MacOS
Browser: Chrome
Version: 116.0.5845.110

Should be fixed - rebuilds usually take a few minutes.


MeshWriters dropped?

Hi, any particular reason that MeshWriters support was dropped completely?

Hello.
I see MeshWriter.cpp/h it in old SF repo, i guess it got lost when i moved to GitHub and did whole refactor. Sorry for that! Might get back into the repo one day.


Provide Helm/K8s manifests

Feature Request
We want k8s manifests. Helm form or pure k8s manifests (kustomize, ..).
Acceptance Criteria

Working manifests.
Dependencies optional.

Benefits:

Easy to deploy in k8s environments

Moved the helm chart development here: https://github.com/Alethio/ethstats-network-server/pull/14
Will close this.


Feature Request: Two-Step Completions

The Problem
After accumulating more words in my custom dictionaries, I noticed a lot of completions actually share a similar "string beginning". For example I have quite a bunch of completions that look like this:

The problem here is that I would have to scroll through quite the list if I wanted to select "innovation studies". Narrowing down the list by typing more letters also is quite inefficient, since I would have to type out "innovation s" reduce the number of completions sufficiently. However, both methods would defeat the purpose of an autocompletion mechanism, since the very idea of of autocompletion is to reduce the amount of typing.
I think the problem is specific to autocompletion of natural languages, since conjugations or plural forms result in words with a similar stem ("organize", "organizing", "organization", ...)

A Suggestion for a Solution
I think the best solution to tackle this would be some sort of "two-step-completion". If Various Complements notices that there are many items that have the same beginning, then it should (partially) merge the items into a new item that is consists of the shared string beginning. Selecting that item would complement that partial string, and instantly trigger a second, follow-up suggester, displaying the remaining string of the previously merged items. Let me illustrate with an example. Suppose you have a custom dictionary with the following terms:

organize
orchestra
organizing
organizers
organizer
organization
organizations

Typing "or" would give you seven suggestions, a lot to scroll through if you want to select "organizations". But as six of the items share a string beginning – "organiz" – the suggester could summarize and display two items:

organiz...
orchestra

Now, if I select "orchestra", various complements would work as usual. However, if I select "organiz...", Various complements would complement "organiz" and then display a follow-up suggester, displaying these items, which are the "remaining" strings of the items from above, if you cut "organiz".

e
ing
ers
er
ation
ations

Now, I could type "a" to reduce the list to two items, and then easily select one of them.

Evaluation of the Suggested Solution
Now we can compare the different approaches to see how the suggestion would improve the autocompletion mechanism. Suppose we want to select "organizations" from our list of seven items from above.

Method 1: type or, hit arrow down six times, hit enter → 9 keystrokes
Method 2: typing till you have reduced the list to two items: organiza, then hit arrow down one time, hit enter → 10 keystrokes
Method 3 (the suggested solution): type or, hit enter to select "organiz...", type a. You now have "ation" and "ations" left, and press arrow down and enter to select right word. → 5 keystrokes

That's a reduction of keystrokes by ~50%. And that does not even factor in the fact that the suggested solution also reduces the amount of text your eyes see (the redundant "organiz" is only displayed once, not six times), which probably also makes the "scanning" for the right item quicker. And on top of that, this is even a fairly simple example. In cases like with the screenshot above (all the words starting with "innovat"), the words are longer and there are more items; meaning you would save even more keystrokes in cases like that.
Implementing this feature request would make Various Complements reflect the characteristics of natural languages, instead of simply applying the autocompletion-logic from code editors without considering that text is different from code. This would make Various complements a truly smart completion engine – one that I even do not know in any other app.

Hi, @chrisgrieser. Thank you for your FR :)
Your suggestion is very amazing, but it would be too hard to implement it for now.
As an alternative, how about a terminal-like feature that completes up to common forward matching characters?
For example.

organize
orchestra
organizing
organizers
organizer
organization
organizations

If we push org<TAB> , it completes to organiz and shows suggestions as follows.

organize
organizing
organizers
organizer
organization
organizations

In addition, the following issue may also help.
https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/issues/141

As an alternative, how about a terminal-like feature that completes up to common forward matching characters?

that sounds like a very good alternative solution, yes! Potentially even better than mine, cause users familiar with the Terminal (to which I also belong) may find this more intuitive

@chrisgrieser
I have released v7.4.0-beta1 🚀
Please enable the following option and try it 👍

I have been using this feature for a while and personally I am not sure if it is really necessary. So I marked this feature as Experimental.

Thanks, I just tried it and works so far. I'll keep you posted how well it works on daily usage.
One thing I already noticed is that it kinda interferes with tab as additional cycle key, and tab-cycling is the standard in the Terminal or in code editors, so it might be useful to have alternatives keys for common prefix completion. But I'm also not sure about this one 🤔

Thank you for your trying :)

it might be useful to have alternatives keys for common prefix completion

I agree 👍

Hi,
I'm a bit late to the discussion, but how about something like this:

Where you can press the corresponding number to select the word you need. The screenshot is from Fastkeys, which also has autosuggest, but the problem with it is it doesn't show the suggestions under the caret and doesn't have all the other goodies Various Complements has.

@Drakemoor
Please follow the https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/issues/141 👍

After #245

@chrisgrieser
I have released it in v9.0.0-beta1 🚀
I would appreciate it if you could check it out before the official release.

I currently can't discern the hotkey "completion" with simply pressing Esc

@vanbang9710
I do not recommend assigning Escape, but if necessary, create an Issue.

I meant I don't know what the hotkey "completion" is for. It seems the same as Esc

@vanbang9710
Please read this issue.

I've already read it before asking. Can you please explain further?

I meant I don't know what the hotkey "completion" is for. It seems the same as Esc

The "completion" command runs "Two-Step Completions".
chrisgrieser already explains why such a completion is needed as https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/issues/156#issue-1316022345. Then, I implemented that feature link https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/issues/156#issuecomment-1200340717.
If you are unclear about any of those comments, please quote them and ask questions.

When I press "Completion", the models is closed and the word stays the same

@vanbang9710

the word stays the same

It is as expected because all suggestions start with machine. For details, please read https://github.com/tadashi-aikawa/obsidian-various-complements-plugin/issues/156#issuecomment-1200340717.

the models is closed

It is not as expected. And I couldn't reproduce it. Could you tell me the reproduction steps in the sandbox vault?

I understand how it works now. Sorry, the unexpected behavior was because I used an assigned hotkey

@tadashi-aikawa Thank you for the wonderful plugin and apology for adding a comment on a closed ticket. Want to add here to keep the context. My question is:
I tried tab-based completion (like in the terminal), but the tab key works differently in obsidian. How do I utilize this feature? Thanks!

@asknet
The ⚙ Hotkeys configuration should work for you.

Thank you @tadashi-aikawa. Appreciate the quick response!


docs(readme): fix image urls and core table alignment

What kind of change does this PR introduce?
Clean up minor issues in readme.
Did you add tests for your changes?
N/A
If relevant, link to documentation update:
N/A
Summary

Fix links for all plugins / loaders to now route to the proper library and not the image in github.
Fix alignment in the Core Team table

Does this PR introduce a breaking change?
N/A
Other information
//cc @TheLarkInn

Thanks

btw. skip ci doesn't seem to work. CI is required.

i.i.r.c Travis didn't actually run which was the point given I opened this during prime time :)


Save cap preference in local storage

Someone mentioned that the cap preference does not save in the discord server so I made the cap preference save to localStorage

Thank you for this PR! I'll review soon!


sed command to replace ip addresses fails on linux

This sed syntax doesn't work on Linux (Gnu sed)
https://github.com/camunda-community-hub/camunda-8-helm-profiles/blob/f083299faef259d21a6fd20c630a1163c1b7a8a2/include/ingress-nginx.mk#L22
sed -Ei ''

ingress-nginx.mk
sed -Ei '' "s/([0-9]{1,3}\.){3}[0-9]{1,3}/$$IP/g" camunda-values.yaml ; \

Not sure if there is a compatible way to make it (e.g. if just removing the quotes '' or it's mandatory in mac)
the pipeline way will make it
cat camunda-values.yaml | sed -E "s/([0-9]{1,3}\.){3}[0-9]{1,3}/$$IP/g" > camunda-values-updated.yaml

Maybe we should get rid of sed completely, e.g. by passing URLs as separate values directly to Helm.

I'm working on this in the ipaddress branch.

Azure should work now on both linux and mac
When installing azure ingress, the ip address is automatically configured (no longer needed to enter in the command line)

I haven't implemented for AWS yet, but will try to do so soon.
Note that I tried to use helm --post-renderer, but running into an issue. The post-renderer.sh script needs the values of make variables to be useful. For example, az command needs $(nodeResourceGroup) and $(appGatewayName) in order to find the ip address to use. But, so far, I haven't found a solution that I'm happy with to access makefile variables inside the post-renderer.sh script?

Maybe we could generate the post render script as a temporary file. But I guess that's similar to generating the yaml file with sed.
Did you try if environment variables make it though to the post render script similar to what we did in the update target?

Hi Falko, I like the idea of using environment variables + render scripts. That might work, however I think it'll be a fairly significant refactor, so I'm going to open a separate github issue for refactoring to use post render scripts.
Meanwhile, the latest code in the ipaddress branch is able to automatically find IP addresses and should work on mac and linux for AWS and Azure. Next step is to test to make sure auto discovering ip address in Google still works.

I heard a report of the following issue today. This is on Mac osx Monterey:
ingress-aws.mk attempts to get the IP address from the cluster. For some reason, sometimes when the targets from this file are run, the $(IP) variable appears to be set correctly in the elb-ip-address target but then it’s not set in the camunda-values-aws.yaml target?
Here's an example output showing the issue:
./aws-ingress.sh
Attempt to find ip address ...
Found ip address: <IP_ADDRESS>
Attempting to configure ingress with IP Address
sed "s/<IP_ADDRESS>//g;" ../ingress-nginx/camunda-values.yaml > ./camunda-values-aws.yaml

So far, I'm not able to reproduce this behavior, but need to research to see if maybe the way this IP variable is geting set inside the Makefile can be improved?

Scripts have been working on mac and linux for a while now, I haven't heard of any recent complaints.
Also - as long as Windows folks use the Windows Linux Subsystem these scripts should work as is.
Closing this issue for now. If we decide later to replace sed we can tackle that elsewhere.


History subsecond timestamp.  Fixes #905

Ensure MySQL TIMESTAMP columns are sub-second accurate.
SQLAlchemy has hooks to adapt column types to the dialect using the compiler extension.
Test included, which assumes a running MySQL.  Not sure how this fits with your test framework but it has demonstrated the fix works here.

Cool @stephenpascoe , we use tox for running the tests. It seems like Travis CI has some comments on your tests.
Overall this patch looks good and I'll merge once you make Travis green. :)

Thanks for the comment @gpoulin! :)
Let us know when you've fixed that @stephenpascoe and when you've melded your last "Various changes" commits. You should be able to run tox locally btw! :)

It turns out that MySQL 5.5 is the standard version in many ubuntu setups but I was testing with 5.6.  Subsecond timestamps are not supported in <5.6.  I am reverting to using the PK as a secondary search term as a work-around.

Cool, can you Meld your commits? The change looks pretty small but there are 9 commits ...

I'm trying to meld these commits and ended up deleting my remote branch.  I'll re-submit the PR with the melded commits.


Auth endpoints completed

Added post crud implementations, will require refactor later

Add /:id/upvote for posts and some minor tweaks to other files


RangeError in latest analyzer version

Hello!
Using analyzer:5.11.1, I have detected a runtime exception that seems to happen when trying to parse a file.
To reproduce:

clone https://github.com/rrousselGit/freezed
cd packages/freezed
dart pub upgrade
dart run build_runner watch -d

Note that I'm not sure which line of code triggers this. The stacktrace isn't very helpful, unfortunately.
You should see the following exception pop up:
RangeError (index): Invalid value: Valid value range is empty: 0
#0      _Array.[] (dart:core-patch/array.dart:10:36)
#1      TypeConstraintGatherer._interfaceType_arguments (package:analyzer/src/dart/element/type_constraint_gatherer.dart:602:30)
#2      TypeConstraintGatherer._interfaceType (package:analyzer/src/dart/element/type_constraint_gatherer.dart:576:16)
#3      TypeConstraintGatherer.trySubtypeMatch (package:analyzer/src/dart/element/type_constraint_gatherer.dart:319:14)
#4      GenericInferrer._tryMatchSubtypeOf (package:analyzer/src/dart/element/generic_inferrer.dart:644:28)
#5      GenericInferrer.constrainReturnType (package:analyzer/src/dart/element/generic_inferrer.dart:185:5)
#6      TypeSystemImpl.setupGenericTypeInference (package:analyzer/src/dart/element/type_system.dart:1777:16)
#7      NamedTypeResolver._inferRedirectedConstructor (package:analyzer/src/dart/resolver/named_type_resolver.dart:178:35)
#8      NamedTypeResolver._instantiateElement (package:analyzer/src/dart/resolver/named_type_resolver.dart:250:16)
#9      NamedTypeResolver._resolveToElement (package:analyzer/src/dart/resolver/named_type_resolver.dart:311:16)
#10     NamedTypeResolver.resolve (package:analyzer/src/dart/resolver/named_type_resolver.dart:126:7)
#11     ResolutionVisitor.visitNamedType (package:analyzer/src/dart/resolver/resolution_visitor.dart:1041:24)
#12     NamedTypeImpl.accept (package:analyzer/src/dart/ast/ast.dart:9402:50)
#13     ConstructorNameImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:3286:11)
#14     RecursiveAstVisitor.visitConstructorName (package:analyzer/dart/ast/visitor.dart:963:10)
#15     ConstructorNameImpl.accept (package:analyzer/src/dart/ast/ast.dart:3282:50)
#16     ResolutionVisitor._resolveRedirectedConstructor (package:analyzer/src/dart/resolver/resolution_visitor.dart:1551:27)
#17     ResolutionVisitor.visitConstructorDeclaration.<anonymous closure>.<anonymous closure>.<anonymous closure> (package:analyzer/src/dart/resolver/resolution_visitor.dart:365:11)
#18     ResolutionVisitor._withNameScope (package:analyzer/src/dart/resolver/resolution_visitor.dart:1680:8)
#19     ResolutionVisitor.visitConstructorDeclaration.<anonymous closure>.<anonymous closure> (package:analyzer/src/dart/resolver/resolution_visitor.dart:354:9)
#20     ResolutionVisitor._withElementWalker (package:analyzer/src/dart/resolver/resolution_visitor.dart:1669:8)
#21     ResolutionVisitor.visitConstructorDeclaration.<anonymous closure> (package:analyzer/src/dart/resolver/resolution_visitor.dart:353:7)
#22     ResolutionVisitor._withElementHolder (package:analyzer/src/dart/resolver/resolution_visitor.dart:1658:8)
#23     ResolutionVisitor.visitConstructorDeclaration (package:analyzer/src/dart/resolver/resolution_visitor.dart:352:5)
#24     ConstructorDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:3109:15)
#25     NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:9622:20)
#26     ResolutionVisitor.visitClassDeclaration.<anonymous closure>.<anonymous closure> (package:analyzer/src/dart/resolver/resolution_visitor.dart:310:22)
#27     ResolutionVisitor._withNameScope (package:analyzer/src/dart/resolver/resolution_visitor.dart:1680:8)
#28     ResolutionVisitor.visitClassDeclaration.<anonymous closure> (package:analyzer/src/dart/resolver/resolution_visitor.dart:291:7)
#29     ResolutionVisitor._withElementWalker (package:analyzer/src/dart/resolver/resolution_visitor.dart:1669:8)
#30     ResolutionVisitor.visitClassDeclaration (package:analyzer/src/dart/resolver/resolution_visitor.dart:290:5)
#31     ClassDeclarationImpl.accept (package:analyzer/src/dart/ast/ast.dart:2049:50)
#32     NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:9622:20)
#33     CompilationUnitImpl.visitChildren (package:analyzer/src/dart/ast/ast.dart:2594:21)
#34     RecursiveAstVisitor.visitCompilationUnit (package:analyzer/dart/ast/visitor.dart:927:10)
#35     CompilationUnitImpl.accept (package:analyzer/src/dart/ast/ast.dart:2587:50)
#36     LibraryAnalyzer._resolveFile (package:analyzer/src/dart/analysis/library_analyzer.dart:735:10)
#37     LibraryAnalyzer._parseAndResolve.<anonymous closure> (package:analyzer/src/dart/analysis/library_analyzer.dart:569:7)
#38     _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:625:13)
#39     LibraryAnalyzer._parseAndResolve (package:analyzer/src/dart/analysis/library_analyzer.dart:568:11)
#40     LibraryAnalyzer.analyze (package:analyzer/src/dart/analysis/library_analyzer.dart:91:17)
#41     AnalysisDriver._computeAnalysisResult.<anonymous closure> (package:analyzer/src/dart/analysis/driver.dart:1347:11)
<asynchronous suspension>
#42     PerformanceLog.runAsync (package:analyzer/src/dart/analysis/performance_logger.dart:50:14)
<asynchronous suspension>
#43     AnalysisDriver._computeErrors (package:analyzer/src/dart/analysis/driver.dart:1384:26)
<asynchronous suspension>
#44     AnalysisDriver.performWork (package:analyzer/src/dart/analysis/driver.dart:1092:20)
<asynchronous suspension>
#45     AnalysisDriverScheduler._run (package:analyzer/src/dart/analysis/driver.dart:2145:7)
<asynchronous suspension>

@scheglov

Actually I tried a "pub downgrade" and the error seems to still be happening somehow.
I'm not sure what exactly happened then. But maybe the stacktrace could be more useful to you.
If you need anything from me, I'll do what I can :)

I cannot reproduce it.

console log
scheglov@scheglov-macbookpro4:~/dart/issue52252$ git clone https://github.com/rrousselGit/freezed
Cloning into 'freezed'...
remote: Enumerating objects: 5762, done.
remote: Counting objects: 100% (182/182), done.
remote: Compressing objects: 100% (106/106), done.
remote: Total 5762 (delta 74), reused 125 (delta 44), pack-reused 5580
Receiving objects: 100% (5762/5762), 3.50 MiB | 13.12 MiB/s, done.
Resolving deltas: 100% (3554/3554), done.
scheglov@scheglov-macbookpro4:~/dart/issue52252/freezed (master)$ cd packages/freezed
scheglov@scheglov-macbookpro4:~/dart/issue52252/freezed/packages/freezed (master)$ dart pub upgrade
Resolving dependencies... (1.2s)

_fe_analyzer_shared 59.0.0
analyzer 5.11.1
args 2.4.0
async 2.11.0
boolean_selector 2.1.1
build 2.3.1
build_config 1.1.1
build_daemon 4.0.0
build_resolvers 2.2.0
build_runner 2.4.1
build_runner_core 7.2.7
build_test 2.1.7
built_collection 5.1.1
built_value 8.5.0
checked_yaml 2.0.2
code_builder 4.4.0
collection 1.17.1
convert 3.1.1
coverage 1.6.3
crypto 3.0.2
csslib 0.17.2
dart_style 2.3.0
expect_error 1.0.6
! file 6.1.4 (overridden in ./pubspec_overrides.yaml)
fixnum 1.1.0
! freezed_annotation 2.2.0 from path ../freezed_annotation (overridden in ./pubspec_overrides.yaml)
frontend_server_client 3.2.0
glob 2.1.1
graphs 2.2.0
html 0.15.2
http_multi_server 3.2.1
http_parser 4.0.2
io 1.0.4
js 0.6.7
json_annotation 4.8.0
json_serializable 6.6.1
logging 1.1.1
matcher 0.12.15 (0.12.16 available)
meta 1.9.1
mime 1.0.4
node_preamble 2.0.2
package_config 2.1.0
path 1.8.3
pool 1.5.1
pub_semver 2.1.3
pubspec 2.3.0
pubspec_parse 1.2.2
quiver 3.2.1
shelf 1.4.0
shelf_packages_handler 3.0.1
shelf_static 1.1.1
shelf_web_socket 1.0.3
source_gen 1.2.7
source_gen_test 1.0.4
source_helper 1.3.3
source_map_stack_trace 2.1.1
source_maps 0.10.12
source_span 1.10.0
stack_trace 1.11.0
stream_channel 2.1.1
stream_transform 2.1.0
string_scanner 1.2.0
term_glyph 1.2.1
test 1.24.2
test_api 0.5.2
test_core 0.5.2
timing 1.0.1
typed_data 1.3.1
uri 1.0.0
vm_service 11.4.0
watcher 1.0.2
web_socket_channel 2.4.0
webkit_inspection_protocol 1.2.0
yaml 3.1.1
Changed 74 dependencies!
1 package has newer versions incompatible with dependency constraints.
Try dart pub outdated for more information.
Resolving dependencies in ./example...
Because example depends on flutter_test from sdk which doesn't exist (the Flutter SDK is not available), version solving failed.

Flutter users should run flutter pub get instead of dart pub get.
scheglov@scheglov-macbookpro4:~/dart/issue52252/freezed/packages/freezed (master)$ dart run build_runner watch -d
Building package executable... (3.4s)
Built build_runner:build_runner.
[INFO] Generating build script completed, took 143ms
[INFO] Precompiling build script... completed, took 3.4s
[INFO] Setting up file watchers completed, took 4ms
[INFO] Waiting for all file watchers to be ready completed, took 201ms
[INFO] Building new asset graph completed, took 420ms
[INFO] Checking for unexpected pre-existing outputs. completed, took 0ms
[INFO] Generating SDK summary completed, took 2.0s
[WARNING] json_serializable on test/integration/json.dart:
The version constraint "^4.6.0" on json_annotation allows versions before 4.8.0 which is not allowed.
[WARNING] json_serializable on test/integration/json.dart:
The constructor parameter for value has a default value 42, but the JsonKey.defaultValue value 21 will be used for missing or null values in JSON decoding.
[INFO] Running build completed, took 9.9s
[INFO] Caching finalized dependency graph completed, took 64ms
[INFO] Succeeded after 10.0s with 136 outputs (463 actions)
[INFO] Terminating. No further builds will be scheduled
[INFO] Builds finished. Safe to exit

Yeah as I feared.
In my case I locally have some outdated .g.dart files gneerated, which are not on git. Could be the issue

Indeed deleting the generated files seems to fix the issue.
So it's probably an old problem that I randomly encountered.

Might be caused by the same problem as https://github.com/dart-lang/sdk/issues/43272.

I'll close for now; let's re-open when we have a repro.


Add "vendor" directory, that will available from browser

I'd like to have ability just upload 3rd-party libs (js, css, images, fonts, etc..) into the special folder, for example vendor, and then include them in default.html layout. Is it possible?
I think it will provide me to keep toolkit.js as clean as possible.

I've solved this task by https://github.com/fbrctr/fabricator/issues/239#issuecomment-182049798


Update using-the-activation-context-api.md

Remove unwanted slashes.

@RatinCN  Thanks for fixing this!