Support for angular-upgrade

Simple question: does it work with angular-upgrade (that means: with angular 2 apps that are being run with @angular/upgrade UpgradeAdapter ?
Doesn't work for me at this moment, but I don't know if it's a fault on my side, or it's just not supported?

@jtomaszewski at this moment we just didn't look into supporting this use case. However, we will probably end-up looking into supporting UpgradeAdapter in the near future.
Let's keep this issue open and I will keep you in the loop here once we have something more concrete.

Yeah, I'd be happy to help. At this moment I can't even access my components from the browser's console (f.e. by ng.probe($0).components).
I wonder if is it the case for all the angular-upgrade apps, or just my problem?

hey @jtomaszewski it would be definitely possible for you to help. I would love to accept a PR against a clearly defined github issue on this.
You can start by reading this, after that if you need help to get started with the code and how to debug Auguryt, you can reach to me on Augury slack and I can put you in touch with one of our devs to get you up to speed on all of that.
We are in the process of updating the documentation this and next week, but it's a but out of date currently.

@jtomaszewski ng.probe works for me on individual component root nodes but like you, augury does not.

Yeah, I discovered recently it works if you target a ng2 component and then use ng.probe($0).componentInstance or ng.probe($0).context if it's a child.
So it's not that bad, we would just need to find a way to "grab all existing ng2 components" and put them in Augury.

@jtomaszewski i've changed the title of this issue to reflect this as a feature that we will be working on. Let us know if you still want to pick it up yourself.

Note that Angular 2.2.0-rc.0 now includes a new static version of @angular/upgrade which will be a preferred version. The old one stays in the library as-is but since it doesn't work with AOT and the static one works both with JIT & AOT modes, people should generally prefer the latter.

Tested with Angular 2.2.0 using a Angular 1.5 app using UpgradeAdaptor, variable ng is not available. Opened a upstream ticket on Angular: https://github.com/angular/angular/issues/12873

It seems Augury works fine if you use the new static upgrade adapter. See the upgrade guide for more info.

Waiting for issue to be resolved by Google for AOT mode.

We can use this app: https://github.com/vsavkin/ng1ng2router

Is there any update on this? Augury doesn't seem to work for me even with the static upgrade adapter. My bootstrap code is:
`import { platformBrowserDynamic } from '@angular/platform-browser-dynamic';
import { UpgradeModule } from '@angular/upgrade/static';
import { AppModule } from './app.module';
platformBrowserDynamic().bootstrapModule(AppModule).then(platformRef => {
const upgrade = platformRef.injector.get(UpgradeModule) as UpgradeModule;
upgrade.bootstrap(document.body, ['myapp'], {strictDi: true});
});
`

@mattwilson1024 Can you share an example of your project so I can look at your case specifically?
My first reaction is that this might prove too sticky for Augury to help with, but it's hard to tell what people would like, or are expecting, to work. If you can share a repo with me I will use it as the model and validate a potential solution.

@stevenkampen I've created an example hybrid app which demonstrates my setup here: https://github.com/mattwilson1024/angular-hybrid
This is a hybrid app consisting of an AngularJS page with downgraded Angular components used within. There is a little information about the components in README.md
See screenshot 1, screenshot 2 and description of the Augury issue
It would be great to be able to use Augury to inspect any Angular 4 components on the page (e.g. view their inputs and outputs). In this example, that would be CharacterListComponent and CharacterDetailComponent.
Thanks and I hope this helps

@mattwilson1024 My thinking is that that use case would be a little far from Augury's purview. At least I think our support for Angular Upgrade should start with supporting Angular (2+) applications that contain upgraded AngularJS components (that's my main concern right now).
@igor-ka @sumitarora What are your thoughts on this? I'm thinking we'd have no way to parse the application to resolve Angular 2+ components (or building something would mean essentially adding support for AngularJS). Maybe you guys have more insight because of your experience with Batarangle.

@stevenkampen I think the @mattwilson1024 use case is quite common. A lot of projects are already built in AngularJS, and adding downgraded Angular components is a common way to extend the app with new functionality.
In a number of cases, it's the first step to migration, but also, there might be some apps that will never be completely migrated, but extended with Angular.
It would be nice when augury would be usable in those cases.

So as I understand there is no plan to support @mattwilson1024's use case?

It's a shame this isn't being supported - as @SanderElias said I imagine this approach for migrating is fairly common especially for large apps like the one I am working on where migration is likely to be quite a long process.
I'd be interested to hear if anybody comes up with any workarounds or finds alternative tools that can be used in this scenario.

@mattwilson1024 and @th0r supporting this use case would mean essentially supporting AngularJS in addition to Angular. This would be a relatively large effort to achieve as it would mean that Augury would have to support both (quite different) frameworks, and add a lot of complexity to the codebase as a result.
At this point in time, we would like to focus our resources on making Augury a great tool to use with Angular 2+.
We might revisit this later and in the meantime, if the solution to this is simpler than we think, we would be more than happy to accept PRs and collaborate with anyone in the community to implement this functionality.

At this point in time, we would like to focus our resources on making Augury a great tool to use with Angular 2+.

While that makes sense for you and other contributors to augury @igor-ka, it does undermine the larger Angular project's contention that "there is an upgrade path from angularjs to angular." I mean, upgrading an angularjs app to angular is the obvious use case for the upgrade module.  Upgrading is hard enough; doing it without tools is a terrible experience.
So I humbly request that you and your fellow contributors run this decision past the folks in the larger angular project. If the decision is still "no", please talk to them about changing the messaging around upgrades. It should change from "You can upgrade angularJS apps" to "Avoid upgrading angularJS apps."
thanks

Plus one on this


added try block around the checkbox identifier.

Added a second string identifier as it changed randomly. (even tho no
external keyboard was connected at the time…)
The script was working fine for a while beforehand. Really left me wondering
what happened after debugging.

How funny! Looks good to me though - thanks for the contribution @cedric-romain !

Thank you too! That script came just in time to fill a need, that coming from a thinkpad, just was just created with switching to my new M1 Mac :-)
And also, I've been able to assign the script to Fn+Escape using BetterTouchTool. So this feels right at home for me.


Possible to order an embedded list via the Admin GUI?

I have an embedded list that I would like to sort the order of the items. I noticed that I might be able to call order(number|null) on the values, but I'm not sure.
Is there a way to do ordering via ng-admin?
Thanks!

"Order" function is used to order the position of the collection in the dashbaord default page (this function is not used to sort/order the data inside the collection).

@sam2x yea on further inspection it seemed that way. So I guess I'm asking about a new feature it seems.

@jontonsoup: I don't understand. What is the requested new feature? :)
You can already order records vie the _order parameter as explained by @sam2x.

Hello,
As explained in the README, the GitHub issue tracker is for bugs and enhancement requests.
So I close this issue, but feel free to write a question on StackOverflow with the tag ng-admin.
Thanks for using ng-admin!


local baseline should be defined by points weighted by integration bounds

Currently the local baseline starts and ends at the start and end point of the integration window of the particular draw. This can make the local baseline vary more than one would expect from a look at the spectrum. It would be better to weigh the y-values of the baseline by the spectral data using the distributions of the start and end point of the integration window.

Fixed by #6.


Testing the upgrade to Hibernate Search SNAPSHOT

I urgently need to know if this upgrade would work, but I don't seem able to get a reasonable run locally.
Please have a look and let your CI help out a bit :)

obsolete.


Latest minifab on MacOS does not bring networks up: fails to install 'simple' chaincode

Hello
The latest minifab does gives an error and stops at the chaincode installation step. The problem seems to be that the chaincode installer is expecting there to be dev containers but for there are none. I apologise for the copious output but have included it for completeness.
Thanks - Ed.
Environment
MacOS 10.15.6
Centos 7.7
Steps to Recreate the Problem

minifab cleanup -o org1.example.com
This command succeeds and the ./vars directory is empty.
minifab up -o org1.example.com -s couchdb -c testchannel -e true
Output:

Minifab Execution Context:
    FABRIC_RELEASE=2.2.0
    CHANNEL_NAME=testchannel
    PEER_DATABASE_TYPE=couchdb
    CHAINCODE_LANGUAGE=go
    CHAINCODE_NAME=simple
    CHAINCODE_VERSION=1.0
    CHAINCODE_INIT_REQUIRED=true
    CHAINCODE_PARAMETERS="init","a","200","b","300"
    CHAINCODE_PRIVATE=false
    CHAINCODE_POLICY=
    TRANSIENT_DATA=
    BLOCK_NUMBER=newest
    EXPOSE_ENDPOINTS=true
    CURRENT_ORG=org1.example.com
    HOST_ADDRESSES=<IP_ADDRESS>
    WORKING_DIRECTORY: .../Hyperledger
...
# Preparing for the following operations: *********************
  verify options, download images, generate certificates, start network, network status, channel create, channel join, anchor update, profile generation, cc install, cc approve, cc commit, cc initialize, discover
.................
# Running operation: ******************************************
  verify options
.
# Running operation: ******************************************
  download images
............
# Running operation: ******************************************
  generate certificates
.............
# Running operation: ******************************************
  start network
.....................
# Running operation: ******************************************
  network status
......
# Docker node status ******************************************
  f8ff235a92_cli : Up Less than a second
  primary-ca.org1.example.com : Up 1 second
  orderer.org1.orderer-node.com : Up 2 seconds
  internal.org1.example.com : Up 5 seconds
  external.org1.example.com : Up 8 seconds
  internal.org1.example.com.couchdb : Up 9 seconds
  external.org1.example.com.couchdb : Up 10 seconds

# Fabric network peer and orderer node health status **********
  external.org1.example.com
  internal.org1.example.com
  orderer.org1.orderer-node.com "OK"

# Running operation: ******************************************
  channel create
......
# Running operation: ******************************************
  channel join
...............
# Running operation: ******************************************
  anchor update
.......
# Running operation: ******************************************
  profile generation
.........................
# Running operation: ******************************************
  cc install
