file not found if "fsacRuntime"="netcore"

File not found error if subject option is netcore in new ionide, net works as always before.
[17:49:15 DEBUG] RES (1314) <- {parse} in 43 ms: Kind={"info"}
Data="Request cancelled (exn was System.ComponentModel.Win32Exception (0x80004005): Das System kann die angegebene Datei nicht finden
at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
at System.Diagnostics.Process.Start()
at FsAutoComplete.Utils.runProcess(FSharpFunc`2 log, String workingDir, String exePath, String args)
at Dotnet.ProjInfo.Inspect.msbuild[a](MSBuildExePath msbuildExe, FSharpFunc`2 run, String project, FSharpList`1 args)
at Dotnet.ProjInfo.Inspect.getProjectInfoOldSdk[a,b,c,d](FSharpFunc`2 log, FSharpFunc`2 msbuildExec, FSharpFunc`2 getArgs, FSharpList`1 additionalArgs, a projPath)
at FsAutoComplete.NETFrameworkInfoProvider.getInfoFromMsbuild[a](FSharpFunc`2 getArgs, FSharpList`1 additionalProps)
at FsAutoComplete.NETFrameworkInfoProvider.getInstalledNETVersions() in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\NETFrameworkInfoProvider.fs:line 99
at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
--- End of stack trace from previous location where exception was thrown ---
at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw()
at System.Lazy`1.CreateValue()
at FsAutoComplete.Environment.netReferecesAssembliesTFMLatest() in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\Environment.fs:line 42
at <StartupCode$FsAutoComplete-Core>.$CompilerServiceInterface.GetProjectOptionsFromScript@328.Invoke(Unit unitVar) in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\CompilerServiceInterface.fs:line 328
at Microsoft.FSharp.Control.AsyncBuilderImpl.callA@839.Invoke(AsyncParams`1 args))"

windows 10
VSCode: 1.18.1
Ionide: 3.13.0
dotnet --version: 2.0.2

thx for bugreport @vilinski

as a note @vilinski that's because you opened an fsx script  (or is somehow parsed) and you didnt have msbuild in PATH (is not yet configurable/autodiscovered).

on Windows usually mean open VSCode from Developer Command Prompt for VS
or mac/linux mean having mono >= 5.2 installed

meanwhile i'll fix the error

Thanks for clearance. Don't know why msbuild is missing here. I never use command prompt of @drunkvs, but often start "code" from git bash. Error comes for me only on windows and only with netcore option.
It was a folder with *.fsx files without any *.sln or *.fsproj files.
No errors on mac however:
$ mono --version
Mono JIT compiler version <IP_ADDRESS> ...
$ dotnet --version
2.0.3

Ah nice, thx for additional info. i'll try in git bash too.
i dont use vs prompt, but i have msbuild in PATH, that's why i didnt see that error in testing.
the .fsx parsing with net option, there was no need for msbuild in PATH (msbuild was bundled as library).
the .fsx parsing with netcore option, doesnt bundle msbuild, instead call msbuild
executable (it's used to find the System assemblies).
But is a temporary requirement, need just better defaults to find the installed location, so will find that anyway, also if not already in PATH
ref https://github.com/fsharp/FsAutoComplete/issues/213

I created a shim on my PATH which aliases dotnet msbuild as msbuild and now .fsx files work fine with fsacRuntime: netcore.

I have a similar issue with netcore and .fsx files
19:54:24 DEBUG] WebSocket message: '{"Kind":"errors","Data":{"File":"somerepo/build.fsx","Errors":[{"FileName":"commandLineArgs","StartLine":0,"EndLine":0,"StartColumn":1,"EndColumn":1,"Severity":"Error","Message":"Multiple references to 'mscorlib.dll' are not permitted","Subcategory":"parameter"},{"FileName":"commandLineArgs","StartLine":0,"EndLine":0,"StartColumn":1,"EndColumn":1,"Severity":"Error","Message":"Multiple references to 'mscorlib.dll' are not permitted","Subcategory":"parameter"},{"FileName":"commandLineArgs","StartLine":0,"EndLine":0,"StartColumn":1,"EndColumn":1,"Severity":"Error","Message":"Multiple references to 'mscorlib.dll' are not permitted","Subcategory":"parameter"},{"FileName":"somerepo/build.fsx","StartLine":9,"EndLine":9,"StartColumn":15,"EndColumn":50,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":14,"EndLine":17,"StartColumn":1,"EndColumn":6,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":19,"EndLine":28,"StartColumn":1,"EndColumn":3,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":32,"EndLine":47,"StartColumn":1,"EndColumn":2,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":49,"EndLine":56,"StartColumn":1,"EndColumn":2,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":58,"EndLine":70,"StartColumn":1,"EndColumn":2,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":72,"EndLine":76,"StartColumn":1,"EndColumn":16,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":78,"EndLine":78,"StartColumn":1,"EndColumn":32,"Severity":"Error","Message":"The type referenced through 'System.String' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"somerepo/build.fsx","StartLine":1,"EndLine":1,"StartColumn":1,"EndColumn":1,"Severity":"Error","Message":"The type referenced through 'System.Object' is defined in an assembly that is not referenced. You must add a reference to assembly 'System.Runtime'.","Subcategory":"typecheck"},{"FileName":"commandLineArgs","StartLine":0,"EndLine":0,"StartColumn":1,"EndColumn":1,"Severity":"Error","Message":"Multiple references to 'mscorlib.dll' are not permitted","Subcategory":"parameter"}]}}'

I have Ionide v3.34.0 installed and I still have this issue when FSharp.fsacRuntime = 'netcore'. It works well when FSharp.fsacRuntime = 'net'.
[18:34:27 DEBUG] REQ (025) -> {parse}, File = "~\aryan.fsx"
Data={"FileName":"e:\\Projects\\FSharp\\FAKE\\aryan.fsx","IsAsync":true,"Lines":["open S"],"Version":7}
[18:34:27 DEBUG] RES (025) <- {parse} in 7 ms: Kind={"info"}
Data="Request cancelled (exn was System.ComponentModel.Win32Exception (5): Access is denied
   at System.Diagnostics.Process.StartWithCreateProcess(ProcessStartInfo startInfo)
   at System.Diagnostics.Process.Start()
   at FsAutoComplete.Utils.runProcess(FSharpFunc`2 log, String workingDir, String exePath, String args) in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\Utils.fs:line 547
   at Dotnet.ProjInfo.Inspect.msbuild[a](MSBuildExePath msbuildExe, FSharpFunc`2 run, String project, FSharpList`1 args)
   at Dotnet.ProjInfo.Inspect.getProjectInfo[a,b,c](FSharpFunc`2 log, FSharpFunc`2 msbuildExec, FSharpFunc`2 getArgs, FSharpList`1 additionalArgs, String projPath)
   at FsAutoComplete.NETFrameworkInfoProvider.getInfoFromMsbuild[a](FSharpFunc`2 getArgs, FSharpList`1 additionalProps) in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\NETFrameworkInfoProvider.fs:line 26
   at FsAutoComplete.NETFrameworkInfoProvider.getInstalledNETVersions() in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\NETFrameworkInfoProvider.fs:line 72
   at System.Lazy`1.ViaFactory(LazyThreadSafetyMode mode)
--- End of stack trace from previous location where exception was thrown ---
   at System.Lazy`1.CreateValue()
   at FsAutoComplete.NETFrameworkInfoProvider.netReferecesAssembliesTFMLatest() in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\NETFrameworkInfoProvider.fs:line 159
   at <StartupCode$FsAutoComplete-Core>.$CompilerServiceInterface.GetProjectOptionsFromScript@511.Invoke(Unit unitVar) in D:\\Programowanie\\ionide\\paket-files\\github.com\\fsharp\\FsAutoComplete\\src\\FsAutoComplete.Core\\CompilerServiceInterface.fs:line 511
   at Microsoft.FSharp.Control.AsyncPrimitives.CallThenInvoke[T,TResult](AsyncActivation`1 ctxt, TResult result1, FSharpFunc`2 part2)
   at Microsoft.FSharp.Control.Trampoline.Execute(FSharpFunc`2 firstAction))"


Missing .class files?

Since https://github.com/taylorwood/clj.native-image/commit/b3823a48be75122b9671c86ce5353a85589ef15f I'm getting errors like:
Error: Unsupported features in 12 methods
Detailed message:
Error: com.oracle.graal.pointsto.constraints.UnresolvedElementException: Discovered unresolved type during parsing: clojure.tools.reader.reader_types.IPushbackReader. To diagnose the issue you can use the --allow-incomplete-classpath option. The missing type is then reported at run time when it is accessed the first time.
Trace:
        at parsing rewrite_clj.reader$unread.invokeStatic(reader.clj:115)
Call path from entry point to rewrite_clj.reader$unread.invokeStatic(Object, Object):
        at rewrite_clj.reader$unread.invokeStatic(reader.clj:112)
        at rewrite_clj.reader$unread.invoke(reader.clj:112)
        at clojure.tools.reader.default_data_readers.proxy$java.lang.ThreadLocal$ff19274a.equals(Unknown Source)
        at java.util.HashMap.getNode(HashMap.java:579)
        at java.util.HashMap.get(HashMap.java:557)
        at com.oracle.svm.jni.access.JNIReflectionDictionary.getFieldNameByID(JNIReflectionDictionary.java:278)
        at com.oracle.svm.jni.functions.JNIFunctions.ToReflectedField(JNIFunctions.java:836)
        at com.oracle.svm.core.code.IsolateEnterStub.JNIFunctions_ToReflectedField_80d8233579d5215df0227b770e5c01228a0de9b9(generated:0)

When I try to build the same project by first building an uberjar and handing that to native-image, I don't get those errors.
Upon close inspection of the classes directory that clj.native-image creates for compilation of class files, I noticed that the set of .class files contained differs from what's contained in the uberjar.
One difference is that while the uberjar contains class files for tools.reader.reader_types, the clj.native-image's classes directory hierarchy does not (though it does have other tools.reader-related class files).
When I do (compile 'script) from the project (without the clj.native-image alias enabled), I do get those class files.
On a possibly related note, it appears that the use of clj.native-image (since the aforementioned commit), affects the version of tools.reader on the classpath, which happens to be something used by the project in question.
(I wonder if using something like mranderson to "vendor" clj.native-image's dependencies might be desirable to not affect the classpath.)

Thanks for the detailed notes! Do you have an example project I can use to reproduce this?

I have one, but I don't know if it will successfully build for other folks (might be a broken dependency).  If you don't mind trying, the missing-file-branch of https://github.com/sogaiu/adorn might be able to reproduce.
https://github.com/sogaiu/adorn/blob/missing-class-files/deps.edn

Experiments suggest that depending on what has been loaded already in a process, the exact class files that will get written to disk for (compile 'script) may differ.
It turns out that adorn and clj.native-image share at least one transitive dependency: tools.reader.
Invoking clj -A:native-image for adorn leads to (at least) parts of tools.reader being loaded (and thus compiled, but cached in memory, not written to disk).  At this point, an invocation of (compile 'script) may not load (some?) pieces shared by clj.native-image and adorn, and thus they are not compiled again, so they are not written to disk in class file form either.
This can be observed by using code like (thanks @noisesmith):
(in-ns 'clojure.core)
(binding [*loading-verbosely* true] (compile 'script))

This should produce output as to which namespaces are loaded during compilation.
I compared the results of running the above code right after a process has started to run, to after having invoked (require 'clj.native-image) or (require 'clojure.tools.namespace.find), and noticed differences.  Specifically, the two cases of requiring something explicitly before the compile didn't show that reader-types was being loaded, and observing the classes directory confirmed that no corresponding class files were produced.  (I was careful to appropriately remove and recreate the classes directory during the tests).
I think it's possible that prior to https://github.com/taylorwood/clj.native-image/commit/b3823a48be75122b9671c86ce5353a85589ef15f, loading clojure.tools.namespace.find didn't end up pulling in (some?) parts of tools.reader that are used by adorn.  If that's true, it might explain why (compile 'script) used to produce class files for (some of?) the reader-types portion of tools.reader (which don't get produced in commits including and beyond https://github.com/taylorwood/clj.native-image/commit/b3823a48be75122b9671c86ce5353a85589ef15f).
It appears that explicitly compiling clojure.tools.reader.reader-types does produce class files whether clojure.tools.namespace.find has been loaded or not.
FWIW, borkdude mentioned that explicitly compiling each namespace in a project seemed to resolve this type of issue for him.
There is at least one potential issue with only following that approach -- the overlap of dependencies between clj.native-image and one's project. This may affect what specific versions are actually compiled.
Some method to preserve a project's specific dependencies might be nicer.  Possibly using something like mranderson to inline (vendor?) clj.native-image's dependencies might be one approach.

Regarding the issue of clj.native-image's dependencies possibly influencing a project's dependencies...
Would launching an external clj / clojure process from clj.native-image to execute (compile 'script) (and thus generate class files) be worth considering?

FYI, found this comment in Compile.java:
// Compiles libs and generates class files stored within the directory
// named by the Java System property "clojure.compile.path". Arguments are
// strings naming the libs to be compiled. The libs and compile-path must
// all be within CLASSPATH.


Website user guide is broken

User guide link points to
https://github.com/uber/kepler.gl/blob/master/docs/j-get-started.md
which is currently not working
The actual URL should be: https://github.com/uber/kepler.gl/blob/master/docs/user-guides/j-get-started.md
While you are in this, page https://github.com/uber/kepler.gl/blob/master/docs/user-guides/j-get-started.md
doesn't show save and export image correctly

Uploaded image to s3 to fix https://github.com/uber/kepler.gl/blob/master/docs/user-guides/j-get-started.md "save-and-export"

Fixed here: https://github.com/uber/kepler.gl/pull/369

fixed


SharedArrayBuffer not available (even though it is)?

Neat demo! I noticed that it works for me on webvm.io, but if I run it myself from source code (e.g. with python -m http.server) it fails on the SharedArrayBuffer test. So my browser does support that feature, but something is preventing it from working. What gives?

Nevermind. I get it - you need the nginx.conf settings.

More specifically, SharedArrayBuffer is only available on HTTPS - according to MDN


Add support for broker.rack

Kafka has a concept of racks. They represent group Kafka nodes into different segments based on the probability that they will fail all together. E.g. all machines in single rack will fail when the rack fails - hence rack. But in in public cloud for example the role of the rack will be taken over by the availability zone. The idea is that when a topic has N replicas, the replicas should be spread across different racks to minimise the probability that one disaster event will take down all replicas of particular topic / partition.
In Kubernetes world, the nodes have often tags to describe the availability zone or some similar concept of disaster partition (failure-domain.beta.kubernetes.io/zone). We should:

Make sure we have Kafka nodes in each rack (node selectors? pod anti-affinity? In some environment this might be easier as the pods will be unable to move between the partitions because the disks are limited to a single partition (e.g. AWS). In other environments this might be harder)
Configure Kafka nodes with the proper broker.rack property

How many availability zones are there, typically, in a region?

It depends. In AWS this ranges from 2 to 6 - you can have a look here. Google seems to be doing a bit better and most of their regions have 3+ zones. I expect that on premise many customers might have only two as well.
2 zones should not be such a big deal for Kafka. Zookeeper might be bigger issue in such situation.

KIP-36 describes rack aware assignment, and explicitly says that "rack==availability zone" in AWS. It also says, when describing how the rack-aware assignment would work, "if the number of racks is less than the the number of replicas (which should happen very infrequently)..." If there are only 2 AZ in a region it seems this assertion of infrequency is likely to fail, and an uneven distribution is possible.
I still think we should do this, but we need to be a little bit cautious.

Yeah, it is a bit unfortunate that it cannot distribute the replicas equally across the racks when replicas > racks. But still better then nothing.

After digging more into node affinity and pod affinity/anti-affinity ...
We need to have brokers spread across different zones/racks as much as possible and it can be provided by the podAntiAffinity. It should use preferredDuringSchedulingIgnoreDuringExecution so that if not enough zones are available to spread brokers across all of them, the scheduler is allowed to put two brokers in the same zone as well. The topology key for that is the failure-domain.beta.kubernetes.io/zone. The inner label selector should use the strimzi.io based labels for selecting pods which are part of this anti-affinity scenario.
At same time, I guess we want user to configure "preferred" zones/racks in the cluster configmap so something like :
broker.rack = "zone1, zone2, ..." (or a JSON array or something like that)
It means that users would like to have the broker replicas spread across the specified zones/racks.
In this case the nodeAffinity could be useful. It should use preferredDuringSchedulingIgnoreDuringExecution as well and a matchExpressions where the failure-domain.beta.kubernetes.io/zone is the key and, in this example, "zone1" and "zone2" (and more) are values.
These settings are added by the cluster operator to the StatefulSets at creation.
On the other side, we'll have an init-container running in the same pod as the Kafka container. It will be in charge to get info from the node it's running most important getting the zone and "injecting" it as broker.rack parameter for the Kafka container.
On how implementing the init-container, in order to do that the init container could have just a script using oc/kubectl for getting node info ? It needs the spec.nodeName from the pod where it's running. Or a simple Java application using fabric8 API ? Via script could be less trivial but running Java could be too much.
@scholzj @tombentley wdyt ?

At same time, I guess we want user to configure "preferred" zones/racks in the cluster configmap so something like :
broker.rack = "zone1, zone2, ..." (or a JSON array or something like that)

I'm not sure we need this. What is the use case you can see in selecting only some zones? Even if there is such usecase, it should be part of general node selector, not as the broker.rack implementation IMHO.

The topology key for that is the failure-domain.beta.kubernetes.io/zone.

Yeah, right ... so, do we actually need to make this configurable? Or can we just hardcode the affinity into the stateful sets / deployments?

One other problem which comes to my mind ... we might not have access to the nodes (such as on OSO). So we will either need to be able to switch the init container on / off from config map and leave it to the user to decide whether he can give us the rights. Or we will have to find out if we have the rights and use it accordingly. This should affect the Init container and setting rack ID only ... should not have impact on the affinity in the deployment / statefulset.

I'm not sure we need this. What is the use case you can see in selecting only some zones? Even if there is such usecase, it should be part of general node selector, not as the broker.rack implementation IMHO.

Yeah, right ... so, do we actually need to make this configurable? Or can we just hardcode the affinity into the stateful sets / deployments?

Ok I I misunderstood then. We don't want the user to specify "some" zones in the configmap but the node label to use for "selecting" nodes so that it should not be the hard coded failure-domain.beta.kubernetes.io/zone (as default) but a different one. Am I right ?

Ok I I misunderstood then. We don't want the user to specify "some" zones in the configmap but the node label to use for "selecting" nodes so that it should not be the hard coded failure-domain.beta.kubernetes.io/zone (as default) but a different one. Am I right ?

Well, I actually haven't though about it before either. But you are right that failure-domain.beta.kubernetes.io/zone is well defined label which should specify the racks. And with the affinity being "optional" (i.e. only when the zones are available) I actually don't see any harm in setting this by default.
My expectation (which might be of course wrong) is that people usually do not have more zones than what they want to use. Hence no need to select them.
Anyway ... we will need to allow users to select nodes. And although my primary motivation there would be to for example select a dedicated node or select a node with local SSD or with super fast storage network, I would assume it could be used also for selecting the zones if needed.

It seems that the issue is broader than supporting the rack feature.
In bare metal Kafka, the user can specify the broker.rack property for each broker which is something that he cannot do using a Kubernetes/OpenShift deployment because we have replicas from a StatefulSets created from same Pod template.
For this reason spreading the pod/replicas across different zones/racks can be done via podAntiAffinity using failure-domain.beta.kubernetes.io/zone (or something else configurable) as topologyKey. After that the zone is injected as value to broker.rack property for the broker.
What you are saying now ...

we will need to allow users to select nodes.

... sounds a little bit different to me. It's something that can live even without the rack feature.
We want a way, in the configmap, to allow users to say "I want my Kafka brokers running on nodes which has a fast SSD" supposing for example that some nodes have label disktype=ssd. In that case we need nodeAffinity using match expressions where the key is the label (i.e. disktype) having values (i.e. ssd). How is it related to the broker.rack feature ?

Sorry if I confused you. The node selectors are separate issue and not necessarily needed for the broker.rack support. But they can IMHO be used as a way to select only some zones in case that is really needed. So I'm just saying that IMHO we do not need the configuration of selected zones as mentioned on the beginning.

It's a valid point but ...
I don't see a solution because if in AWS the range is from 2 to 6 zones and let's consider having 2 for example but you want to deploy a 3 brokers Kafka cluster, the only way is to use preferred otherwise with required the third broker cannot be deployed at all (as far as I understood on how it works with required vs preferred). Is that something that we can avoid ?

Yeah, AFAIK this is a Paolo says - with required, you will not be able to deploy more brokers than we have zones.
Whether the pods change the zone or not depends also on other factors. For example EBS storage will not move the zone and the pod with persistent EBS volume will be bound to the zone through the volume. I'm not sure how for example GlusterFS deals with this. I would say we should go for it and just document the caveats.  WDYT?
It is funny how in some cases it turns out how insufficient the stateful sets are. If we were scheduling directly our own Pods, this would be easier to handle.

It seems we've got two pieces here:

Using the zone node label as the broker rack. I don't think this is contentious, really, since that's pretty much what it is.
Then it's a question of scheduling and the right thing here depends on external factors:

For EBS, @scholzj asserts that pod anti affinity should work.
For other storage options it might not

Looking forward there are other mitigations in the problematic case. For example we could try using nodeSelectors or pod affinity to make the initial zone assignment sticky, or stickyish. Or just rely on the cluster balancer to reassign replicas in the same zone.
In any case, it seems clear that we should do this for now.

That's the scenario @scholzj, but the problem is in the "someone will need to reschedule the brokers and possibly reassign the topics" part. If that step doesn't happen the cluster appears to be working but the users expectation around redundancy has been broken. For sure we don't have to solve that in this issue, but it would be good to have some mitigation.

Yeah ... well ... I think we should document this until we have a better solution. Rescheduling the pods can be in theory done by CO. For reassigning the topics we would need the cluster balancer.

This should be now all implemented. I will close this issue.


v-html on <component> does not work in SSR

Vue version
3.5.13
Link to minimal reproduction
https://play.vuejs.org/#__PROD____SSR__eNp9kcFPgzAUxv+V+i67TIhBLwSXqFniPGzGcWxiEJ7QWVrSFiRZ+N9tC8MdliU9vHy/r33fez3CU9MEXYsQQ2KwbnhmcEUFIUnBOl9MZVoxTezpmGZfHJPwjOeybqRAYUjM9COFhWULCqS7rUzNnZBoo6QoV+nrZk/s2e7SmyScRGcNx6bTq0k4Z4ElGJ1L8c3K4KClsEGPzkrBdWUc1a4xTApNISaeOJZxLn/fvGZUi8uTnleY/1zQD7p3GoV3hRpVhxRmZjJVohnxer/F3tYzrGXRcuu+Aj9QS966jKPtuRWFjX3m82k3dofKMFGmet0bFPo0lAvqnIP3U7C/9XJl9P+4UXDv71Ex2C1+dqjcm3aBUfAQ3EUw/AFR/qMz
Steps to reproduce
<template>

This is visible

    <component :is="'div'" v-html="'THIS IS NOT!'" />

</template>

What is expected?
The <component> should render in both SSR + client-only
What is actually happening?
THIS IS NOT is not rendered in SSR.
System Info
No response
Any additional comments?
reported in https://github.com/nuxt/nuxt/issues/30202

Similar to #6553
see https://github.com/vuejs/core/issues/6553#issuecomment-1232468857

@Gwynerva
Here is a workaround may be better.

@edison1105 Thank, yeah I think this will do. But still as I already said v-html on dynamic component is already working just fine without SSR, so I can't see any reasons why it should not work with SSR.

As the use case doesn’t involve custom components, I think it’s legit for dynamic element tags.

Of course I am talking about "vanilla" HTML tags. Can't think of why someone would need to v-html custom components, when you can directly edit these component's <template>...

To sum up, there are two bugs, both working just fine in normal Vue and not working in Vue SSR:

h is not working in SSR when using


Adding figure eight example and python tools package

Adding a simple figure of eight example. Don't merge yet, todo:

[x] Debug and push figure_eight_node.py example script
[x] Update lbr_examples/README.md
[x] Test on real robot

@mhubii this is now ready to merge.


New protocol #453

🥼 Protocol Request
Protocol ID: 453
Protocol Title: Prediction rules for aggressive prostate cancer in AS population

Added 453 @kjans07


Please add information about Operators

In Logic Apps documentation there is a chapter about operator - https://docs.microsoft.com/en-us/azure/logic-apps/logic-apps-workflow-definition-language#operators.
For example, the question mark operator is working in Data Factory but it is nowhere documented.

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

ID: 76e31411-f1a2-710b-94c0-39acf9e7314b
Version Independent ID: d5cefffe-dee0-2d2e-f3cb-8eefd5d40d17
Content: Expression and functions in Azure Data Factory - Azure Data Factory
Content Source: articles/data-factory/control-flow-expression-language-functions.md
Service: data-factory
GitHub Login: @djpmsft
Microsoft Alias: daperlov

You are right that this information is currently missing. I have added a documentation work item that I will make high priority and hopefully get out in the next couple days.
Since there is a tracked repair item on the ADF team, I will proceed to close this issue
#please-close


ParaView improvements

This PR adds several new features and makes some improvements to the ParaViewDataCollection class:

High-order output for all element types: tensor products, simplices, and prisms
Option to output in binary format (either Float64 or Float32)
Compressed binary output if compiled with gzstream support
Write files in a way that allows ParaView to read “partially written” data collections (i.e. during time stepping, before completion)
Allow for output of high-order VTU format meshes
Code reorganization: avoid duplicating pre-existing functionality from the DataCollection base class
Bug fix: respect precision option for ASCII output
Bug fix: respect prefix path for data collection (fixes #1284)

Related to #678 and GLVis/glvis#64.
An example of the high-order visualization:

The CI checks all look good except for the large file modification check because of additions and changes to mesh.cpp. Some of these changes are inevitable, but I also added a lot of VTK-specific code, which might be better-off being moved to a different file (e.g. creating vtk.cpp or similar). I know @camierjs had some thoughts about this.
I would appreciate feedback about the best way to proceed.

I'm totally OK with creating vtk.?pp for  VTK-specific code. In principle, splitting code in a new file is totally fine as long as: 1) it is more than just a few lines; and 2) does not split class implementation on multiple files. There could be exception to both of these too.

Please update CHANGELOG

I updated CHANGELOG and moved a lot of the VTK-specific logic (node numbering, binary headers, encoding, etc.) to the new file vtk.cpp.

LGTM. I'd like to see the valgrind test results but from the implementation point this is good.

No issues with valgrind running ex5 or ex9 with ParaView output: All heap blocks were freed -- no leaks are possible

Good point about the endianness. Now I detect the endianness and output the proper byte_order string. It shouldn't really be an issue because I think even the POWER machines are running in little endian mode...

Merged in next for testing...

While testing this with ExaConstit, I ran into an issue where my GridFunctions that make use of an L2 finite element space are being outputted to 0 whenever I run my app using a CUDA runtime. I don't have this issue with the ConduitDataCollection or when I set my runtime to being the CPU.
It does appear though that this bug existed with the original Paraview implementation as well.

@rcarson3, can you try building MFEM in debug mode? That should catch data use on the host if the data is actually on the device. Hopefully that will tell us where we need to look to fix the issue.

Hey @v-dobrev I just ran it with the debug assertion and there was definitely an invalid host pointer assertion being thrown. So, it appears it was outside of ParaviewDataCollection call at least initially.
It appears that it's being thrown in ParGridFunction::ProjectDiscCoefficient(VectorCoefficient &vcoeff,                                              AvgType type)  and more particularly within GridFunction::AccumulateAndCountZones at line 1259 when zones_per_vdof = 0; is called.

Hmm, I looked at the code and I don't understand how zones_per_vdof = 0; can cause a problem -- this array is never copied/moved to GPU as far as I can tell. What is the error message that you get?

Although, it might be nice to note somewhere that making use of the compressed format is recommended if data space savings are desired. Since, I found that the binary could sometimes result in about 2x as much data as compared to the regular text for some of my simulations.

Yeah, that's a good point. Compression is turned on by default as long as MFEM is linked with zlib. For uncompressed data you could consider using BINARY32 to reduce the output file size. Of course the comparison to ASCII output will depend on how many digits of precision you output.


weather.search - incomplete answer

Hi,
I'm starting to use this amazing plugin and I'm using "ApiAIPlugin.requestVoice" function.
When I try to search something with the "weather.search" like "Weather in London" from the AI.API I receive the complete and correct anwer, but this plugin "cut" part of the answer.
For example:
I'm asking: weather in London.
The Json answer from the API is:
{
"id": "3c8a24da-85d2-451d-b6da-a723d0b91b53",
"timestamp": "2016-01-21T05:43:20.979Z",
"result": {
"source": "domains",
"resolvedQuery": "weather in london",
"action": "weather.search",
"parameters": {
"request_type": "explicit",
"location": "london"
},
"metadata": {
"suggests": [
{
"title": "What about this weekend?",
"weight": 50,
"type": 0
},
{
"title": "Send me weather notifications",
"weight": 50,
"type": 0
},
{
"title": "Repeat",
"weight": 50,
"type": 0
}
],
"widget": {
"name": "html",
"heightAspect": "80%",
"data": {
"url": "https://s3.amazonaws.com/static.speaktoit.com/widgets/weather/index.html?{"region":"London","speedUnit":"mph","selected":0,"today":0,"s":"F","d":"F","locale":"en-US","data":[{"day":"01/21/2016","t1":"42","t2":"38","t":"30","c":"Intermittent Clouds","i":"partly_sunny","w":"8","mobileLink":"http://m.accuweather.com/en/gb/london/ec4a-2/daily-weather-forecast/328328?day\\u003d1\"},{\"day\":\"01/22/2016\",\"t1\":\"50\",\"t2\":\"40\",\"t\":\"50\",\"c\":\"Rain\",\"i\":\"rain\",\"w\":\"13\",\"mobileLink\":\"http://m.accuweather.com/en/gb/london/ec4a-2/daily-weather-forecast/328328?day\\u003d2\"},{\"day\":\"01/23/2016\",\"t1\":\"51\",\"t2\":\"46\",\"t\":\"51\",\"c\":\"Intermittent Clouds","i":"partly_sunny","w":"6","mobileLink":"http://m.accuweather.com/en/gb/london/ec4a-2/daily-weather-forecast/328328?day\\u003d3\"},{\"day\":\"01/24/2016\",\"t1\":\"53\",\"t2\":\"48\",\"t\":\"53\",\"c\":\"Intermittent Clouds","i":"partly_sunny","w":"10","mobileLink":"http://m.accuweather.com/en/gb/london/ec4a-2/daily-weather-forecast/328328?day\\u003d4\"},{\"day\":\"01/25/2016\",\"t1\":\"54\",\"t2\":\"44\",\"t\":\"54\",\"c\":\"Mostly Cloudy","i":"cloudy","w":"11","mobileLink":"http://m.accuweather.com/en/gb/london/ec4a-2/daily-weather-forecast/328328?day\\u003d5\"}]}"
}
},
"api-fulfillment": true,
"complainId": "ae30271f-ea21-4104-bca5-b70757220bd7",
"speech": "It's currently 30 degrees and light fog in London. This afternoon you can expect cloudy, with temperatures around 32 degrees. This evening you can expect mostly sunny, with temperatures around 40 degrees.",
"response.trigger.action": "weather.suggest",
"action": "weather.search",
"response.event.action": "weather.search",
"html": "  Here's the weather forecast for London.  ",
"parameters": {
"request_type": "explicit",
"location": "london"
},
"listen": "false",
"account": {
"type": "anonymous"
}
},
"fulfillment": {
"speech": "It's currently 30 degrees and light fog in London. This afternoon you can expect cloudy, with temperatures around 32 degrees. This evening you can expect mostly sunny, with temperatures around 40 degrees."
}
},
"status": {
"code": 200,
"errorType": "success"
}
}
What I really need to have is: "metadata.widget.data.url", but unfortunately the plugin truncate the "metadata" object. Or maybe is my mistake and I don't know how to read this information.
If I'm trying to debug with chrome/inspect the result from the plugin is:
Object {id: "9d6e816e-898d-46e2-b115-f14dde187def", result: Object, status: Object, timestamp: "2016-01-21T05:46:23.906Z"}
id: "9d6e816e-898d-46e2-b115-f14dde187def"
result: Object
action: "weather.search"
fulfillment: Object
metadata: Object
proto: Object
defineGetter: defineGetter()
defineSetter: defineSetter()
lookupGetter: lookupGetter()
lookupSetter: lookupSetter()
constructor: Object()
hasOwnProperty: hasOwnProperty()
isPrototypeOf: isPrototypeOf()
propertyIsEnumerable: propertyIsEnumerable()
toLocaleString: toLocaleString()
toString: toString()
valueOf: valueOf()
get proto: get proto()
set proto: set proto()
parameters: Object
resolvedQuery: "weather in London"
proto: Object
As you can see "metadata" is a object but without anything inside.
Anyone can help me please?
Is it my mistake or is a bug?
Thank you so much for your help.
All the best

Hi, @r4nm4
Sorry,
The widget part in metadata not supposed to get into production version. This is a temporary problem, and this metadata will be removed soon.
Please describe what for would you like to use it? Maybe it can be solved in another way.
Thanks!

Hi @xVir
first of all thank you so much for you answer :)
No problem at all, I can find another way ;)
At the moment, I'd like to have the "metadata.widget.data.url" from "weather.search".
Because with the url in answer I can display the weather widget inside an iframe ;)
Thanks

Hi, @r4nm4
Weather domain gives parameter "location": "london", so you can use it for getting weather information from some service, like http://apidev.accuweather.com/developers/ and create your own widget.
Thanks! :)


refactor: add .gitattributes file to normalize line endings to LF

Add .gitattributes file with LF line endings to normalize line endings for everyone.

Thanks for the PR!


UIShiny runtime add component not working

Hello there!
Started using your awesome UIEffect package and bumped on weird behaviour of shader work in runtime. In editor all works fine, but in runtime build there is just nothing. I'm talking about UIShiny shader - when adding them on the fly to the object.
I have test project that demonstrate this issue, could you take a look please?
Test project in two ways - first run in editor and see that all works fine, then compile for windows build and try the same thing.
Thanks for your work,
Sergey.
UIEffect-master.zip

Thanks for reply, @mob-sakai
Sad to hear that, but it's another reason to review my project architecture.
Have a good day and keep to delight us with new features,
Sergey.

There is a way to add UIShiny at runtime, @fromkms.

Move UI-Effect-Shiny.mat into Resources directory
Modify UIShiny.OnEnable as follows

protected override void OnEnable()
{
	// vvvv ADDING vvv
	if (!m_EffectMaterial)
		m_EffectMaterial = Resources.Load<Material> ("UI-Effect-Shiny");
	// ^^^^ ADDING ^^^^

	_time = 0;
	base.OnEnable();
}

I hope this will help;)

Thanks a lot, @mob-sakai
You're saved my life!

In the future, we will support adding component at runtime, based on this way;)


fix(components): scroll back to original position when accordion is closed

Description
Simply scrolls window back to the point where accordion was opened when closing it. Implemented in EllipsedTextWithToggle, since the accordion comes from HDS.
Right now there are no other controls, flags, or thresholds when to trigger the behaviour, since EllipsedTextWithToggle is just used on sports, but could be added of course.
Issues
Closes
LIIKUNTA-383:
Related
Testing
Automated tests
Manual testing
Screenshots
Additional notes

Sports-Helsinki branch is deployed to platta: https://liikunta-pr169.dev.hel.ninja :rocket::rocket::rocket:

Hobbies-Helsinki branch is deployed to platta: https://harrastukset-pr169.dev.hel.ninja :rocket::rocket::rocket:

TestCafe result is success for https://liikunta-pr169.dev.hel.ninja :laughing::tada::tada::tada:

TestCafe result is success for https://harrastukset-pr169.dev.hel.ninja :laughing::tada::tada::tada:

Events-Helsinki branch is deployed to platta: https://tapahtumat-pr169.dev.hel.ninja :rocket::rocket::rocket:

TestCafe result is success for https://tapahtumat-pr169.dev.hel.ninja :laughing::tada::tada::tada:


chore: Fix lint issue on Travis

Codecov Report

Merging #27 into master will not change coverage.
The diff coverage is n/a.

@@          Coverage Diff          @@
##           master    #27   +/-   ##
=====================================
  Coverage     100%   100%
=====================================
  Files           3      3
  Lines          48     48
  Branches        6      6
=====================================
  Hits           48     48

Continue to review full report at Codecov.

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

:tada: This PR is included in version 1.6.0 :tada:
The release is available on:

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Spotify permission/authentication requested every time after login

I suggest prompting for permission only 1 time after the profile is created.

Hi @rojaraman
Unfortunately, since we need Spotify's auth token in addition to our own JWT, it is required that we ask for Spotify login. The auth token expires in 1 hr and we do not think it's a good idea to store the token in DB and check if it's valid or not with each login.

ok. Makes sense. closing the issue.


Clean up reqs

Cleaning up requirements and other aspects of the app as we ensure Django 1.9 compatibility exists in all of our apps.

 Upgrading first-party apps for Django 1.9 support


New apps: eduVPN and Clarivate Endnote

Adding the following apps:

eduVPN - https://www.eduvpn.org/ (is included in my previous pull request)

Clarivate Endnote - https://endnote.com

Closing because not all commits are signed.


pandas futurewarning  in history_container

  File "~/work/quantopian/zipline/zipline/history/history_container.py", line 547, in drop_sids
    sorted(self.sids - _ensure_index(to_drop)),
  File "~/Dropbox/Projects/trading/python/externals/pandas/pandas/core/index.py", line 1183, in __sub__
    "use .difference()",FutureWarning)
FutureWarning: using '-' to provide set differences with Indexes is deprecated, use .difference()

Running latest master, not sure what version the warning existed on.

Looks like this was fixed: https://github.com/quantopian/zipline/commit/f44c15bb38bb42b76dfcd634acf2ff5d54724ff6#diff-803238601658da56278f98e2fa62ae88R547


Turn on lights when a movies plays in Theatre mode

Hi,
Is there a way to turn on a group of lights when media is played in theatre mode?
I would like to have the lights dim and my light strips turn on (like in a theatre) when media is played and then reverted when the media is stopped or paused.
Also, is it possible to have the events occur at a specific time of day (for example don't need to turn on the lights during daylight hours)
regards
David

The  "static lights group" does what you want.

Yep that works a treat.
I noticed there is s theatre lights subgroup as well - is there an explanation of what that is?

The explanation is on the readme file or in the "home" of this project:
_Light Groups
This add-on works with a concept of groups that are different from groups defined on Hue bridge. Each group can have 0 or more lights and has default behavior settings that can be modified in the add-on settings screen. After playback ends, the add-on will try to restore the lights to where they where before it started controlling them.
Theater Group
Lights in the theater group act like wall lights in a typical theater. When playback starts the lights dim and they undim when playback is paused or ends. If you only want some of the lights to undim during pause, it is possible to configure "subgroup" in add-on settings -> Theater and only dim the subgroup.
Ambilight Group
Ambilight group tries to control the lights similarly to modern ambilight TVs. The add-on tries to figure out the most represented colors in each frame and change the lights to reflect that. They can also be configured to work similarly to theater group when playback is paused.
Static Group
Static lights act opposite to the theater lights -- they are turned on when playback starts, turned off when you pause the playback and go back to initial state after the playback stops._
;)


Added goTo props

What this PR is for

Added goTo props to vue-carousel which enables going to specified carousel item

Why is this PR needed

I tried to use urlHash as an alternative way. It moved to correct item when you go to backward. But it didn't point correct item when you pick forward item.
This is happening sometimes when it comes to complex combination of user interaction

tryed your pull request goTo funciton works fine but responsive settings isn't working


fix: context injection for newer version of koishi

Looks like the type error here was occurred by cordis v2, so we should keep this PR open until bug fixed.

Looks like the type error here was occurred by cordis v2, so we should keep this PR open until bug fixed.

Fixed by upgrading koishi to 4.8.5


Fix P521 point encoding disagreement with GnuPG

This change fixes nist p521 ecdh encryption errors with certain secret keys.
You can see the bug in action here: https://asciinema.org/a/36rc4x3rjd7u3ef43j8stam6h (1:30 recording, or you can watch from 1:00 onward to see the actual decryption uncertainty).
For some numbers p.byteLength() will be smaller than @mpi_coord_byte_size() and GnuPG does not handle this. The bignum encoded is still correct - you can decode it and get the exact same number - but the leading 0x00s are needed there.

Looks great, do you think it's possible to include a test that passes with this fix, but fails otherwise?

I need to find out where exactly gnupg is failing with the "checksum error" - what is checksummed and what kbpgp is doing differently so it passes.

Ah, if it's too big a deal, don't bother....

Can you also recompile the .js file as part of the PR?  Thanks! Then I'll go ahead and merge.

Done :)


SOCKS 5 proxy support?

Can i set up a global proxy/in-app proxy to access Instagram API?

Hi,
NewViaProxy. All requests will use proxy server (example http://:)

But socks5 contains login and password, where I can set them?

It's not implemented on current version of goinsta

Don't quote me on this, but something like this should work.
insta := goinsta.New(username, password) 		dialer, err := proxy.SOCKS5("tcp", "<IP_ADDRESS>:1337", nil, proxy.Direct) 		if err != nil { 			log.Fatal(err) 		} 		proxyTransport := &http.Transport{} 		proxyTransport.Dial = dialer.Dial 		insta.Transport = *proxyTransport 		if err := insta.Login(); err != nil { 			log.Fatal(err) 		}

Can you make a PR ?

Hi @ahmdrz , there is no need of PR, what @NickMarley proposes is to use the property Transport of the Instagram object to adjust our own Login implementation, I have tried that code already and is working fine.
Thakns a lot @NickMarley

Oh @alejoloaiza You're right. But I mean a way to implement it on goinsta. BTW Transport is good enough.


Add support for inrush current and long lead calculations

Already deployed at: https://fixing-factory.github.io/FuseRatingCalculator/
Haven't added anything for portable socket outlets as it's not clear to me how this should be implemented.

Also long lead isn't considered for 1mm^2 CSA as it doesn't affect the fuse ratings

Voltage options have also been added.
This also removes the margin of error constants that were used for current draw calculations previously.

Coming on very well!  I haven't been through all combinations but what I've seen looks OK.
I have one initial comment though: it shouldn't show the previous answer while you are entering new data.
A more basic matter is how we deal with "older" equipment.  The note 10.14.1 is not very helpful in that it doesn't say when the rules changed.  I wonder if it's possible for you to find that out with the aid of your library?  I presume it was not long before the 5th edition of Inspection and Testing ... came  out in 2020, and also that there would be a grace period for manufacturers to comply.

Thanks for the comments!

I have one initial comment though: it shouldn't show the previous answer while you are entering new data.
Yes I'll probably have the button change to a re-enter button after calculating. Clicking this button will clear out the form values (and the calculated results).

A more basic matter is how we deal with "older" equipment. The note 10.14.1 is not very helpful in that it doesn't say when the rules changed. I wonder if it's possible for you to find that out with the aid of your library? I presume it was not long before the 5th edition of Inspection and Testing ... came out in 2020, and also that there would be a grace period for manufacturers to comply.
Yes I have a copy of the 3rd edition from 2007 (which mentioned manufacturers recently standardising around 3 & 13 amp fuses, with 5 amps occasionally being used for IT equipment). Will send over the details on Discord.


Add probes to search [WIP/Do not merge]

Signed-off-by: Sherin Varughese<EMAIL_ADDRESS>

/do-not-merge


Retain the original object on the stack for producing the error message.

Fixes #61

Thanks for fixing this! :-)  And hey, unit tests too!


general: Update tokio to 0.3.0

Signed-off-by: Otavio Salvador<EMAIL_ADDRESS>

Pull Request Test Coverage Report for Build 310643654

0 of 0   changed or added relevant lines in 0 files are covered.
3 unchanged lines in 3 files lost coverage.
Overall coverage decreased (-1.9%) to 74.233%

Files with Coverage Reduction
New Missed Lines
%

src/async_support.rs
1
70.0%

src/error.rs
1
44.0%

src/lib.rs
1
70.83%

Totals

Change from base Build 256009148:
-1.9%

Covered Lines:
121

Relevant Lines:
163

💛  - Coveralls


Cargo extension for compiling Rust to MASM

Close #60
This PR is intended to be merged (when it's ready) after #58
This PR introduces a cargo extension in the cargo-miden crate, which supports the following commands:

miden compile - compiles the selected target to MASM
miden new - creates a new project from a template. The template is downloaded from a git repository.

@bobbinth Could you please create a new repo miden-project-template (or another name), for the template of the Miden project to be used by the cargo extension when creating a new project with cargo miden new command? I temporarily made https://github.com/greenhat/miden-project-template, but I cannot transfer it because github, for some reason, requires that I have a right to create a repo in the target organization. I'll copy the repo content ASAP. Thank you!

@bobbinth Could you please create a new repo miden-project-template (or another name), for the template of the Miden project to be used by the cargo extension when creating a new project with cargo miden new command?

What kind of projects would this be for? For example, if this is to create smart contracts (i.e., account code), it should probably be called miden-account-template, and then in the future we'd have also miden-note-template (or something like this).
One other question: do we need to create a separate repo per command? Or could we create one repo (e.g., miden-rust-templates) and then put all templates into that repo?

What kind of projects would this be for? For example, if this is to create smart contracts (i.e., account code), it should probably be called miden-account-template, and then in the future we'd have also miden-note-template (or something like this).

I think this is probably just for a simple Rust project template initially.

One other question: do we need to create a separate repo per command? Or could we create one repo (e.g., miden-rust-templates) and then put all templates into that repo?

We need a repo per template I believe, so if we have three project templates, that's three separate repos. I'm not sure if we can put all templates in a single repo or not, @greenhat would be able to say for sure.

What kind of projects would this be for? For example, if this is to create smart contracts (i.e., account code), it should probably be called miden-account-template, and then in the future we'd have also miden-note-template (or something like this).

I think this is probably just for a simple Rust project template initially.

Yes, so far, it's just compiling a lib target to the MASM module. No smart contract stuff yet. I assume we want to jump on account code right away and get back to dealing with generic Miden VM programs/libs later. So, I either evolve this template or create a new one for the account code.

One other question: do we need to create a separate repo per command? Or could we create one repo (e.g., miden-rust-templates) and then put all templates into that repo?

We need a repo per template I believe, so if we have three project templates, that's three separate repos. I'm not sure if we can put all templates in a single repo or not, @greenhat would be able to say for sure.

Good question! cargo-generate supports multiple templates in a single repo. And although initially, I wanted to have a single repo per template, I cannot find a good reason for it. It's not public facing, meaning no one will clone it, and the code cannot be built by cargo anyway. I think it makes sense to have a single repo for all templates. miden-rust-templates sounds good to me.

@greenhat - I've created rust-templates and you should have write access to it. Let me know if anything else is needed.

@bitwalker ready for review

@bitwalker I finished implementing all the review notes and it's ready for review. Please check the updated PR description for a summary.


Execution with progressbar (slower) vs execution w/o progressbar (faster)

DISCLAIMER: I am a python/programming noob :smile:
Description
I noticed a longer execution time when running the same code with progressbar vs. running w/o progressbar.
Especially the widget progressbar.Timer() more than doubles execution time in my case.
Is that normal? Is there a way to get more accurate results?
Code
You will find the code I used here: lesson_122_lists_del_vs_remove.py
Console output of iterative execution

Versions

Python version: 3.5.2 (v3.5.2:4def2a2901a5, Jun 25 2016, 22:18:55) [MSC v.1900 64 bit (AMD64)]
Python distribution/environment: CPython
Operating System: Windows 7 (64bit)
Package version: 3.12.0

With very simple loops such as this one the overhead can indeed be quite significant. As soon as you add a progressbar.Timer() the progress bar will have to fetch the system time for every update. Since you are executing this 2000000 times it will definitely have an impact.
I would recommend updating the progress bar less often, you won't notice the difference and the impact will be far smaller. It seems like this is something I should actually add as a feature, but for the time being.
If you modify your code to look something like this it will be far better:
widgets = [progressbar.Percentage(), progressbar.Bar(), progressbar.Timer()]
bar = progressbar.ProgressBar(widgets=widgets, max_value=range_count).start()
timer_start = time.time()
for i in range(range_count):
    values = [x for x in range(100)]
    del values[95]
    # Only update once for every 10000 values
    if i % 10000 == 0:
        bar.update(i)
bar.finish()
timer_stop = time.time()
print('\ndel - done in %i s' %(timer_stop - timer_start))

Many thanks for your suggestion. I will give it a try.
If you like, you can also try this file: progressbar_examples.py. It has almost all your example bars combined with my del and remove() examples. (I have not implemented your suggestion there yet)

I've just created a new version which is a lot lighter for these type of use-cases. Can you install the latest development version?
pip install -e 'git+git@github.com:WoLpH/python-progressbar.git'

Hi WoLpH, I've had a similar issue of too frequent updates. Tried 2c9220433c175ebf581a7992653846d2f5298d52 and it's quite better. Thanks.
Runtime (mm:ss):

No progressbar: 1:18
3.12.0: 1:44
develop: 1:22

I'm using FormatCustomText, Timer and AdaptiveTransferSpeed. No problems with develop version.

Good to hear :)
In these extreme cases I would still recommend adding some rate limiting on your side of the code. The regular progressbar needs to do quite a few sanity checks which can be omitted in many cases. These take time and can easily be skipped for your purposes.
Simply replacing a regular bar with a slightly filtered one can help a lot:
import progressbar
from datetime import datetime

N = 10000000

# Regular bar without filtering
bar = progressbar.ProgressBar(max_value=N).start()
begin = datetime.now()
for i in range(N):
    bar.update(i)
bar.finish()

print 'Duration: %s' % (datetime.now() - begin)

# Bar with filtering
bar = progressbar.ProgressBar(max_value=N).start()
begin = datetime.now()
for i in range(N):
    if i % 100000 == 0:  # Only update once every 10000 values
        bar.update(i)
bar.finish()

print 'Duration: %s' % (datetime.now() - begin)

Results:
100% (10000000 of 10000000) |############################| Elapsed Time: 0:00:06 Time: 0:00:06
Duration: 0:00:06.821132
100% (10000000 of 10000000) |############################| Elapsed Time: 0:00:01 Time: 0:00:01
Duration: 0:00:01.184203

Sorry for late feedback :(
I pip installed latest version and tried your suggestion (less frequent updates) - greate solution!
Thanks a lot!


homework

python, numpy, pandas homework

Good Job!!!   @fargoing

@fargoing
你需要update branch 一下，不然 actions 工作流会认为你有不止一个修改过的作业文件。https://github.com/iphysresearch/GWData-Bootcamp/pull/137#issuecomment-1845666444

老师，是需要我更新下本地的branch 吗？

Good Job!!!   @fargoing
Python homework:

Total questions: 108
Correct answers: 106
Score: 98.00%

Numpy homework:

Total questions: 10
Correct answers: 10
Score: 100.00%

Pandas homework:

Total questions: 12
Correct answers: 11
Score: 91.00%

老师，通过看视频，我明白了，已经更新完再重新pull request了

Good Job!!!   @fargoing
Python homework:

Total questions: 108
Correct answers: 106
Score: 98.00%

Numpy homework:

Total questions: 10
Correct answers: 10
Score: 100.00%

Pandas homework:

Total questions: 12
Correct answers: 12
Score: 100.00%

Good Job!!!   @fargoing
Python homework:

Total questions: 108
Correct answers: 107
Score: 99.00%

Numpy homework:

Total questions: 10
Correct answers: 10
Score: 100.00%

Pandas homework:

Total questions: 12
Correct answers: 12
Score: 100.00%

Good Job!!!   @fargoing
Python homework:

Total questions: 108
Correct answers: 108
Score: 100.00%

Numpy homework:

Total questions: 10
Correct answers: 10
Score: 100.00%

Pandas homework:

Total questions: 12
Correct answers: 12
Score: 100.00%

Good Job!!!   @fargoing
Python homework:

Total questions: 108
Correct answers: 108
Score: 100.00%

Numpy homework:

Total questions: 10
Correct answers: 10
Score: 100.00%

Pandas homework:

Total questions: 12
Correct answers: 12
Score: 100.00%

Good Job!!!   @fargoing
Python homework:

Total questions: 108
Correct answers: 108
Score: 100.00%

Numpy homework:

Total questions: 10
Correct answers: 10
Score: 100.00%

Pandas homework:

Total questions: 12
Correct answers: 12
Score: 100.00%


Running on Colab?

Hi, is there any way to set this up via Colab but not using Anaconda (which unfortunately doesn't seem to work on Colab?)
E.g. when I try:
!conda env create -f environment.yml

I get this error:
/bin/bash: conda: command not found

If I try to install conda with:
!wget -c https://repo.continuum.io/archive/Anaconda3-5.1.0-Linux-x86_64.sh
!chmod +x Anaconda3-5.1.0-Linux-x86_64.sh
!bash ./Anaconda3-5.1.0-Linux-x86_64.sh -b -f -p /usr/local

I get this warning after a succsesful installation:
WARNING:
    You currently have a PYTHONPATH environment variable set. This may cause
    unexpected behavior when running the Python interpreter in Anaconda3.
    For best results, please verify that your PYTHONPATH only points to
    directories of packages that are compatible with the Python interpreter
    in Anaconda3: /usr/local

And then when i try to run the same line again, I get this error:

SpecNotFound: Can't process without a name

And if I run:
!conda activate elpips

I get this error:
CommandNotFoundError: Your shell has not been properly configured to use 'conda activate'.
If your shell is Bash or a Bourne variant, enable conda for the current user with

    $ echo ". /usr/local/etc/profile.d/conda.sh" >> ~/.bashrc

or, for all users, enable conda with

    $ sudo ln -s /usr/local/etc/profile.d/conda.sh /etc/profile.d/conda.sh

The options above will permanently enable the 'conda' command, but they do NOT
put conda's base (root) environment on PATH.  To do so, run

    $ conda activate

in your terminal, or to put the base environment on PATH permanently, run

    $ echo "conda activate" >> ~/.bashrc

Previous to conda 4.4, the recommended way to activate conda was to modify PATH in
your ~/.bashrc file.  You should manually remove the line that looks like

    export PATH="/usr/local/bin:$PATH"

^^^ The above line should NO LONGER be in your ~/.bashrc file! ^^^

When I run:
!sudo ln -s /usr/local/etc/profile.d/conda.sh /etc/profile.d/conda.sh

I get the same error as above.

I tried opening the environment.yml file, and then downloading the dependencies with:
!pip install numpy==1.16.2
!pip install tensorflow-gpu==1.12.0
!pip install imageio==2.5.0
!pip install scipy==1.2.1
!pip install scikit-image==0.15.0

instead.
When I then try running the sample code:
import elpips
metric = elpips.Metric(elpips.elpips_vgg(batch_size=1))
tf_distance = metric.forward(tf_image1, tf_image2)
distance = sess.run(tf_distance)

I get this error:
---------------------------------------------------------------------------
AttributeError                            Traceback (most recent call last)
<ipython-input-37-dd35e7e5a8d5> in <module>()
      1 import elpips
----> 2 metric = elpips.Metric(elpips.elpips_vgg(batch_size=1))
      3 tf_distance = metric.forward(tf_image1, tf_image2)
      4 distance = sess.run(tf_distance)

AttributeError: module 'elpips' has no attribute 'Metric'


Add axios and radium to package.json

I assume axios and radium need to be added to package.json, based on the errors I got with npm run dev
Here it is as a PR that can be merged with highlighter-module if that helps get the branch building.

this should be done in @stevenelleman's pr as that is where he's adding those modules.

@btburton42 correct. That is why this PR is not into master, but into highlighter-module, to save him the steps I already did. :smile:

Aha yeah great. Carry on  then 😁
On Thu, Sep 22, 2016, 12:17 Norman Gilmore<EMAIL_ADDRESS>wrote:

@btburton42 https://github.com/btburton42 correct. That is why this PR
is not into master, but into highlighter-module, to save him the steps I
already did. 😄
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/Goodly/TextThresher/pull/16#issuecomment-249001471,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABACofYXu-0t0Lf3xb9zzv_PXhiwGfFoks5qstRmgaJpZM4KEO4I
.

--
Tyler Burton
<EMAIL_ADDRESS>


[Material] Create a Navigation Rail component and theme

Description
This PR introduces a new component in the Material library: Navigation Rail.
Design spec: https://material.io/components/navigation-rail/
labelType=none

labelType=all

labelType=selected

Large text scale labelType=selected and labelType=all

Custom extended

Related Issues
closes #49453
Tests
I added the following tests:

34 tests in navigation_rail_test.dart
6 tests in navigation_rail_theme_test.dart

TODO
Checklist
Before you create this PR confirm that it meets all requirements listed below by checking the relevant checkboxes ([x]). This will ensure a smooth and quick review process.

[x] I read the Contributor Guide and followed the process outlined there for submitting PRs.
[x] I signed the CLA.
[x] I read and followed the Flutter Style Guide, including Features we expect every widget to implement.
[x] I read the Tree Hygiene wiki page, which explains my responsibilities.
[x] I updated/added relevant documentation (doc comments with ///).
[x] All existing and new tests are passing.
[x] The analyzer (flutter analyze --flutter-repo) does not report any problems on my PR.
[x] I am willing to follow-up on review comments in a timely manner.

Breaking Change
Did any tests fail when you ran them? Please read Handling breaking changes.

[x] No, no existing tests failed, so this is not a breaking change.
[ ] Yes, this is a breaking change. If not, delete the remainder of this section.

[ ] I wrote a design doc: https://flutter.dev/go/template Replace this with a link to your design doc's short link
[ ] I got input from the developer relations team, specifically from: Replace with the names of who gave advice
[ ] I wrote a migration guide: Replace with a link to your migration guide

Looks great 😎🚀

This is great! Thank you for making this!!
Show this alternate version become a different component?

@preconception it should be possible to accomplish the rail + backdrop with this component

@clocksmith gentle ping.
Is this change planned to be merged soon? This would be very useful for an application my team is working on.

@clocksmith gentle ping.
Is this change planned to be merged soon? This would be very useful for an application my team is working on.

I plan to merge this when the tree is green. It is nice to hear it will be useful for you and your team!

Thanks for this 😎🚀💪🏻

How do we use this? 😂

How could I remove the ripple effect on the selected item when I click?
I tried to wrap the NavigationRail into the Theme widget in this way, but it didn't work and I still can see the ripple:
Theme(
  data: ThemeData(
    splashColor: Colors.transparent,
    highlightColor: Colors.transparent,
  ),
  child: NavigationRail(),
);

Thanks in advance!


Binding to property on parent viewmodel

I feel like I'm missing something simple here.
I have a template overview that presents a list of items. At the top of overview I have a a sub-template filter that contains various fields for filtering the list. The filter template has it's own viewmodel that handles various states internal to that template.
How can I update some property on the parent overview's viewmodel each time I, for instance, write something in the search field inside the filter template?
I mean, it's easy to update a property on filter's own viewmodel with data-bind="value: filter", but how can I make it propagate to the parent? What confuses me, I think, is that retrieving a value is easy, while putting one is not.
Thanks!

The pattern I use is:
<template name="overview">
  {{> filter context}}
</template>

<template name="filter">
  <input data-bind="value: text">
</template>

Template.overview.viewmodel({
  text: '',
  context: function() {
    return {
      text: this.text // Pass by reference
    }
  }
}, 'context');

Template.filter.viewmodel(function(context){
  // Add context properties to this view model
  // in this case 'text'
  return context;
});

But now that you mention it, you should be able to simply do:
<template name="overview">
  {{> filter }}
</template>

<template name="filter">
  <input data-bind="value: parent.text">
</template>

Template.overview.viewmodel({
  text: ''
});

Template.filter.viewmodel({
});

I'll update ViewModel.
I'd be careful not to over use it though. Seems to me that if the filter view model is responsible for the filters then whomever needs the filters should talk to the filter view model for that data. Something like ViewModel.byId("filters").text()

btw, check out this part of the documentation: http://viewmodel.meteor.com/#dataContextBk

Update to 1.9.0, you're now able to do the following:
<template name="overview">
  {{> filter }}
</template>

<template name="filter">
  <input data-bind="value: parent.text">
</template>

Template.overview.viewmodel({
  text: ''
});

Template.filter.viewmodel({
});

In regard to the first pattern you mention – I was actually considering this, but I thought that it wouldn't work, since inside context, this.text is a function – and I still haven't gotten my head around how a function can be used to write data to the viewmodel.
Like, when I inspect the scope inside some function on the viewmodel that is called by a setter such as data-bind="value: text">, the actual data is nowhere to be seen, neither as a parameter or on this.

The addition of parent in 1.9.0 is a brilliant preliminary move – thanks so much.
I'll continue to explore the patterns and anti-patterns here, and writing directly to some random overlying scope may easily prove to be a bad idea. On the other hand, grabbing a viewmodel by id doesn't seem right, either,
I think we'll end up with a nice solution, though. You answer in the other issue could be it.
Thanks again for the great work!

inside context, this.text is a function – and I still haven't gotten my head around how a function can be used to write data to the viewmodel directly from the template.

It works because every member of a view model is function. When you declare a view model you use plain properties (text: '') but to get a value you use .text() and to set a value you use .text('ABC'). So when you pass the context you're passing an object with one function that is actually a reference to the text function that can be used to set or get the value on the parent.
Let me know if you need more help with this because it's at the core of how ViewModel works.

when I inspect the scope inside some function on the viewmodel that is called by a setter such as data-bind="value: text">, the actual data is nowhere to be seen, neither as a parameter or on this.

I need an example because I don't follow =/

The addition of parent in 1.9.0 is a brilliant preliminary move – thanks so much.

.parent() isn't new. The change I made isn't specific to parent. I made it so you can bind to sub properties. In your case it just so happens that you're binding to a sub property of parent.

grabbing a viewmodel by id doesn't seem right

Check out "A tree of templates" under "Passing Data Contexts" (http://viewmodel.meteor.com/#dataContextBk)

Check out "A tree of templates" under "Passing Data Contexts" (http://viewmodel.meteor.com/#dataContextBk)

I gave the section a second review, when you posted it before, but I am still confused in regard to viewmodel properties being functions. I think I can explain why:
From what you write – .text() getting the value and .text(value) setting it, which is also clear from the docs – I would expect to be able to do something like this:
<input type="text" data-bind="value: text">

.viewmodel({
  text: function (new_value) {
    // When used as setter, new_value would be the new value from the input field,
    // otherwise return the old value
    if (new_value) some_var_in_scope = new_value;
    else return some_var_in_scope;
  }
});

However, the function isn't called with new_value when I type something into the input field. Neither does the new value exist as a property of this.
Do you see what I mean?

It would be awesome if we could end up with a clear answer in regard to my overview/filter example (continuing the discussion from the other issue https://github.com/ManuelDeLeon/viewmodel/issues/81#issuecomment-129607658).
The central question is how to best use data from a child viewmodel in the parent. You've given an example of how to bind the element inside the sub-template/child viewmodel directly to the parent viewmodel, but I can see why this direction in the coupling is not optimal:
One should be able to insert a template anywhere and have it work as a self-contained unit without it knowing anything about of the overlying scope/viewmodel – and on the other hand, you always deliberately include a sub-template inside another and can thus guarantee the presence of it's viewmodel.
This means that the correct way of getting data out of the embedded sub-template's viewmodel is through this.children().list()[<index>].prop() (preferably without the .list() part).
What throws me a bit about this method is that if I happen to switch around the order of the embedded templates inside the parent, <index> no longer corresponds correctly and must be updated.
A better way would be to use the name that is already an optional feature of any viewmodel as a selector inside this.children(), like this:
Template.myFilter.viewmodel("myFilter", {
  text: "",
  caseSensitive: false
});

Template.myOverview.viewmodel({
  currentFilter: function () {
    return this.children("myFilter")[0];  // There could be more than one...
  }
});

Instead of children() returning an array, even when it is passed an id, it might be sane to make this part of the API match ViewModel.byId().
In practice, this means that this.children(id) should return the first child with id.
If the same sub-template is used more than once, it is the developer's responsibility to make sure their viewmodels get a unique id based on each data context.

I'd be happy to create pull requests for the features we are talking about.

I'd be happy to create a pull requests for a children() function that filters by id.

I have to think about this one because grabbing a child by it's id is equivalent to ViewModel.byId("childId")

(scheduled for v2)

I'm sorry, but I just realized that I still don't understand the way properties are converted to functions, especially in regard to the value binding.
The question is:
How come, if I bind an input field to a property that is a function, that function isn't called with the new value when the input field changes?

How come, if I bind an input field to a property that is a function, that function isn't called with the new value when the input field changes?

That should work for you. Here's an example:
<template name="info">
  Name: <input data-bind="value: name">
</template>

Session.setDefault("name", '');
Template.info.viewmodel({
  name: function(newName){
    if (newName) {
      Session.set("name", newName);
    } else {
      return Session.get("name");
    }
  }
});

In this example I'm almost replicating what ViewModel does for properties (ViewModel doesn't use session variables for this).

All of a sudden that totally works. I wonder what I did wrong when I tried it the other times... But that's awesome – makes much more sense to me.

Can't this be achieved w\o Session? I thought vm.methods were naturally reactive sources...


don't attempt to onboard at services init

wip testing locally

hard to tell, because this is dependent on the service worker being killed after a timeout, and some other unknown condition that restarts it

LGTM, I think — does this mean we're no longer going to automatically open the options page? (Does Chrome open it automatically the first time the extension is installed?)

it seems it is opened automatically and also the popup open would trigger it, in most cases.


Save Files in Own directory in Android Platform

Feature Request:
How to save the Application (Images & Videos) in external storage and if not to save in internal storage with Own Directory with Android platform?
Version Number of Plugin: 2.6.0
Device Tested On: Samsung S5, Moto e  (2nd gen),Lenovo a6000 plus

You would have to copy them out yourself. This is out of the scope of the plugin and don't plan to add in currently.


Skip JSON files when extracting full text

https://jira.lib.unc.edu/browse/BXC-2963

This shouldn't be needed.


Notification delivered into device 2 or 3 times (duplicated notifications)

Hey guys, does anybody else experience with the same issue? Sometimes push notifications is duplicated two times or even three times. I can confirm that the push notification has been sent just just once from our system.
This is how the actual sending looks like:
var sendNotification = (env, notification, token, shouldBeLogged) => {
  if (token && !Array.isArray(token)) {
    token = [token]
  }

  return new Promise((resolve, reject) => {
    var t = (notification && notification.payload && notification.payload.body) ? notification.payload.body : ''
    console.log('iOS: Pushing notification to device', token, t)

    env
    .send(notification, token)
    .then((response) => {
      var sent = response.sent || []
      var failed = response.failed || []
      ....
     })

     resolve()
  })
}
....

Env is actual connection which is created at the boot of microservice and maintained since that. We have 2 connections created - one is for prod and second for dev push notifications.
And generally, how this sending works... it is microservice dedicated to sending of push notifications. Push notifications are distributed via rabbit and collected in this microservice. Only one task can be processing at the same time. However, one task can be sending one push notification to many users (that why "resolve" is not in "then" callback). Each user has got different notification object because different badge count etc.
It looks like problem hidden somewhere in version of this lib or on apple side.
Any ideas? Would be highly appreciated.
Jiri
PS. Version of apn lib is 2.1.0

I'm not sure if this is what you are running into but I'll share it with you just in case.
Note: This happened to me using a different library.
In testing I would try to send a notification to 3 devices but the first device would get the notification 3 times.  I was iterating through an array of device tokens using async.each.  Ultimately, I changed async.each for async.eachLimit only allowing for 1 async operation at a time and that resolved the issue I was having.

Well, it is not really solution...

@jsifalda Is this still an issue for you?
I've never seen this. Could it be an error in your code?

Yes, we have not figured out what is causing it... probably apple's bug because it common for other apps to see duplicated push notifications as well... especially for those who push a lot of pns (eg. live sports apps)


Add more debugging data for bad http responses

Closes #636
No new tests are added, because as far as I can tell, the relevant method here has no go tests.
I have tested this on my node, and it returns error as expected:
error in json rpc client, with http response metadata: (Status: 429 Too Many Requests, Protocol HTTP/1.1). error unmarshalling: invalid character '<' looking for beginning of value

Would appreciate this getting backported to the various release lines :pray:
PR checklist

[ ] Tests written/updated
[x] Changelog entry added in .changelog (we use unclog to manage our changelog)
[ ] Updated relevant documentation (docs/ or spec/) and code comments

Oh @ValarDragon, could you please update with the latest changes from main, or allow us to do so to your branch?


fix: dir package isolates read/write path

config add EnvelopeType argument.
dir package optimize: allow user define WriteLevel = UserLevel | SystemLevel.
add ConfigForWrite(), TrustStoreForWrite(), TrustPolicyForWrite() func to get writable path.
refector config pacakge: receive a path argument when load and save file to allow user to overwrite the default directory structure.

Test: added unit test.
Resolves #144
Signed-off-by: Junjie Gao<EMAIL_ADDRESS>

Codecov Report

Merging #137 (9b2e591) into main (76d4ca4) will increase coverage by 0.16%.
The diff coverage is 86.20%.

@@            Coverage Diff             @@
##             main     #137      +/-   ##
==========================================
+ Coverage   72.66%   72.83%   +0.16%
==========================================
  Files          36       36
  Lines        2491     2536      +45
==========================================
+ Hits         1810     1847      +37
- Misses        544      550       +6
- Partials      137      139       +2

Impacted Files
Coverage Δ

config/base.go
70.00% <ø> (-3.92%)
:arrow_down:

config/config.go
74.07% <73.33%> (-8.28%)
:arrow_down:

config/keys.go
72.00% <73.33%> (-8.00%)
:arrow_down:

dir/base.go
92.18% <100.00%> (+1.27%)
:arrow_up:

dir/path.go
97.01% <100.00%> (+1.18%)
:arrow_up:

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

Looks like we can move the target of this PR to the dev-rc.1 branch for now?

Looks like we can move the target of this PR to the dev-rc.1 branch for now?

This PR has no dependent on COSE refactor, so it can be merged to main branch.

Added some feedback on overall structure of config module. It looks like the UnionDirFS abstraction is making it complex to add system level and user level read/write permutations, we should rethink about it .
Also, depending on decision we make in notaryproject/notation#203, we might need to make significant changes in this PR.

Refactor it again. Now, UnionDirFS is only used to GetPath() in both system and user directory. If user specify the System/User level directory, return the path directly.

We can close/update this PR and update/open new one for only supporting user level config
https://github.com/notaryproject/notation/issues/203#issuecomment-1281663886


[improve][docs] Added example to PIP process

Motivation
Some people didn't understand the "closing the vote" on step 8
Modifications
Added an example that roughly describes what really goes on.
Verifying this change

[x] Make sure that the change passes the CI checks.

(Please pick either of the following options)
This change is a trivial rework / code cleanup without any test coverage.
Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

[ ] Dependencies (add or upgrade a dependency)
[ ] The public API
[ ] The schema
[ ] The default values of configurations
[ ] The threading model
[ ] The binary protocol
[ ] The REST endpoints
[ ] The admin CLI options
[ ] The metrics
[ ] Anything that affects deployment

Documentation

[x] doc
[ ] doc-required
[ ] doc-not-needed
[ ] doc-complete

I wonder if we can move this story into a separate page and paragraphize it. Then we link to the new page.
At a first glance it's quite longthy and if I were a new PIP author, I may not read it at all.

Take a look now @tisonkun


GEOmetrics Need simple run test for

We don't keep track of https://github.com/NVIDIAGameWorks/kaolin/tree/master/examples/ImageRecon/GEOmetrics proper behavior in the CI.
We need to add a quick tests such as in https://github.com/NVIDIAGameWorks/kaolin/blob/master/tests/examples/run/test_classification.sh
And then add it's execution as in:
https://github.com/NVIDIAGameWorks/kaolin/blob/master/.gitlab-ci.yml#L20
(you can also add in .drone.yml if the example doesn't involve a dataset)
The arguments used should test different branching (gpu and cpu if necessary) but make the test run as short as possible (smallest categories of the dataset, fewest numbers of epochs) would check that the example run (we don't verify final performance).

Closing as this is related to v0.1


Add Immunization profile page

Name of feature to enhance

[ ] Add a View more to access the Immunization  profile page when you click the overflow menu when you are on the profile page
[ ] On click View more, show the Vaccination profile page

Description of feature
The page should have

Name
Gender
Age
Vaccine
Provider  - Harcoded for now
Show QR code  - For the short term just Toast  - "Not yet Generated"

Screen shots

Added assets here @ellykits
Immune
Color code  - #38B500
Image

Not Immune
Color code  - #E8B600
Image

SVG Images - https://drive.google.com/drive/folders/1oIizaXDU_lfvZ9wNy9DE0VlnynrpJEZg?usp=sharing


Add RHEL 9.4 to certified distributions

RHEL 9.2 and 9.4 share openssl fips providers and thus should be equivalent

@rhmdnd We just moved 4.16 to use 9.4 repos which aligns with RHCOS and avoids some CVE alerts ART was running into on some builds. I will go ahead and label this to merge to unblock 4.16 builds, we can discuss Monday if necessary.


fix: consistent line number styling

Description
This PR adds explicit styles for line numbers to our code blocks, as the default styling provided by the syntax highlighter doesn't seem to always be consistent across various code examples. You can check out the looms below to see what the issue looks like right now.
I just grabbed the styles as they were rendered on the page in one of the examples that looked "correct," but we can modify them to have a bit more left margin etc. if desired.
Example endpoint that I show in the videos: https://docs-bs9b7rmx6-knocklabs.vercel.app/reference#get-message-activities
Videos
https://www.loom.com/share/fe188131c51345f7a34f091d6aba20eb
https://www.loom.com/share/75f5a7e8bc7442519bfbbed251ae7980

Great improvement, Matt. Nice attention to detail.


Switch from unittest -> pytest (#1)

First pr containing changes to swtich from unittest -> pytest.
Splitting PRs since it contains a lot of updated lines

Looks ok to me :shipit:


about the way of initializing weight in FPN

I wonder why using different initializing function in FPN and in BBOX_HEAD.
I intend to train a normal faster_rcnn model.
In FPN(mmdet/necks/fpn.py), the way of initializing weight is using mmcv.cnn.xavier_init.

However in BBOX_HEAD, the way of initializing weight is using torch.nn.init.xavier_uniform_.

this difference in initializing weight confuse me a lot because when I do baseline faster-rcnn experiments, it seems that choosing which initializing method can influence results a lot.

I did two experiments to see how initilizing method can influence the results. One is using torch.nn.init.xavier_uniform_, other one is using mmcv.cnn.xavier.

For each initializing method I run experiments 5 times and report its highest, lowets and mean results.
For mmcv.cnn.xavier

For torch.nn.xavier_init

There is a problem with your writing, xavier_init('uniform') should be the same as nn.init.xavier_uniform_  not nn.init.xavier_normal_

There is a problem with your writing, xavier_init('uniform') should be the same as nn.init.xavier_uniform_ not nn.init.xavier_normal_

sorry my bad, according to my experiments, In my problem setting, using xavier_normal init can lead to a higher result of ~5-10% compared to xavier_uniform, both in baseline and my method.
This problem may only occurs in mmdetection=2.6.0 and mmcv==1.1.5


[BACKPORT] logger: handle 'char' type in messages

Backport of https://github.com/PX4/Firmware/pull/12397 to stable

I don't see this commit in the stable branch now. What am I missing?

Shouldn't stable be a tag and release/v1.9 the branch?

Ok, it is actually merged to release/v1.9 so that looks fine.


Add missing demographics for all geos for CDC data

Closes #841
Note that the CDC data generated by this change is already in dev. Once #996 gets in, everything should work - we can push #996 to prod and put the new CDC data generated by this change into prod after.

Looks great!


Cyberpunk2077 at kodadot?

https://kodadot.xyz/ahp/collection/40/activity
https://github.com/kodadot/nft-gallery/assets/5887929/3ea62937-3717-4b35-9f27-1256f546104e

wait they are replicating
https://github.com/kodadot/nft-gallery/assets/5887929/812b271c-9847-47c5-ae07-d09dee1c963b

https://github.com/kodadot/nft-gallery/assets/5887929/b21245e1-aec7-45c0-b2df-6758d21ad0b0
vs

Cc @preschian

Oh my.. don't open console, infinite glitch

Oh my.. don't open console, infinite glitch

@yangwao we should get "Oh my console" tshirts


#782 compiler interprets 08 as octal, which is invalid

Just for the record: The compiler worked as required by the standard, the code was wrong.
integer-literal:
    decimal-literal integer-suffixopt
    octal-literal integer-suffixopt
    hexadecimal-literal integer-suffixopt
decimal-literal:
    nonzero-digit
    decimal-literal digit
octal-literal:
    0                           <-----
    octal-literal octal-digit


Generated MS search lacks body_is_regex=1

What problem has occurred? What issues has it caused?
When you create a PR from chat, SmokeDetector follows up with search results after a while. However, the generated search fails to specify that the search is for a regular expression. Thus e.g. https://github.com/Charcoal-SE/SmokeDetector/pull/10227 has a search which could never work.
(It didn't work anyway for other reasons, but without the "regex" check box, it couldn't have.)
What would you like to happen/not happen?
The generated search should have the regex box ticked. That is,
MS search [here](https://metasmoke.erwaysoftware.com/search?utf8=%E2%9C%93&body=85275+87805%28%3F%23NO+NorAm%29)

should be
MS search [here](https://metasmoke.erwaysoftware.com/search?utf8=%E2%9C%93&body_is_regex=1&body=85275+87805%28%3F%23NO+NorAm%29)

[field]_is_regex already gets added to website, keyword, and username watches/blacklists in gitmanager.py. Number watches/blacklists are the only exception. How common are comments for number blacklists? Would a hard-coded exception for (?# NO NorAm) be enough?

Maybe we could just strip comments from number blacklists entirely. Something like item_to_blacklist = regex.sub("\(\?#.*\)", "", item_to_blacklist)?

That regex is incorrect and will, potentially, strip things other than just comments. Please use the already existing regex to strip such comments. Actually searching for something that approximates what the phone number code does is substantially more involved than just stripping the comment and searching for the number. An approximation that's reasonably easy to code would be to use the same strategy as is used with the number search bookmarklets. Those don't attempt to handle potential obfuscations within the text. However, they do try to get at least some of those by also looking in the why data for the number, but the number showing up in the why data requires that it's already watched or blacklisted.


replacing quotes with backticks

replacing the "" mark with backticks`` so environment variables will be loaded.

Can we merge this? Just spent an hour tracking down this bug... :-(

Can we merge this? Just spent an hour tracking down this bug... :-(

I just came here to see if there is a PR for this, I found this issue too.


Copy more doc comments to JS/TS files, unescape comments

Closes https://github.com/rustwasm/wasm-bindgen/issues/2053
Closes https://github.com/rustwasm/wasm-bindgen/issues/2052
Unescapes comments. Looks like it's coming from proc-macro2, it returns a quoted + escaped string. I couldn't find an unescape function so I had to write it myself.
Copies more comments from rust to js/ts files. I think all comments are copied now.

Thanks!


can't see emojis & I can't send photos

Hi, I can't see the emojis  & I can't see photos... I tried the older version but no way. I don't know what else I can't do. I can see the messages and send them but I'm limited.
Thanks a lot for your help!!

your wolcome