How to choose the training set

Thanks a lot for your replication.
As you know, the EmotioNet dataset contains more than 90W images, which are diverse in quality.
The author uses 20W for training, and you use more than 40W for training.
So may I ask how do you choose the training set? Do you use any strategy to choose or filter some "good" images?
Thanks again.

As per the email I reply, let me attach the content here for the convenience of others who may have the same doubt.

I employed the python package face_recognition to extract human face and then used Openface to extract Action Units vectors. So those images that meet the above two requirements, retained, while those cannot detect any face nor AU vector, removed.
Besides, I remember that using Openface to extract AU vectors really takes time, in order to save time, I only ran the extraction program for few days, and stopped the program at will, which results in around 400k images.

Get it. Thanks a lot for you reply.


Arguments order of Expect.equal is flipped between Expecto and Fable.Mocha

Hello,
I am finally deciding to use this library instead of re-write the binding in each of my library but I am facing a problem.

The arguments order of Expect.equal is flipped between Expecto and Fable.Mocha
A workaround is to use this kind of code in the user code:
#if FABLE_COMPILER
let inline equal expected actual: unit =
    Expect.equal expected actual ""
#else
let inline equal expected actual: unit =
    Expect.equal actual expected ""
#endif

But it kind of lose a bit of the interest of not writing the wrapper in each project ^^

Hi Maxime, I think at this point I have flipped the order of the arguments three times already so a fourth time will bring me back to zero :joy: to be honest, this isn't really a problem because the error messages you get are still correct "expect X but got Y", right?

Yes, I know the order of the arguments is a nightmare...
By looking at the documentation or source of several assertion libraries the current order of the arguments is not consistent with them.

Mocha allows you to use any assertion library you wish

So I took a look at several of them
Chaijs

Node.js

Should.js

Expecto

It seems like most (because I didn't check all the possible testing libraries^^) use the order actual expected.
By looking at the implementation of Fable.Mocha there is several things we can see.
[<RequireQualifiedAccess>]
module Expect =
    let inline equal (expected: 'a) (actual: 'a)  msg  : unit =
        if actual = expected || not (Env.isBrowser()) then
            Assert.AreEqual(actual, expected, msg)
        else
            let valueType = actual.GetType()
            let primitiveTypes = [ typeof<int>; typeof<bool>; typeof<double>; typeof<string>; typeof<decimal>; typeof<Guid> ]
            let errorMsg =
                if List.contains valueType primitiveTypes then
                    sprintf "Expected:

%s

Actual:

%s

Message:

%s
" (string expected) (string actual) msg
                else
                    sprintf "Expected:

%A

Actual:

%A

Message:

%s
" expected actual msg

            raise (Exception(errorMsg))

    let notEqual actual expected msg  : unit =
        Assert.NotEqual(actual, expected, msg)

The argument order between Expect.equal and Expect.notEqual is not consistent
Fable.Mocha is flipping the argument order internally when calling Assert.AreEqual which is probably why it seems to report them correctly in the output even if the exposed interface is not following the others "standard"

If we use only Fable.Mocha for testing them it is probably not a big deal even if the non-consistent order of the arguments between equal and notEqual is a problem.
But the problem is that if we try to write a test project compatible with both Fable.Mocha and Expecto then just doing what the readme say is not enough.
Test code
equal "Maxime" "Zaid"

Fable.Mocha

Expecto

And so the user needs to add some code to create his own bridge between the two libraries which is prone to errors.
Using something like:
#if FABLE_COMPILER
let inline equal expected actual message : unit =
    Expect.equal expected actual message
#else
let inline equal expected actual message: unit =
    Expect.equal actual expected message
#endif

As you mentioned before making any change we need to be 200% sure of what we are doing and if we are to make it, it is definitly a breaking change and needs a major release.

@MangelMaxime tbh I personally don't mind it at all that the arguments are flipped, after all: x = y is the same as y = x but it just means you get a different error message and that can be confusing! Can you please send a PR with the fix?
I am not entirely sure this fix is a breaking change 🤔 after all the tests will continue to pass (or fail) regardless of the order of arguments.

Indeed, x = y and y = x but that's not what is causing the problem as you said.
For me, they are breaking changes because it means that in order to have the right report people needs to swap the order of their arguments. But the decision is on you :)

Can you please send a PR with the fix?

Sure, I will and I will also check what happens when using the browser standalone runner. But in theory, the environnement you are running your test in is just a kind of viewer so that's should be fine.


Format for Specifiying additional properties on SonarQube VSTS Extension

Do I need to specify /D: in front of each key value pair and also have each key value pair on a new line?
As the documentation in the VSTS Extension just references key value pair, but I keep finding examples that reference /D: format

And connected question if I may: I am using
/d:sonar.github.pullRequest=$(System.PullRequest.PullRequestId)
also tried:
/d:sonar.github.pullRequest=$(SYSTEM_PULLREQUEST_PULLREQUESTID)
but both doesn't work. Can you help with that variable please?

Just for information: fixed my problem using powershell parsing Env:BUILD_SOURCEBRANCH.
The param SYSTEM_PULLREQUEST_PULLREQUESTID was returning wrong number with github.

@scriptmonkey69 you should reach out to Sonar folks for information about using their tasks. The agent prints an information block about each task at the beginning of the task log. It should have a link where to get more information from the author.

@peppi-scaleforce apart from the Sonar issue, are you saying there is a general issue with the pull request variables when using GitHub? Are you using VSTS or on-premises TFS?