.......
# Run the chaincode install script on cli container ***********
  non-zero return code
  go: downloading github.com/hyperledger/fabric v1.4.1
  go: finding module for package github.com/pkg/errors
  go: finding module for package github.com/spf13/viper
  go: finding module for package github.com/op/go-logging
  go: finding module for package google.golang.org/grpc
  go: finding module for package golang.org/x/net/context
  go: finding module for package golang.org/x/crypto/sha3
  go: finding module for package google.golang.org/grpc/keepalive
  go: finding module for package google.golang.org/grpc/stats
  go: downloading github.com/golang/protobuf v1.3.1
  go: downloading golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a
  go: downloading google.golang.org/grpc v1.31.0
  go: downloading golang.org/x/net v0.0.0-20200822124328-c89045814202
  go: finding module for package github.com/sykesm/zap-logfmt
  go: finding module for package go.uber.org/zap/zapgrpc
  go: downloading github.com/pkg/errors v0.9.1
  go: downloading go.uber.org/zap v1.15.0
  go: downloading github.com/spf13/viper v1.7.1
  go: downloading github.com/sykesm/zap-logfmt v0.0.3
  go: finding module for package go.uber.org/zap
  go: finding module for package github.com/miekg/pkcs11
  go: finding module for package go.uber.org/zap/zapcore
  go: finding module for package google.golang.org/grpc/peer
  go: finding module for package gopkg.in/yaml.v2
  go: finding module for package github.com/grpc-ecosystem/go-grpc-middleware
  go: finding module for package google.golang.org/grpc/grpclog
  go: downloading github.com/op/go-logging v0.0.0-20160315200505-970db520ece7
  go: finding module for package github.com/fsouza/go-dockerclient
  go: finding module for package google.golang.org/grpc/credentials
  go: finding module for package go.uber.org/zap/buffer
  go: finding module for package github.com/hyperledger/fabric-amcl/amcl
  go: downloading github.com/miekg/pkcs11 v1.0.3
  go: downloading gopkg.in/yaml.v2 v2.3.0
  go: finding module for package github.com/hyperledger/fabric-amcl/amcl/FP256BN
  go: downloading github.com/grpc-ecosystem/go-grpc-middleware v1.2.1
  go: downloading github.com/fsouza/go-dockerclient v1.6.5
  go: downloading github.com/hyperledger/fabric-amcl v0.0.0-20200424173818-327c9e2cf77a
  go: found github.com/op/go-logging in github.com/op/go-logging v0.0.0-20160315200505-970db520ece7
  go: found github.com/pkg/errors in github.com/pkg/errors v0.9.1
  go: found github.com/spf13/viper in github.com/spf13/viper v1.7.1
  go: found google.golang.org/grpc in google.golang.org/grpc v1.31.0
  go: found golang.org/x/net/context in golang.org/x/net v0.0.0-20200822124328-c89045814202
  go: found github.com/grpc-ecosystem/go-grpc-middleware in github.com/grpc-ecosystem/go-grpc-middleware v1.2.1
  go: found github.com/miekg/pkcs11 in github.com/miekg/pkcs11 v1.0.3
  go: found go.uber.org/zap/zapcore in go.uber.org/zap v1.15.0
  go: found golang.org/x/crypto/sha3 in golang.org/x/crypto v0.0.0-20200820211705-5c72a883971a
  go: found github.com/sykesm/zap-logfmt in github.com/sykesm/zap-logfmt v0.0.3
  go: found gopkg.in/yaml.v2 in gopkg.in/yaml.v2 v2.3.0
  go: found github.com/fsouza/go-dockerclient in github.com/fsouza/go-dockerclient v1.6.5
  go: found github.com/hyperledger/fabric-amcl/amcl in github.com/hyperledger/fabric-amcl v0.0.0-20200424173818-327c9e2cf77a
  go: downloading github.com/golang/protobuf v1.3.3
  go: downloading github.com/mitchellh/mapstructure v1.1.2
  go: downloading github.com/spf13/jwalterweatherman v1.0.0
  go: downloading github.com/fsnotify/fsnotify v1.4.7
  go: downloading github.com/pelletier/go-toml v1.2.0
  go: downloading github.com/spf13/pflag v1.0.3
  go: downloading github.com/spf13/afero v1.1.2
  go: downloading github.com/magiconair/properties v1.8.1
  go: downloading gopkg.in/ini.v1 v1.51.0
  go: downloading github.com/subosito/gotenv v1.2.0
  go: downloading github.com/spf13/cast v1.3.0
  go: downloading golang.org/x/text v0.3.2
  go: downloading google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215
  go: downloading github.com/hashicorp/hcl v1.0.0
  go: downloading golang.org/x/sys v0.0.0-20200420163511-1957bb5e6d1f
  go: downloading go.uber.org/atomic v1.6.0
  go: downloading go.uber.org/multierr v1.5.0
  go: downloading github.com/docker/docker v1.4.2-0.20191101170500-ac7306503d23
  go: downloading github.com/Microsoft/go-winio v0.4.15-0.20200113171025-3fe6c5262873
  go: downloading github.com/opencontainers/image-spec v1.0.1
  go: downloading github.com/docker/go-units v0.4.0
  go: downloading github.com/gogo/protobuf v1.3.1
  go: downloading github.com/morikuni/aec v1.0.0
  go: downloading github.com/Azure/go-ansiterm v0.0.0-20170929234023-d6e3b3328b78
  go: downloading github.com/docker/distribution v2.7.1+incompatible
  go: downloading github.com/Microsoft/hcsshim v0.8.7
  go: downloading github.com/opencontainers/go-digest v1.0.0-rc1
  go: downloading github.com/docker/go-connections v0.4.0
  go: downloading github.com/opencontainers/runc v0.1.1
  go: downloading github.com/containerd/containerd v1.3.0
  go: downloading github.com/containerd/continuity v0.0.0-20200228182428-0f16d7a0959c
  go: downloading github.com/sirupsen/logrus v1.4.2
  go: downloading golang.org/x/sync v0.0.0-20190423024810-112230192c58
  go: downloading github.com/konsorten/go-windows-terminal-sequences v1.0.1
  Error: chaincode install failed with status: 500 - failed to invoke backing implementation of 'InstallChaincode': could not build
  chaincode: docker build failed: docker image inspection failed: Get "http://unix.sock/images/dev-org1.example.com-
  simple_1.0-b5c5a3d167303f6b7597dafb43cee2008531fcbf6c8c25f44a60dfcb29190ed4-
  7e5a6e7149d525458e68003f43232d8c8078645ea26cecbe8ba85be6a04d4618/json": dial unix /host/var/run/docker.sock:
  connect: no such file or directory

# STATS *******************************************************
minifab: ok=166	failed=1

real	1m53.054s
user	0m52.911s
sys	0m16.843s

@edkaz looks like that your mac endpoint may not be at /var/run/docker.sock, can you check that?

@edkaz I wonder if your mac and centos also have some ports blocked. take a look at the doc on centos in docs folder.

@edkaz I've just installed the docker desktop on my mac, used exactly same command that you described above, everything worked without any issue at all. see below.
$ ./minifab up -o org1.example.com -s couchdb -c testchannel -e true
Minifab Execution Context:
    FABRIC_RELEASE=2.2.0
    CHANNEL_NAME=testchannel
    PEER_DATABASE_TYPE=couchdb
    CHAINCODE_LANGUAGE=go
    CHAINCODE_NAME=simple
    CHAINCODE_VERSION=1.0
    CHAINCODE_INIT_REQUIRED=true
    CHAINCODE_PARAMETERS="init","a","200","b","300"
    CHAINCODE_PRIVATE=false
    CHAINCODE_POLICY=
    TRANSIENT_DATA=
    BLOCK_NUMBER=newest
    EXPOSE_ENDPOINTS=true
    CURRENT_ORG=org1.example.com
    HOST_ADDRESSES=<IP_ADDRESS>
    WORKING_DIRECTORY: /Users/tongli/mywork
...
# Preparing for the following operations: *********************
  verify options, download images, generate certificates, start network, network status, channel create, channel join, anchor update, profile generation, cc install, cc approve, cc commit, cc initialize, discover
.................
# Running operation: ******************************************
  verify options
.
# Running operation: ******************************************
  download images
............
# Running operation: ******************************************
  generate certificates
.............
# Running operation: ******************************************
  start network
.....................
# Running operation: ******************************************
  network status
......
# Docker node status ******************************************
  5e4a59dfd5_cli : Up Less than a second
  ca1.org1.example.com : Up 1 second
  ca1.org0.example.com : Up 2 seconds
  orderer3.example.com : Up 3 seconds
  orderer2.example.com : Up 4 seconds
  orderer1.example.com : Up 5 seconds
  peer2.org1.example.com : Up 6 seconds
  peer1.org1.example.com : Up 7 seconds
  peer2.org0.example.com : Up 8 seconds
  peer1.org0.example.com : Up 10 seconds
  peer2.org1.example.com.couchdb : Up 11 seconds
  peer1.org1.example.com.couchdb : Up 12 seconds
  peer2.org0.example.com.couchdb : Up 13 seconds
  peer1.org0.example.com.couchdb : Up 13 seconds

# Fabric network peer and orderer node health status **********
  peer1.org0.example.com "OK"
  peer2.org0.example.com "OK"
  peer1.org1.example.com "OK"
  peer2.org1.example.com "OK"
  orderer1.example.com "OK"
  orderer2.example.com "OK"
  orderer3.example.com "OK"

# Running operation: ******************************************
  channel create
......
# Running operation: ******************************************
  channel join
...........................
# Running operation: ******************************************
  anchor update
............
# Running operation: ******************************************
  profile generation
.................................
# Running operation: ******************************************
  cc install
...........................
# Running operation: ******************************************
  cc approve
......
# Running operation: ******************************************
  cc commit
......
# Running operation: ******************************************
  cc initialize
......
# Running operation: ******************************************
  discover
........................

# STATS *******************************************************
minifab: ok=265	failed=0

real	3m34.598s
user	1m10.232s
sys	0m18.865s

@edkaz I even did a blockquery after, things work as they should. Please check the things that I indicated above.

@litong01 Hello Tong Li

@edkaz you stated the following:
From what I can diagnose the problem is that minifab is trying to install the default chaincode on a dev mode container but the dev mode containers are missing.
But that is not true. minifab does not use any dev mode container nor there is a such thing called dev mode container. You may in the past see chaincode image named using a string started with dev, but it does not mean it is dev mode. There is no such thing called dev mode.
If you suspect that recent minifabric breaks, you can always fallback to an earlier version (you will have to extract an earlier commit and build it yourself) to see if it works. I do not think that is the case because recent changes have nothing to do with installing chaincode.

@litong01
Thank you for getting back to me so quickly.  Thank you also for your explanation regarding the naming of containers.

First,  I reinstalled all containers and minifab on my Centos server and everything came up as it should . So all good there.
I mat revert to an older version but the sequence of errors being generated on my Mac development machines is:# Run the chaincode install script on cli container ***********

