Fixes #911 - Adds support for :contains modifier

Adds support for the :contains modifier in StringClientParam.

Hi @jamesagnew ,
Let me know if I’m missing anything from this PR. Thanks!


orbslam_dwo

Hello!I followed you steps ,but a mistake is happened when run the porject.
test_orbslam: /usr/local/include/eigen3/Eigen/src/Core/DenseStorage.h:130：Eigen::internal::plain_array<T, Size, MatrixOrArrayOptions, 32>::plain_array() [with T = double; int Size = 4; int MatrixOrArrayOptions = 0]: 假设 ‘(internal::UIntPtr(eigen_unaligned_array_assert_workaround_gcc47(array)) & (31)) == 0 && "this assertion is explained here: " "http://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html" " **** READ THIS WEB PAGE !!! ****"’ 失败。
Could please hlep me to solve this probleam?Thank you !

The error is largely caused by dynamically allocating instances of classes that have a Eigen object member. For instance, class Frame has at least a Sophus::SE3d object which is an Eigen object aggregate, and Frame has been allocated on the heap many times by Frame * aframe = new Frame().
The solution is to "put a EIGEN_MAKE_ALIGNED_OPERATOR_NEW macro in a public part " of such a class as discussed in http://eigen.tuxfamily.org/dox-devel/group__TopicUnalignedArrayAssert.html.
I will fix this issue if I got extra time.

Thank you for your reply!I will try it!

I have tried it,but it didn't work.I want know what is "the public part"your said?Thanks!

The public part is shown below.
class A {
public:
// this is the public part, put eigen_new_operator macro here.
int a;
private:
int z;
}
Meanwhile, I will fix the issue in a couple of days.