My problem was resolved by using the following command to import the Test Coverage data from the VNext build
sonar.cs.vscoveragexml.reportsPaths=**/*.coveragexml
No need for the /D: in the version 4 extension, also need to place the extra properties on separate lines.

@ericsciple
VSTS.
Here are my variables:
SYSTEM_PULLREQUEST_PULLREQUESTID: 169686735
SYSTEM_PULLREQUEST_SOURCEBRANCH: feature/AddTests
SYSTEM_PULLREQUEST_TARGETBRANCH: develop
BUILD_SOURCEBRANCH: refs/pull/169/merge
My real PR number is: 169
Thanks.

@peppi-scaleforce thank you for the details. I've forwarded this info along to the appropriate team. I honestly don't know whether this is the expected behavior.

@peppi-scaleforce Thanks again for the feedback! we've added a task to our backlog to expose the PR number more directly.


Is there demo?

Hello,
Would you be so kind to share some demo(examples) to show us how it looks.
Sorry, but I didn't find any examples(I mean ready to use multi-steps wizards) built on top of this project.
Thanks!

You mean http://blog.reactandbethankful.com/angular-multi-step-form?

Thanks for rapid answer.
Actually I meant something like this:
https://github.com/amoffat/bootstrap-application-wizard
(they don't have a decent  screenshots however they have VERY good working example in demo directory inside, where you can see this wizard in the REAL action, not just some steps)

Unfortunately I don't have the time to develop complex, more real examples.The examples I provide are designed to give an overview of the library capabilities.


Low Level API with Pre Allocated Work Space Exposed

It would be great if there will be, for any function, a low level API which exposes the needed workspace to avoid any allocations of the function.
The work is impressive. Being competitive with the big guys is nothing short of amazing considering this is a single person show.

This is already available (and in fact, was available before the high-level API), you just need to use faer-* crates (e.g., faer-core or faer-qr) directly instead of high-level faer. Each function that needs a scratch space requires a PodStack argument and has an associated function suffixed with _req which is used for getting the scratch space size requirements of the function.
For an example, check the code snippet in the documentation for of faer-qr crate.


The cursor can not be pull, only be clicked

In GitLab by @Robin-Mao on Sep 19, 2017, 16:57
The cursor can not be pull, only be clicked

In GitLab by @liyanq528 on Nov 8, 2019, 07:36
don't fix

In GitLab by @yhua123 on Nov 8, 2019, 07:36
need more decorate

In GitLab by @yhua123 on Nov 8, 2019, 07:36
dashboard
will instead by grafana later

In GitLab by @yhua123 on Nov 8, 2019, 07:36
the time bar on dashboard need some decorate

In GitLab by @sokril on Nov 8, 2019, 08:10
assigned to @liyanq528

In GitLab by @sokril on Dec 26, 2019, 03:17
changed the description


make component groups iterable

Allow Java to iterate over the components of a group, make IComponentGroup inherit from Iterable
This PR addresses the issues brought up in PR #1864 without having to change the C++ code at all. Class GVRComponent.Group supplies the Java implementation for an iterable group which all component groups can share. This uses Java's language facilities instead of inventing our own scheme for iterating the groups.
Now you can do as follows:
IComponentGroup group;
group.addChildComponent(child1);
group.addChildComponent(child2);
for (XXX c : group) {  do something }
GearVRF DCO signed off by: Nola Donato<EMAIL_ADDRESS>

Merged into PR #1911


string replacement for GO (jnl) script arguments returns wrong value, and depends spuriously on what is being replaced

Reported by andrew wittenberg on 6 Oct 2009 22:26 UTC
This does not appear to be a new bug.Given a mytest.jnl that contains:
\\can mode verify
say "$1%|B>a%"
say "$1% |B>a%"
say "$1%a|B>a%"
say "$1%|B>a|a%"
say "$1% |B>a|a%"
say "$1% |a|B>a%"
say "$1%B>a|a%"

we get the following:
        NOAA/PMEL TMAP
        FERRET v6.3
        Linux(g77) 2.4.21-32 - 09/29/09
         6-Oct-09 18:14

yes? go mytest A
a
a
a
a
a
A
A

Shouldn't the last two lines print "a"?  Why does the order of the entries in the verification/replacement string matter?
Even stranger, if we replace "A" with "B" in mytest.jnl, the 2nd-to-last statement now prints "a" -- and we get an error from the last "SAY" statement:
yes? go mytest B
a
a
a
a
a
a
 **ERROR: invalid command: Valid value needed for argument $1
say "$1%B>a|a%"
Command file, command group, or REPEAT execution aborted
 *** NOTE: Valid argument $1 choices are: a

Migrated-From: http://dunkel.pmel.noaa.gov/trac/ferret/ticket/1705

Comment by ansley.b.manke on 4 Nov 2009 18:27 UTC
I am not seeing the capitalization of A in the first screen shot.
        NOAA/PMEL TMAP
        FERRET v6.3
        Linux(g77) 2.4.21-32 - 09/29/09
         4-Nov-09 10:07

yes? go bug1705 B
a
a
a
a
a
a
a
 **ERROR: invalid command: Valid value needed for argument $1
say "$1%B>a|a%"
Command file, command group, or REPEAT execution
 aborted
 *** NOTE: Valid argument $1 choices are: a

For that last line, where the script has
say "$1%B>a|a%"

As I read the documentation, and looking into the code as well, the default string needs to be just a string, not a substitution as in B>a.  This could be clarified in the docs.
So we could have commands like these:
$1%B%
$1%B|B>a|a%

But not
$1%B>a%

One could do
say "$1%B|B>a|a%"

Now, substituting A for B in the script so that it is this:

\\can mode verify
say "$1%|A>a%"
say "$1% |A>a%"
say "$1%a|A>a%"
say "$1%|A>a|a%"
say "$1% |A>a|a%"
say "$1% |a|A>a%"
say "$1%A|A>a|a%"
say "$1%A>a|a%"

then
GO bug1705.jnl B

stops immediately on the first line,
yes? go bug1705 B
 **ERROR: invalid command: Valid value needed for argument $1
say "$1%|A>a%"q
Command file, command group, or REPEAT execution aborted
 *** NOTE: Valid argument $1 choices are: A>a

Comment by ansley.b.manke on 2 Mar 2010 19:58 UTC
This has to do with treatment of commands as case-insensitive.

In the script from this report, run with "go mytest A", here is what happens:
\\can mode verify
say "$1%|A>a%"    ! 1  In lines 1 through 5, the input
say "$1% |A>a%"   ! 2  argument matches the  A in |A
say "$1%a|A>a%"   ! 3  so the substitution A>a is made.
say "$1%|A>a|a%"  ! 4
say "$1% |A>a|a%" ! 5

say "$1% |a|A>a%" ! 6  Here the |a| matches the argument A
                  !    in a case-insensitive comparison,
                  !    so the incoming string is not
                  !    replaced and is written as A.

say "$1%A>a|a%"   ! 7  Here there has been an argument
                  !    sent in, so the default string before
                  !    the | is ignored, and |a is
                  !    matched, again case-insensitively,
                  !    and the original A is not replaced.

say "$1% |a>a|b%" ! Note that this will match the a with
                  ! the argument A, and replace it with the
                  ! lower-case a.

Admittedly the behavior looks odd.  But I am closing this as I don't think we can change the case-insensitivity of commands, though I'm open to other suggestions.

Comment by andrew.wittenberg on 4 Mar 2010 01:07 UTC
Thank you very much for the clarification.  After years of writing go-files, I'm amazed that I never realized that argument-parsing was case-insensitive!  Is this in the documentation?  (Just now I couldn't find any mention of it in the User's Guide Sec. 1.5 on "Go Files.")


HHH-13133

Pull request to HHH-13133

Many thanks! Only had a very minor comment, if you could address that I'll merge it right away.
Generally speaking, try to not include unrelated changes in the same commit / same JIRA id.. but it's fine since they are very minor.

merged it. Thanks!

Thanks for merging Sanne. Strangely I didn't get any notification for the last 4 days.

@skis no worries, and no need to make another PR as I already changed it!
Thanks again


feat: added new example

Description
Added a new example to show how to use a specific zone for the VPC.
Git Issue: https://github.com/terraform-ibm-modules/terraform-ibm-landing-zone-vpc/issues/823
Release required?

[x] No release
[ ] Patch release (x.x.X)
[ ] Minor release (x.X.x)
[ ] Major release (X.x.x)

Release notes content

Run the pipeline
If the CI pipeline doesn't run when you create the PR, the PR requires a user with GitHub collaborators access to run the pipeline.
Run the CI pipeline when the PR is ready for review and you expect tests to pass. Add a comment to the PR with the following text:
/run pipeline

Checklist for reviewers

[ ] If relevant, a test for the change is included or updated with this PR.
[ ] If relevant, documentation for the change is included or updated with this PR.

For mergers

Use a conventional commit message to set the release level. Follow the guidelines.
Include information that users need to know about the PR in the commit message. The commit message becomes part of the GitHub release notes.
Use the Squash and merge option.

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

/run pipeline

:tada: This PR is included in version 7.19.1 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Async support?

Hey, I wanted to make a DB for OPFS and I thought that your bp-tree lib is an ideal candidate with one exception. It's fully synchronous. But other libs were much harder to work on so I decided that I could just add async to your lib.
I've made a demo with my DB here https://sliterok.github.io/opfs-demo/ and source is here.
After I made it I checked your github profile and it appears that you've also made a DB with this bptree, so I wasn't sure if you would be interested in the PR that adds asyncs.
In future I wanted to do some benchmarks to see if my solution is feasible on large scale, but I feel like at this point I verified that most of it works as expected.
If benchmarks go good might as well publish on npm, because as of right now you can use only sqlite in OPFS and it has some limitations.

Hello, thank you for providing the demo and the source. I have checked both and am also thinking positively about adding asynchronous operations. I appreciate your dedication to solving this issue.
However, I am a bit concerned about the potential concurrency issues with asynchronous read/write operations. This is because the current library minimizes file input/output by performing reads from an in-memory cache after the initial access, except for the first time.
Moreover, asynchronous operations could potentially have a negative impact on performance compared to synchronous tasks. Therefore, if implemented, it would be provided as a separate class.
I would like to approach these issues cautiously, so it seems that some time will be needed.

The 3.0.0 update, which includes support for asynchronous operations, has been released. You can now download and use it from npm. If there are any additional features related to asynchronous support that you need, please leave a comment. 🙏

I love it! Thank you for your work, I really appreciate that. There's one thing that I noticed when testing with a lot of data. It takes a long time to go through a big tree. For in-browser use I would guess that you would want to slice that data. I've implemented limit here https://github.com/sliterok/opfs-demo/commit/dee2392225b1d26da1819c9fb3a3c9acfc2bf856 and it greatly reduced the search time. Probably pagination would be a next best thing to implement.

Thank you. I've reviewed the source code. It seems to be an issue with the like and notEqual operators. These operators require scanning all nodes rather than leveraging the indexing advantages of B+trees.
Therefore, I considered pagination as a good alternative. However, I realized a problem when implementing it with multiple conditions. If there are multiple conditions, and we treat each search result as a set, the intersection count may be much less than desired.
For example, if we search for 50 items under condition A and 50 items under condition B, and then perform an AND operation, the result may be less than 50 items. This doesn't seem like a good user experience for developers.
Considering all these points, I believe further consideration is needed. 🙂

I have conducted further performance testing on this matter.
In a state where there are 10k user records, the OPFSDB.query method's tree.keys method showed an average delay of about 5ms without page limitations. (Upon initial connection, it increased up to 1500ms due to caching.)
Most of the performance issues occurred in the readMany function, which increased proportionally to the number of retrieved data.
It seems like these issues stem from the file I/O process in the readFile function.
Is there a way to optimize this function? Currently, it doesn't seem like a problem with the library itself.

I've tried to investigate other OPFS API options and it appears that there are 3 ways of using it:

get File constructor and convert it to arrayBuffer (currently used)
get readable and pipe it like a stream to arrayBuffer and use it (should be in repo history)
construct arrayBuffer and pass it to the "read" method https://developer.mozilla.org/en-US/docs/Web/API/FileSystemSyncAccessHandle/read

I've tried first two and they're not much different, I haven't yet tried the third one because it appears that it only works with webworkers and I've been using service worker to avoid any issues with concurrency (also to be able to intercept fetch requests because it seems like the simplest way to create an api)
I have feeling that the last way should add some performance, I will try to investigate that.
But in any way, when there are like 20mb of data in the collection (I checked through "app" tab in debugger) it starts to slow down the search and "limit" feels like the only thing that can help fundamentally.
Comparing to how much it takes to load the "data" itself getting indexes feels pretty fast, so I would think that it isn't about optimization but maybe the browser itself? Some i/o speed limitation of sorts, because both of my drive on this system are nvme.

I've changed the code to work as a web worker and adapted the 3rd API. Looks like now it's much faster. Also I increased the order because it yields to both faster inserts and reads. Although when I was testing same API for writes I got worse results than createWritable.

The reason for slow write operations is that when the tree is updated, related nodes are collectively updated to balance the tree nodes. During this process, the same node may be updated multiple times. Therefore, leveraging delayed writing functionality for each node may provide performance benefits.
Please refer to the following details:
https://github.com/izure1/serializable-bptree?tab=readme-ov-file#writeid-number-node-bptreenodek-v-void
I believe the p-debounce library could be helpful for you.

Indeed, delayed writes improved the performance 2-3x but it feels a bit inconsistent in terms of how much time the import takes. It ranges from 1500ms to 4500ms. I think it's acceptable but probably there's a better way of handling writes like these?

I was thinking about doing that with the record itself, but it makes sense that index storage could also be optimized this way. I will give it a try.

I'm testing both fixed-length tree storage and dynamic-length one file buffer for record storage and I'm having issues when I'm trying to "import" users

RecordsIndex is a btree that holds start and end of the record as a key and id as a value. And for some reason id = 2 isn't complying with the "order" which is set to 15 while pageSize is already at 65536 which is probably quite large.
Other ids have lower values, but I'm pretty sure they're bigger than they should be...
I have feeling it may be because of collisions in id generation, I need it sequential to be able to store pages and I'm not completely sure I implemented it consistent. But I feel like it wouldn't decode properly if it was colliding.
I've updated the btpree to your version just in case it's something with async but I still get same behavior.

I've attempted to reproduce the issue, but I couldn't encounter the same behavior.
Could you please provide the source code for me to reproduce this issue?

It seems like the issue arises from not waiting for asynchronous operations during data insertion and retrieval.
Instead of using the map function, try using a for loop. I've made the following modifications to the code at the specified link, and I've confirmed that it works properly.
https://github.com/sliterok/opfs-demo/blob/bc907bb6d48b887b2d382502d9ccf4740430e08d/src/db/index.ts#L347
for (const record of records) {
  const encoded = this.encoder.encode(record.value)
  const at = this.lastIndex
  const to = at + encoded.length
  this.lastIndex = to

  await this.recordsIndex.insert(`${at},${to}`, record.id)
  await writeFile(this.recordsRoot, 'records', encoded, false, at, to)
}
for (const key of Object.keys(this.trees)) {
  const tree = this.trees[key]
  for (const record of records) {
    const val = record.value[key]
    if (val === undefined || val === null) continue
    await tree.insert(record.id, val)
  }
}

I guess I don't need to do parallel executions if it writes synchronously. Thank you for help.
I've used the code you provided and the results are surprisingly close to this paid plugin for rxdb https://rxdb.info/rx-storage-opfs.html
Probably making this into a library is a good idea after all.
One thing that I also noticed that for index I had to call writeHead from the FileStoreStrategy and it's not very convenient to add the index counter to the read and write methods.
I think it makes sense to add head data to the "id" function and allow to extend it on new node creation.

Also another issue popped up when enough users were added, the keys list will grow without being limited by the order, which in turn makes the nodes not being fixed-size.

Thank you for the feedback. I'll consider adding a feature to easily modify the head data in the id method.
Also, I've noticed that there's a missing await in one place. That might be the issue.
https://github.com/sliterok/opfs-demo/blob/58ed419ee5ee0ace6cdfbdf35aadb9d6aa7f8db6/src/db/index.ts#L375

I will fix it, thank you. Although I was mostly testing with the import code you sent, so this shouldn't affect it much.

I will consider this issue resolved and proceed to close it. Please let me know if there are any new issues. :)


Warning when using PHP 7.3

I get this warning multiple times when using html-minifier after upgrading to PHP 7.3.
Warning: "continue" targeting switch is equivalent to "break". Did you mean to use "continue 2"? in ...
[....]/vendor/zaininnari/html-minifier/src/zz/Html/HTMLTokenizer.php on line xyz

https://wiki.php.net/rfc/continue_on_switch_deprecation

Since the original author of this library doesn't react to issues i forked this and fixed it.
https://packagist.org/packages/deruli/html-minifier


local sandbox does not work with architect cli 9.0.3+<EMAIL_ADDRESS>

There was a change in the way @architect/sandbox set environment variables for local lambda execution as of v4.1.0. I believe the change is related to the fix for architect/architect#1222 where now the lambda execution environment is clean from any system environment variables.
Need a solution to inject environment variables into local lambda execution for v4.1.0 and above.

Fixed in v1.0.0 for architect v10.x


Remove-GSGmailDelegate asking for confirmation without specifying -confirm

Hi,
Am I missing something because I am getting a confirmation request when running Remove-GSGmailDelegate without specifying '-confirm' .
Thanks,
Neil
Expected behavior
Remove delegate without confirmation.
Screenshots

Environment (please complete the following information):

OS:  MS Server 2012 R2
PowerShell Version:  Windows PowerShell 5.1
PSGSuite Version:  2.15.4

Hi @n-searle! The default value for the Confirm parameter on functions that support ShouldProcess is $true, unexpectedly enough. To prevent being prompted for confirmation, you can either...

Run the command with -Confirm:$false included, i.e.:

Remove-GSGmailDelegate -User $user -Delegate $delegate -Confirm:$false

Or by setting $ConfirmPreference = "None" earlier in your script.

This is less desirable, in case you have another function/cmdlet being called that you may want to retain confirmation functionality on.

FYI - All of the Remove-* functions in PSGSuite support ShouldProcess (it's actually one of the things tested for during CI/CD unit testing for this module).

More on ConfirmPreference here: https://blogs.msdn.microsoft.com/powershell/2006/12/14/confirmpreference/

Hi,
Thanks for the quick response and indeed for the module :)
Working as expected now with -confirm:$false .
Can I make a suggestion to make the add-delegate command also support ShouldProcess.  The implications of adding access, for to example a privileged account incorrectly, is more severe than removing access.
Again thanks for the response and top work!
Neil

That's perfectly fair! I'll have to plan for it, ideally supporting Should proceed on all the New-* / Add-* (where appropriate) in the 3.0.0 release
Glad you're enjoying the module!! 😁
Sent with GitHawk

The default Confirm:$true here seems to be backwards to all the other CMD-lets i'm used to.  Take Set-ADUser or New-ADUser, they both default confirm to $false.

@BarnumD - This is the default behavior for the Confirm parameter, PSGSuite doesn't override or set default values. The reason you may not get prompted for some cmdlets that support ShouldProcess is due to the ConfirmImpact level. If a cmdlet sets it's ConfirmImpact to something lower that the current $ConfirmPreference in your session and Confirm is $false, then you will not be prompted. If the cmdlet's ConfirmImpact level is set to the same or higher than your $ConfirmPreference and you don't explicitly pass -Confirm:$false, you will be prompted. Check out this article from Adam Bertram on the topic for more info: https://4sysops.com/archives/confirm-confirmpreference-and-confirmimpact-in-powershell/
PSGSuite may seem "backwards" as all Remove-* functions included have ConfirmImpact="High". To prevent introducing breaking changes, only the Remove-* functions support ShouldProcess and have a defined Impact level. In the context of this issue, you can see those values being set on Remove-GSGmailDelegate here as a confirmation that this isn't breaking any standard PowerShell expectations on the functions that do implement SupportsShouldProcess: https://github.com/scrthq/PSGSuite/blob/master/PSGSuite/Public/Delegation/Remove-GSGmailDelegate.ps1#L22


Adding support for handling multiple transport protocols

Description
Coming from PR #11910, separating out the transport protocol logic which is part of #11910 into this PR. This PR adds support to make it easier to handle multiple transport protocols.
Related Issues
Resolves #[Issue number to be closed when this PR is merged]
Part of #10684
Check List

[x] New functionality includes testing.

[x] All tests pass

[x] New functionality has been documented.

[x] New functionality has javadoc added

[x] Failing checks are inspected and point to the corresponding known issue(s) (See: Troubleshooting Failing Builds)
[x] Commits are signed per the DCO using --signoff
[x] Commit changes are listed out in CHANGELOG.md file (See: Changelog)
[x] Public documentation issue/PR created

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.
For more information on following Developer Certificate of Origin and signing off your commits, please check here.

I like the small PR that we can reason about and get merged.
I don't love the existing naming of these classes. Does it make sense to move and rename things now? I would like folders for different implementations like native and proto so there's no confusion that these things are standalone.
For example:
|-transport
    |----InboundMessage [an interface only, `getProtocol()`, no `setProtocol()`]
    |----native
               |- NativeInboundMessage
    |----proto
               |-ProtoInboundMessage

Renaming would definitely make it clearer, I didn't opt it for existing classes since it would be a breaking change no? For example, InboundMessage is declared as a PublicApi.

Renaming would definitely make it clearer, I didn't opt it for existing classes since it would be a breaking change no? For example, InboundMessage is declared as a PublicApi.

For 2.x compatibility, can we add a facade class and mark it deprecated?

Note: Moving the NativeMessageHandler into transport/nativeprotocol from transport requires visibility changes for a lot of class methods and parameters that are currently in transport. I can do that in a new PR if needed. Also, I can remove usages of InboundMessage since it is being deprecated and replace it with NativeInboundMessage within this repo in a new PR once this is merged.

@dblock @reta All comments are addressed. LMK what you guys think!

🥳 signed off for today, will take a look tomorrow morning first thing, thanks @VachaShah !

@VachaShah we are getting there :) @dblock mind retaking a look as well?

@reta This PR is ready with the latest comments addressed. Let me know if there are any other comments.

LGTM, thanks @VachaShah , @dblock  could you please retake a look as well if something is missing? thank you.

Thank you @reta for the approval! Do you know how we interpret the "Detect breaking changes" workflow? It is failing for this PR showing all methods as removed for the class that was deprecated. When in fact, we haven't removed any methods.

Thank you @reta for the approval! Do you know how we interpret the "Detect breaking changes" workflow? It is failing for this PR showing all methods as removed for the class that was deprecated. When in fact, we haven't removed any methods.

@VachaShah Small update to the gradle task that includes @DeprecatedApi in the property annotationIncludes that should resolve the 'removal' error message.  You can test locally with ./gradlew :server:japicmp
https://github.com/opensearch-project/OpenSearch/blob/221e981116657f035fe716435691d2d96c389639/server/build.gradle#L390

Thank you @reta for the approval! Do you know how we interpret the "Detect breaking changes" workflow? It is failing for this PR showing all methods as removed for the class that was deprecated. When in fact, we haven't removed any methods.

@VachaShah Small update to the gradle task that includes @DeprecatedApi in the property annotationIncludes that should resolve the 'removal' error message. You can test locally with ./gradlew :server:japicmp
https://github.com/opensearch-project/OpenSearch/blob/221e981116657f035fe716435691d2d96c389639/server/build.gradle#L390

Thank you @peternied! Added this in the latest commit.

There is one more change the tool is considering as breaking:
---! REMOVED METHOD: PUBLIC(-) void inboundMessage(org.opensearch.transport.TcpChannel, org.opensearch.transport.InboundMessage)
	+++  NEW METHOD: PUBLIC(+) void inboundMessage(org.opensearch.transport.TcpChannel, org.opensearch.transport.ProtocolInboundMessage)

where InboundMessage is replaced with its super class ProtocolInboundMessage. @reta Just confirming this is okay to be backported to 2.x though?

where InboundMessage is replaced with its super class ProtocolInboundMessage. @reta Just confirming this is okay to be backported to 2.x though?

Well, this sadly a breaking change BUT I think this should be fine:

InboundMessage implements  ProtocolInboundMessage
2_ we still need plugins to be rebuild for new versions (so they will be compatible on binary level after)

where InboundMessage is replaced with its super class ProtocolInboundMessage. @reta Just confirming this is okay to be backported to 2.x though?

Well, this sadly a breaking change BUT I think this should be fine:

InboundMessage implements  ProtocolInboundMessage
we still need plugins to be rebuilt for new versions (so they will be compatible on binary level after)

We could also keep the original method with InboundMessage marked as deprecated. WDYT?
/**
     * @deprecated use {@link #inboundMessage(TcpChannel, ProtocolInboundMessage)}
     * Handles inbound message that has been decoded.
     *
     * @param channel the channel the message is from
     * @param message the message
     */
    @Deprecated(since = "2.14.0", forRemoval = true)
    public void inboundMessage(TcpChannel channel, InboundMessage message) {
        try {
            inboundHandler.inboundMessage(channel, message);
        } catch (Exception e) {
            onException(channel, e);
        }
    }