gives
```[bash]
Error: chaincode install failed with status: 500 - failed to invoke backing implementation of 'InstallChaincode': could not build chaincode: docker build failed: docker image inspection failed: Get "http://unix.sock/images/dev-org1.example.com-simple_1.0-b5c5a3d167303f6b7597dafb43cee2008531fcbf6c8c25f44a60dfcb29190ed4-7e5a6e7149d525458e68003f43232d8c8078645ea26cecbe8ba85be6a04d4618/json": dial unix /host/var/run/docker.sock: connect: no such file or directory
which if we break it down seems to consist of a trace, which for now I'll just call three `errors`. So, if I've read this correctly we have the following.

    First Error :
    ``` [bash]
    Error: chaincode install failed with status: 500 - failed to invoke backing implementation of 'InstallChaincode': could not build
    chaincode: docker build failed.
    ```
    Second Error:
    ```[bash]
    docker image inspection failed: Get "http://unix.sock/images/dev-external.org1.example.com-simple_1.0-b5c5...4618/json
    ```
   Third Error:
    ```[bash]
    dial unix /host/var/run/docker.sock: connect: no such file or directory
    ```
Working backwards, the third error is a bit surprising because at least on Darwin 19.6.0 and Centos 7.7, ``` docker.sock``` is in the directory ```/var/run``` and not ```/host/var/run```. It's surprising because minifab seems to resolve the Linux path correctly but does not resolve the Mac path correctly, unless of course I've missed something here.

For the second error, minifab prior to last Thursday PT generated containers with the prefix ```dev-``` on my Mac (I'm sorry about my earlier misunderstanding of the naming) but now does not. The installation code seems to be trying to access a non-existent container.

Now, by comparison on my Centos machine with the latest version of minifab downloaded earlier today I have the following containers:
```[bash]
docker ps --format "{{.Names}}"
dev-peer-2.org1.example.com-simple_1.0-b5c5a3d167303f6b7597dafb43cee2008531fcbf6c8c25f44a60dfcb29190ed4
dev-peer-3.org1.example.com-simple_1.0-b5c5a3d167303f6b7597dafb43cee2008531fcbf6c8c25f44a60dfcb29190ed4
dev-peer-4.org1.example.com-simple_1.0-b5c5a3d167303f6b7597dafb43cee2008531fcbf6c8c25f44a60dfcb29190ed4
dev-peer-1.org1.example.com-simple_1.0-b5c5a3d167303f6b7597dafb43cee2008531fcbf6c8c25f44a60dfcb29190ed4
c37b52d45d_cli
ca-secondary.org1.example.com
orderer-1.order-org.example.com
peer-4.org1.example.com
peer-3.org1.example.com
peer-2.org1.example.com
peer-1.org1.example.com
peer-4.org1.example.com.couchdb
peer-3.org1.example.comcouchdb
peer-2.org1.example.com.couchdb
peer-1.org1.example.com.couchdb

and everything works perfectly. So this seems to be a Darwin/MacOS issue.
Finally the first error is only present on my Darwin system and not on the CentOS system but I'm assuming it's the result of the second and third errors. Hope this helps.
Regards - Ed

@edkaz I suggest that you cleanup your system on mac. and get the latest code, and also check your mac firewall etc. cc install can fail most due to network issues and timeout since it needs to pull down a lot of things. when cc install fails, you can try the 2nd time and see if it is ok.

@litong01
Hello and thanks again for the quick reply. I have reinstalled all containers and minifab but haven't tried the repeating my CC install so will try that and let you know how we go.
Regards - Ed

@edkaz any updates on this one? I am trying to close out some old issues which no longer valid.

@litong01
Sorry no luck so far but I'll close it out for now.
Regards - Ed

@edkaz I actually would like to get it resolved rather than simply close it since it is still an issue in your env.

No activity for long time. Close the issue.