From: wanwei<EMAIL_ADDRESS>Sent: Tuesday, March 6, 2018 12:36:56 AM
To: JzHuai0108/vio_g2o
Cc: Jianzhu Huai; Comment
Subject: Re: [JzHuai0108/vio_g2o] orbslam_dwo (#2)
I have tried it,but it didn't work.I want know what is "the public part"your said?Thanks!
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com/JzHuai0108/vio_g2o/issues/2#issuecomment-370669393, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AHsGYbL_7yBIW4FElABapiAyyejjqf_iks5tbiB3gaJpZM4SWIqH.


[1334] Update CHANGELOG for v5.5.0

Resolves #1334

Waiting for irrelevant tests to finish :stuck_out_tongue:


CLOUDSTACK-9348: NioConnection improvements

Reopened PR with squashed changes for a re-review and testing after https://github.com/apache/cloudstack/pull/1493 and sub-sequent PRs got reverted

@swill I was able to reproduce the addHost issue and fixed it. I was able to deploy against a KVM env with two clusters with Ubuntu and CentOS based hosts in each: (addHost can fail silently if we're trying to mix CentOS and Ubuntu KVM hosts in the same cluster)

If possible, I would request for this bugfix to be added in 4.9.0 release as it fixes:

critical nio reconnection, improves SSL handling by making it non-blocking
without this fix, agents (kvm, systemvm etc) can take some time (minutes to hours) to reconnect
the management server's agent handler on port 8250 can be pwned by a single telnet (or similar malicious) client. To test, on existing deployments without this patch just connect a telnet agent on port 8250 of the mgmt server, now this mgmt server can no longer immediately handle any agent connection (try restarting kvm agent for example).

I will get this run through CI.  Just to be clear, this PR includes all of the changes that were included in 1543, 1538, 1534, 1493 as well as a fix for the addHost issue.  Is that correct?  Thx...

@swill yes, this PR includes all the reverted changes and the addHost fix.

CI RESULTS
Tests Run: 85
  Skipped: 0
   Failed: 0
   Errors: 0
 Duration: 8h 51m 55s

Associated Uploads
/tmp/MarvinLogs/DeployDataCenter__May_19_2016_19_29_38_NAMX3Q:

dc_entries.obj
failed_plus_exceptions.txt
runinfo.txt

/tmp/MarvinLogs/test_network_V1CHD4:

failed_plus_exceptions.txt
results.txt
runinfo.txt

/tmp/MarvinLogs/test_vpc_routers_L9ZGGS:

failed_plus_exceptions.txt
results.txt
runinfo.txt

Uploads will be available until 2016-07-20 02:00:00 +0200 CEST
Comment created by upr comment.

I am going to run the test again because it was an intermittent issue, so a couple tests is not a bad idea.

Thanks @swill

CI RESULTS
Tests Run: 83
  Skipped: 0
   Failed: 0
   Errors: 2
 Duration: 8h 27m 27s

Summary of the problem(s):
ERROR: test suite for <class 'integration.smoke.test_vpc_vpn.TestVpcRemoteAccessVpn'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/suite.py", line 209, in run
    self.setUp()
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/util.py", line 471, in try_run
    return func()
  File "/data/git/cs1/cloudstack/test/integration/smoke/test_vpc_vpn.py", line 293, in setUpClass
    cls.template.download(cls.apiclient)
  File "/usr/lib/python2.7/site-packages/marvin/lib/base.py", line 1350, in download
    elif 'Downloaded' in template.status:
TypeError: argument of type 'NoneType' is not iterable
----------------------------------------------------------------------
Additional details in: /tmp/MarvinLogs/test_network_AVQ8UF/results.txt

ERROR: test suite for <class 'integration.smoke.test_vpc_vpn.TestVpcSite2SiteVpn'>
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/suite.py", line 209, in run
    self.setUp()
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/suite.py", line 292, in setUp
    self.setupContext(ancestor)
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/suite.py", line 315, in setupContext
    try_run(context, names)
  File "/usr/lib/python2.7/site-packages/nose-1.3.7-py2.7.egg/nose/util.py", line 471, in try_run
    return func()
  File "/data/git/cs1/cloudstack/test/integration/smoke/test_vpc_vpn.py", line 472, in setUpClass
    cls.template.download(cls.apiclient)
  File "/usr/lib/python2.7/site-packages/marvin/lib/base.py", line 1350, in download
    elif 'Downloaded' in template.status:
TypeError: argument of type 'NoneType' is not iterable
----------------------------------------------------------------------
Additional details in: /tmp/MarvinLogs/test_network_AVQ8UF/results.txt

Associated Uploads
/tmp/MarvinLogs/DeployDataCenter__May_20_2016_06_41_21_MDBMOC:

dc_entries.obj
failed_plus_exceptions.txt
runinfo.txt

/tmp/MarvinLogs/test_network_AVQ8UF:

failed_plus_exceptions.txt
results.txt
runinfo.txt

/tmp/MarvinLogs/test_vpc_routers_JFF9WZ:

failed_plus_exceptions.txt
results.txt
runinfo.txt

Uploads will be available until 2016-07-20 02:00:00 +0200 CEST
Comment created by upr comment.

Two clean runs in a row.  I think this one is ready to put back in now...

BTW, thank you for your quick response time to work through issues on your PRs and get things stabilized.  I really do appreciate it.

@swill thank you for your time in testing this

And of course the first build I do after I merge it into master I get the addHost error and I did not get it once after I pulled it out.  Haha...  I will build again and see...

@rhtyd can you specify the logs you need if I run into this issue so you can track down why it is happening?  I will leave it in for now but I would like to send you the logs every time there is an issue so you can understand what is going on so we can try to fix it (once and for all).  Thanks...

@rhtyd uggg...  The first two builds on master after merging this back in have both resulted in the addHost error.  :(  Let me know what you need to troubleshoot this.  I have a couple PRs I want to do a final round of testing on, so I will try to get them tested and we will see if they also run into this issue when I try to test them.  If they do, I may have to revert again.  I am trying my best to get a bunch of the PRs that are close in, so I am pushing the freeze date a bit (obviously).  I will probably freeze over the weekend or early next week.  I would like to make sure we have this resolved though.  I don't want this to derail my final testing.  I will launch a bunch more CI right now and we will see how things go...

@swill if it's failing for addHost, can you send the mgmt server log, marvin log and the agent log, and details of the environment (as much as possible). I can have a look at it tonight or tomorrow morning. If it helps we can pair-debug the issue over GTM in your CI environment?
It would also help if anyone else is able to reproduce the error on current master as well, pinging @DaanHoogland @wido @nlivens @nvazquez @koushik-das @kiwiflyer and others.
@swill if we're unable to fix the issue then sure we can revert it.

@swill I ran tests on latest master using packages: http://packages.shapeblue.com/cloudstack/custom/master-latest/
I was able to deploy a zone with two KVM hosts and a mgmt server (on centos6). I was able to use a cloudmonkey based script and it was able to add multiple hosts without any error; here is the log and deploy script:
cloudmonkey.log.txt
deploy-kvm-adv.sh.txt
@swill I was then able to launch VMs, see systemvm connect and perform regression tests. I'm unable to reproduce the issue now, I think master is stable; in case you hit the addHost issue please send me the mgmgt server and agent logs. Thanks.

@rhtyd fingers crossed, things seem to be in pretty good shape.  The first two runs after the merge had addHost errors, but I have done about 6-7 CI runs since and have not gotten the issue again, so things seem to be pretty good.  Thanks for working on this...

I think I am going to revert this PR.  We are having intermittent issues with it still and I am not confident running a production environment with this in place at this time, so I don't think I can justify leaving it in without us doing some more testing to figure out what is going on.
I have had a few reports like this as people test 4.9, which are concerning:

NIO SSL agent not connecting. when I telnet to 8250, the agent immediately came up without me having to restart it.

I am also still periodically getting the addHost issue we thought we had resolved previously.
After I revert his, can you create a new PR with this same code so we can start getting more concrete testing on it and we can start consolidating some logs when it misbehaves?

@swill may I have the mgmt server and agent logs when the failures were intercepted. This is to make sure it's not your environment specific issue. I'll also need the JRE version in use (openjdk, or oraclejdk, which versions specifically?). If possible can you also take a heapdump and share that with me (run jmap -dump:file=heap.bin , gzip and scp this bin file and please share this somewhere for both mgmt server and agent).
"NIO SSL agent not connecting. when I telnet to 8250, the agent immediately came up without me having to restart it." -- this is something which I've fixed in latest master (using timeout on selectors), can you ask them if they are using latest master?
We've seen this fix deployed in a very large environment with 1000s of hosts and I've not heard anything from them. We've not gotten any reported on MLs so far, I would appreciate if those people who are experiencing issues can share it on public channels. Thanks.

This was shared in the "4.9/master Testing Coordination" thread.  Simon Weller and his team at ENA have run into this on the latest master in both of their hardware labs while testing master for me in preparation for the 4.9 RC.
I am still getting the addHost issue periodically which showed up a lot when this had bigger issues.
I am concerned about this in production to be honest.  How long has this been running in production at your client?

@swill close to two months now. Can you add the mgmt server logs, heap dump and any other dumps which can help me fix the issue.
@swill @kiwiflyer Can you please open a JIRA issue where you can put these details, without necessary information we cannot find and fix the issue or conclude that the issue was caused by something else. I've built latest master repository here: http://packages.shapeblue.com/cloudstack/custom/testing
I'll continue this discussion on the ML thread.


Add stopping support to IArtifactOperation

Summary
Adds the ability to gracefully stop an IArtifactOperation from producing more of an artifact.

Release Notes Entry

/backport to release/7.x

/backport to release/6.x


Why shaded?

Why has guava and paranamer been shaded in?  This makes this otherwise pretty lightweight library bloated and at least for myself makes it less desirable to re-use over re-implementation.
I get that some folks it may be simpler with a single jar, but in that case a shaded "attached" artifact may be simpler, and leaves those that already have rigid controls over dependencies the flexibility to use the library with-out the shaded inflation.

This was to avoid exposing the dependency on guava, which could cause problems for users that rely on other possibly incompatible versions of that library. Guava is only used internally and none of its APIs are exposed by jmxutils.
I'm not against producing a self-contained version and one that declares its dependencies and only bundles the jmxutils classes. It's the first time I hear someone needing it, so that's why I never did it :)


webAudio feedback?

Still need to think about how to implement delay line and in general feedback.

This is already possible with the Delay (HTML5 Audio) node. However it does not make a lot of sense as long as we do not have a mixer node.

Or that I do not understand, or until it is still not possible)

this question, apparently due to the fact that it is impossible within the concept of VVVV make audio feedback node without audio(framedelay) node. This applies to the Web Gl nodes.

Yes, it is possible. Check out the Delay (HTML5 Audio) node. It is possible to create cycles with it. WebGL feedback is an entirely different beast and much harder to implement.

I have it does not work ... Could you @geloescht  send me an example of a patch as it works for you<EMAIL_ADDRESS>

Sorry, apparently I was wrong. I tested this with an early version of my implementation and it worked. Matthias removed the delays_output flag when merging my branch. I tried re-adding it, but now I cannot get it to work again. I really have to rework this connection code.


Reserve multihash type for ssz-sha2-256

This introduces an entry to the registry for a multihash that represents a SSZ Merkle root using a SHA2-256 hash function. SSZ is a serialization and Merkleization process that is used extensively in the Ethereum Beacon chain.
The SSZ specification is described in detail here: https://github.com/ethereum/consensus-specs/blob/dev/ssz/simple-serialize.md#simpleserialize-ssz.

So, you're wanting to look at ssz not as a serialization format (which I think would get us into similar problems as protobuf does) but to identify the result of a a merkle root over ssz encoded data, with sha2-256 as the actual hash function? So it's kind of like a double-layer hash process (where sha2-256 is already doing its own internal form of merklization!).
It feels a bit weird; we do have bmt ("binary merkle tree") as a sort of precedent (although I'm not aware of any active use of it and am tempted to propose removing it because it stretches definitions a bit much IMO).
But, are we stuck with the schema problem though? Can we define ssz-sha2-256 as a hash function that you could run/implement that takes a byte array and produces a fixed length (32) byte array output? Or does it still need additional data to run (i.e. a schema over the data)?
I suspect the problem you're up against is that you have the root, but can't define intermediate blocks through the merkle tree to the leaves, so have no way to create linked IPLD blocks between that root and the leaves. And you can't just use sha2-256 because it's really not a sha2-256(bytes) where bytes is the entire base content, so you need to define something novel.
I think that still leaves us with the problem that ssz-sha2-256 isn't something that can be used independently, it's strictly tied to the data that it's "hashing"; it's kind of a eth-beacon-ssz-sha2-256 isn't it? How would you be implementing this function in code to plug in to go-ipld-prime such that it's usable according to the go-multihash interface?

Thanks for the review @rvagg , as always this is really helpful and these questions really get at the heart of the problem.

So, you're wanting to look at ssz not as a serialization format (which I think would get us into similar problems as protobuf does) but to identify the result of a a merkle root over ssz encoded data, with sha2-256 as the actual hash function? So it's kind of like a double-layer hash process (where sha2-256 is already doing its own internal form of merklization!).

Precisely, although to be clear the block binary referenced by a ssz-sha2-256 multihash would be the SSZ serialization of some object. So, in order to produce the multihash (root) from the referenced binary one would need to SSZ decode the binary and then provide the SSZ decoded object to the SSZ Merkleization algorithm: ssz_sha2_256(ssz_decode(block_binary)). I would propose that this SSZ decoding step is stipulated as part of the "hashing" algorithm specified by the ssz_sha2_256 multihash type, so in that sense it would still just be ssz_sha2_256(block_binary).
A major challenge in this discussion is that the SSZ specification is general purpose and schema-agnostic- as far as I can tell- but the existing implementations are not. The SSZ serialization and deserializaiton specifications provide algorithms for taking any fixed length or variable length heterogenous or homogenous composite object and encoding it to a byte string, and vice-versa. Similarly, the SSZ Merkleization specification provides an algorithm for taking any fixed length or variable length heterogenous or homogenous composite object and splitting it into byte chunks, storing those chunks in leafs in a Merkle tree, and calculating the root for this Merkle tree.
We would still need to register multicontent types for e.g. the BeaconBlock and BeaconState, but this is mostly so that we can provide additional typing to the links they contain (this would perhaps not be needed at all if every hash in these objects was a ssz-sha2-256 root but that is not the case e.g. we also have 32 byte keccak256 hashes that reference eth1 data structures). Without knowing that some binary represents a BeaconBlock, using the SSZ deserialization algorithm (as specified) it would be possible to decode that binary into a heterogenous, variable length composite type- e.g. we could decode it into a []interface{} where each interface{} is either a basic type or some other composite type we can recursively resolve to a set of basic types. In this way it is analogous to RLP encoding/decoding- we could RLP decode an EthHeader IPLD block into an []interface{} without any additional knowledge of its type (and this []interface{} would round-trip back to the same binary), but using the EthHeader codec we can decode it into an IPLD node object where the 32 bytes for the state trie root, receipt trie root, tx trie root, and uncle hash are replaced with CIDs that include the keccak256 multihash prefix and the appropriate content type prefixes.

It feels a bit weird; we do have bmt ("binary merkle tree") as a sort of precedent (although I'm not aware of any active use of it and am tempted to propose removing it because it stretches definitions a bit much IMO).

It is weird, and it definitely stretches the definitions but I think it is actually better specified than bmt which provides no specification for the type of hash function used in the Merkle tree nor does bmt (to my knowledge) provide an algorithm for how the referenced binary is chunked across leaf nodes in the bmt.

But, are we stuck with the schema problem though? Can we define ssz-sha2-256 as a hash function that you could run/implement that takes a byte array and produces a fixed length (32) byte array output? Or does it still need additional data to run (i.e. a schema over the data)?

In practice we are, but in theory we are not 😅 In theory we could write a SSZ Merkleization function that is capable of producing a proper 32 byte root given any arbitrary byte input. This ultimately hinges on having a SSZ deserialization process that is capable of decoding that arbitrary byte input into a typed object (which can then be readily Merkleized). Such a generic deserialization algorithm is defined, but as far as I can tell no implementation exists.

I suspect the problem you're up against is that you have the root, but can't define intermediate blocks through the merkle tree to the leaves, so have no way to create linked IPLD blocks between that root and the leaves. And you can't just use sha2-256 because it's really not a sha2-256(bytes) where bytes is the entire base content, so you need to define something novel.

I think the problem is more-so similar to the one we run into with the BlockPartTree in Tendermint, wherein due to how values are chunked across leaves in the tree there is no way to make sense of individual leaf values. We could IPLDize every node in the SSZ Merkle tree (although there would be significant practical/performance limitations/complications to this), and we would be able to navigate from the root down to a leaf, but there's no guarantee that once we get to that leaf that we can make sense of the value stored in that leaf. It's possible the bytes stored in that leaf don't map to a value at all, but are rather only a portion of a value.

I think that still leaves us with the problem that ssz-sha2-256 isn't something that can be used independently, it's strictly tied to the data that it's "hashing"; it's kind of a eth-beacon-ssz-sha2-256 isn't it? How would you be implementing this function in code to plug in to go-ipld-prime such that it's usable according to the go-multihash interface?

I think we can, the specification as I read it (the SSZ spec has been a major pain point in the coordination/alignment of the all the beacon chain teams...) suggests this is entirely possible. But I would like to take some more time to explore and discuss this and ideally I would throw together a POC but am not sure what the timeline will look for that.
This question is sort of getting ahead of things but if we can come to a consensus on this and get ssz-sha2-256 accepted into the registry, does the specific byte prefix reserved here work or would you recommend reserving in some other range? I ask because we would like to start using this multihash byte prefix in our blockstore, if this multihash never get upstreamed at all that is fine and we will change it/find a work around but if it does get upstreamed it would be nice to know now that we wouldn't need to change it.

@rvagg there actually is/was a general purpose codec and Merkleization Go implementation: https://github.com/prysmaticlabs/go-ssz/blob/master/ssz.go. It was archived in favor of https://github.com/ferranbt/fastssz which trades the generality for performance.

I went ahead and also added a serialization type for SSZ, as it is possible that you an SSZ serialized IPLD block that is hashed and referenced by some other mechanism than the SSZ Merkleization process.

Yeah, so this is stretching things but I think maybe it's stretching in a good way that's allowing for some experimentation around the edges of what multiformats does.. which we kind of need because we keep on bumping into problems—many of which are clear according to our current understanding of what multiformats is, but some of which, like this, are in a grey area.
On balance, I think that while this is grey, it's not too much of a departure from a standard understanding of multiformats, and we're in a high enough range here that I think we can probably just add these and let you start experimenting and report back how you go with codecs and hashers and how that all fits into the various systems—some of your description makes me wonder how hard it's going to be to integrate into go-ipld-prime's LinkSystem, but also that you've probably already thought through that. If you can't make it fit, then that's a strong suggestion that maybe this isn't a good fit for the table in its current form. But if you can, and it's not just a nasty nasty hack, then maybe that's OK :shrug:.
We should certainly come back to this at some point in the near future when we're drafting up some better docs for multiformats, your input given your experience with these edges would be valuable.

We would still need to register multicontent types for e.g. the BeaconBlock and BeaconState, but this is mostly so that we can provide additional typing to the links they contain

This is my biggest concern though - we spend a lot of time telling people not to use codecs as type signalling mechanisms. It's another very grey area though because sometimes, as you've outlined, you have no choice because you're navigating through a structure and you maybe could decode something in a generic way but it really should be specific, and you have no other means of identifying that. bitcoin-witness-commitment is such a case for me, it's just [Bytes,Bytes] which could be decoded as a mid-merkle tree bitcoin-tx but it's really something like [&BitcoinTx, Nonce], entirely different, just the same byte layout. But raw is the other obvious example - everything can be raw until you step up a type level, although we tend to treat that one as a special case.
So wrt that problem, I'd just ask you to be conscious of this and as much as possible avoid using codec codes as easy context signalling mechanisms. The pure form of multiformats is that codec code should just tell you the bit of code you reach for to turn the bytes into data model form and back again, and not much (anything?) else. The places where this is unavoidable are instructive for us about the limitations of multiformats though, so again this is good learning and you should be a good contributor to further doc & spec development here based on that experience.
Lastly, if you find yourself later on of not needing the multihash entry here because experience has taken you on another path, it would probably be best to come back and remove it to clean up. (Speaking of which, I think I'm going to finally propose removing bmt).

This is my biggest concern though - we spend a lot of time telling people not to use codecs as type signalling mechanisms. It's another very grey area though because sometimes, as you've outlined, you have no choice because you're navigating through a structure and you maybe could decode something in a generic way but it really should be specific, and you have no other means of identifying that. bitcoin-witness-commitment is such a case for me, it's just [Bytes,Bytes] which could be decoded as a mid-merkle tree bitcoin-tx but it's really something like [&BitcoinTx, Nonce], entirely different, just the same byte layout. But raw is the other obvious example - everything can be raw until you step up a type level, although we tend to treat that one as a special case.

Thanks Rod, will definitely try to be conscious of this. I still make the mistake of considering an IPLD multicodec as being mapped to a specific type, but I think I can blame this on working on IPLD pretty much solely in the context of Ethereum and Tendermint/Cosmos where there is no way (as far as I can see) of properly decoding their IPLD block binary into IPLD models without mapping each distinct node type in their DAGs to a distinct IPLD schema type using an IPLD multicodec. This is because the necessary typing information isn't embedded in the binary, as opposed to e.g. dag-cbor where full CIDs- rather than raw hashes- are embedded and flagged in the binary.
If we were to choose to embed this information into the binary when loading it into the blockstore we would change the binary, changing the content hash => content mappings such that the content hashes don't match those found in the native DAG (unless we do something like what we propose for the TypedProtobuf scheme, where we implement multihash functions that can ignore "type decorations" embedded in the referenced binary).
I need to refresh my understanding of the bindnode pkg capabilities, but I think even when using it this problem persists. It makes it so that we no longer need to implement a custom codec (well, I think it is technically still a custom codec even if it all it does is wrap a SSZ deserialization step followed by a call to Wrap with a specific schema type???) but we still need to map to a specific schema type. For the BeaconChain data structures for example- this new ssz-sha2-256-bmt multihash alone tells us how to decode the referenced binary into a []interface{} with concrete types  underpinning each interface{} (in some cases recursively). This can be round-tripped back to the block binary without issue. We should be able to then use bindnode to convert that []interface{} into an IPLD model, without providing a schema type it should be able to create a rudimentary representation tuple IPLD model (but not a representation mapping because it has no way of inferring map keys without struct field names or schema type). But without providing a corresponding schema type, it has no way of determining with certainty which interface{}s correspond to Links let alone what they link to (it could make some assumptions like, "any interface{} that assets to 32 length []byte{}" but that's problematic because not all 32 length []byte{}s will be Links and not all Links will be 32 length []byte{}. If we provide an IPLD schema type to bindnode as well as the []interface{}, it should be able to figure out which fields correspond to Links (and even the type of those links and what schema types to use to represent the linked objects if we used SpawnLinkReferences when creating the schema type.
I hope I am not too far off the mark with the above 😅 would be great to schedule a time to talk about these things if you have the availability. I was about to open PRs for the BeaconChain and Tendermint/Cosmos multicodecs, but your comment is giving me some pause.

Yeah, that sounds about right, it all boils down to the schema - and the same logic applies to codegen too, the structure is in the schema.
And it's a very similar issue to what we have with the Filecoin chain. There's plenty of complex structs in there, but there's no maps at all in the chain, they're all tuples, so a base datamodel view is just arrays of junk (although we do at least get CIDs since it's dag-cbor) and really not that interesting to look at. Only by applying a schema can you see useful data in there.
And yes, I have a lot of sympathy for the case where typing information is absent and you can't infer by any other means.. It's really not how CIDs are supposed to be used but I think this is an edge where we don't have good answers. This gets really hard when you want to be able to consider blocks as independent units (I use explore.ipld.io as an example of this—if I put a CID in and get a block, what's it going to make of it without any additional information??). But of course most blocks exist within a system - so a filecoin block in the IPLD explorer looks like garbage, but within the context of filecoin I can make sense of it—but even there, I have to have additional context of where the block is in relation to other blocks to make sense of it (I can't just say "this is a Filecoin block, so I can read useful stuff out of it). This is the same pattern we see repeated - you have context of "I am in system X", and then you layer additional context on the path to reading a particular block which builds up over the navigation path so you can say "I am in system X, and I'm reading block Y that's in position Z so the data I'm seeing is useful".
This "context" think is an interesting topic I keep on meaning to write about because it's so important, but hard to grasp or explain well.
Good luck though and I look forward to seeing the fruits of your further delving into these codecs.


Local Testing Sandbox

I need to figure out how to host a relay (at the very least) and appview in some kind of local container, so that I can test millipds against it. The public sandbox is nice, but local is better.
I should just be able to use the reference impls of each.

https://github.com/itaru2622/bluesky-selfhost-env


SharedTree: Data Model Design

If you click the "Rich Diff View" button in the files pan, you can see the text with SVG images inline.
@ruiterr - FYI.
Fixes #9475.

Hi @milanro - You mentioned earlier that you might be interested in porting the existing Property DDS API on to the production SharedTree engine.
This document describes the underlying data model that you would be targeting.  I thought you might want to have a look.
While it's in PR, the easiest way to read it is with the rich diff view (click here).

Personally, I find it easier to code review mark down files where we put semantic units (like sentences) on their own lines instead of putting multiple sentences on the same line. Makes line-based comments and diffs work better, and the rendered results are the same.

Personally, I find it easier to code review mark down files where we put semantic units (like sentences) on their own lines instead of putting multiple sentences on the same line. Makes line-based comments and diffs work better, and the rendered results are the same.

@CraigMacomber - There seems to be some inconsistency here.
I think you're correct for GitHub's rendering of .md files.
However, GitHub comments and the MarkText editor appear to both render line breaks each time I press return.
I'm not a fan of 1-line per paragraph, but as a few of us are using MarkText to edit design documents, I think it's the safest choice.

Personally, I find it easier to code review mark down files where we put semantic units (like sentences) on their own lines instead of putting multiple sentences on the same line. Makes line-based comments and diffs work better, and the rendered results are the same.

@CraigMacomber - There seems to be some inconsistency here. I think you're correct for GitHub's rendering of .md files. However, GitHub comments and the MarkText editor appear to both render line breaks each time I press return. I'm not a fan of 1-line per paragraph, but as a few of us are using MarkText to edit design documents, I think it's the safest choice.

Github's rendered view for source files (including the rich content diff) follows the spec ( https://spec.commonmark.org/0.30/#paragraphs ) only treat blank lines as paragraph separators. I don't think githubs comment formatting (which works the other way) is relevant here, but it is an interesting anecdote.
MarkText does have a notion of paragraphs made of multiple lines. If you have a markdown file with a multiline paragraph and you select over part of the it, MarkText puts a little paragraph icon next to the whole thing. It just chooses to render the multiple lines that make up a paragraph on multiple lines in its output, but it does preserve the paragraph grouping and puts larger gaps between them than between the lines in a paragraph.
Thus I don't think there is an issue for someone who wants to do the one line per sentence pattern in MarkText. Such markdown documents will render a bit different in MarkText than in a compliant CommonMark renderer, but I think thats fine since MarkText is strictly exposing extra information from the source, not losing anything in its view/editing.


Update dv5-series.md

Non s-type VM series don't support Premium Storage

@mattmcinnes
Can you review the proposed changes?
Important: When the changes are ready for publication, adding a #sign-off comment is the best way to signal that the PR is ready for the review team to merge.
#label:"aq-pr-triaged"
@MicrosoftDocs/public-repo-pr-review-team

#sign-off


Allow to restrict sitemap depth

Is your feature request related to a problem? Please describe.
Rendering the sitemap on a large site can take quite some time. It would be good to being able to restrict the depth of the sitemap to 2 or 3.
Describe the solution you'd like
A setting (either control panel or js config) to being able to set the depth of the sitemap.
Describe alternatives you've considered
Overriding the sitemap view.

As far as i see, when we go to controlpanel/navigation we can set sitemap depth from the controlpanel itself for restricting the folders levels in sitemap view. Maybe we can use this to generate a sitemap file.


Fix several issues with init, in particular with iOS.

@aaustin  These are the init changes we discussed plus some other fixes:

The install call now returns just the data associated with the link instead of the full JSON response.  This is now consistent with the open call.

There is now a SetNewUrl call for each of BranchIOS.cs and BranchAndroid.cs.  These calls allow us to set any new link click identifier we get when an app is re-opened by a link click.  It is called in OpenUrl in iOS AppDelegate and OnNewIntent in the android MainActivity.  It should be added to these files for both Forms and non-forms apps.  (I have added some documentation for this.  I have also modified the test app to reflect this.)

Fixed an issue in URL/link processing in iOS where the link click identifier was being parsed incorrectly.

The callback last used for an init call is saved for use with the automatic init used in the non-forms iOS case.

Version number is updated to 1.0.4 and a 1.0.4 nuget package has been added.

The nuget tool does not like the addition of the  element to the .nuspec file so I had to remove it.  I think description is set in the nuget web page?

Looks great Rob :+1:


Create PySimpleGUI for exome-seek pipeline

Problem
Current CCBR_Pipeliner is difficult to update and relies on outdated versions of pipelines.
Solution
Using PySimpleGUI, create a GUI that can import containerized pipelines, which can be easily changed and updated as needed, beginning with the exome-seek pipeline.
Requirements
User options

Drop down (or tabs?) for pipeline selection
Interactive dir locator for FASTQ inputs
Drop down for species
Text box for output dir
Interactive file locator for bed file
Select boxes for 'initialize' 'dry run' 'run'
Drop down for mode 'slurm' 'local'

Dev options

Should be able to select which pipelines are 'user facing' (ie turn on or off exome-seek)
Specify GitHub location for pulling and running the pipeline (ideally would pull a version from the main branch, but 'latest' would also work)
Use @kopardev's spook script to track log details from the user

Done!


remove closure erasure phase

This part of the ILX -> IL rewrite phase is no longer needed

Merging as this is cleanup


Update auth, dynamodb, s3 to 2.15.73

Updates

software.amazon.awssdk:auth
software.amazon.awssdk:dynamodb
software.amazon.awssdk:s3

from 2.15.67 to 2.15.73.
I'll automatically update this PR to resolve conflicts as long as you don't change it yourself.
If you'd like to skip this version, you can just close this PR. If you have any feedback, just mention me in the comments below.
Configure Scala Steward for your repository with a .scala-steward.conf file.
Have a fantastic day writing Scala!

Ignore future updates
Add this to your .scala-steward.conf file to ignore future updates of this dependency:
updates.ignore = [ { groupId = "software.amazon.awssdk" } ]

labels: library-update, semver-patch

Superseded by #552.


Create Javascript : Learn Recursion by Building a Decimal to Binary C…

…onverter Step 103 #56587
Solved this problem using javascript code
also this is my first time contributing so i did what i thought i could do so if it needs some changes or improvements or something new than do let me know
Checklist:

[ ] I have read and followed the contribution guidelines.
[ ] I have read and followed the how to open a pull request guide.
[ ] My pull request targets the main branch of freeCodeCamp.
[ ] I have tested these changes either locally on my machine, or GitPod.

Closes #XXXXX

Kindly remove spam from this file i can delete it if you say so cuz i ddint have any idea what you wanted it was my first time so i was clueless

You opened at least 3 PRs completely ignoring the checklist where there is the contributing documentation linked, at this time the SPAM label stands

if in doubt ask before doing anything. You should join our Discord server and ask for help in the #contributors channel.


Sharer.php despite appId

I configure a valid appId for the Facebook button but still getting the sharer.php funcionality, and the lovetostrike fork isn't working at all on the FB button.
PLEASE correct this, this is a useful package with lots of downloads.
Thanks in advance

I configure a valid appId for the Facebook button but still getting the sharer.php funcionality, and the lovetostrike fork isn't working at all on the FB button.
PLEASE correct this, this is a useful package with lots of downloads.
Thanks in advance


Make available on Repository/Files

Hi @tomasbonco, thank you so much for this awesome extension.
I only can see the Source Tree on commits. That would be nice to use in any source/file navigating inside the Repository/Files similar what octotree does.
Thanks

UPDATE: I found an alternative extension that works for gitlab:
https://chrome.google.com/webstore/detail/gitlab-code-view/gglalfcdiahpedikbmegmmkmpmajnpjj

Good!
I'm closing this one. If any news, updates, requests feel free to open it :)


Add try_canonicalize and use it over std::fs::canonicalize

This adds a try_canonicalize function that calls std::fs::canonicalize and on Windows falls back to getting an absolute path. Uses of canonicalize have been replaced with std::fs::canonicalize. On Windows std::fs::canonicalize may fail due to incomplete drivers. In particular ImDisk does not support it.
Combined with https://github.com/rust-lang/rust/pull/109231 this allows compiling crates on an ImDisk RAM disk and I've tested that it works with various configuration using rcb.

On Windows std::fs::canonicalize may fail due to incomplete drivers. In particular ImDisk does not support it.

Is there any issue discussion this?   This sounds like a lot larger of a pitfall and it seems like this should either be fixed in the stdlib or that there should be a general crate for solving this problem (similar to dunce or maybe a contribution to it)

Thanks, this seems reasonable to me.  There is more long-term work to do here, but this should be fine to unblock the immediate needs. We have been using normalize_path instead of canonicalize in many places, usually for this very same problem. We should probably eventually remove normalize_path and either use this or something else. However, normalize_path is used in many places, and it would be a pretty significant time commitment to understand the impact on all of them.
I pushed a small spelling fix.
@bors r+

:pushpin: Commit 5430956b4ac1d0bfe640d4f42ce170f3eb296a73 has been approved by ehuss
It is now in the queue for this repository.

:hourglass: Testing commit 5430956b4ac1d0bfe640d4f42ce170f3eb296a73 with merge 1b2de2169bf74ce89c6a7b7c7dcfb521801b8990...

:sunny: Test successful - checks-actions
Approved by: ehuss
Pushing 1b2de2169bf74ce89c6a7b7c7dcfb521801b8990 to master...

:sunny: Test successful - checks-actions
Approved by: ehuss
Pushing 1b2de2169bf74ce89c6a7b7c7dcfb521801b8990 to master...

:eyes: Test was successful, but fast-forwarding failed: 422 Changes must be made through a pull request.


Url deduplication

Adds url deduplication

Allows for prioritization of documents during deduplication
The algorithmic side of the deduplication is the same compared to sentence dededuplication

Nits

We can prob merge the url deduplication and sentence deduplication code in future, to make it more dry, but as of right now I don't see a benefit.

agreed on basically merging all exact deduplication approaches into a single one, but we can refactor this later


First "real" numbers

blocking on #13, #12, #9, #8, #7, #3

depending on how you define "real" this was either finished in November or early April.


Unable to build with Swift 4 and XCode 10 beta 3.

Should be a simple change.  The isGuidedAccessSessionActive parameter needs to be updated.
/Users/tethridge/Projects/iOS/Anywhere/Pods/DeviceKit/Source/Device.generated.swift:568:12: 'UIAccessibilityIsGuidedAccessEnabled()' has been replaced by property 'UIAccessibility.isGuidedAccessEnabled'
/UIKit.UIAccessibilityIsGuidedAccessEnabled:3:13: 'UIAccessibilityIsGuidedAccessEnabled()' was obsoleted in Swift 3

Hi, sorry for the delay, which version are you using?

I'm currently working on the fixes needed for Xcode 10.
I was reluctant to add them because travis does not yet have support for Xcode 10, however, I see that there is a need for this and I will push it later so that everyone who is on master (or does not specify a version in CocoaPods) can continue to use it.
In general: master is the dev branch and you should (in general) not use it as it might change frequently and might be unstable.
Once there is support for Xcode 10 on travis I'll create a swift42 branch which is then used for the next release (in fall this year) :)
Hope that works for everyone, if not please let me know!

Fixed by 661c321144657fda10bdc7cf338f8aa361f86141 :)


Rename --enable-experimental-opaque-return-types and gate structural …

Initially, we decided to merge structural opaque result types as a "bug" fix. However, the core team decided that there are enough degrees of freedom in their implementation to warrant a proposal, so they need to be hidden behind a feature flag for the time being.
I decided to make this a separate flag from the flag for named opaque result types because the former is much further from usability.

@swift-ci please smoke test

@swift-ci please smoke test


fix(SymbolShim): ensure for function even if Symbol already exists

In some engines, Symbol exists but does not impelment the for method.
fixes #999

also fixes #988


feat: port Data.PNat.Primes

I added a coercion from Nat to PNat.
At some point Nat.coprime in Std should be renamed to Nat.Coprime

bors r+


Add STM32F207ZG (Cortex-M3) support

e.g., https://www.st.com/en/evaluation-tools/nucleo-f207zg.html
STM32F207ZG

This won't work with #31. You'll get the following errors:
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1034): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x103e): undefined reference to `__smlatt'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1048): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1058): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1064): undefined reference to `__smuadx'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1074): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1098): undefined reference to `__smlawt'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x10a4): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x10ae): undefined reference to `__smlatt'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x10b8): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x10c8): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x10d4): undefined reference to `__smuadx'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x10e4): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1170): undefined reference to `__smlawt'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x117c): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x118a): undefined reference to `__smlatt'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1194): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x11a4): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x11b0): undefined reference to `__smuadx'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x11c0): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x11d4): undefined reference to `__uadd16'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x11ec): undefined reference to `__smlawt'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x11f8): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1202): undefined reference to `__smlatt'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x120c): undefined reference to `__smlabb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x121c): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1228): undefined reference to `__smuadx'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x1238): undefined reference to `__smlatb'
/nix/store/iwqdz0yhwvxbjx3dqyyhpwhxlg35z90p-gcc-arm-embedded-13.2.rel1/bin/../lib/gcc/arm-none-eabi/13.2.1/../../../../arm-none-eabi/bin/ld: ntt.c:(.text+0x124a): undefined reference to `__uadd16'