That would satisfy the workflow

Yeah, I think we could (you could also delegate to new method:
    public void inboundMessage(TcpChannel channel, InboundMessage message) {
        inboundMessage(channel, (ProtocolInboundMessage)message);
    }

Made the minor changes in new commit. @reta @msfroh Please take a look. Thank you!

❌ Gradle check result for 8a90d0e: FAILURE
Please examine the workflow log, locate, and copy-paste the failure(s) below, then iterate to green. Is the failure a flaky test unrelated to your change?

https://github.com/opensearch-project/OpenSearch/issues/12197

@dblock Can you please take a look at this again? Thank you!

Thank you @dblock and @reta! I will add an issue for the discussion and will backport this manually.

The backport to 2.x failed:
The process '/usr/bin/git' failed with exit code 128

To backport manually, run these commands in your terminal:
# Navigate to the root of your repository
cd $(git rev-parse --show-toplevel)
# Fetch latest updates from GitHub
git fetch
# Create a new working tree
git worktree add ../.worktrees/OpenSearch/backport-2.x 2.x
# Navigate to the new working tree
pushd ../.worktrees/OpenSearch/backport-2.x
# Create a new branch
git switch --create backport/backport-12967-to-2.x
# Cherry-pick the merged commit of this pull request and resolve the conflicts
git cherry-pick -x --mainline 1 d202d90df3991daaf3e20be325cac4b323f0ed23
# Push it to GitHub
git push --set-upstream origin backport/backport-12967-to-2.x
# Go back to the original working tree
popd
# Delete the working tree
git worktree remove ../.worktrees/OpenSearch/backport-2.x

Then, create a pull request where the base branch is 2.x and the compare/head branch is backport/backport-12967-to-2.x.

Backport PR #13125


Lights not working as intended with automations

Issue:
When I try to use my LED strips in automations (HomeKit native or even Shortcuts App) they are still shown as off in HomeKit.
Reproduction:
Reproduction is easy just create a simple "turn on LED strip" shortcut in Shortcuts and the bug should appear, your light is on, but HomeKit shows it as off.
Additional context:
I don't know if this is related, but MagicHome devices have a tendency to be kind of slow or even unresponsive in Control Center too
Hardware: Raspberry Pi 3b+
OS: HOOBS
OS Version: buster
HOOBS version 3.3.1
Homebridge MagicHome Dynamic Platform version 1.9.2

Hello, I've noticed this issue in my own setup as well. I assume what is happening is the lights are reporting back an incorrect state, thus messing up scenes.  I know this is cliché, but could you please unplug your light (remove it from the socket entirely / unplug power source ) and plug it back in. Sometimes that helps reset the device's state.
Let me know, thanks,


feat: add makefile to practice

Summary
This PR add a makefile and a docker-compose.yml to reduce the entry barrier.

Welcome to the project :) thanks for taking the time to contribute.
I'm not sure I see enough value in adding this, it feels like something that we would fail to maintain. Can you say a bit more about how this will be valuable to users?