I have the exact same issue with Docker Desktop 3.0.3. It works once I disable gRPC-FUSE file sharing in the settings from Docker Desktop (Preferences -> Experimental Features. Don't know what the problem is, though.

I have the exact same issue with Docker Desktop 3.0.3. It works once I disable gRPC-FUSE file sharing in the settings from Docker Desktop (Preferences -> Experimental Features. Don't know what the problem is, though.


Would it be possible to add the legend to any of your dashing chart.js widgets?

I am trying to add the legend to any of your dashing chart.js widgets, is that possible?
I am wondering if it is also possible to keep the Labels of the series always on the screen.
Thanks in advance.

Have a look at this similar request. Like I wrote there, if you implement something in that direction, send me a pull request.

Dear jorge, I rewrote the widget pie chart in order to use legend. I'm afraid it is not a very elegant implementation however it covers what I needed.
If you are interested I can send it to you.
Best regards

Hi @enriquemt. Thank you for your effort. Sure, either send a pull request or send me the code/install details to<EMAIL_ADDRESS>

I've just released the new version with support for Chart.js v2. In this version, the legend is enabled by default.


Mass tweet post attachments fail for inactive rosters

Because the roster data isn't cached locally, it comes up as undefined within the attachment.
We don't want people tweeting inactive rosters on old news posts anyway, so the attachment can be rendered as a no-op in this case.

Fixed in v2.3.0, new PostAttachmentExpired type


Docs for Scheduled Rollouts

Adding in proposed docs page for scheduled rollouts for feature gates- please review & provide any feedback!

🚀 Deployed on https://63644182be533a02a3da392b--cozy-fox-0defec.netlify.app


Add Reaction Comments app

This app is for deleting new +1 comments and for encouraging people to use GitHub reactions instead.
https://github.com/dessant/reaction-comments

Thanks @dessant! LOVE the app!

Thanks @hiimbex, that's super nice to hear!


[Feature] Edit json object in place

Get started

[X] I have read Contributing guidelines.
[X] I agree to follow the Code of Conduct.
[X] I have confirmed that my issue is not duplicated with an existing issue.

Problem
Hi there and thanks for a great project.
I'm considering using this library but I haven't been able to figure out if I can edit the JSON values or just display them.
I note that it is possible to do so with https://jsongrid.com/json-formatter which appears to be a related project.
Thanks for your help!
Required feature
A keyword argument in DashJsonGrid, say, editable of type boolean.
E.g.
djg.DashJsonGrid(
    id="my-grid",
    data={
        "b":2,
        "complex":{
            "key1":3,
            "key2":4
        }
    },
    editable=True
)

This allows the user to edit a particular cell in the grid, which will fire a dash callback such as
@app.callback(
    Output("json-store", "data"),
    Input("my-grid", "data")
)
def update_json_store(data):
    return data

Alternative solution
No response
Dash JSON Grid Viewer version
0.4.3
Additional context
No response

Dear Tomer,
This project is based on React-JSON-Grid, which is not maintained by me. Your request is difficult to be implemented from my side because I cannot make fundamental modification unless I make the original React Project forked.
Let me explain why this feature is beyond my reach and the functionality of this project:

In React-JSON-Grid, the property data does not trigger any event. In other words, there is no method named onDataChange(...) that can export the current data if it is changed. That's why dash-json-grid can only make a callback change data but cannot let a user interaction to fire the data callback (however, the modification of data from a callback indeed can fire another callback).
React-JSON-Grid is not a React wrapper of JSONGrid. I believe that JSONGrid itself is not open source. So, React-JSON-Grid does not completely reimplement each feature of that website. Adding the editable functionality needs a lot of side works to do, for example, the modification needs to be validated, and the editor needs to provide different interfaces for different data types (int, str, bool, ...). That would be a significant change. I am not sure whether this proposal will be accepted by the original author.

My suggestion
Here, I can suggest two options
Option 1: Use pure dash to implement it.
It is possible to use the following packages with dash-json-grid:

dash-bootstrap-components: A component set providing a Modal component.
dash-ace: A JSON Editor for dash.

You can let dbc.Modal to catch the selected_path of dash-json-grid. It means that, when user clicks a part of the viewer, it will pop up an "editing" window. In that window, you can add a dash-ace editor and confirm/cancel buttons. Clicking on the confirm button will trigger a callback that will update the data of dash-json-grid by using the state selected_path. That will allow you to partially update the viewer.
Option 2: Submit a feature request to React-JSON-Grid
You can check the following link
https://github.com/RedHeadphone/react-json-grid/issues
to submit a feature request issue to React-JSON-Grid, and ask whether it is possible to add an editable feature (making the cells triggering inline editors rather than selected) and an event like
onDataChange/onEdited (catching changes from user interactions).

Please let me know which option you prefer. I am not intending to fork React-JSON-Grid now. If you prefer the option 1, I will try to update an example (using dbc and dash-ace) and close this issue after I implement it. If you prefer the option 2, I will close this issue after you submit the issue to React-JSON-Grid (certainly, if you would like, you can also let me to submit that issue).
Thank you!
cainmagi

Dear cainmagi,
Thank you for that informative response. I can now see how much work would be required for this feature!
I like your option 1 implementation idea, and will work towards that functionality.
An example would certainly improve the docs for this use case.
I will not submit a feature request to React-JSON-Grid at this time - feel free to do so if you choose.
Thanks again,
T

Thank you! Please give me a few days, I should update this demo by the end of this week.

Hello, Tomer!
I am glad to tell you that I have finalized the demo of the editor. I have also added a document for it:
https://cainmagi.github.io/dash-json-grid/docs/examples/editor
The new version v0.5.0 does not have any essential changes except for the new demo. So, you do not need to upgrade your package if you want to try the demo.
Thank you!
Sincerely,
cainmagi


Bug fixed : Markdown style override for dark mode and dark code highlighting styles Issue #73

Please add some relevant screenshots and description, and also describe the issue that this PR fixes.


Interpertation of Different metrics

Hi,
Thanks for your continued support and efforts in this subject. I wanted to ask a question different metric:
'mos_pred':  1 worst 5 best
'noi_pred':   1 best 5 worst
'dis_pred':    1 best 5 worst
'col_pred':     1 best  5 worst
loud_pred':    1 worst 5 best
Is this understanding right?
thanks in advance.

Hi, actually 1 is always the worst and 5 the best quality for the overall MOS and for the individual quality dimensions


Pause Webview when in background.

Use case
I have added a webview plugin (official flutter plugin) for viewing webpages. One of the webpage has a youtube video playing and when I press the home button and the app goes into background. But the problem is that the sound keeps on playing. There are other sections in the application that contain some component playing sound or video.
So I want to know what can be done to pause the webview altogether once I move the app to background.
I am currently using this webview plugin: webview_flutter: ^0.3.9+1
There is no option in the plugin to pause the webview itself.

Hello @DhruvamSharma !
Does the problem still persist in the latest version of the webview_flutter?
Thank you.

Without additional information, we are unfortunately not sure how to resolve this issue. We are therefore reluctantly going to close this bug for now. Please don't hesitate to comment on the bug if you have any more information for us; we will reopen it right away!
Thanks for your contribution.

Hello Flutter, i am currently facing this situation in the application i developed. Please let me know what information you need. I can help it out.
Thanks in advance

Could everyone who still has this problem please file a new issue with the exact descriptions what happens, logs and the output of 'flutter doctor -v'  please.
All system setups can be slightly different so it's always better to open new issues and reference related issues.


Validate RFQ's VC subject DID is equal to RFQ's metadata.from DID

Originally brought up here https://discord.com/channels/937858703112155166/1169748991982968963

In natural language, we need to assert that the RFQ's VC is issued to the same DID from which the RFQ is from.
There is a broader discussion to be had around whether or not delegation ought to be supported, in which, an RFQ could be submitted on behalf of another entity. In which case, the RFQ's metadata.from DID would not be equal to the claims' (the "VC's") DID. But, for the time being, I think it's safe to assume we should support validating an RFQ lines-up-with the given VC.

Breaking down the technicals...

Issuer issues a VC, wherein the VC contains a sub field within the payload which is the DID of the given subject (hereafter referred to as "Alice")
Alice then creates an RFQ message, which contains both their did (in metadata.from) and the newly minted VC (in claims)
Alice sends the message to the PFI
The PFI then verifies VC

But nowhere within verifying the VC, is the PFI also asserting that the given VC is associated with the encompassing RFQ.

There's a fair point to be raised of what is the value of this? Are any additional security assurances guaranteed?
Well, you could imagine someone who can't pass a VC issuance, who gains access to a VC of someone who can, and then they use that VC to bypass their failure to acquire a legitimate VC. But then of course, they could just spoof the metadata.from DID without problem. However,  since they don't have the private keys, they cannot spoof the signature. So yes, we do get additional security assurances here.

I created this in the wrong repo. Recreated in the correct place. Closing this one.


improved docs

@GrantMeStrength Could you review the proposed change to the repo README file? I would leave as-is because as the content owner and source, Microsoft might not be considered a contributor. (The same clause appears elsewhere in the file.) But your team can make the determination. Thanks!

See author's GitHub activity, this seems to be a 'hacktoberfest' spam PR.
See https://hacktoberfest.digitalocean.com/details#spam for how to label it to disqualify it.

Thanks @paramat.
I'll ask the repo owners to make the call -- @GrantMeStrength @mijacobs
Thanks!

Thanks, but we shouldn't randomly add words to the legal text on topics.


Improve: LFO should be assignable to different things.

And once this done, if I add a second LFO, one of those LFO-controllable props, should be the LFO rate itself.


Adding a layer for schools and other POIs

An idea is to show more optional contextual layers in ATIP, to help both inspections and TAs understand the relation between key trip origins/destinations and where infrastructure is proposed. To be specific, imagine:

A toggleable layer in ATIP, showing the location of schools. Hover or click to see more information (name, grades/age ranges, capacity, other ideas from https://www.openstreetmap.org/way/80278348)
Some tool in ATIP that lets you measure the distance (as the crow flies, or through the transport network) between interventions and some destinations that the user specifies
Both of these could be relevant both in the per-scheme editing and the new browse scheme page

I don't know how important this idea is to prioritize, or what specific requirements/requests would be -- so this issue is to start that discussion. Some possible questions:

What categories of things are most important to see? Schools, healthcare, childcare, parks/sports/active leisure facilities, etc?
What info do we want to surface about these places? Do we want to use OSM, or are there non-public data sources with more info about routes?
What amount of spatial information is useful to show? I have previously modeled POIs at the building level, like https://www.openstreetmap.org/way/969477716 and https://www.openstreetmap.org/way/969477717, but in hindsight, this may be unnecessary. A (possibly large) polygon or multipolygon like https://www.openstreetmap.org/way/80278348 or https://www.openstreetmap.org/way/84656164 representing an entire campus with many buildings may be simpler and serve the same purpose.

Good idea and lots of options. Knowing how many trip attractors a proposed intervention passes by would be super helpful for on-the-fly thinking about possibly levels of usage, although there is a slight danger of a self reinforcing trend: places with existing good place-making characteristics that already have lots of facilities could end up being rated higher. If we're going to add a layer for other POIs, in addition to transport network info such as the already-implemented speed limit layer, which is really valuable, I wonder if adding information on the number of people who live within x m of the intervention would be a lower hanging fruit? Lots of good data on where people are and links back to previous ideas discussed Dustin.
I think in terms of priorities points that relate to the transport network such as bus stops, cycle parking, amenities along routes such as parks, and cafes/pubs could be a low hanging fruit. There is an excellent open access dataset on schools so I would use that rather than data from OSM which is unfortunately inconsistent and infrequently updated in many parts of England.
Datasets on publicly owned trip attractors like schools, leisure centres and healthcare facilities are available outside OSM so I would prioritise stuff like parks (there is OS's green spaces dataset which is open), scenic routes and other things that are good on OSM about which we don't have great open data.

Duplicate of #284. In the short term, we'll just get these as view-only layers. "X resources / total people within Y minutes walks of an intervention" can happen later on


Update repo description

Similarly to https://github.com/resin-io/etcher-homepage/issues/21 , I guess it might be handy if this repo's description was updated to include https://docs.resin.io/ ?

@shaunmulligan (or could we add more people to be able to adjust the repo params)

@lurch I added the docs link to the description, good to close?

Thanks.


Support Rohit's vmodvga board in the firmware

https://github.com/timvideos/HDMI2USB-vmodvga

Coincidence! I was also thinking of porting it to misoc. Misoc & migen is
new and intriguing to me! Fascinating stuff! Only if I get the VGA capture
stable! @enjoy-digital might provide much-needed help/guidance/suggestion
in this!
On Sat, Aug 22, 2015 at 12:37 AM, Tim Ansell<EMAIL_ADDRESS>wrote:

https://github.com/timvideos/HDMI2USB-vmodvga
—
Reply to this email directly or view it on GitHub
https://github.com/timvideos/HDMI2USB-misoc-firmware/issues/30.

Feel free to

@enjoy-digital , Sure will do! Thanks!

@rohit91 How's it going? :)

@rohit91 ping?

Current progress: https://asciinema.org/a/82naz6l6q3pupejkqx0cftcml
I2C is working good. AD9984A Initialization is getting properly done!
ToDo: Data capture from AD9984A. Still have to write code for that!

@mithro there is also a problem. Using Ethernet (@2.5 Volts) along with VHDCI (@3.3 Volts) results in IO-Standard voltage conflict, since both Ethernet and VHDCI are on same bank, so different voltages is not possible.
We would have to redesign the VGA board with AD9984A's Output-pins' Voltage supply as 2.5V to make it work along with Ethernet. Would require change of 3.3V regulator to 2.5V regulator and, I guess, nothing else.

@rohit91 Great to see the progress. Want to push your code somewhere so we can take a look / help figure out the problems.

@mithro Yes, that is how I'm using it for now :) Build fails on adding Ethernet core!

Code repo: https://github.com/rohit91/HDMI2USB-vmodvga-misoc

presumably though for the Opsis TOFE board we want to switch to 2v5?

The TOFE board needs to work at 3v3 level. The Ethernet in connected
differently to the Atlys.
On 27 Oct 2015 7:02 p.m., "sealne"<EMAIL_ADDRESS>wrote:

presumably though for the Opsis TOFE board we want to switch to 2v5?
—
Reply to this email directly or view it on GitHub
https://github.com/timvideos/HDMI2USB-misoc-firmware/issues/30#issuecomment-151406918
.

How is it going @rohit91 - It looked like you almost have it working?

I'm at the last stage. 2 days back, I tried a test capture. There was some semblance of working, but the output was messy. I will have to look where might be the problem.

Yay! A awesome stable capture! It was just one-line fix! :joy:
Commit: rohit91/HDMI2USB-vmodvga-misoc@f21d8569049fbeeb3d5f08314c716819cf345d4e
Actual capture pics (all of them): https://drive.google.com/folderview?id=0B7Sp1NskALPdMjdQc1pBRExpZ1U&usp=sharing

Congrats!

@rohit91 I have one of your VGA boards here if you want me to test it.  That said I can see you have cables jumpered/soldered to your board in your pic?

@enjoy-digital Thanks! :) But most of the heavy-lifting was already done by you! To quote Newton "If I have seen further, it is by standing on the shoulders of giants"
@xfxf Hi Ryan! :) You can try with your board without any modification. Main thing to test for is image capture stability without screen going blank. Expect getting output having very saturated colors. I'll have to fiddle with ADC's gain registers to correct those. Also, there might be random white dots on capture output. I'll look into those too. They are either due to AD9984A's incorrect register values or PCB noises (due to design or my poor hand soldering)
Just try the bit-file. FX2 firmware is not needed, since encoder is not present in the bit-file.
In HDMI2USB console, use help command, and you would see vga_switch on listed there. Use that to switch on the VGA capture. Output would be on HDMI_OUT0 (near DC Power jack of Atlys). status on command should show 806 HSYNCs per VSYNC for correct capture. Also before capturing, please make sure that the VGA source (laptop etc) is outputting 1024x768@60p . I've yet to add support for other resolutions! Please let me know of any issues! Thanks! :)
Bitstream file: https://drive.google.com/file/d/0B7Sp1NskALPdbGdWdkpYLW9rNEE/view?usp=sharing

@rohit91 ping? We should get this merged ASAP.

@mithro Yeah. I'll look into it tonight and get it merged in 1-2 days max.
On Tue, Mar 1, 2016 at 9:01 AM, Tim Ansell<EMAIL_ADDRESS>wrote:

@rohit91 https://github.com/rohit91 ping? We should get this merged
ASAP.
—
Reply to this email directly or view it on GitHub
https://github.com/timvideos/HDMI2USB-misoc-firmware/issues/30#issuecomment-190522140
.

Gateware support is in #215


Export test events to .csv

TODO
[x] add a mechanism to export test events
Example https://gist.github.com/timothybest-usds/11fba7410952eafab50d35bc7bcfb4bf
Open Questions/ TODO

[ ] Is our format of values okay

Patient_DOB
Patient_gender
Patient_ethnicity
Test_result_code
Employed_in_healthcare
Resident_congregate_setting

[ ] What is Specimen_source_site_code?
[ ] What is Specimen_type_code
[ ] split ordering provider name into first_name, last_name
[ ] what is Testing_lab_ID CLIA Number? our database unique identifier?
[ ] we have one organization should its information be in testing_lab and/or ordering_facility.

Testing_lab_name Ordering_facility_name`
_state
_street
_street2
_zip_code
_county Note the example has a Ordering_facility_county but not a testing_lab_county

[ ] what is Ordered_test_code?
[ ] what is Specimen_source_site_code?
[ ] what is Specimen_type_code?
[ ] Instrument_ID is the device IONIC code?
[ ] What is the difference between Test_date and Date_result_released

Should be a full dump of MVP required fields before they are translated by the data hub.
expected headers.xlsx

OK, I owe you a few more answers, but here's a first pass.
Formats:

Patient_DOB.     We currently expect yyyymmdd, eg, 19850531
Patient_gender.  We expect single uppercase letter , eg, F, A (ambiguous), O (other), N (not applicable), M
Patient_ethnicity. We expect single uppercase letter, eg, U (unknown), N (not hisp), H (hisp)
Test_result_code. We expect numeric codes as follows:

    - code: 260373001
      display: Detected
    - code: 260415000
      display: Not detected
    - code: 895231008
      display: Not detected in pooled specimen
    - code:<PHONE_NUMBER>24108
      display: Detected in pooled specimen
    - code: 419984006
      display: Inconclusive

Employed_in_healthcare.  We expect Y, N, or UNK.   (Note:  It looks like AZ PHD does not current expect this field)

Resident_congregate_setting We expect Y, Y, UNK.  This seems fishy to me - need to doublecheck.  (Note:  It looks like AZ PHD does not current expect this field)

[ ] What is Specimen_source_site_code?  Answer:  We don't have a value set for this yet.   AZ PHD example for this is "Forearm".

[ ] What is Specimen_type_code.  Answer:  as follows...

- name: covid-19/specimen_type
  system: SNOMED_CT
  referenceUrl: https://www.hhs.gov/sites/default/files/hhs-guidance-implementation.pdf
  values:
    - code: 258500001
      display: Nasopharyngeal swab
    - code: 871810001
      display: Mid-turbinate nasal swab
    - code: 697989009
      display: Anterior nares swab
    - code: 258411007
      display: Nasopharyngeal aspirate
    - code:<PHONE_NUMBER>24105
      display: Nasal aspirate
    - code: 258529004
      display: Throat swab
    - code: 119334006
      display: Sputum specimen
    - code: 119342007
      display: Saliva specimen
    - code: 258607008
      display: Bronchoalveolar lavage fluid sample
    - code: 119364003
      display: Serum specimen
    - code: 119361006
      display: Plasma specimen
    - code: 440500007
      display: Dried blood spot specimen
    - code: 258580003
      display: Whole blood sample
    - code: 122555007
      display: Venous blood specimen

[ ]  split ordering provider name into first_name, last_name.   Answer:  Yes, AZ PHD is expecting these as two separate fields.

[ ]   what is Testing_lab_ID CLIA Number? our database unique identifier?  Answer: Not sure. @jlusds ??   Does SimpleReport get a Clia number or, more likely, this is different for each lab using SimpleReport.

[ ]   we have one organization should its information be in testing_lab and/or ordering_facility.  Answer: Not sure.  @jlusds  ??

Testing_lab_name Ordering_facility_name`
_state
_street
_street2
_zip_code
_county Note the example has a Ordering_facility_county but not a testing_lab_county

what is Ordered_test_code?  Answer:
- name: covid-19/order
  system: LOINC
  reference: Incomplete - Supports BD Veritor, Quidell Sofia, and Abbott ID Now
  referenceUrl: https://www.cdc.gov/csels/dls/documents/livd_test_code_mapping/LIVD-SARS-CoV-2-2020-10-21.xlsx
  values:
    - code: 94563-4
      display: SARS coronavirus 2 IgG Ab [Presence] in Serum or Plasma by Immunoassay
    - code: 94500-6
      display: SARS coronavirus 2 RNA [Presence] in Respiratory specimen by NAA with probe detection
    - code: 94558-4
      display: SARS-CoV-2 (COVID-19) Ag [Presence] in Respiratory specimen by Rapid immunoassay
    - code: 94534-5
      display: SARS coronavirus 2 RdRp gene [Presence] in Respiratory specimen by NAA with probe detection
    - code: 94564-2
      display: SARS-CoV-2 (COVID-19) IgM Ab [Presence] in Serum or Plasma by Immunoassay
    - code: 94531-1
      display: SARS coronavirus 2 RNA panel - Respiratory specimen by NAA with probe detection
    - code: 94559-2
      display: SARS coronavirus 2 ORF1ab region [Presence] in Respiratory specimen by NAA with probe detection
    - code: 95209-3
      display: SARS coronavirus+SARS coronavirus 2 Ag [Presence] in Respiratory specimen by Rapid immunoassay

[ ]   what is Specimen_source_site_code?  Answer:  Answered this above.

[ ]   what is Specimen_type_code?  Answer:  Answered this above.

[ ]   Instrument_ID is the device IONIC code?  Answer:  Not sure.  I need to get back to you.   It looks like we expect a numeric ID for this right now.  No enumerated set of values

[ ]  What is the difference between Test_date and Date_result_released.   Answer:   AZ PHD expects two dates:  the "Collection date" and the "Result Date".    I presume test_date is the date the sample was collected.

Whew!!

Here's my takeaway but would want a second opinion.
Background
Before POC testing, an Ordering Facility (a school, nursing facility) would often order testing but send it out to a different testing lab (ABC Laboratories) to do the actual testing. The ordering facility might not have a CLIA number.
With POC testing, Ordering Facilities are now doing the testing themselves, in house. To do this, they apply for a CLIA Certificate of Waiver. They now become both the Ordering Facility and Testing Facility.
Proposal
In a Point of Care Antigen world, which is our MVP, Ordering Facility Name = Testing Facility Name. We should list the same name in both fields. However, if Nursing Home A wants to do a send out PCR test to a different testing facility, then a given test would have a different Ordering Facility Name and Testing Facility Name.
Testing_lab_ID I think can be the CLIA number. In case this is sensitive, this is a public number.

I'll check in with our pilot site and see what kind of nasal swab they are using. We can hard code it until we build out the ability to add it (hopefully that comes soon!!)

@jimduff-usds - what are your thoughts on having the Data hub do the work to translate the format from SimpleReport into the expected format by AZDHS?

@jimduff-usds - what are your thoughts on having the Data hub do the work to translate the format from SimpleReport into the expected format by AZDHS?

I think the answer will vary on the fields, for example if the change is trivial for @TimBest , then it would be good to do it in SimpleReport.  But I realize we're all running short of time for the initial release, so we can take shortcuts now and try to patch later.    Generally, its best to generate the data "correctly" as early as possible, but we might need to do otherwise to be expedient.

@timothybest-usds @RickHawesUSDS @jlusds @aliciabeckett-gov
A couple items for our ongoing conversation on the "contract" between SimpleReport and the Hub.
Two changes to the SimpleReport Schema:

I changed columnn named 'Testing_lab_ID' to 'Testing_lab_CLIA' to make it more accurate.  The Testing_lab_CLIA value for Via Elegante, Tucson Mountains is  03D2159846.

I am adding a Patient_lookup_ID column, immediately after Patient_ID, per discussion with Tim.

@jimduff-usds Just on the issue of where to copy lab fields to facility fields, the mapper function in hub the schema is intended to handle this. I was about to hook this up when the Azure stuff hit. Will have it finished this weekend.

@jimduff-usds and @RickHawesUSDS  I have updated the csv example with the latest format. Let me know if anything needs to be changed.
Note the columns are currently sorted alphabetically. @jimduff-usds your comment seems to imply that properties are implied from column order. Is this true? If so is example-simplereport-file-11-20-2020.csv in the expected order?

Thanks @TimBest , I'll take a look at your example, and I'll adjust what we're expecting as much as possible to try to match that.   So, ball's in my court, and I may change our expected column ordering to match yours.
(Yes, at the moment, we expect both the exact column ordering, and exact the column header names to accept a file as validated.)

at the moment, we expect both the exact column ordering

What's the benefit of doing that? Seems like a green-M&M situation at best, and unnecessarily brittle at worst.

at the moment, we expect both the exact column ordering

What's the benefit of doing that? Seems like a green-M&M situation at best, and unnecessarily brittle at worst.

Its just how its working now.   I'd like us to allow columns in arbitrary order, but its not built yet.

@TimBest , per the LIVD spreadsheet, it looks like the Ordered_test_code for Binax is 94558-4
Abbott | BinaxNOW COVID-19 Ag Card | SARS-CoV-2 nucleocapsid protein antigen
And the only associated Specimen_type_code for Binax is 44529700   - nasal swabs (Swab of internal nose)
However, almost every other device has multiple Specimen_type_code. For example Abbott's ID NOW test has 4 different kinds of specimens that can be taken.

Also, @TimBest what happened to the device-id field? That's kind of important isn't it?

@RickHawesUSDS  - we have it.   Its the "Ordered_test_code" field in our data.  Probably we need a better name....

So, this is complicated and we are new to the space, but the way I read the LIVD table, there are many device types and manufactures for a given "Ordered_test_code". That is many devices can run a "SARS-CoV-2 (COVID-19) Ag [Presence] in Respiratory specimen by Rapid immunoassay". So the field is not the same as saying "Abbott", "BinaxNow COVID-19 AG Card". If you agree, I'd propose that you go back to providing the "BinaxNow COVID-19 AG Card" device-id field and let the hub translate it to a particular LONIC Ordered_test_code.

I've added Device_ID to the expected data from SimpleReport; its in a PR now.
I'm realizing this Issue has gotten quite hard to understand; I'm going to start a (hopefully!) organized data dictionary somewhere, in an attempt to save @TimBest 's sanity.

per todays discussion this is the current state of the simple report export https://gist.github.com/timothybest-usds/11fba7410952eafab50d35bc7bcfb4bf

@TimBest , the Data Dictionary is here:
https://github.com/CDCgov/prime-data-hub/blob/master/prime-router/docs/simplereport-data-dictionary.md

@TimBest I just tried this sample file (with Device_ID and a single race value) and it worked
https://gist.github.com/RickHawesUSDS/f082131bb6b1d04cb58cd861de3d60cc

Going to mark this as complete since we successfully tested the pipeline last night
the issue with race=null will be resolved in https://github.com/CDCgov/prime-data-input-client/pull/211
Future integration work can be found: https://github.com/CDCgov/prime-central/issues/160


Image Responsiveness

Description
Currently images need integr8ly-img-responsive to be added in the walkthroughs to prevent them from overflowing the content pane and cusing layout strangeness (see attached)
Expected Behavior
After chatting with some others, we concluded expect images to automatically size to the content pane.
Actual Behavior
Images overflow if the role="integr8ly-img-responsive" is not added in the walkthrough adoc (see attached)
Environment

Operating system: n/a
Browser and version: n/a
OpenShift version: n/a
Yarn version: n/a
Node version: n/a
Npm version: n/a
Project Version/Tag: Current HEAD - ff38fa88518bc10eb05fc44e8bbe9313e0a237e8

Steps to reproduce
Insert a large image, e.g image::https://large.images.com/image.png[integration, role="integr8ly-img-responsive"] into a walkthrough asciidoc and view it in the Solution Explorer.

With the PR applied, you can see in this screenshot that the img-responsive class is not applied, yet we can see all of this beautiful Norwegian landscape.


epic: New Mongo

This epic tracks all the issues that are required in order for qscript-based mongo (i.e. "new mongo") to go into production. The business deadline for this epic is August 31, 2017.
Issues in this epic may be tagged with various topics (e.g. QScipt, LogicalPlan, MongoDB, SQL, etc.). The common theme among all issues is that they are each required in order for new mongo to go into production.
If you know of any issues that are required for new mongo that are not in this epic, feel free to add them.
We will track our progress and if we find that we need more resources in order to meet the end-of-August deadline, we can request them from @zeeiyerWork.

Furthermore there is a label "status: Fixed in New Mongo". This label is added to any issue that is fixed in the new mongo branch. Historically we have been tracking these issues with the "status: On hold" label, but since issues can be "On hold" for other reasons, that label is ambiguous, and so we have a new label.
After new mongo lands in master, we will be able to delete the "Fixed in New Mongo" label so as not to clutter our labels.

@alissapajer Thank you for organizing this!


Update Gradle version in Schema-Registry

Problem description
Current version of Gradle in schema registry is bit old (4.10.2) and is not in sync with Pravega(6.5.1).
Problem location
gradle-wrapper.properties
Suggestions for an improvement
Upgrade the Gradle version to 6.5.1

It's actually a pain, because the server thinks the schema is defined, so create schema doesn't work.
presto:cartoondb> CREATE SCHEMA  s3.cartoondb;
Query 20211104_154257_00007_cciqr failed: line 1:1: Schema 's3.cartoondb' already exists
CREATE SCHEMA  s3.cartoondb
But you can't create a table, because it checks schema registry.
presto:cartoondb> create table s3.cartoondb.table1 ( id bigint, name varchar, balance double) WITH (has_header_row = 'false', FORMAT = 'CSV', external_location='s3a://testbucket/db1/' );
Query 20211104_154308_00008_cciqr failed: Group not found.

If you create a schema with a different name, and then use that, create table works
presto:cartoondb> CREATE SCHEMA s3.cartoondb1;
CREATE SCHEMA
presto:cartoondb> create table s3.cartoondb1.table1 ( id bigint, name varchar, balance double) WITH (has_header_row = 'false', FORMAT = 'CSV', external_location='s3a://testbucket/db1/' );
CREATE TABLE


zero configuration?

I like the idea of zero configuration while being able to eject (like create-react-app)
Just not sure if for SSR it's more problems than it's worth.
E.g. if I contionally take over server.js, need a way for user to still start app manually for testing

upon thinking about it, I can just provide a start fn that checks for which server.js file to require
also, I do think zero configuration is a worthy goal. It doesn't seem like a big deal to me since I went down the rabbit hole and spent time learning and creating this library but not having to think about these things is a big deal for users just starting out... I guess it's easy to forget
Closing this!


Node compatibility for imports extenision.

Changes:

remove object deconstruction
add 'use strict'

Tested by removing the babel preprocessor from jest and running the tests :)

@cpojer i wonder if there is a way to turn babel-jest off for the extension so the test pick up can node breakages?

Not really, no. I don't think it's a big deal, the latest version of Node should have destructuring for example. Thanks for fixing this one, don't forget to publish on npm :)

the latest version of Node should have destructuring for example

Only behind a flag.

Eventually what I said is going to be true!


Scxml high level alignment

Hi everyone,
the goal of this PR is to have a place to discuss and align on the format we want to use for the system model in XML (for properties, full model and BT) and SCXML for the remaining parts.
In the current state, this PR contains the changes we agreed during the discussion o the 10th of July, when we had a first round of discussion between Bosch, UniGe and IIT.
It would be nice if the people involved in the next discussion could have a look and leave comments where they see fit, in order to have a more focused and productive meeting the upcoming Wednesday, where also CEA will join.
Looking forward to it!

Open points that will have to be addressed in the future, with possible solutions discussed:

Handle time

Have a global state machine handling time advancement and sending out events when required (already in mc-toolchain-jani)
Alternatively, use the delay attribute from scxml (currently Bosch ignored it :) )