These instructions don't exist on the Cortex-M3, so that is expected.
I think what we want is to re-add the arithmetic that works on the Cortex-M3 as well from a previous commit https://github.com/pq-code-package/mlkem-c-embedded/blob/4d271a9f8a9a407d1062f5251286fb7c8e49cb68/mlkem/ntt.c and then hide the faster Plantard one behind a flag.
Please also implement some kind of check in CI that makes sure that no instruction of umull/umlal/smull/smlal/udiv/sdiv appears in any of the object files when compiled with any optimization flags (-O{0,1,2,3,s})


Cyclic relation issue using version control

Hello !
We have an issue with the version control (inside ThingsBoard and using the API).
We want to use the version control to export the configuration of the preprod server to the prod server.
So, we want to export a Tenant configuration, then import it in a newly created one so we can test the dashboard on this new tenant.
When we try to use the version control, to import the whole conf it doesn't work, because of the relations. It says "Failed to load the asset profile with external id '...' because it references missing rule chain with id '...' ".
We can restore everything else except the asset profile, then import the asset profile and it works but that's annoying (because we need to restore the conf two times). It's like the version control try to link entities before they are created. And we can't choose the order of the component that are restorated. We also finded that if two entities are related to each other, the version control can't happen because one need the other to be created and vice versa and that's a huge problem (if A is related to B and B is related to A, the version control says that B need to be created to create A, but when we want to create B, the version control says that A need to be created to create B).
My question is, How can we restore version by using the API without any issue due to the cyclic relations ?
Thanks for your help !