Welcome to the project :) thanks for taking the time to contribute.
I'm not sure I see enough value in adding this, it feels like something that we would fail to maintain. Can you say a bit more about how this will be valuable to users?

I think this can be helpful for individuals who don't have experience with Docker and want to try ruff, or for those who want an easier way to test and contribute to a project.
I wish this PR can help. 😄

I appreciate the PR but ultimately I don't think the maintenance burden outweighs the benefits. Thanks for getting involved!


Initial draft of Konnect august release notes

Summary
Do not merge yet :)
Draft of Kong Konnect August updates to the release notes.

I need to take out the GW 3.0 piece for August and move to September.


workloads release

API change check
APIView has identified API level changes in this PR and created following API reviews.
azure-arm-workloads


Create index.md

create havelsan ekspres hackathon

I didn't know how to do it not just disable it all

I copy the code from paypal where do i put


Bring back Cloud Shell references in Resource Graph docs

@DCtheGeek - Could you review the proposed changes? Thank you.

#sign-off
cc / @ktoliver

@demyanenko : Thanks for your contribution! The author, @DCtheGeek, has been notified to review your proposed change.


UX | Design form/generated dialog flow & editing experience

Placeholder workitem for creating UX for generated/form dialogs.

This has shipped! In preview at least.


Add fingerprint 0x0300:0xa10b to Sunricher SR-ZV9001T4-DIM

I have 2 of these devices and they have productId 0xa10b instead of 0xa10d.

@zwave-js-bot fix lint


Switch to pnpm

Replaces yarn 1.x with pnpm as package manager for the repo.

This LVGTM. @pvh any concerns?


chore: convert link command

🎉 Thanks for submitting a pull request! 🎉
Summary
Fixes: https://linear.app/netlify/issue/CT-477/convert-link-command-to-clack
This converts the link command into using the new NetlifyLog. It is part of a bigger piece of work that can be seen in https://github.com/netlify/cli/pull/6293. This is also the reason why this PR is merged into the branch CP-101/design-system-clack-implementation. It's a way in which I'm trying to keep possible failing tests, but also the review work to a minimum amount of work for those who are reviewing.
It also changes a few things for outro()
Before
I'm sorry it's a looot of screenshotting otherwise
After

https://github.com/netlify/cli/assets/30577427/dac544e7-c0e7-4920-8ad6-d26c63532d50

For us to review and ship your PR efficiently, please perform the following steps:

[ ] Open a bug/issue before writing your code 🧑💻. This ensures we can discuss the changes and get feedback from everyone that should be involved.
[ ] Read the contribution guidelines 📖. This ensures your code follows our style guide and
passes our tests.
[ ] Update or add tests (if any source code was changed or added) 🧪
[ ] Update or add documentation (if features were changed or added) 📝
[ ] Make sure the status checks below are successful ✅

A picture of a cute animal (not mandatory, but encouraged)

@ericapisani @eduardoboucas thanks!! I implemented your feedback :)


How to upload dataset from host device

Hello, I have a code that generates images, and I want to automatically upload them to a locally running CVAT instance using Docker containers.
Essentially, what I want to do is use one or multiple 'docker cp' commands to copy the necessary images and files into the containers and have them appear in CVAT when it's opened. (Or if there's already an implemented code that does this, then I'd like to use that)

There is an API and SDK available: https://opencv.github.io/cvat/docs/api_sdk/sdk/


Can't change HTML Editor settings due to jQueryUI

Description of bug
Can't change HTML Editor settings due to jQueryUI
Steps to reproduce
List the precise steps to reproduce the bug:

Go to site settings
Go to more settings
Open HTML Editor manager
See error

Screenshots

Error information
jquery-ui.js was renamed during some upgrade to jquery-ui.min.js
Additional context
I believe it would be safe to keep the .min.js and the .js files around to prevent such issues in other places.
I'll take a look at this now...
Affected versions

[ ] 10.00.00 alpha build
[x] 09.11.00 release candidate
[ ] 09.10.02 latest supported release

Good find!

This was already fixed but on develop only, I just updated release/9.11.0 with it and retesting now, but should be fine...


Update project_overview.md