Handle probabilities

Have a script / standard function in SCXML to represent prob. distributions

Note: We can decide to translate that differently depending on the target model checking format

BT Blackboard

Blackboard "server", making sure it is "thread safe" -> Separate automaton setting and providing them

Thanks Marco. I will add my review on Monday if I find the time. :)

I've added a few comments in some of the files, which are mainly questions related to how I use this format in REFINE-PLAN. Other than these, I think everything looks fine from my end?
As an aside to this example, it would be useful to see an example with the blackboard, since as far as I remember, there's going to be a separate CONVINCE blackboard rather than the default BT.cpp blackboard?

Hi @charlie1329 . Regarding the example of the blackboard, we plan to tackle that ASAP, but I feel that we have to start implementing a first solution before we can really settle on one or the other interface in SCXML.
My opinion is that SCXML models represent as close as possible what happens in the  real system, therefore we shouldn't distinguish between a "CONVINCE" and "BT.cpp" blackboard, since they are gonna work in the same way, at least from an high level perspective.

Open points that will have to be addressed in the future, with possible solutions discussed:

Handle time

Have a global state machine handling time advancement and sending out events when required (this is the current solution implemented in the translation from scxml to jani from mc-toolchain-jani)
Alternatively, use the delay attribute from scxml (currently not supported by the tools implemented in mc-toolchain-jani)