Hi @TortueHardie, thanks for your interest in ThingsBoard Python REST Client!
It is ThingsBoard bug, so create an issue in ThingsBoard repo.


support passing in '-e' flags - fixes systemd init

This commit allows for passing in '-e' flags in the driver config. Passing in an '-e' flag for container=docker allows systems which use systemd as init - CentOS7 - to start systemd within the container. This allows for testing when cookbooks install and start services on servers which use systemd as their init system. This can be verified using docker image: centos:7 , and the following driver_config:
driver_config:
  privileged: true
  run_command: /usr/sbin/init
  volume:
    - "/sys/fs/cgroup:/sys/fs/cgroup:ro"
  provision_command: systemctl enable sshd.service
  eflags: container=docker

BTW - let me know if you prefer a different implementation, and I'll modify the PR to suit your expectations.

Already fixed in 6832c92203f6376be8cfbf388c3ba2c94bf63ea3.

Thanks for the info - didn't realize the latest version supported it!


[Snyk] Upgrade @mui/icons-material from 5.8.4 to 5.16.7

Snyk has created this PR to upgrade @mui/icons-material from 5.8.4 to 5.16.7.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.

The recommended version is 58 versions ahead of your current version.

The recommended version was released on a month ago.

Release notes

Package name: @mui/icons-material