Added a few lines for new contributors to get oriented
What issue are you solving? (Give #issuenumber)

Answer here.

How do you solve it? (please write this so a human can understand it - bulletpoints are okay)

Answer here.

If there is something specific in your solution, that you would like the reviewer to give feedback on, tell us here:

Answer here.

If this is your first pull request to the prog-o-meter project, we would really appreciate it if you would fill out this Google form.
This lets us know more about our contributors, and what we can do to make it easier and nicer to contribute to the prog-o-meter project.
Please submit your answer here and put an 'x' in the box below.

[ ] It is my first pull request to prog-o-meter, and I have answered the survey

Looking!


Prepend promoted dropdowns to notebook instead of body

Promoted dropdowns are a component of notebooks,
so should be added and styled in relation to the notebook,
not the body.

on an unrelated note this directive can possibly leak
https://github.com/twosigma/beaker-notebook/pull/1583/files#diff-c59bab0b64fc0079d2dee2e7f8d9f92eR98
if you are in this file already mind stacking another commit to resolve this?

Yeah I could fix that

this looks good to go @scottdraves tested locally


Enhancement : UpdateRobotPosition Endpoint

enhance createRobotPosition endpoint: Request Body: XPOS •YPOS •FACINGDIR
with Validation Errors: '
•	Invalid X Position of the robot - Must be between 0 and 4
•	Invalid Y Position of the robot - Must be between 0 and 4
•	Invalid Facing Direction of the robot - must be one of values N, S, E, W - representing North, South, East, and West respectively
and processing error with resolution: •	A robot already exists in the position based on your inputs. Please retry with different co-ordinates.
Refer to API Doc.

The createRobotPosition endpoint already does that. Can you please elaborate more on the enhancement itself?

The createRobotPosition endpoint already does that. Can you please elaborate more on the enhancement itself?
I mean the create is supposed to take in XPOS•YPOS•FACINGDIR but it takes the whole object of RobotPosition then it can still be fine but taking the whole object is why we have to do the check of  > 0 but it works, I may be wrong with my understanding maybe?

@pkkht Are we not allowing the user to update the X and Y pos of the Robot only we allow updating the COMMANDS. what if the user wants to modify the X and Y pos of the Robot ?

if as it its fine then we can close this issue and please create some more issues if you get time would like to contribute

Okay, I have created another new issue - dockerising the app. Adding Dockerfile, etc. If you are interested, have a look


How to directly stop an actor?

What if we want to immediately stop the actor, ignoring all messages in the queue?

@noahsilverman That's a good question! That is something that needs to be coded in.
I was thinking of a Stop message. We could call it with Stop(pid) instead of Poision(pid)
Will try to add that in today for you.

@anthdm I appreciate it!  Once I'm more familiar with the code base, I don't mind helping to contribute .  (Still learning how all the internals are organized)

close by #69


URL for tags for MSSQL tools not available

The link to tags doesn't work on Docker Hub:
https://mcr.microsoft.com/v2/mssql/tools/tags/list
This XML file does not appear to have any style information associated with it. The document tree is shown below.
<Error>
BlobNotFound
<Message>
The specified blob does not exist. RequestId:f5e8297a-f01e-00f2-3575-6d4720000000 Time:2019-09-17T16:34:07.8238434Z
</Message>
</Error>

So it's impossible to get a list of tags and use anything other than latest.

This issue still exists. Because usage of the latest tag is a bad practice, does anyone knows alternate url to check available tags of this image?

This issue still exist. My customer wants to know which fixed version can they use.

abondonware?

Looking for a tags page got me to this issue and #650. Still unsolved in 2024...


jsonpb: accept 'null' as a valid representation of NullValue in unmarshal

The canonical JSON representation for NullValue is JSON "null".
Fixes github.com/golang/protobuf#1361.

Thank you ❤🙏

❤🙏


CMD History Pop-up Color Settings

Description of the new feature/enhancement
Add foreground / background color settings for the F7 CMD History pop-up window.

Allow popup windows colors to be configured equivalent to old Command Prompt properties.
Proposed technical implementation details (optional)

Add pop-up window color configuration settings to cmd.exe profile.

Thanks for the request! This one we're probably not going to do. The popup code that CMD is using (which is unfortunately shared between cmd, python, powershell-without-psreadline, cdb, and every other traditional console application) is not something we're willing to change right now.
It's possible to set the colors using the SetConsoleScreenInformation API, however. A small application could be put together that allows for this customization, but it's going to have to come from somebody else.
Part of the issue is that it will never be able to support the rich color sequences that terminals written after 2005 tend to support. It's a legacy fixture, and we're going to have to treat it like one.


Fix bug in removeOrgRepo

We collected a list TeamRepoIDs when we should have collected a list of TeamIDs.

LGTM

LGTM


Adding Story Header

Hello guys,
Can you please provide more instructions for adding Story Headers?
I tried to use the code from the documentation, but it doesn't work as it does in the live demo...
Instead, I just get a view like this:

And error in console: Error in render: "TypeError: header is not a function"
My code:
<template>

        <Stories :stories="items" class="ig-stories" >
            <template #header>

Username

            </template>
        </Stories>

</template>

I tried to add a component instead of the
Username
  inside the template element, but I get the same results...
Can you, please, at least provide the code for your demo example, just so we can see how to set Story Headers to look like they do in that live demo?
Best regards! 😄

Hi the code of the demo is available in the folder packages/example
On Thu, Jun 3, 2021, 2:04 AM Vasilije Bursac @.***>
wrote:

Hello guys,
Can you please provide more instructions for adding Story Headers?
I tried to use the code from the documentation, but it doesn't work as it
does in the live demo...
Instead, I just get a view like this:
[image: chrome_glyyELyJVM]
https://user-images.githubusercontent.com/53561957/120566374-6734d000-c40f-11eb-9816-be39fa0c5558.png
And error in console: Error in render: "TypeError: header is not a
function"
My code:

I tried to add a component instead of the  inside the template tag,
but I get the same results...
Can you, please, at least provide the code for your demo example, just so
we can see how to set Story Headers to look like they do in that live demo?
Best regards! 😄
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/UnevenSoftware/vue-insta-stories/issues/5, or
unsubscribe
https://github.com/notifications/unsubscribe-auth/ABIHGAE2ORI5CXOFUHIQXK3TQ3BKDANCNFSM457WNDAA
.

Hi the code of the demo is available in the folder packages/example

Thanks! I didn't know about that... Unfortunately, I get the same result for story headers as I have mentioned above, even if I completely copy the code from the example...

I think is a vue 2 compatibility issue will look into that the following
days and let you know when it's fixed
On Fri, Jun 4, 2021, 9:10 AM Vasilije Bursac @.***>
wrote:

Hi the code of the demo is available in the folder packages/example
Thanks! I didn't know about that... Unfortunately, I get the same result
for story headers as I have mentioned above, even if I completely copy the
code from the example...
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
https://github.com/UnevenSoftware/vue-insta-stories/issues/5#issuecomment-854421611,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABIHGABZSPJZOOQNJQN6K4TTRB34VANCNFSM457WNDAA
.

I think is a vue 2 compatibility issue will look into that the following days and let you know when it's fixed

Thank you for your effort! Keep up the great work!

in the 0.9.2 versione this and #7 should be fixed, let me know if I'm right

in the 0.9.2 versione this and #6 should be fixed, let me know if I'm right

Yes! It is fixed! Thank you very much! 😄

If you are building something with vue-insta-stories that is publicly available on the internet, can I have the link? I would like to create a Who is using this? section in the readme

If you are building something with vue-insta-stories that is publicly available on the internet, can I have the link? I would like to create a Who is using this? section in the readme

I would send you the link, but we are doing it as a university project, and unfortunately, I stopped using your component on this project because I need some additional features, so I made my custom component for it (It was easier for me that way).
Of course, If I ever use this component for anything, I will send you the link, and also mention you in the project ReadMe...
Thank you for everything! Best regards! 😄

Thank you ❤
On Thu, Jun 17, 2021, 11:05 PM Vasilije Bursac @.***>
wrote:

If you are building something with vue-insta-stories that is publicly
available on the internet, can I have the link? I would like to create a Who
is using this? section in the readme
I would send you the link, but we are doing it as a university project,
and unfortunately, I stopped using your component on this project because I
need some additional features, so I made my custom component for it (It was
easier for me that way).
Of course, If I ever use this component for anything, I will send you the
link, and also mention you in the project ReadMe...
Thank you for everything! Best regards! 😄
—
You are receiving this because you modified the open/close state.
Reply to this email directly, view it on GitHub
https://github.com/UnevenSoftware/vue-insta-stories/issues/5#issuecomment-863562765,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ABIHGACNHRKRVFD2AVTK6I3TTJPQBANCNFSM457WNDAA
.


Cannot display Trakt Lists - Internal Server Error

Expected Behaviour
Trakt Lists should be visible of course after Authorization
Current Behaviour
After successfull Trait Authorization, when i try to enter my show lists I'm getting an error:
Elementum: Internal Server Error
Context

Your Environment
Nvidia Shield Running SPMC 17
Elementum version 0.61

Environment name and version:
Operating System and version:
Android 8

Log:
https://paste.ubuntu.com/p/xGbqXcM4WW/

Will be fixed in the next version.

Please, try with 0.0.62


fix(models): reject measurements and keys with leading underscores

Closes #20310
This brings our implementation in line with the spec, and prevents panics when users override keys like _start. The first commit is a refactoring that I could split into a separate PR, if desired. The diff in the test file shows the impact of the actual fix.

This will likely break a lot of people's Kap workflows, because they tend to write fields like _start and _stop, iirc.

Closing for now, needs more discussion


refactor(sbb-tag-group): lit migration

Migrate sbb-tag and sbb-tag-group to Lit.

Codecov Report

:exclamation: No coverage uploaded for pull request base (lit-migration@993002a). Click here to learn what that means.
The diff coverage is n/a.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
@@               Coverage Diff                @@
##             lit-migration    #2055   +/-   ##
================================================
  Coverage                 ?   90.11%
================================================
  Files                    ?      139
  Lines                    ?    17039
  Branches                 ?      742
================================================
  Hits                     ?    15354
  Misses                   ?     1676
  Partials                 ?        9

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


Can this feature/limitation of web assembly be exploited in EOS?

https://www.fastly.com/blog/hijacking-control-flow-webassembly-program

Sorry I raised above query using my official github account and hence deleted it. I am interested in knowing from you if there exists vulnerabilities by hijacking control flow in EOS or if that is not possible?

I don't think this will happen on EOS, as by default it uses interpretation to execute contracts.

EOS.IO is not vulnerable to system call hijacking.  Each contract gets its own copies of the eosiolib calls it uses.  Contracts do not call into some common library on the chain.  Contracts can not modify contracts on other accounts without an explicit authorization.  Providing your own version of some other contract's functions does not interact with that other contract at all and does not somehow inherit or hijack that contract's permissions.


Add Simplified Chinese translation/localization

Created Chinese translations of some pages and site descriptions.
Including about, news (2 pages), session, sponsor venue and etc.
The translation of all pages containing information from last year is still being planned.

Thank you for providing the translation, I would suggest to keep to venue name not translated. (Just Nuritkum Square or Nuri Dream Square not Nuritkum 广场 or Nuri Dream 广场.) As it's a kind of proper noun for specific buildings not for the kinds of square or plaza.

Thx your opinion, I have submitted additional revisions to the translation of proper nouns.

Looks good :) Time to merge.


[EDITION] ReferenceError in EditionGraphModule

After Update to Angular 10, the init of the EditionGraphModule (lazy loaded as all other Edition Modules) throws an ReferenceError:
ReferenceError: Cannot access 'EditionGraphModule' before initialization