Handle probabilities

Have a script / standard function in SCXML to represent prob. distributions

Note: We can decide to translate that differently depending on the target model checking format

BT Blackboard

Blackboard "server", making sure it is "thread safe" -> Separate automaton setting and providing them

Discussion from 17th of July:

Time: for now we stick to the global time state machine solution, with a reference clock that triggers the other slower clocks accordingly, that resembles timed automata but can still be treated as an MDP
Probabilities: SCXML provides custom SCXML functions that can return values extracted from one or the other distribution and can be treated accordingly based on conditionals. That will be translated differently between Jani and SCAN formalism.
BT Blackboard: We stick to the proposed solution from last time


fix(email): address-list for "To", "From" etc.

Recipients etc. are accumulated by the EmailBuilder and put into the
email as one header with an address-list instead of multiple headers.
This is required by RFC 5322. Also a new test for this behaviour was
added.
fixes #85

This was a serious issue I had spotted but not fixed yet. This path looks great, thanks!


Hot reload stop observing issue

Skip stopObserving because in debug mode startObserving is not called on reload, but stopObserving is called before reload.
My application fetch voip token every time on start, but when working on UI with hot reload I have an annoying warning that voip token was not fetched from native code. That is because somehow on hot reload stopObserving is called, but then no startObserving is called. This might be some react-native issue.
So I thing this code does not have any harm, but fix unexpected react-native observer behaviour.
If anyone has any objection please let me know.

My previous comments are here: https://github.com/react-native-webrtc/react-native-voip-push-notification/pull/87#issuecomment-843799496

@zxcpoiu @Romick2005
Yeah the issue with reloading is also suffered by CallKeep (and I'm sure a lot of other RN modules around the globe). I've pointed out the root cause, and a solution here: https://github.com/react-native-webrtc/react-native-callkeep/issues/406
To quickly summarize, it's because of this change to react native: LINK
It used to be that react native relied on deallocate to run logic to execute stopObserving. Now that logic has moved to invalidate. HOWEVER, because both this module and CallKeep implements the RTCEventEmitter interface into a class that's instantiated as a singleton, this module can never be deallocated, and as such the internal variable _listenerCount is never reset back to zero, and they explicit make this check in their code:
<!--StartFragment-->  _listenerCount++;  if (_listenerCount == 1) {    [self startObserving];  }<br class="Apple-interchange-newline"><!--EndFragment-->

I've suggested a proper solution to this in the issue over on the call keep repo.

Hi @jonastelzio thank you for clarification. Sounds good to me to have RNCallKeepRTCEventEmitter instead of RTCEventEmitter with a static function registerRTCEventEmitter. That is a good way to go.
But I have also some idea and thinking of why invalidate function of RTCEventEmitter does not explicitly set _listenersCount  to 0? Is there any reasons not to do so?
Or why don't just expose removeListeners to the native part and then those function could be use to reset _listenersCount.
Yes I understand that trying to apply this change in react-native would require their approve and take longer than expected. But if it the right thing to do then why not? I am convinced that we should fix the root of the problem, because creating a wrapper for callKeep will not fix those issue for other libraries.
I can also be wrong in my way of thinking as I might not see the whole picture that was set up behind.

@Romick2005

But I have also some idea and thinking of why invalidate function of RTCEventEmitter does not explicitly set _listenersCount to 0? Is there any reasons not to do so?

Looking at the code, it's clear that facebook expects to be able to manage the life cycle of the modules. That's fine, during an invalidation (dev mode reload), the modules call invalidate and then deallocate. I assume that deallocate is in fact called by the underlying runtime rather than explicitly.
The issue is that by implementing the RN Module interfaces into an object, that is then instantiated as a singleton, completely breaks with facebooks assumptions that they can rely on deallocation - and it's sort of creating an unexpected situation for react native.
When RN does a reload, it's not like it performs a proper teardown of the react components, so stuff like removeEventListener will never be called. It simply cycles the entire runtime and executes the entry point again, so exposing removeEventListener wouldn't help us. We simply need to allow react native to manage these instances as it was designed to.
It's not a difficult change. Just need to have the react native modules register themselves with our singleton when they initialize, and unregister on deallocate/invalidate.
The reason this worked before RN made that change, is that deallocate was never called, and stopObserving was never called. If you apply some breakpoints in a pre 0.64, you'll see that the _listenersCount variable just increases every upwards on every reload.

@Romick2005 I see what you're getting at, and yes it would work, for our implementations, with the current version of react native.
But it's not a solution. If the RN maintainers decide to change this behavior, it'll break our module.

I would argue with you this again "if RN maintainers decide to change smth" that will definitely break smth :). So that is fragile argument I would say. I see you point also, and agree that having our custom wrapper for RNCallKeepRTCEventEmitter would be very good in a way to have more control over code, but it is not needed if we decided to go with singleton and also require more code :) (more complex code -> more vulnerability) :).
But anyway this is my retro perspective point of view (my way of thinking). For now I would like to have this limited, but workable solution, unless anyone implements RNCallKeepRTCEventEmitter.
Thank you @jonastelzio for your opinion. It was very valuable.

@Romick2005 I think it's pretty clear from looking at the react native code, that you simply aren't meant to implement the module interfaces into singletons at all.
While they don't mention this in the documentation, it's pretty obvious that something like RN needs to be able to instantiate objects in a predictable fashion.

Ok. So you suggest to remove singletone pattern from CallKeep module? What is the right direction to move here?


Node.replace_by leaves duplicates

Godot version
3.4
System information
Kubuntu 20.04 GLES3 Ryzan 7 5700G with Radeon Graphics
Issue description
Node.replace_by seems to leave odd duplicates in the remote tree
func _process(delta):
	if  _can_shoot && InputMap.has_action(projectile_action) && Input.is_action_pressed(projectile_action):
		if  _projectile_scene != projectile_scene:
			_projectile_scene  = projectile_scene
			BULLET.replace_by(_projectile_scene.instance(), true)

		if  _projectile_scene != null:
			_can_shoot = false
			emit_signal("fire")

Steps to reproduce

download this https://github.com/Shadowblitz16/AstroWars/releases/tag/Node.replace_by-bug
look in the remote scene tab under root/Weapon/Bullet after pressing space

Minimal reproduction project
See above

It's not a bug, just undocumented behavior. Seems like replace_by doesn't replace whole branch, but only that one node and moves all its children to the new node. In your case the two bullets will have their children lists merged.

I hear that excuse not a bug a lot here.
Maybe instead of having weird behaviors in the engine that don't make sense you should consider fixing it.


[Feature] Replace "help" with "description"

Is your feature request related to a problem? Please describe.
help is a builtin function in Python, but both CommandBuilder and Context take it as a parameter.
A better parameter name would be description.
Describe the solution you'd like
Replace all help with description in both code and configurations
Describe alternatives you've considered
Keep help for now.
This could might cause problems in the future.
Additional context
Not relevant.

Changed my mind.


Add support for vimscript

Nice! I'll test it out this week.

Everything looks like it's working, just a few style changes to the queries and modifying the tests for better coverage.

Everything should be resolved now.

Looks good, thanks!


.git is 1.8G...

only 300 commits per git log -- but .git 1.8G .pack file on clone.
would you consider chopping down history a bunch?
(maybe it has many 10MB+ go binaries since removed?  i dunno!)
or for non-elite git users, suggest a good way to filter?
noncritical / nice2have..
thx!  :)

sure, was going to delete the old versions anyway