5.16.7 - 2024-08-09Aug 9, 2024
A big thanks to the 3 contributors who made this release possible.
<EMAIL_ADDRESS>
[material-ui][mui-system] Add support for version runtime checks (#43233) @ DiegoAndai

Docs

[docs] Fix 301 @ oliviertassinari

Core

[website] Fix wrong link in pricing table (@ zanivan) (#43143) @ zanivan
[website] Add blog link to pricing table (@ zanivan) (#43140) @ zanivan

All contributors of this release in alphabetical order: @ DiegoAndai, @ oliviertassinari, @ zanivan

5.16.6 - 2024-07-30
Jul 30, 2024
A big thanks to the 5 contributors who made this release possible.
<EMAIL_ADDRESS>
[Divider] Enable borderStyle enhancement in divider with children (#43059) @ anuujj

Docs

[material-ui][Card] Update CardMedia description (#43121) @ shahzaibdev1
[material-ui] Replace deprecated <ListItem button/> with ListItemButton component in routing libraries list example (#43114) @ aliharis99
[material-ui][Snackbar] Improve close reason type in demos (#43105) @ sai6855

Core

[code-infra] Use the same CI names on master & next (#43064) @ mnajdova

All contributors of this release in alphabetical order: @ aliharis99, @ anuujj, @ mnajdova, @ sai6855, @ shahzaibdev1

5.16.5 - 2024-07-25Jul 25, 2024
A big thanks to the 4 contributors who made this release possible.
<EMAIL_ADDRESS>
[utils] Add dependency to @ mui/types (@ mnajdova) (#43047) @ mnajdova

Docs

[material-ui][joy-ui][Autocomplete] Fix Hint demo (@ ManthanGajjar) (#43039) @ ManthanGajjar
Fix CHANGELOG convention @ oliviertassinari
[material-ui] Fix broken image links in blog template on master branch (#42969) @ navedqb

All contributors of this release in alphabetical order: @ ManthanGajjar, @ mnajdova, @ navedqb, @ oliviertassinari
Full Changelog: v5.16.4...v5.16.5

5.16.4 - 2024-07-16Jul 16, 2024
A big thanks to the one contributor who made this release possible.
<EMAIL_ADDRESS>
Fix wrong import in Popover types (#42967) @ mnajdova

All contributors of this release in alphabetical order: @ mnajdova

5.16.3 - 2024-07-16Jul 16, 2024
A big thanks to the 3 contributors who made this release possible.
<EMAIL_ADDRESS>
[material] Add missing dependency (#42959) @ mnajdova

Docs

[material-ui][Autocomplete] Add instructions about autosuggest-highlight dependency (#42953) @ HoFa1997
Move feedback from Canny to GitHub @ oliviertassinari

All contributors of this release in alphabetical order: @ HoFa1997, @ mnajdova, @ oliviertassinari

5.16.2 - 2024-07-16

5.16.1 - 2024-07-11

5.16.0 - 2024-07-05

5.15.21 - 2024-06-28

5.15.20 - 2024-06-12

5.15.19 - 2024-05-29

5.15.18 - 2024-05-16

5.15.17 - 2024-05-08

5.15.16 - 2024-05-01

5.15.15 - 2024-04-04

5.15.14 - 2024-03-19

5.15.13 - 2024-03-13

5.15.12 - 2024-03-05

5.15.11 - 2024-02-24

5.15.10 - 2024-02-12

5.15.9 - 2024-02-08

5.15.8 - 2024-02-06

5.15.7 - 2024-01-31

5.15.6 - 2024-01-22

5.15.5 - 2024-01-17

5.15.4 - 2024-01-10

5.15.3 - 2024-01-03

5.15.2 - 2023-12-25

5.15.1 - 2023-12-19

5.15.0 - 2023-12-12

5.14.19 - 2023-11-29

5.14.18 - 2023-11-14

5.14.16 - 2023-10-31

5.14.15 - 2023-10-24

5.14.14 - 2023-10-17

5.14.13 - 2023-10-10

5.14.12 - 2023-10-04

5.14.11 - 2023-09-26

5.14.9 - 2023-09-13

5.14.8 - 2023-09-05

5.14.7 - 2023-08-29

5.14.6 - 2023-08-24

5.14.5 - 2024-01-17

5.14.3 - 2023-08-01

5.14.1 - 2023-07-19

5.14.0 - 2023-07-11

5.13.7 - 2023-07-04

5.11.16 - 2023-04-04

5.11.11 - 2023-02-28

5.11.9 - 2023-02-14

5.11.0 - 2022-12-13

5.10.16 - 2022-11-28

5.10.15 - 2022-11-22

5.10.14 - 2022-11-15

5.10.9 - 2022-10-11

5.10.6 - 2022-09-19

5.10.3 - 2022-08-29

5.10.2 - 2022-08-23

5.8.4 - 2022-06-14

    from @mui/icons-material GitHub release notes

[!IMPORTANT]

Check the changes in this PR to ensure they won't cause issues with your project.
This PR was automatically created by Snyk using the credentials of a real user.

Note: You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.
For more information:

🧐 View latest project report
📜 Customise PR templates
🛠 Adjust upgrade PR settings
🔕 Ignore this dependency or unsubscribe from future upgrade PRs

🎉 Snyk hasn't found any issues so far.
✅ code/snyk check is completed. No issues were found. (View Details)


⚠ SolarOscp has degraded performance

In fd4b045, SolarOscp ($SOLAROSCP_URL) experienced degraded performance:

HTTP code: 200
Response time: 132 ms

Resolved: SolarOscp performance has improved in 8dfabf8 after 9 minutes.


Gallery, Scrollable tabs: Open and Close miss frames

Many of the component demos open and close quickly. Something about Scrollable Tabs is missing frames more than many of the other component demos:

cc @eseidel We don't have anyone to work on this right now.

I expect this will fall out of @cbracken's investigation of missed_frame_rasterizer_budget_count.

This is probably a specific case of https://github.com/flutter/flutter/issues/813.


File names

Hi and thank you for this jQuery Plugin.
How can i get the names of the files on server side if i  upload using base64 mode?
I got only the base64 encoded data.
Would you may comfortable with an snippet?

Hi!
In base64 mode filenames is not send to server.
If you need transmit filenames in this mode, you can write custom template, with:
<input type="hidden" name="{{data.filestyler.$input.attr('name')}}_name" value="{{file.name}}"/>


applied isort and black to python code for consistent styling and imports sorting order

A consistent styling and import sorting order improves code readability
This PR just applies two widely used python formatting tools, isort and black, to the python code in lightgbm
https://github.com/PyCQA/isort
https://github.com/psf/black
No code logic should have been changed.

While investigating issues, we sometimes use the git blame to see who most recently touched some piece of code, and then sometimes @ that person for a second opinion. Having a large PR like this that touches many lines for only style reasons would make that more difficult.

I see. I'm refactoring the code mainly to understand it better. I'm trying to get an idea if it's possible to adopt the tree implementation in lightgbm for the ngboost algorithm.
Your concern makes sense to me. Please feel free to close the PR if you think it would make it too difficult to trace down the output of git blame.

I'll be happy to see adoption of isort for LightGBM's Python codebase! I remember I was willing to do it some years ago...
But it will be better if adoption of isort will be in a form of "1 PR - 1 file". It will significantly improve review process.
@zyxue Could you please create an umbrella issue for adopting isort with checklist containing every .py file that should be refactored. Please refer to https://github.com/microsoft/LightGBM/issues/3732#issuecomment-760985106 as an example. And feel free to prepare first PR.
Speaking about black, I'd better stick to pycodestyle. black is overstrict, IMHO.
@zyxue Thank you very much for your actually already done work!

black is overstrict, IMHO.
I see. Just share my experience, if the editor is set up to rerun black/isort upon each save, then I don't need to worry much about code formatting anymore and only focus on the code logic. It's actually quite liberating.

Yes, I can try to isort one file at a time.


Add git_source to DatabricksSubmitRunOperatorAsync

OSS PR: https://github.com/apache/airflow/pull/23620

checked the async code, it should work with changes since request json is same for sync and async


refactor(swc/cli): setup subcommands for the features

Description:
Minor refactor with new empty subcommands we'll support.
BREAKING CHANGE:

Related issue (if exists):

Since we have existing practices for nested subcommand (plugin)
maybe we can
swc minify (css | ecma) ...?

Oh, yeah it's possible.


Project still alive ?

Hey @suomato  - I have been rocking this theme for a couple of years and really enjoy it, so thanks for the original dev.
Are you still using it internally & will you be doing any more releases with updates dependancies e.g  Bulma, Webpack & Vue etc ?
Thanks again.

Hi @webwaldo! I love to hear that you like this theme! Unfortunately I don't have a time to maintain this project at the moment. I started one project with base-camp theme three years ago and it is still in use!


adding an implementor for pubsub that can be ran locally (i.e., Mosquitto)

This PR adds a new implementor for our pubsub capability: Mosquitto. This new implementor can be run locally, so we won't run into any issues of having examples that cannot be run due to lack of credits like we did for the pubsub Confluent Apache Kafka implementor.
Here's slight running the pubsub-consumer-demo and pubsub-producer-demo in tandem using the mosquitto_slightfile.toml configuration file:

Note 1: To run this example locally, I installed mosquitto (sudo apt install mosquitto), and the mosquitto lib (sudo apt install libmosquitto1). In addition, when running the program for the first time, I ran into a linking issue and had to do the following:
sudo ln -s `ldconfig -p | grep mosquitto | awk '{ print substr($4, 1, length($4)-2) }'` `ldconfig -p | grep mosquitto | awk '{ print substr($4, 1, length($4)-2) }'`

(i.e., created a symbolic link to libmosquitto.so.1 called libmosquitto.so)

Note 2: While developing this, I noted that our pubsub interface is very much flawed, but this PR DOES NOT aim to fix the interface whatsoever, that work will come from another PR.

Note 3: I'll be making a subsequent PR adding a "service-implementation101.md" doc documenting the process of making this implementor to show folks how they can do it themselves. I'll also be scheduling a meeting w/ people from the team to go through that document and re-implement the service — hoping to record that too and add it to the DeisLabs YouTube channel for the community at large.

Signed-off-by: Dan Chiarlone<EMAIL_ADDRESS>

closes #184

@Mossaka ~ When you run this locally, keep in mind you will need a local broker running (similar to how we need etcd running for the lockd examples). I just installed mosquitto and ran it with mosquitto -p 1884.


Unrecognized keyword arguments passed to Conv2D

ValueError: Unrecognized keyword arguments passed to Conv2D: {'weights': [array([[[[-0.12115334, -0.29564023, -0.3127334 , ..., -0.18404537,
0.12711518, -0.48213908]],
    [[ 0.11699861, -0.7016729 ,  0.18963906, ...,  0.11501631,
      -0.07108907,  0.19613937]],

    [[-0.023098  , -0.03203333,  0.15857543, ...,  0.02452009,
      -0.3097593 , -0.0880196 ]],

please help.

I have the same error.

Could be because the package has imported the newer version of keras - then in traceback there would be path pointing to keras library, sth like lib/python3.10/site-packages/keras/src/layers/convolutional/depthwise_conv2d.py.
Install legacy keras: pip install tf-keras
Use this before importing tensorflow:
import os
os.environ['TF_USE_LEGACY_KERAS'] = "1"


Uncaught Error: dlopen(/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.S...

Open Atom app
File menu > Open > select .html file
File does not open
Repeat steps 2-3
Force quit Atom
Locate file in Finder
Open file with > Atom
Atom opens file, with error
Submit issue!

Atom: 1.59.0 x64
Electron: 9.4.4
OS: macOS 12.2.1
Thrown From: Atom Core
Stack Trace
Uncaught Error: dlopen(/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node, 0x0001): tried: '/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node' (no such file), '/usr/lib/keyboard-layout-manager.node' (no such file)
At electron/js2c/asar.js:140

Error: dlopen(/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node, 0x0001): tried: '/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node' (no such file), '/usr/lib/keyboard-layout-manager.node' (no such file)
    at process.func [as dlopen] (electron/js2c/asar.js:140:31)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1034:18)
    at Object.func [as .node] (electron/js2c/asar.js:149:18)
    at Module.load (internal/modules/cjs/loader.js:815:32)
    at Module._load (internal/modules/cjs/loader.js:727:14)
    at Function.Module._load (electron/js2c/asar.js:769:28)
    at Module.require (/app.asar/static/index.js:72:46)
    at require (internal/modules/cjs/helpers.js:74:18)
    at customRequire (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:1:756278)
    at get_KeyboardLayoutManager (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872375)
    at get_manager (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872477)
    at Object.getCurrentKeyboardLayout (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872603)
    at e.keystrokeForKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:1119692)
    at KeymapManager.keystrokeForKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:1225346)
    at KeymapManager.handleKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:1223331)
    at WindowEventHandler.handleDocumentKeyEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:286651)

Commands
     -0:12.5.0 core:select-all (input.hidden-input)
     -0:12.5.0 core:save (input.hidden-input)

Non-Core Packages
atom-beautify 0.33.4
atom-material-syntax 1.0.8
atom-material-ui 2.1.3
column-select 1.0.1
srt-syntax 0.0.0
tablr 1.8.3
web-accessibility-checker 0.1.4

Man do I have a juicy story to tell you. The day is December 7th 2019 and please just snowed 6in outside two men come to my house at 43 Mechanic Street Apartment 5 limited New Hampshire they tried to force their way through my front door I hope my front door back as I was sleeping on the couch jumped up to the commotion the old through the door the two men to leave me alone unmanned continues to try to beat my door down cuz I'm holding it shut and yelled through the door two more times to get off the property to leave me alone at this time the much larger, a 6-3 300 lb tries to force his way into my house at this time I'm coming very frightened. Keep in mind I am in my pajamas and my slippers and I'm falling asleep on my couch watching Donald Trump being persecuted by Nancy Pelosi back in the nineteen remember like it was yesterday.  Because that was it's natural home in my apartment I grabbed it and told them again to leave me alone and get off my F$#% property. At this point and I'm leaving my place of residence and they're still trying to gain entry into my house I unlock the door busted the lock and what's left of the door frame and I stepped out to the entryway and ask them if they wanted to really do this right then and there. They back up my driveway a few feet can I go back into my apartment they come back down to my apartment door and try again to assault my door and gain entry I open the door in back in chain persuade them to go back up the driveway a few feet. This unnatural dance going to the door up the driveway persisting that they weren't leaving until they gained entry into my home and thoroughly beat me I think their intent was to gain possession and which were in my house. The last time let it go out unbeknownst to me my next door neighbor was outside at this point she had been woken up by these men trying to beat my door down her bedroom is a good 80 ft away from my front door these men were beating on my door so hard that they woke her from a dead sleep in her bedroom 80 ft away. She comes out the states video taping me with a hedge in my hand looking like a wild man but no background contacts to this you would think I was just acting irrationally it was not at this point I was seriously fearful of my life as they had made it very clear that they were not leaving until they had pleaded what they had come to my home to do. Put a bit of back story at 7 a.m. that morning one of the gentleman that came in the house at sent me a text message that said that he was going to my work if I wasn't at work he was going to my house and he was going to throw me a beating / kill me. I very wrong for you mistook this as him being a keyboard Warrior unbeknownst to me that he had gone to get his biggest and toughest friend that he had come to my house and try to physically assault me and break into my home. Please show up at this point and very agitated and trot as a discount through a very stressful situation I'm confused and still have sleep I tell the police officers that the men had just barely left my house in a black SUV dark blue SUV. Upon review of the dash cam footage of the cruiser you can see the darkest she be going by one of the Cruisers they went back to their apartment complex on the other side of Lebanon purposely switched cars out and goes into a silver or gold sedan and then subsequently been trying to leave their apartment complex can people that are innocent of a crime do not go and switch vehicles out in try to avoid police at all cost. A police officer in the Lebanon PD officer Hughes and absurd Dorado came to my front door with a shotgun pointed in my general direction I open the door slightly and told them that they had to go get the men that were trying to break into my home and assault me. general description and a description of the vehicle and where I thought they might be. Upon pulling the sedan over in talking to one of the two men who is clearly high on methamphetamine and whacked out of his mind you can see in the place where they can put in he tells the police officer his intent was to cause me physical bodily harm let me spend some crazy story about he was defending his friends girlfriends. In reality Phoebe knew that I had valuables in my house and they possibly had a little bit of cash stashed away. The police officer Dorado Inn helps himself back into my house does not announce himself does not knock hits me in the head with my own door apologizes upon hitting me in the head for just helping himself into my home no warrant no real reason to force his way into my home he would later state that he thought he had implied consent implied consent but at least it in choir or require a knock and announcement of your presents. To you then walks into Main Kitchen this whole time just helping himself and blatantly just trampling over my constitutional rights for illegal search and seizure but alone the right to just walk into some of these hoes he literally did the same thing that the two men that were there before trying to beat my door down did helped himself to my home without permission or consent by myself. He then states that unfortunately for me I have to fill out a voluntary statement form and that is not leaving my apartment until the voluntary statement form is filled out to his satisfaction. At this point I'm very nervous and wondering how he is just let himself into my home and it's not leaving it then continues to look around my home and search my home without my consent and or permissions to do anything inside my house as he did not have permission to come into my house keep in mind this is the gentleman that was holding a shotgun in my general direction moments before. At some point in time the officer that left to speak with me too criminal would be burglars. Comes back and coaxes me out of my apartment with a story about needing to be shown exactly what happened this is a way to get me a set of my apartment knowing that they had no right to arrest me and I had no intention on leaving my apartment. Its Saturday morning and I had just worked a 69 hour week Monday through Friday. Reluctantly I go up to the doorway and basically show them the footprints in the snow where the men went back and forth and I went back to my doorway several times. Officer Hughes then places me under arrest and puts me in the back of his Cruiser it does not allow me just grab my cell phone it does not allow me to lock my apartment up doesn't even allow me to get my keys to my apartment and my other belongings remember I am in my pajamas and my slippers. As I'm handcuffed in the back of the cruiser I expressly tell him that he needs to lock my apartment up because they were obviously going to come back and help themselves to my property if I was going to be arrested and detained for an extended. Of time. Episode Dorado and officer Hughes and the OIC officer-in-charge Sergeant Gifford oh failed to secure my apartment and my belongings. Subsequently I was held without bail for a period of eight months in which all of my belongings were stolen and my personal information was stolen. There were three to four people squatting in my apartment for a period of at least six months well with your landlord assumed I was just not paying my rent. I have been charged with 1 degree assault with a deadly weapon and criminal threatening falsifying physical evidence all three felony charges and I was subsequently charged with thoughts of lying to a police officer and breaking a bogus bail condition both class A misdemeanors. It is now end of February 2022 and I've still yet to resolve this case but I am not going to take a plea deal for x amount of years suspended over my head for good behavior probation was he good standing citizen in the community a hard-working individual who did nothing but went to work and went home and minded his own business in the matter of moments. Lebanon Police Department and come to find out one of their paid informed was a man that came to my House. Because of this Christmas Justice it was my job was my place to live past all of my belongings I lost my identity due to my personal information social security card birth certificate a photo ID home being stolen out of the apartment that the Lebanon Police Department failed to secure the scene of a so-called crime. New Hampshire has the stand-your-ground law doesn't matter from the supermarket or if I'm in my front yard or in my living room if people threaten my life and or my property I have the right to defend myself within any means.
I have contacted both Senators for New Hampshire and they're showing express interest in this situation as it is a blatant violation of my constitutional rights and just when God given rights to maintain life liberty and the pursuit of happiness. My fifth grandfather removed was actually the signer of the Declaration of Independence for New Hampshire Matthew Thornton. What do you think my great-great-great-grandfather would think if he saw this and was able to witness this go on today you think this is what he had in mind when he said my piece of paper all those many years ago.
Sent from ProtonMail mobile

Open Atom app
File menu > Open > select .html file
File does not open
Repeat steps 2-3
Force quit Atom
Locate file in Finder
Open file with > Atom
Atom opens file, with error
Submit issue!

Atom: 1.59.0 x64 Electron: 9.4.4 OS: macOS 12.2.1 Thrown From: Atom Core
Stack Trace
Uncaught Error: dlopen(/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node, 0x0001): tried: '/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node' (no such file), '/usr/lib/keyboard-layout-manager.node' (no such file)
At electron/js2c/asar.js:140

Error: dlopen(/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node, 0x0001): tried: '/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node' (no such file), '/usr/lib/keyboard-layout-manager.node' (no such file)
    at process.func [as dlopen] (electron/js2c/asar.js:140:31)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1034:18)
    at Object.func [as .node] (electron/js2c/asar.js:149:18)
    at Module.load (internal/modules/cjs/loader.js:815:32)
    at Module._load (internal/modules/cjs/loader.js:727:14)
    at Function.Module._load (electron/js2c/asar.js:769:28)
    at Module.require (/app.asar/static/index.js:72:46)
    at require (internal/modules/cjs/helpers.js:74:18)
    at customRequire (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:1:756278)
    at get_KeyboardLayoutManager (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872375)
    at get_manager (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872477)
    at Object.getCurrentKeyboardLayout (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872603)
    at e.keystrokeForKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:1119692)
    at KeymapManager.keystrokeForKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:1225346)
    at KeymapManager.handleKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:1223331)
    at WindowEventHandler.handleDocumentKeyEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:286651)

Commands
     -0:12.5.0 core:select-all (input.hidden-input)
     -0:12.5.0 core:save (input.hidden-input)

Non-Core Packages
atom-beautify 0.33.4
atom-material-syntax 1.0.8
atom-material-ui 2.1.3
column-select 1.0.1
srt-syntax 0.0.0
tablr 1.8.3
web-accessibility-checker 0.1.4

Open Atom app
File menu > Open > select .html file
File does not open
Repeat steps 2-3
Force quit Atom
Locate file in Finder
Open file with > Atom
Atom opens file, with error
Submit issue!

Atom: 1.59.0 x64 Electron: 9.4.4 OS: macOS 12.2.1 Thrown From: Atom Core
Stack Trace
Uncaught Error: dlopen(/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node, 0x0001): tried: '/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node' (no such file), '/usr/lib/keyboard-layout-manager.node' (no such file)
At electron/js2c/asar.js:140

Error: dlopen(/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node, 0x0001): tried: '/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app.asar.unpacked/node_modules/keyboard-layout/build/Release/keyboard-layout-manager.node' (no such file), '/usr/lib/keyboard-layout-manager.node' (no such file)
    at process.func [as dlopen] (electron/js2c/asar.js:140:31)
    at Object.Module._extensions..node (internal/modules/cjs/loader.js:1034:18)
    at Object.func [as .node] (electron/js2c/asar.js:149:18)
    at Module.load (internal/modules/cjs/loader.js:815:32)
    at Module._load (internal/modules/cjs/loader.js:727:14)
    at Function.Module._load (electron/js2c/asar.js:769:28)
    at Module.require (/app.asar/static/index.js:72:46)
    at require (internal/modules/cjs/helpers.js:74:18)
    at customRequire (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:1:756278)
    at get_KeyboardLayoutManager (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872375)
    at get_manager (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872477)
    at Object.getCurrentKeyboardLayout (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:2872603)
    at e.keystrokeForKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:14:1119692)
    at KeymapManager.keystrokeForKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:1225346)
    at KeymapManager.handleKeyboardEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:1223331)
    at WindowEventHandler.handleDocumentKeyEvent (/private/var/folders/4m/jgt1xmds7c978cc_9wlw3s940000gn/T/com.github.atom.ShipIt.4Z9tJkPz/Atom.app/Contents/Resources/app/static/<embedded>:11:286651)

Commands
     -0:12.5.0 core:select-all (input.hidden-input)
     -0:12.5.0 core:save (input.hidden-input)

Non-Core Packages
atom-beautify 0.33.4
atom-material-syntax 1.0.8
atom-material-ui 2.1.3
column-select 1.0.1
srt-syntax 0.0.0
tablr 1.8.3
web-accessibility-checker 0.1.4


Penalizing parameters for being too small?

I realize that it is typical to penalize model coefficients/parameters for being too large. When training the CLV models implemented by this library, would it ever make sense to penalize coefficients for being too small in addition to penalizing them for being too large?
In my experimentation, I've come across instances where the distribution parameters end up being very small, and it can result in wacky values for the probability that a customer is alive. It almost seems like it would be valuable to make sure that these parameters fall within an ideal range rather than only preventing them from being too large. Perhaps somebody who knows more can tell me why that would be ill-advised.

Hi @DataNeel,
It sounds like you have some prior information about valid parameter ranges for your fits. This information is super useful for making sure your predictions make sense, but it can be a bit tricky to incorporate into the MLE optimization framework that lifetimes uses.
I suggest that you might take a look at some MCMC approaches. For example https://github.com/datascienceinc/pydata-seattle-2017/blob/master/lifetime-value/pareto-nbd.ipynb implements the Pareto-NBD model using pymc3. The advantage here is that you would have the flexibility to specify prior distributions for your model parameters which deemphasize small parameter values.

Thanks! I'll take a closer look at that link.
I'd still love to hear any related thoughts or experiences, if people have them.

It should be possible to incorporate a "minimum enough parameter values" contraint inside the loss optimization equation.
If you have any references, please post them here.


Anki-bin: upgrade 2.1.51->2.1.52

Description of changes
Upgrade anki-bin to 2.1.52.
This specifically fixes a bug that renders anki screens blank on sway (and presumably some other wayland based environments): https://github.com/ankitects/anki/issues/1767#issuecomment-1126562639.
Release notes:
https://github.com/ankitects/anki/releases/tag/2.1.52
Things done

Built on platform(s)

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

[ ] For non-Linux: Is sandbox = true set in nix.conf? (See Nix manual)
[ ] Tested, as applicable:

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

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

[ ] (Package updates) Added a release notes entry if the change is major or breaking
[ ] (Module updates) Added a release notes entry if the change is significant
[ ] (Module addition) Added a release notes entry if adding a new NixOS module
[ ] (Release notes changes) Ran nixos/doc/manual/md-to-db.sh to update generated release notes

[ ] Fits CONTRIBUTING.md.

Could you add this?
    platforms = [ "x86_64-linux" "x86_64-darwin" "aarch64-darwin" ];

The last PR missed this.

Good call.  Will add now.

@ofborg build anki-bin


Display list of unannotated PDF's

Display on the frontend a list of unannotated PDF's. You can just put a button to this page on the admin home page - for now. I will integrate to make a developer account if we need. You will need to call the GetPDF's backend function. No need to actually display the pdf's, just the name. Please look at the code for MyDocuments.tsx for inspiration.

This should be on a new component dashboard


Add fast_beam_search_nbest.

Here are some results for fast_beam_search with LG.
Compared to #277, the WERs are a little better. Part of the reason is perhaps that the baseline is stronger in this PR.
Different from #277, we give a more detailed analysis below.

test-clean
insertions
deletions
substitutions
correct
comment
result file

baseline (trivial graph, no LG)
2.61
150
98
1123
52576

errs-test-clean-beam_8.0_max_contexts_8_max_states_64-epoch-99-avg-1-use-LG-False-beam-8.0-max-contexts-8-max-states-64-use-max-False.txt

LG (log_add)
3.43
210
455
1138
52576
more deletion errors (see below)
errs-test-clean-beam_8.0_max_contexts_8_max_states_64-epoch-99-avg-1-use-LG-True-beam-8.0-max-contexts-8-max-states-64-use-max-False.txt

LG (max)
5.06
171
1378
1110
52576
significantly more deletion errors(see below)
errs-test-clean-beam_8.0_max_contexts_8_max_states_64-epoch-99-avg-1-use-LG-True-beam-8.0-max-contexts-8-max-states-64-use-max-True.txt

baseline
I use the following command to find out the deletion errors at the end of an utterance.
grep "*)$" errs-test-clean-beam_8.0_max_contexts_8_max_states_64-epoch-99-avg-1-use-LG-False-beam-8.0-max-contexts-8-max-states-64-use-max-False.txt

Its output is
P S PRAY SIR EXCUSE ME FOR WRITING TO YOU A SECOND TIME I COULD NOT HELP WRITING PARTLY TO TELL YOU HOW THANKFUL I AM FOR YOUR KINDNESS AND PARTLY TO LET YOU KNOW THAT YOUR ADVICE SHALL NOT BE WASTED HOWEVER SORROWFULLY AND RELUCTANTLY IT MAY BE AT FIRST FOLLOWED C (B->*)

Note that it has only a single line. You will see more for LG-based decoding below.

One thing to note is that the above errors are dominated by words like

GHIP GHISIZZLE  .....  several lines have this pattern
FITZOOTH ....  several lines have this pattern

Also, LG (log_add) tends to delete contiguous words once it encounters OOV words.
Almost all of the above deletion errors are caused by OOV.
The word table is attached below if you want to check it.
words.txt
LG (max)
grep "*)$" errs-test-clean-beam_8.0_max_contexts_8_max_states_64-epoch-99-avg-1-use-LG-True-beam-8.0-max-contexts-8-max-states-64-use-max-True.txt | wc -l

It outputs 881.

LG-max.txt
It tends to have more deletion errors at the end of an utterance.

So I suggest

Use a G that covers as many words as possible so that we have fewer OOV words.
Always use log_add.

The decoding command is
./pruned_transducer_stateless/decode.py \
  --epoch 99 \
  --avg 1 \
  --exp-dir pruned_transducer_stateless/exp \
  --max-duration 300 \
  --decoding-method fast_beam_search \
  --use-LG 1 \
  --use-max 0 \
  --beam 8 \
  --max-contexts 8 \
  --max-states 64 \
  --ngram-lm-scale 0.01 \
  --num-paths 200 \
  --nbest-scale 0.5

Where pruned_transducer_stateless/exp/epoch-99.pt is a symlink to
https://huggingface.co/csukuangfj/icefall-asr-librispeech-pruned-transducer-stateless-2022-03-12/blob/main/exp/pretrained.pt
You can refer to https://huggingface.co/csukuangfj/icefall-asr-librispeech-pruned-transducer-stateless-2022-03-12 to download it.

What exactly is the role of the LG here, at what stage do you apply it?

What exactly is the role of the LG here, at what stage do you apply it?

During RNN-T decoding, instead of using a trivial graph that contains only two states: state 0 and a final state, we use an LG instead. The LG graph is obtained by executing https://github.com/k2-fsa/icefall/blob/master/egs/librispeech/ASR/local/compile_lg.py

LG constrains the search space (paths) of RNN-T decoding.

I suspect the issue with the end-of-utterance deletions, is that it has to do with the beam: I suspect that after it encounters something it doesn't expect, only epsilon arcs are within the beam.  (I am talking about the log-likelihood beam, of course, not the top-k constraint which should not be called a beam).

I have tried to use fast_beam_search + LG for pruned_transducer_stateless{,2,3,5} and the results are given below.
It tends to reduce deletion errors with LG decoding.


ESCKAN feat: Remove empty row/columns from summary heatmap

https://github.com/MetaCell/sckan-explorer/assets/19196034/c20ca4b4-1fa9-4ae9-99dd-65823fdadc18

@afonsobspinto could you fix the linter issues here please? Thx


(short issue description)

Describe the feature
zainmotorsofficial
Use Case
zainmotorsofficial
Proposed Solution
zainmotorsofficial
Other Information
zainmotorsofficial
Acknowledgements

[X] I may be able to implement this feature request
[X] This feature might incur a breaking change

zainmotorsofficial