First guess: Circular dependencies (in regard to other issues reported on the web: https://stackoverflow.com/questions/60122727/referenceerror-cannot-access-player-before-initialization)
No, there are no circular dependencies in the EditionGraphModule according to analysis with madge:
madge --circular src/app/views/edition-view/edition-outlets/edition-graph/**.ts

Tracked it down to N3. Removing the N3 import in the GraphVisualizerService, removes the error. But this is not a solution, since N3 is needed to parse the RDF input.

After a long search, the issue seems to be related to the import of old stream package by N3 package. Replacing the stream imports with imports from readable-stream solves the issue. Manual changes in the following files of N3 node module package are necessary:
node_modules/N3/src/N3StreamParser.js (import { Transform } from 'readable-stream';)
node_modules/N3/src/N3StreamWriter.js (import { Transform } from 'readable-stream';)
node_modules/N3/src/N3Store.js (import { Readable } from 'readable-stream';)

Necessary steps:

Add window globals in polyfills.ts
Install @types/node as DevDependencies and add "node" to the types in tsconfig.{app/spec}.json
Add  readable-stream to the allowedCommonJsDependencies option in angular.json


template  src reference not supported

Describe the bug
A.vue
<template src="./B.vue">
</template>
<script>
export default {

}
</script>

B.vue
<template>
   <div>This is real template </div>
</template>

When Vite build the A.vue in library mod , A Component's render compile result like this
function render(_ctx, _cache, $props, $setup, $data, $options) {
  return openBlock(), createElementBlock("template", null, _hoisted_2);
}

That will create a template tag in html. By the way, vue-cli  service build works properly
Reproduction
the repo is
https://github.com/StarHosea/vite-template-build-issue.git
System Info
System:
    OS: Windows 10 10.0.19043
    CPU: (8) x64 Intel(R) Core(TM) i7-8565U CPU @ 1.80GHz
    Memory: 4.43 GB / 15.85 GB
  Binaries:
    Node: 12.18.4 - E:\DevEnv\nodejs\node.EXE
    Yarn: 1.17.3 - D:\Program Files (x86)\Yarn\bin\yarn.CMD
    npm: 6.14.6 - E:\DevEnv\nodejs\npm.CMD
  Browsers:
    Chrome: 93.0.4577.82
    Edge: Spartan (44.19041.1023.0), Chromium (94.0.992.31)
    Internet Explorer: 11.0.19041.1202

Used Package Manager
yarn
Logs
No response
Validations

[X] Follow our Code of Conduct
[X] Read the Contributing Guidelines.
[X] Read the docs.
[X] Make sure this is a Vite issue and not a framework-specific issue. For example, if it's a Vue SFC related bug, it should likely be reported to https://github.com/vuejs/vue-next instead.
[X] Check that there isn't already an issue that reports the same bug to avoid creating a duplicate.
[X] Check that this is a concrete bug. For Q&A open a GitHub Discussion or join our Discord Chat Server.
[X] The provided reproduction is a minimal reproducible example of the bug.

Closing as this isn't expected to work.
https://github.com/vuejs/core/discussions/6929


Set max HTLC in forwarding policies.

Depends on #2296. Partially closes #2182.
in the last PR, we implement parsing, storing, and re-sending the max HTLC portion of any received ChannelUpdate.
In this PR, we include the max HTLC in the forwarding policies we propagate, including to subscribers of topology notifications and DescribeGraph.

Needs a rebase when free.

We can probably just combine this with #2436 as otherwise if this lands in isolation, then we can violate our own forwarding policy.

We can probably just combine this with #2436 as otherwise if this lands in isolation, then we can violate our own forwarding policy.

Fixed! Closed #2436 and cherry-picked its commit to this PR.


documentation is missing key details for non programers

in the event the scripts do not function following the instructions here will create public and private keys,
https://www.howtogeek.com/762863/how-to-generate-ssh-keys-in-windows-10-and-windows-11/
Go to the vm instance, edit , and add the public key.   this will allow you to ssh using the -i command to call  ~/.ssh/id_rsa  and to troubleshoot why the scripts didnt complete.   It appears that windows 10, is dependent on the -i and windows 11 sets the id_rsa to the default.  Once the scripts are functioning properly, renaming the id_rsa will properly prompt for password.
For GCP   the command :   google_metadata_script_runner --script-type startup --debug   execute the startup script so you can watch for errors and troubleshoot.

there are difference in cloud commands and syntax.    better regression testing is need - and differences should be called out if its not going to work.

the basic process should be better explained.
The scripts build a generic instance however some components do not function as expected, and you can get lost troubleshooting.
I.E -  a quick login will show proper interfaces  eth0 eth1 etc. however all disappear except mgmt which will reside on eth0
ifconfig  <---check mac addresses and compare.
the best practice recommendation is to move the mgmt interface from eth0 to eth1, and this is done if the scripts execute properly , it takes 3-5 minutes as the instance will reboot .   This can be moved to eth2 or other interface as needed.  This will also generate an anomaly that results in   show net interface providing a large quantity of errors on the mgmt interface.
currently this is undocumented (numbered ) bug, it is my belief its related to mgmt being set to 100mb settings vs. letting it just detect like other interfaces.  also  - these numbers can not be reset with cli commands.   all working GCP ve's exhibit this bug.   A ping flood of over a million packets in ~3 minutes from 1 mgmt interface to another did not drop a single packet, this appears to be cosmetic.
i.e.  after the instance (shell) is built, and the mgmt interface is alive, you see all interfaces 20 seconds after mgmt allows login, however 90 seconds later all other interfaces eth0, eth2 .... will disappear technically there according to the cloud but not according to ifconfig.  Once the vlan commands add the interfaces 1.0 1.1 etc...  the interfaces will show up properly.  this can be done in either the startup-script  or in the DO scripts., keeping in mind the DO scripts are called from startup..
I strongly encourage a change in the thought process for disk allocations, disk size is tied to performance and is available at a trivial cost.  We are spending $$$$$ to have f5 do the magic it does, allocating $10 per month to have triple the disk capacity makes more sense then having a sub 100GB image.        This is a common pit fall for ASM deployments..   You have to dig long and hard but you can find the documentation with the following information:

ASM does not "log" its WAF logs into  /var/log/asm  file
ASM WAF logs go into the database, /var/log/asm = is used for the health of asm.
The result of using ASM will be the database will swell the /var  mount point  ( different mount point from /var/log) until it runs out of space.
once the /var runs out of space, you will not be able to store a single copy of a UCS in the default folder /var/local/ucs  and or a SCF file if you use those in /var/local/scf.
fun fact  - the database can grow to 5GB, this is not adjustable - too little space - it allows the filesystem to go to 0, allocate 20 GB extra, it will prune to 5gb.
Also ATM - WAF logs are not able to utilize HSL, and is dependent on a syslog configuration, performance, and limitations.
Unless this is corrected in the base image, it  I would recommend setting these in the startup-script, so they catch the reboot during nic swap, and you know they are ready for provisioning.

A helpful bit of advice would be to trouble shoot the onboard script by checking the file and folder structure.
In the README.md:
in the custom user and metatdate area:

modules?   how did you get here, where do you configure it ?  how is it linked.?
example 4 appears to have some syntax issues:   extra "s" on the module line and is missing the open brace, count has  vas. should be var

With 5 examples of the deployments, there is no documentation of what runtime init is , why we need it, and kind of looks like its only needed for 1nic deployments.  Also - what is changing from 1-2-3-4 nics, can this be summerized with
If you need more NIC in any of:
*( 1 nic deployment)    mgmt_subnet_ids    <---- is default config refrenced in output and variables  tf files
( 2 nic deplloyment)   copy and modify  mgmt_subnet_ids to a new variable either internal_subnet_ids or external_subnet_ids
(3 nic + deployments,   either copy and modify  mgmt_subnet_ids to a new variable name OR  inside the [ square braces]   copy from { to } add a comma and make sure it closes with the squire brace ending.

Created INFRAANO-608 for internal tracking

@cah-roger-bauer did you providing f5_ssh_publickey input to module by specifying windows ssh public key path.

This was included in v1.1.2, closing this now, thanks!


Adds MultiToolComponent, which can be used to make tools that can switch behaviors (See jaws of life, power drill)
Adds welding fuel chemical
Construction now uses Tool enum.
Renames sound_collection to soundCollection.
Renames Wrenchable to Anchorable. Refactors it to use IWrenchAct.

Next up is moving all components to use the new component interfaces for tools. But that can be done by someone else.

Alright, I removed all the welder-specific stuff and moved it to its own component.
I think creating custom tools should be trivial if your component inherit ToolComponent.
This is ready for review once again.

This is ready for review again.


Add curand support

Description
This PR adds a cuRAND backend to oneMKL.
Addresses #49
Checklist
All Submissions

[x] Do all unit tests pass locally? Attach a log.
ctest_curand.LOG
[x] Have you formatted the code using clang-format?

New features

[x] Have you provided motivation for adding a new feature?
It is desirable to be able to use oneMKL RNG on CUDA devices.
[x] Have you added relevant tests?

Also will squash/fix commits after review but before merge.

I squashed commits to one during merge, but all commits that were made are listed in the commit descriptions. Do you think it's better to split them by some groups of changes?

@mkrainiuk,
Just some temporary commit messages I'd like to clean up; not all are useful. How do you suggest I update this? I can amend the message but not sure how you'd want to propagate to upstream.
Sorry!

If it's only about message you can share how it should look like and we will update comment in upstream branch.

OK, let's use:
This commit adds a cuRAND backend to oneMKL.

The implementation follows closely to that of the existing x86 and
Intel GPU, with the following limitations:

(1) the cuRAND Host API does not support copy-construction for
    generators;
(2) cuRAND does not support initializer lists for seeding
    generators;
(3) cuRAND uses inverse cumulative distribution function (ICDF)
    methods only for quasi-random number generators; and
(4) cuRAND does not support custom ranges on the output sequence
    of random numbers.

Functionality requiring any of 1-3 above are not implemented here
but could be added at a later time. Additional kernels were added to
support (4).

If anything more should be added, just let me know. Also probably worth noting is that I've run some benchmarks and for large workloads, SYCL interoperability shows nearly native performance -- great news for SYCL! There is an observable constant overhead (for reasons known) when the GPU is not being heavily utilized.
Thanks, @mkrainiuk!

I've updated commit message. Thank you @vrpascuzzi for enabling new backend!

Looks great -- thanks!


Enable IPv4/IPv6 forwarding on demand automatically

Although it has been documented as a prerequisite in [1], there are some platforms not enabling ip forwarding by default. kube-proxy ipvs mode and some CNIs enable it by themselves to ensure Pod networking work properly.
As Antrea needs IP forwarding to be enabled, there seems no reason to not do it by itself, rather than expecting users or other components to do it.
[1] https://kubernetes.io/docs/setup/production-environment/container-runtimes/#install-and-configure-prerequisites
For https://github.com/vmware/antrea-operator-for-kubernetes/issues/98

/test-all

Will this be backported to 1.14?

Will this be backported to 1.14?

It's being backported to 1.13 and 1.14.


systemd: v243 > v243.3

Motivation for this change
This bumps our systemd version to the latest stable point release of system v243.
Once this has dripped through staging into master I'd also backport it to 19.09 (cc RMs @samueldr @disassembler).
Here is the list of  non-merge changes:
test: Pass personality test even when i686 userland runs on x86_64 kernel
docs: fix inadvertent change in uid range
cgroup: fix typo in BPF firewall support warning message
fix build with compilers with default stack-protector enabled
nspawn: surrender controlling terminal to PID2 when using the PID1 stub
pid1: fix DefaultTasksMax initialization
src/core/automount: use DirectoryMode when calling mkdir -p
udevadm trigger: do not propagate EACCES and ENODEV
hwdb: Correct WWWW Pattern In Documentation Comment
nspawn: consistenly fail if parsing the environment fails
nspawn: default to unified hierarchy if --as-pid2 is used
cgroup: Mark memory protections as explicitly set in transient units
cgroup: Respect DefaultMemoryMin when setting memory.min
cgroup: Check ancestor memory min for unified memory config
cgroup: docs: memory.high doc fixups
cgroup: docs: Mention unbounded protection for memory.{low,min}
Consider smb3 as remote filesystem
Handle d_type == DT_UNKNOWN correctly
util-lib: Don't propagate EACCES from find_binary PATH lookup to caller
network: drop noisy log message
Updated log message when the timesync happens for the first time (#13624)
units: make systemd-binfmt.service easier to work with no autofs
Corect man page reference in systemd-nologin.conf comments
man: Add a missing space in machinectl(1)
log: Add missing "%" in "%m" log format strings
pid1: do not warn if /run/systemd/relabel-extra.d/ doesn't exist
man: fix typo
dhcp6: use unaligned_read_be32()
dhcp6: add missing option length check
ndisc: make first solicit delayed randomly
dhcp6: read OPTION_INFORMATION_REFRESH_TIME option
l10n: update Czech Translation
sd-radv: if lifetime < SD_RADV_DEFAULT_MAX_TIMEOUT_USEC, adjust timeout (#13491)
polkit: fix typo
sd-netlink: fix invalid assertion
network: do not enter failed state if device's sysfs entry does not exist yet
network: add missing link->network checks
path: stop watching path specs once we triggered the target unit
hwdb: add Medion Akoya E2292 (#13498)
po: update Brazilian Portuguese translation
po: update Polish translation
polkit: change "revert settings" to "reset settings"
man: fix description of ARPIntervalSec= units
hwdb: axis override for Dell 9360 touchpad
test: drop the missed || exit 1 expression
udevadm: use usec_add()
udevadm: missing initialization of descriptor
networkd: unbreak routing_policy_rule_compare_func()
core: coldplug possible nop_job
tty-ask-pwd-agent: fix message forwarded to wall(1)
core: Fix setting StatusUnitFormat from config files
network DHCP4: Dont mislead the logs.
Update m4 for selective utmp support. 	modified:   tmpfiles.d/systemd.conf.m4
core: restore initialization of u->source_mtime
mount-setup: relabel items mentioned directly in relabel-extra.d
Call getgroups() to know size of supplementary groups array to allocate
test: add test cases for empty string match
udev: fix multi match
man: move TimeoutCleanSec= entry from .service to .exec
zsh: udpate bootctl completions
resolved: fix abort when recv() returns 0
man: remove repeated words
hwdb: Also mark lis3lv02d sensors in "HP" laptops as being in the base
udev: also logs file permission
udev: add missing flag for OPTIONS=static_node
network: do not abort execution when a config file cannot be loaded
fileio: update warning message
pstore: fix use after free
journal: Make the output of --update-catalog deterministic
travis: protect the systemd organization on Fuzzit from forks
hwdb: Mark lis3lv02d sensors in HP laptops as being in the base
po: update Japanese translation
docs: fix push recipe in RELEASE.md
man/systemctl.xml: fix missing "not"
docs: fix typo in boot loader doc
pstore: fix typo in error message - directoy -> directory
Fix typo in comment: overide -> override
po: update Polish translation

(https://github.com/NixOS/systemd/compare/nixos-v243...nixos-v243.3)
Things done
I did build the nixos-small and the nixos release tests and no new obvious issues appeared.
Running this systemd version on-top of nixos-unstable on my notebook didn't show any obvious problems, as well.
Notify maintainers
cc @flokli @fpletz @mic92

Will this include these logind fixes I backported to 243?

https://github.com/NixOS/systemd/pull/33

If not, they're already in 19.09 so we need to be sure those commits are there if we backport.

Will this include these logind fixes I backported to 243?
* [NixOS/systemd#33](https://github.com/NixOS/systemd/pull/33)

If not, they're already in 19.09 so we need to be sure those commits are there if we backport.

Yes! They are included. I based it on the latest version of our v243 branch. I'll make sure it all ends up on the v243 branch on our systemd fork once this lands.

Will this include these logind fixes I backported to 243?
* [NixOS/systemd#33](https://github.com/NixOS/systemd/pull/33)

If not, they're already in 19.09 so we need to be sure those commits are there if we backport.

Yes! They are included. I based it on the latest version of our v243 branch. I'll make sure it all ends up on the v243 branch on our systemd fork once this lands.

Ah, thanks for clarifying.
Would sufficient QA be overriding systemd.package to this rev and giving it a spin?

Would sufficient QA be overriding systemd.package to this rev and
giving it a spin?

It is sufficient to verify that it isn't utterly broken. I'll switch my
laptops configuration to this revision once my hydra finished building
this PR. (I previously only build it on top of master)

cc RMs @samueldr @disassembler

Silly @andir! It's @lheckemann and @disassembler :)

Backported to staging-19.09: ed967de49e8

As mentioned in https://github.com/NixOS/nixpkgs/issues/73504#issuecomment-557939795, the fixes for https://github.com/NixOS/nixpkgs/issues/73504 are included in v243.4, so we should pull this in, too.

I would add some fair delay between master and release-19.09, just to be sure.


Add metadata about local Product, for better refresh flexibility

Problem
We store products locally with only one metadata: the timestamp of the latest insertion/update in the local database (last_update).
If we want to do smart database refreshes (e.g. new language), that may not be enough.
"Smart" refreshes mean something more refined than "refresh all the products in one shot".
Proposed solution
The first example that comes to mind is the language. When we download a product, we call the API with a language parameter.
We could store locally the queried language as a metadata, at the same time as we store the product.
With that metadata, we could run queries like "give the local products in history that are not in Italian (new language), most recent first"
Of course, other metadata could be added.
Possibly, additional OFF metadata extracted from the product (like the OFF "last update"). For queries like "give me the local products whose server refresh is more than 2 months old".
Not sure if the country would be as relevant as the language.
Part of

#4941

My first tests are very interesting.
It looks like we'd be able to just frequently say "btw just refresh the most recent products that are not in the current language, and keep doing so".

Possible improvement: a "last access" metadata, cf. @LuanRoger in https://github.com/openfoodfacts/smooth-app/pull/4717#issuecomment-1875942754.
To be considered carefully: that would mean "writing" each time we "read" a product, and for the moment we write only when we download a product.

Now that #4951 is merged, we have all we need to automatically refresh the products when the app language changes.
Smoothly.
The first step will be: "refresh 10 products that are not in the right language, and do it again".
Then some fine tunings, about which products are more interesting and should be refreshed first.

@teolemon I'm sure you'll love that. I don't know if I'll be able to PR today but by the time I switched from the preferences (language: French -> Italian) to the history list, the products were translated!

French
Italian

I've just lost all today's code because of merge conflicts with the important matter of #4938's test tube being empty or filled...

With #4951 and #4969 now merged, we have 2 new metadata:

the language of the server query when the product was downloaded
the timestamp of the latest local access to the product (e.g. open product page or open product list page)

With those metadata it's very easy to solve the "app language change" problem:

are there products that were not downloaded in the same language as the app?
if so, let's download the products in the new language, for the most interesting products first (e.g. ordered by descending timestamp)

For the nutriscore refresh, the problem is a bit different:

how do we know the nutriscore hasn't been potentially refreshed yet, in general or for a product? Like, if the product server last_update timestamp is prior a date, like April 1st 2024?
how could we track which products we still have to refresh? A trick would be to empty the download-language metadata, which would trigger the database refresh on grounds of empty=wrong language.

This week-end I'll PR the automatic translation system at each app language change.


Desktop app not using correct "Downloads" directory on windows

If you set your Downloads directory to something other than "User Home"/Downloads the Desktop app does not respect the new location.
Maybe this could help:
https://www.reddit.com/r/Batch/comments/ec8bwi/whats_the_universal_path_to_the_users_downloads/

Also affected by this. Bug seems to be here:
https://github.com/mattermost/desktop/blob/fc13f877f2a4fdb4988b568737dac645ceea2a0e/src/common/config/defaultPreferences.ts#L15-L17
Solution could be https://stackoverflow.com/a/50391890 . I'd open a PR but i'm not a node / js developer.

Just for some context, it seems that Electron isn't doing this properly either. app.getPath('downloads') always returns C:\Users\<username>\Downloads it seems. Not sure how it's calculating that

Created ticket https://mattermost.atlassian.net/browse/MM-60782


Added the solution for 33. Search in Rotated Sorted Array

Pull Request Template
What have you Changed(must)
Add solution for the problem Search in Rotated Sorted Array.
Issue no.(must) - #1382
Pr will be close and marked as spam. If issue number not found or issue was assigned to someone else.
Marking as spam can block your account from HacktoberFest.
Self Check(Tick After Making pull Request)

[x] This issue was assigned to me if not it will be marked as spam.
[x] My file is in the proper folder
[x] I am following clean code and Documentation.
[x] I have added the title and what program will do first in the file
[x] I have named the file as (Problem #). (Problem Title(in Camel Case)).(extension)
ex. 2. AddToNumbers.py

README - How to Contribute

@SSKale1 Please merge :)


formulae_dependents: skip unnecessary steps when there are no dependents

This allows us to skip some steps that aren't needed[^1] for formulae with
no dependents.
[^1]: e.g. brew link, brew install --only-dependencies, etc.

Good catch, thanks @carlocab!


Multiple instances of the same modifier

Hello!
First of all - this is a great project! Has basically everything I was trying to make myself, especially love how easy it is to add and manage stats.
One thing I'm not certain about however, how would I go about adding multiple instances of the same modifier? To stack them. I tried
statModifier = Instantiate(statModifier);
characterStats = transform.root.gameObject.GetComponentInChildren<CharacterStats>();
statModifier.ApplyAdjustment(characterStats.runtimeStats);

But it only adds 1 single instance of a modifier.
Thanks! :) And sorry if it's in the docs somewhere, I could not find it
I suppose I should be giving each instance unique IDs and keeping track of them for removal?

For now here's how I did it, but I don't think it's the best way to approach it:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using CleverCrow.Fluid.StatsSystem;

[System.Serializable]
public class ModifierMemory
{
    public string id;
    public OperatorType operatorType;
    public StatDefinition definition;

}
public class StatusEffect_StatModifier : StatusEffect
{
    public StatsAdjustment statModifier;
    CharacterStats characterStats;

    private List<ModifierMemory> modifierIds = new List<ModifierMemory>();

    public override void ApplyEffect()
    {
        characterStats = transform.root.gameObject.GetComponentInChildren<CharacterStats>();
        foreach (ModifierGroup modifierGroup in statModifier.Adjustments)
        {
            string randomId =  System.Guid.NewGuid().ToString();
            characterStats.runtimeStats.SetModifier(modifierGroup.operatorType, modifierGroup.definition, randomId, modifierGroup.GetValue(0));

            ModifierMemory mm = new ModifierMemory();
            mm.id = randomId;
            mm.operatorType = modifierGroup.operatorType;
            mm.definition = modifierGroup.definition;
            modifierIds.Add(mm);
        }
    }

    public override void OnRemoveEffect()
    {
        foreach (ModifierMemory mm in modifierIds)
        {
            characterStats.runtimeStats.RemoveModifier(mm.operatorType, mm.definition, mm.id);
        }
        Destroy(gameObject);
    }
}

ApplyEffect is called whenever gameobject is spawned, OnRemoveEffect is called OnDestroy. This way I can simply attach this gameobject to a character anywhere in the hierarchy and it will apply the modifier and remember it's ID and values required to remove it (why are operatorType and Definition required for RemoveModifier function? I thought it would work with just an ID but ah well). And whenever game object is removed it will remove these modifiers.

Hmmm, yeah with all the caching going on I'm not sure how you'd share a single modifier instance 🤔  Would require some refactoring at the very least. There would probably need to be a separate API end point to add a shared instance and the caching requirements would be tricky. If it works how you wrote it power to you for sure.
Would probably need to generate the modifier externally with a custom class (kind of like what you did). Something like new StatsAdjustmentInstance(adjustment). Then call runtimeStats.ApplyAdjustment(instance);. But removing the adjustment would be a little tricky and the caching would become far more complicated.
Outside of a pretty big API rework I'm kinda stumped on this one.

I did try to do Instantiate(statModifier) (or I should rather call it Instantiate(statAdjustment)) and use that. But it works the same, as it seems like whatever you're doing is entirely based on Id strings?
What about creating unique statAdjustment instances internally with unique Ids on them? Or something along the lines of adding a checkbox like "stackable", which sometime at runtime clones\instantiates an SO and adjusts it's ID to be unique?
Just thinking out loud.
I honestly thing that this is crucial feature for this package to be production ready. I can't imagine many games would be fine without stacking?

Using it in production and it's been working fine for me. It sounds like a cool feature, but I haven't had any sort of need for it and it does sound like a huge scope increase. Stat adjustments do overlay just fine by using IDs to overlap and applying multiple stat adjustments. Can I ask what your use case is? It might already do what you need.
If you're trying to do this it could be fixed by adding a unique ID onto the stat IDs.
statModifier.ApplyAdjustment(characterStats.runtimeStats);
// This would probably just overwrite the pre-existing stats
statModifier.ApplyAdjustment(characterStats.runtimeStats);

Above solution should work as a workaround. I can expand the system to allow multiple adjustments but would require a refactor and a bit of planning. Closing for now but happy to chat more in the discussions on how a refactor might look.


Proto restruct

View the proposed changes using the redocly API viewer
An overview of changes should go here along with any justifications.
config = api.config()
# sample interface, routers, flows configuration code here
api.set_config(config)

import otg
api = otg.api(location="https://localhost")
config = api.config()
p = config.ports.port(name='p1', location='localhost:5555')[-1]
p.name = "p2"
p.location  = 'localhost:5556'
Create 2 ethernet + ipv4 interfaces
intf1 = config.interfaces.interface(name='if1', container_name=p.name)[-1]
eth1= intf1.ethernet
eth1.name = 'eth1'
eth1.mac = '64:00:00:00:00:01'
eth1.vlans.vlan(name='vlan1', id=100)
ip1 = eth1.ipv4
ip1.name = 'ip1'
ip1.address = '<IP_ADDRESS>'
ip1.gateway = '<IP_ADDRESS>'
intf2 = config.interfaces.interface(name='if2', container_name=p.name)[-1]
eth2 = intf2.ethernet
eth2.name = 'eth2'
eth2.mac = '65:00:00:00:00:01'
eth2.vlans.vlan(name='vlan2', id=200)
ip2 = eth2.ipv4
ip2.name = 'ip2'
ip2.address = '<IP_ADDRESS>'
ip2.gateway = '<IP_ADDRESS>'
Create ISIS Router
rtr = config.routers.router(name='rtr')[-1]
isisRtr = rtr.isis
isisRtr.name = 'isis1'
isisRtr.system_id = '640000000001'
Create ISIS Interfaces
isisInf1 = isisRtr.interfaces.isisinterface(eth_name=eth1.name)[-1]
isisInf2 = isisRtr.interfaces.isisinterface(eth_name=eth2.name)[-1]
isisInf1.network_type = isisInf1.BROADCAST
isisInf2.network_type = isisInf2.POINT_TO_POINT
Create ISIS Router ranges
v4rr1 = isisRtr.isisv4_routes.isisv4route(name='rr1')[-1]
v4rr1.addresses.v4routeaddress(address='<IP_ADDRESS>', prefix=24, count=50, step=1)
v6rr1 = isisRtr.isisv6_routes.isisv6route(name='rr2')[-1]
v6rr1.addresses.v6routeaddress(address='2000::0', prefix=64, count=50, step=1)
print(config)

@ankur-sheth with this set of changes, how will a DP only case use the concept of interfaces and dynamically learn DMAC to emulate just simply a host? configure router.interfaces.ethernet?

That might be one option.  Need to give it some thought.

can we close this PR if we are not going with this approach?

closing as we converged on #154


canvas panning not synchronized with zoom correctly

Try wheel-dragging or spacebar-dragging.
In the GIF below, notice that the cursor should stay in the same place, but it moves as I drag:

Interestingly, the error only appears in one direction — the cursor is too far right when zoomed in and too far left when zoomed out.


pyvista.plotting.plotting will move on next release

https://github.com/ansys/pyprimemesh/blob/83c8dab91139cfed66e19f84dca3deb9346edb56/src/ansys/meshing/prime/graphics/graphics.py#L9
This module has moved in PyVista. This import will not break, but will start issuing deprecation warnings on PyVista's next release. Plotter is okay to import from the top level pyvista or pyvista.plotting namespaces

from pyvista import Plotter okay
from pyvista.plotting import Plotter okay
from pyvista.plotting.plotting import Plotter deprecated
from pyvista.plotting.plotter import Plotter new full path, but not recommend. Stick with pyvista or pyvista.plotting

@AlejandroFernandezLuces Can you look into this once you get some time?

This has been deprecated is is probably issuing deprecation warnings in your CI at this point
See https://github.com/ansys/pyprimemesh/actions/runs/5590781121/jobs/10221021431#step:5:1060


Created a brew formula

I have created a brew formula for bash snippets for simpler installation on mac.
https://github.com/Homebrew/homebrew-core/pull/15107
The brew build is failing atm now because this repo is less than 30 days, not sure if it is going to be merged into Brew before 30 days have gone.
The test probably should be improved, because it just tests if crypt has been installed, but if the user decided to run the --without-crypt option, tests will fail

That's cool I would love to have this be a part of homebrew core, my only concern is that if you install it with homebrew core where does it get installed? Because I would have to account for the location of the tools in the update method I created otherwise it would break my update method if you installed with homebrew (unless I get to choose where the file is installed).
I don't really know any Ruby so I don't think I can write real tests for the tools themselves. If you are willing to write the tests and if homebrew won't break my update method (if I readjust to the new install location) I would love to have this be a part of homebrew when the repostiory matures to 30+ days

They get installed to /usr/local/bin, or, they get linked there. Regarding updating, brew takes care of that. Because it downloads the latest released version from git.
If you see my screenshot, I have v1.5.0 installed, and then I run brew upgrade, it updates bash snippets to v1.6.0

So, someone using brew, relies on brew for updating tools

If I run crypt -v, I now get Version 1.6.0

Awesome I install to usr/local/bin so you should be able to update through homebrew or my application. I know if you install through homebrew that's where you update it though but I just didn't want my update method to break so that just in case someone does call it that way they aren't always returned with some error.
But it looks like it would work perfectly since we share the same install location. However if they are just symlinked I have to check if when I call -f usr/local/bin/tool that it would come back saying the file exists. It would then copy the new files to that directory and not necessarily symlink then so I would have to readjust for that.
Or I could avoid all of that and check if brew is installed on the machine and if it is just tell them to update through there.
The latter might be more plausible and make more sense because like you said if you install through homebrew you would probably update through there too.

Just created a brew tap, so you can now install it like this
brew install chainsawbaby/formula/bash-snippets

I'll see if I can come up with some tests for the brew formula

@ChainsawBaby awesome! Going to test it on my mac soon and will then add this to the readme. Any chance you could also copy bash-snippets.1 to /usr/local/man/man1. This will allow people to enter man bash-snippets and get information on all of the tools at once.

@alexanderepstein Done, added man pages to the formula

Added to README here 36dabd4ee70cd882f732816c6bb52770994ca0e2 I do not inform the user of the possibility of flags such as --without-crypt due to the nature of the tests. Once the tests are testing functionality and not existence of crypt I will add that to the README as well.
Hopefully will be able to retry adding this homebrew-core after the tests are improved upon and it has hit the 30 day notability requirement. Thanks for all of what you're doing :+1:

Not sure if you can use my tests but I have created a test suite for this repository using https://github.com/sstephenson/bats. All of the tests are located in the tests folder. I don't think you will be able to use them directly but they are tests that are ready to be ported to another language. The only tool that tests cannot run on is the taste tool because it requires an api key to be in the ~/.bash_profile

I have installed it as @ChainsawBaby pointed (from brew tap) and it seems it doesn't have all the scripts:
brew list chainsawbaby/formula/bash-snippets
/usr/local/Cellar/bash-snippets/1.13.0/bin/cheat
/usr/local/Cellar/bash-snippets/1.13.0/bin/crypt
/usr/local/Cellar/bash-snippets/1.13.0/bin/currency
/usr/local/Cellar/bash-snippets/1.13.0/bin/geo
/usr/local/Cellar/bash-snippets/1.13.0/bin/movies
/usr/local/Cellar/bash-snippets/1.13.0/bin/qrify
/usr/local/Cellar/bash-snippets/1.13.0/bin/short
/usr/local/Cellar/bash-snippets/1.13.0/bin/stocks
/usr/local/Cellar/bash-snippets/1.13.0/bin/taste
/usr/local/Cellar/bash-snippets/1.13.0/bin/weather
/usr/local/Cellar/bash-snippets/1.13.0/bin/ytview
/usr/local/Cellar/bash-snippets/1.13.0/share/man/man1/bash-snippets.1

cloudup, siteciphers, todo are missing.

@mirfilip you are correct, give me a few minutes, I'll update the formula

@mirfilip It should now be fixed. Could you please remove the brew, and install it again?
$ brew list chainsawbaby/formula/bash-snippets                                                                                [10:38:43]
/usr/local/Cellar/bash-snippets/1.13.0/bin/cheat
/usr/local/Cellar/bash-snippets/1.13.0/bin/cloudup
/usr/local/Cellar/bash-snippets/1.13.0/bin/crypt
/usr/local/Cellar/bash-snippets/1.13.0/bin/currency
/usr/local/Cellar/bash-snippets/1.13.0/bin/geo
/usr/local/Cellar/bash-snippets/1.13.0/bin/movies
/usr/local/Cellar/bash-snippets/1.13.0/bin/qrify
/usr/local/Cellar/bash-snippets/1.13.0/bin/short
/usr/local/Cellar/bash-snippets/1.13.0/bin/siteciphers
/usr/local/Cellar/bash-snippets/1.13.0/bin/stocks
/usr/local/Cellar/bash-snippets/1.13.0/bin/taste
/usr/local/Cellar/bash-snippets/1.13.0/bin/todo
/usr/local/Cellar/bash-snippets/1.13.0/bin/weather
/usr/local/Cellar/bash-snippets/1.13.0/bin/ytview
/usr/local/Cellar/bash-snippets/1.13.0/share/man/man1/bash-snippets.1

@ChainsawBaby Yup, fixed, thx!
Just for other people stumbling upon this: neither of below seemed to update the tapped formula:
brew upgrade --force chainsawbaby/formula/bash-snippets
brew upgrade chainsawbaby/formula/bash-snippets

I neede to uninstall & install --force.

@mirfilip I updated the formula again, and added a revision version to it. So anyone whom does an upgrade, will get the last upgrade of the brew.
So if you run bubu ( aliased for brew update && brew outdated && brew upgrade && brew cleanup), it will be updated

3 days away from being able to add this to homebrew core!

It depends also on the popularity. We have our own tap at AMIA Open Source. The last formula that we moved to the core has been qcli, the CLI version of QCTools.

@retokromer is this not popular enough to add to homebrew core? I am asking sincerely since I really don't know :confused:. It seemed the main issue was the original pull request for adding this to the core was that the upstream repo was only 4 days old at the time, and the test part of the formula wasn't testing the functionality of the scripts.

@alexanderepstein Of course it is popular enough. There are 4969 stars on this repo. I know stars are not full story but I've seen plenty of niche tools added to homebrew-core.
Anyway, if you submit a PR to homebrew-core, there are people to decide whether it's mainstream enough to be included.

@mirfilip Okay glad to hear it :smile_cat:
The only thing is that I am not supposed to be the one who submits a PR, and I know that the testing section of the formula be improved. I would work on the tests myself but I have no experience with Ruby.
From the docs

We frown on authors submitting their own work unless it is very popular.

From the original pull request

the test in the test do block should exercise and verify the software's functionality.

@alexanderepstein There are different criteria the maintainers consider. Yet by my remark I was not suggesting that you should not try, on the contrary please try!

Should be able to add to homebrew core starting today :tada:

I updated this morning to v1.15.0. I guess you can copy&paste https://github.com/ChainsawBaby/homebrew-formula/pull/2 (if not done yet).

Yeah that should work, but according to homebrew

We frown on authors submitting their own work unless it is very popular.

So I am not sure if i should be the one to submit the PR. If they would accept it from me I will gladly do it.

Yes, you can copy&paste and submit it a PR.

I will see if I have time to create a pull request to homebrew core tonight. I'm on vacation till Sunday

@ChainsawBaby : It’s already on track: @alexanderepstein is doing it!

Just having trouble figuring out how to write the tests. And my build is failing because I am trying to copy my files over to directories that don't exist, how can I create these directories using Ruby?

@alexanderepstein You are too fast!

@retokromer lol I try! Still need to write the tests however if either of you are willing and able to help

I only need to test the 3 most popular tools.

I wrote tests for the top 3 tools and it was merged into homebrew-core :tada:

Thank you @ChainsawBaby and @retokromer for maintaining the tap :smiley_cat:

@alexanderepstein Sweet! I'll keep my tap open for a few weeks in case someone doesn't notice the change


Add MakeCode as a webview

MakeCode as a webview
Download hex and flash from MakeCode
Point to a specific version of MakeCode

@microbit-sam can this be closed?

Yes - now in beta