oh, um, wow.  well, gee, thanks very appreciated!


The latest update to manifestmerge.exe seems to get caught in a loop

Since updating to your latest sources, when the manifest merge.exe runs in my project PostBuildEvent, it seems to get stuck in a loop and never ends when building my app.
My path is: manifestmerge.exe AndroidManifest.merge.xml .$(Platform)$(Config)\AndroidManifest.xml
The AndroidManifest.merge.xml is as follows:

If you'd like a copy of my AndroidManifest.xml to test this, please message me and I'll be happy to send it over.
Thanks

Please update the merge.xml file so that the manifest tag has namespacing, thus:
<manifest xmlns:merge="http://www.delphiworlds.com/xmlns/merge" xmlns:android="http://schemas.android.com/apk/res/android">

I found the same issue.
You can test it with the FirebaseCloudMessaging - Demo.
I am using now the older version of manifestmerge.exe. now it works for me.


Element reference for typeahead directive is only defined when model has authority

References
Description
The condition within the onBlur event handler method for the tag input field has an error when the model.hasAuthority is falsy.
This causes the text entered to not be converted to a subject "chip" and is not added to the form for patch submission.
Instructions for Reviewers
Check the view template for whether an element reference will be rendered or not. Minimizing cyclomatic complexity helps avoid this but still requires mental mapping between the component and template when using conditions in the template and referencing elements from the component logic.
List of changes in this PR:

amend condition whether to addTagsToChips to check if model.hasAuthority before invoking the ViewChild decorated class member instance isPopupOpen method.

In submission-forms.xml define a form field with input type tag without a control vocabulary. Then during a item submission type in the tag input field and tab or click away. The value will remain a free form text and there will be an error in the console log.
Checklist

[x] My PR is small in size (e.g. less than 1,000 lines of code, not including comments & specs/tests), or I have provided reasons as to why that's not possible.
[x] My PR passes ESLint validation using yarn lint
[x] My PR doesn't introduce circular dependencies (verified via yarn check-circ-deps)
[ ] My PR includes TypeDoc comments for all new (or modified) public methods and classes. It also includes TypeDoc for large or complex private methods.
[ ] My PR passes all specs/tests and includes new/updated specs or tests based on the Code Testing Guide.
[ ] If my PR includes new libraries/dependencies (in package.json), I've made sure their licenses align with the DSpace BSD License based on the Licensing of Contributions documentation.
[ ] If my PR includes new features or configurations, I've provided basic technical documentation in the PR itself.
[ ] If my PR fixes an issue ticket, I've linked them together.

Thanks @wwelling. I tested on DSpace 7.6.2-SNAPSHOT and this patch resolves the issue with tag inputs not working when they don't use an authority. I also tested a tag input with an authority and it's working as expected.


Fix EventLogger in .NET 4.5.2

#328

@karolz-ms @kichalla

Looks good, but I would add a comment explaining why SetFilterSpec is not immediately called on logging providers when EventSource.SetFilterSpec is called

Good point

Some explanation would be good in the PR description, what was wrong and what was fixed

@davidfowl Added some description

🆙 📅

Ping

:shipit:

🆙 📅
Added lock and added another location to check level


OSM object overwritten with old version

Hi, I'm not sure whether this is the right place to report this...
Please have a look at this changeset on OSM which says "Modified via wheelmap.org". Here, a user changed some tags on an object (a chapel, link on Wheelmap). If you look at the object's history, you'll see that the change replaced some tags (e.g. denomination, building) with the values they had when the same user last edited the object two years ago, and it also removed several addr:* tags that weren't there at that time. Curiously, some other tags that were added later have not been touched.
Do you have an explanation for this? Note that I didn't contact the user yet because I didn't want to bother him with this problem, as I suspect it's a bug in Wheelmap. Or is this an already fixed bug, and he's simply using an old version of the app? Then I'll send him a message and ask him to update.

Thanks for this detailed report and your offer to help, much appreciated! 🙂
This changeset must have been generated by a very old version of a Wheelmap app. As there is no means to deactivate this app remotely, it would be helpful if you write the message as you proposed. Thanks again!
Feel free to reopen if there is more to add here.


Implement placeholder logo for Warehouse

Currently if you don't have pypi-theme installed you get broken image links. It'd be nice if we had some basic (even plain squares?) logos of the same sizes of the PyPI logo to act as placeholder logos.

In #873 I "create" some logos by just using a 1x1 blank square. Some placeholder logos would still be nice though but at a minimum there are no longer broken images shown by default when developing Warehouse.

Do we want them to just say "Logo"?

That works for me.


chore: use built-in types from eslint-plugin-react

Blocked by https://github.com/jsx-eslint/eslint-plugin-react/pull/3840


Maria's updates

The new file describes the system requirements and architecture

I will add Maria's "system requirements and architecture" file to the tests folder and then submit a pull request later.

With confirmation from @EvelyneFossyth and @Ryserphiel, this pull request is closed.


Searching for pygame results in ValueError

[x] I am on the latest Poetry version.
[x] I have searched the issues of this repo and believe that this is not a duplicate.
[x] If an exception occurs when executing a command, I executed it again in debug mode (-vvv option).

OS version and name: Ubuntu 19.04
Poetry version: 0.12.17
Link of a Gist with the contents of your pyproject.toml file: n/a (the error is not related to pyproject.toml contents and happens even without one)

Issue

Steps

Run poetry search pygame

The following exception raised:
[ParseVersionError]
Unable to parse ".9".

Exception trace:
 /home/tamas/.poetry/lib/poetry/_vendor/py3.6/cleo/application.py in run() at line 94
   status_code = self.do_run(input_, output_)
 /home/tamas/.poetry/lib/poetry/console/application.py in do_run() at line 88
   return super(Application, self).do_run(i, o)
 /home/tamas/.poetry/lib/poetry/_vendor/py3.6/cleo/application.py in do_run() at line 197
   status_code = command.run(input_, output_)
 /home/tamas/.poetry/lib/poetry/console/commands/command.py in run() at line 77
   return super(BaseCommand, self).run(i, o)
 /home/tamas/.poetry/lib/poetry/_vendor/py3.6/cleo/commands/base_command.py in run() at line 146
   status_code = self.execute(input_, output_)
 /home/tamas/.poetry/lib/poetry/_vendor/py3.6/cleo/commands/command.py in execute() at line 107
   return self.handle()
 /home/tamas/.poetry/lib/poetry/console/commands/search.py in handle() at line 20
   results = PyPiRepository().search(self.argument("tokens"), flags)
 /home/tamas/.poetry/lib/poetry/repositories/pypi_repository.py in search() at line 224
   result = Package(hit["name"], hit["version"], hit["version"])
 /home/tamas/.poetry/lib/poetry/packages/package.py in __init__() at line 40
   self._version = Version.parse(version)
 /home/tamas/.poetry/lib/poetry/semver/version.py in parse() at line 205
   raise ParseVersionError('Unable to parse "{}".'.format(text))

This issue was reported before, but closed by the author later: https://github.com/sdispater/poetry/issues/432

After some debugging, I found that the culprit is the pygame-music-grid package (which is one of the search results). Its version is .9 which semver can't parse.

pip simply ignore the invalid version, so I think it's reasonable for poetry to do the same in these cases.


Cannot get working in travis build

not sure if this is an issue with sqlint or pq_query
/home/travis/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require': incompatible library version - /home/travis/.rvm/gems/ruby-2.4.1/gems/pg_query-1.0.2/lib/pg_query/pg_query.so (LoadError)
	from /home/travis/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /home/travis/.rvm/gems/ruby-2.4.1/gems/pg_query-1.0.2/lib/pg_query.rb:4:in `<top (required)>'
	from /home/travis/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /home/travis/.rvm/rubies/ruby-2.4.1/lib/ruby/site_ruby/2.4.0/rubygems/core_ext/kernel_require.rb:55:in `require'
	from /home/travis/.rvm/gems/ruby-2.4.1/gems/sqlint-0.1.8/bin/sqlint:4:in `<top (required)>'
	from /home/travis/.rvm/gems/ruby-2.4.1/bin/sqlint:23:in `load'
	from /home/travis/.rvm/gems/ruby-2.4.1/bin/sqlint:23:in `<main>'
	from /home/travis/.rvm/gems/ruby-2.4.1/bin/ruby_executable_hooks2.4:15:in `eval'
	from /home/travis/.rvm/gems/ruby-2.4.1/bin/ruby_executable_hooks2.4:15:in `<main>'

which is the output from travis (trusty linux) with the below .travis.yml
language: python
python:
  - "3.6"
install:
  - yes "" | sudo apt-add-repository ppa:brightbox/ruby-ng
  - sudo apt-get update
  - wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O miniconda.sh
  - bash miniconda.sh -b -p $HOME/miniconda
  - export PATH="$HOME/miniconda/bin:$PATH"
  - hash -r
  - conda config --set always_yes yes --set changeps1 no
  - conda update -q conda
  # Useful for debugging any issues with conda
  - conda info -a
  - conda env create --name event-completeness --file environment.yml
  - source activate event-completeness
  - sudo apt-get install ruby2.4 ruby2.4-dev
  - sudo gem install pg
  - sudo gem pristine --all
  - sudo gem install pg_query
  - sudo gem install sqlint
  - sqlint *.sql
script:
  - flake8 .

works fine locally on ubuntu 16.04
sudo apt install ruby-full
sudo gem install sqlint
sqlint <sqlfile>

Any pointers appreciated!

Not sure, sorry, but it looks like it's pg_query that's failing. sqlint depended on a slightly older version of pg_query, so I've pushed a new version of sqlint (0.1.9) which should work with the latest pg_query`. You might consider trying again with that version. Beyond that, I don't have any suggestions, sorry.

Ok cool thanks for pushing up a new version, hopefully that will do the trick!


Correct value of the FNV1a prime value

Not sure if you're still maintaining this library, but I discovered that the FNV1a 64-bit prime value is incorrect (missing the final digit). Thanks!

Oh, yeah, thx!


'group by tags' shows tags that are not recognised by Obsidian

Expected Behavior
When I use group by tags I would like the tags displayed to only be those tag names that are shown in Obsidian's 'Tag pane' - that is, for Tasks' parsing of tags to be consistent with that of Obsidian.
Current Behavior
I see group names showing tags that are not treated as tags by Obsidian.
Steps to Reproduce

Create these 3 tasks:

- [ ] <mark style="background: #FFF3A3A6;">Make GP phone call 10:50 today</mark>
- [ ] [Enable preview feature to allow global filter to be at the end. by sytone #678](https://github.com/obsidian-tasks-group/obsidian-tasks/pull/678)
- [ ] [Internal: Better abstraction for grouping of tasks · Discussion #920 · obsidian-tasks-group/obsidian-tasks · GitHub](https://github.com/obsidian-tasks-group/obsidian-tasks/discussions/920)

Create this tasks block:

```tasks
path includes [whatever you called your test file name]
group by tags
```

Switch to Reading mode

Expected result
All 3 tasks listed in group (No tags)
Actual result
Each task is recognised as having a tag - none of these tag strings are recognised by Obsidian, in its 'Tag pane'

Workaround
For the two GitHub links, escape the # with a \, for example:
- [ ] [Enable preview feature to allow global filter to be at the end. by sytone \#678](https://github.com/obsidian-tasks-group/obsidian-tasks/pull/678)

This is not possible in the <mark task though.
Context (Environment)

Obsidian version:
Tasks version:
[ ] I have tried it with all other plugins disabled and the error still occurs

Possible Solution

There is code to try and prevent picking up tags from URLs:
https://github.com/obsidian-tasks-group/obsidian-tasks/blob/a993239e6d1913d20ba01e2a3d65f16884be5ce2/src/Task.ts#L105-L115
But it doesn't detect the context of the #, so whether it is in an HTML tag, or inside some link anchor text.
Ideally, it would be nice to ask Obsidian to parse a line for tags, instead of having our own hand-rolled code for it.

It would be worth seeing if Dataview provides any comparable functionality - showing tags for tasks - and if so, whether it finds tags in these tasks, in case we can get any idea's from Dataview's parsing code.

@claremacrae Possible Obsidian API pointer: CachedMetadata object seems to have a tags field, per dataview source.
It looks like that is tied to a position, which can be converted to a line number. tags field in the CachedMetadata. TagCache extends CacheItem which has a position field.

Brilliant. Thank you.
Note to anyone working on this: it is not always possible to trust the line numbers stored in Task objects, if the file has just been edited in the last second or two.

@AnnaKornfeldSimpson in case it helps,
if you use the following js query in dataview it will give you the whole tree of staff dataview sees on the current page and what is in what
(you need to activate js in dataview settings):
  `$=dv.span(dv.current())`

Put exactly that and nothing more (with the quote marks) on its own line

A nice easy fix for this would be to:

change the Task constructor so that it also receives a list of tasks in the file
stick with the current tag-searching code in Task
but make it intersect the tags it found in the line with the tags in the file, and only keep in the Task the tags that are in both lists

There could be some occasional cases where a tag elsewhere in the file matches a not-tag in the line, but I would take a simple fix like this, that's easy to write and review, over a rewrite at this point.
(Especially as we cannot currently write tests that use code from Obsidian, so automated tested of any Obsidian-based solution is not currently possible)

It looks like fromLine would need to take the tag list, since that is the bridge between the Cache and the crual Task constructor?

Good point. That too. Will edit the above.

Also I think you have a typo in 1. that is making it a little hard to parse

Fixed. My fingers type task and tag interchangably, which is bad for this plugin!

This needs to be fixed before #848 can be implemented.

https://help.obsidian.md/How+to/Working+with+tags

The only symbols allowed are:

_ (underscore) and - (dash) to separate words;
/ (forward slash) for [nested tags](https://help.obsidian.md/Plugins/Tag+pane#Nested tags).

Numbers are allowed in the tag, as long as the tag is not purely numeric. For example, #1984 isn't a valid tag, but #y1984 is a valid one.

So the Tasks code that identifies tags should ignore things that look like tags but only contain numbers

I'm a bit concerned that a user might have a tag search that used to work for them, as it relied on being able to search for invalid tags via Tasks.
Once this bug is fixed, such searches would no longer find any matches.
Should the tag filter produce an error if asked to search for any characters that cannot possibly be in any tags?
For example, this should never match any tasks:
tag includes *
But this one is harmless, although it filters out nothing:
tag does not include *
Although all-digit strings are not recognised as tags (see the Obsidian docs linked above), an includes-based search for an all-digit string is valid:
tag includes 1234 would match a task with #hello1234, so should be allowed.

I am working on this.

It has just dawned on me that I need to think about the impact of fixing this on any existing global filter tags in user vaults.
What if a user has preferences which define a global filter tag string which is actually not a valid tag according to Obsidian.
After this issue is fixed, Tasks will no longer recognise such strings as tags in the user's tasks.
If the global filter works based on tags, then those tasks would no longer be found.
I suspect it's all OK, as it's possible to use non-tags as global filters, so probably that mechanism is independent of how tags are identified in Tasks...
But this is to remind me to do manual testing, and add tests in code.

A nice easy fix for this would be to:

change the Task constructor so that it also receives a list of ~tasks~ tags in the file
Also pass in the tags to anywhere Task that the constructor is called from, like fromLine()
stick with the current tag-searching code in Task
but make it intersect the tags it found in the line with the tags in the file, and only keep in the Task the tags that are in both lists

There could be some occasional cases where a tag elsewhere in the file matches a not-tag in the line, but I would take a simple fix like this, that's easy to write and review, over a rewrite at this point.
(Especially as we cannot currently write tests that use code from Obsidian, so automated tested of any Obsidian-based solution is not currently possible)

It turns out to be even easier than that.
CachedMetadata has tags: TagCache[]
Example TagCache element:
{
    "tag": "#y1984",
    "position": {
        "start": {
            "line": 15,
            "col": 118,
            "offset": 554
        },
        "end": {
            "line": 15,
            "col": 124,
            "offset": 560
        }
    }
}

The line numbers are zero-based.
This means that in Tasks' getTasksFromFileContent(), I can get exactly the tags found be obsidian in each Task line, including the exact character positions, and pass that in Task.fromLine().
The character positions may help later on, when looking at the hide tags option (#848).
How this might work in the Tasks plugin

Move the tag-parsing code out of Task class - to something like approximateTagParsing(line)
In production code:

In Cache.getTasksFromFileContent()  collate the tags for a particular line number, and then pass then in to Task.fromLine()

In test code:

Get the approximate tags from the line, and note how it might differ from the live code
Calculating the offset may be hard. May decide not to worry about that.

I was making a lot of progress on this. I've managed to get the tasks out of the file cache, very easily.
The first real pitfall is the way that the task completion code parses from the end of the line, and uses the old tag recognition regex to find tags. This will risk introducing erroneous tags again (like all-numeric tags).
It needs more thought.

Because this will be a breaking change, I've put a new tasks-2.0 label on it.

I haven't made any firm decisions, but given the incredible power and convenience of the new Properties facility, I think it is likely that I will need to make Tasks entirely treat tags the same way Obsidian itself does.

I can report independently if desired, but I believe the root of the problems here also cover another deviation from the Obsidian tasks standard:
Tags appear to be matched on prefix.
The issue I'm having is tags includes #Leads matches the tags #Leads and #LeadsOnly, even though they should be fully independent tags.

I can report independently if desired, but I believe the root of the problems here also cover another deviation from the Obsidian tasks standard:
Tags appear to be matched on prefix.
The issue I'm having is tags includes #Leads matches the tags #Leads and #LeadsOnly, even though they should be fully independent tags.

Hi @guildencrantz, that is indeed a different from this issue, and it’s covered in the docs:: see the examples:
https://publish.obsidian.md/tasks/Queries/Filters#Tag+Query+Examples
Scroll up from there to read the full docs on tag searches if you wish.

Incidentally, the fact that the Tasks plugin doesn't have the same definition of a tag as Obsidian messes up sort order (if #1 and #task8 are in a task description, Obsidian will incorrectly put this task above #task1 when sorting by tag). This is related to issue https://github.com/obsidian-tasks-group/obsidian-tasks/issues/2070.

Hi @lebigot

Obsidian will incorrectly put this task incorrectly compared to another, #task1 task, when sorting by tag).

I don't understand. Where exactly would Obsidian "put the task incorrectly", and what does it have to do with Tasks?
Please give a concrete example. Thank you.

Ah, sorry, I should have been more specific. I was referring to sorting tasks with:
```tasks
sort by tag
```

In this case, tasks such as:

[ ] Close project #1 and thank everybody #task8
[ ] This should be the first task #task1

are not correctly ordered (because #1 is considered as a tag by Tasks whereas it is not, for Obsidian—at least it is not highlighted as a tag).

are not correctly ordered (because #1 is considered as a tag by Tasks whereas it is not, for Obsidian—at least it is not highlighted as a tag).

But what I'm missing is what this has to do with Obsidian's sorting - as sort by tag is entirely done with code in the Tasks plugin.
Also, check the docs:  sort by tag is a bit non-obvious in that it sorts by the first tag on the task line. Perhaps that is what is causing the confusion?
These days, you can have more control over sorting by tag, using sort by function - there are examples in that link above.
The topic of this issue remains group by tags, however.

Yes, sorting by tag in Tasks is done by the first tag on the task line. My point is that there is a single tag on each line, for Obsidian (namely #task8 and #task1, respectively).
The sorting problem comes from the Tasks plugin thinking that #1 is a tag (and so sorting one task on #1 and the other one on #task#, instead of #task8 and #task1 respectively).
Is my point clear now?
This thread is about grouping by tags, but I can see that Tasks also considers that #<number> is a tag, here: it looks like the same underlying issue as with the wrong sorting order is at work. I can of course create a separate issue, if you prefer. :)

Is my point clear now?

Yes, with the extra detail it is now clear, thank you - and indeed relevant to this issue. No need to create a separate issue.

(This is related to issue https://github.com/obsidian-tasks-group/obsidian-tasks/issues/2070, maybe?)

Yes indeed.


The problem of Reconstruction of 3D Objects from Single Perspective Depth Scans

Hi, thank you for your code.  I have the problem about "Reconstruction of 3D Objects from Single Perspective Depth Scans".
1.In the 3D_generation.sh
# # convert to our format
python convert_shapenet10.py 3DShapeNets
python Kinect_setup.py chair
The data produced by above codes are from ShapeNet . However, the data in the paper show ModelNet, such as ' Example synthetic single perspective kinetic scans created by the authors, produced from the chair class of the ModelNet10 dataset.' in fig8.  It's a contradiction.
2.I guess that  Kinect-VAE-3D-IWGAN.py aims at  fig8, and is it right? Could you share the code that converts Kinect RGB-D images (A Large Dataset of Object Scans dataset [33] ) to voxel representations(fig.10)  ?
Thanks very much! Look forward to your reply.

Hi,

Yes the names are confusing here, if you download the data you will see that it is in fact ModelNet. The citation for ModelNet is weirdly enough : "3D ShapeNets: A Deep Representation for Volumetric Shapes", the download is correct however.

Unfortunately I lost track of this code. It was never in any way automated to the degree that it could be shared or ready for public release.

Hope this helps,
Ed


Theme Block Classes Wildcard for all block types

Add the ability to specify classes that all blocks can take advantage of, per this thread:
https://www.concrete5.org/community/forums/5-7-discussion/themeblockclasses/#770051
Post back with particular syntax.
Update the theme block classes doc page.

Updated Markdown documentation should this get merged.
Block Classes
Adding this method to the PageTheme class:
public function getThemeBlockClasses()
{
    return array(
        'image' => array(
            'img-thumbnail'
        ),
        '*' => array(
            'highlighted'
        )
    );
}

will make it so that any Image block will have the "img-thumbnail" class available in the advanced dropdown of the Custom Design toolbar. The '*' is treated as a wildcard and will make "highlighted" class available to all blocks.