[Fix #5512] Make Kernel#tap a void-context-method

Not sure about two things:

Error message is not pretty. You might not understand what's happening if you
are misunderstanding/misremembering the behavior of tap. But adding a
specialized error message is probably too much effort.

Amount of tests

ping @bbatsov, otherwise I think I'll just close this (don't want to drag out such a long discussion about something like this)

@untitaker I'm traveling for a few weeks and my time for OSS is quite limited right now. I'll take a look at this when I can. Or maybe @koic @jonas054 @Drenmi or @pocke can take it from here.

I think I'd like to see an example added in void_spec.rb for #tap, using for instance the code from #5512.

@jonas054 Done.

While writing the test I found #5551

:+1: Looks good!


Angular 8+ support

Will be great if the library supports Angular 8+

Will be great if the library supports Angular 8+

I second the motion!!

+1

why is the readme telling this supports angular 8+ but the latest release was for angular 6?
I'm trying to update an angular app to angular 10 but i'm kinda forced to move to another library because the latest release doesn't support 8+.

+1
@mjarkk what other library did you find for Angular 8+please ?


either: Implement the Try trait

This  is probably too early to implement this feature, it is unstable for the moment.

Sure, it's too early, and it's also not wanted to implement Try. We don't want to take over Result's job and we don't want to create a semantic difference between left and right. They are arbitrary.

Understand and I completly agree with that choice. I am currently learning some Haskell and thought about the semantic meaning of "Right" and "Left".

It might make sense to forward to inner Try types, unwrapping to Either<L::Ok, R::Ok> or Either<L::Error, R::Error>.
But I do think we should wait until it's stable, especially because there's talk of redesigning the trait.


rdfsx lacks description

Currently, sx_cli/README.md contains only a title, no description. Also, the crate metadata simply reuses the rather coarse synopsis form the project-wide workspace metadata.
For my draft Debian packaging I have com up with the synopsis "CLI tool to process RDF with ShEx, SHACL or DCTAP", and the following description:

rdfsx is a command-line tool
to inspect and validate RDF data
using ShEx, SHACL or DCTAP.
Resource Description Framework (RDF) is a standard model
for data interchange on the Web.
Shape Expressions (ShEx) is a data modelling language
for defining schemas for RDF graphs.
Shapes Constraint Language (SHACL) is a data modelling language
for describing constraints for RDF graphs.
SHACL is a W3C standard.
Dublin Core Tabular Application Profiles (DCTAP) is a simple model
for defining an application profile -
i.e. metadata usage for a specific application.

Perhaps that might be helpful for the upstream README - and if not, then I am obviously interested as well, so I can correct my mistaken guesswork.

I merged the PR #65 in which I added more information to the README.md following your description...I changed the word "standard" by "recommendation" because that's the term used in W3C.


Why not using some existing pretrained landmark detection networks？

I have a question, maybe we can replace the KPDetector with some pretrained face landmark detection networks directly  for VoxCeleb Dataset。
Have you make similar experiments. Maybe you have some other considerations？

Because for me this is not interesting research direction.

Maybe you misunderstood what I meant.  I'm not talking about doing some researchs related to face landmark detection. There are some exsiting landmark detection networks, face_alignment or dlib.
So why not using the keypoints detected from these nets directly.  You have trained a new network: KPDetector. Do you have some considerations?
And, when I retraining the first-order-model, I found the keypoints detected from KPDetector are not at the positions of semantic meaning. But it works well for image animation !
In the paper：Few-shot Video-to-Video Synthesis（also in NIPS 2019 ).  It maybe borrowed some idea from your last pater: MonkeyNet, but it used pretrained face landmark detection directly.

I understand it correctly, please check MonkeyNet paper for motivation.
The main goal of this research direction is to learn from raw set of videos. (e.g in unsupervised manner). Keypoints is only available for faces or human bodies. While the main novelty of this method and monkey-net with respect to others is the ability to train on raw videos without any domain knowledge.

Thank you very much for your reply！


Cast error when trying to use an expression to set a long

The generated code tries to assign the result of the expression to an int variable before calling the binding adapter method, which fails with error: incompatible types: possible lossy conversion from long to int. This should be changed to a long variable. Here is some code that reproduces this issue.
<View
    android:layout_width="match_parent"
    android:layout_height="match_parent"
<EMAIL_ADDRESS><EMAIL_ADDRESS>? 500L : 0L}"

@BindingAdapter("animateVisibility", "animationDelay")
fun View.setAnimatedVisibility(visible: Boolean?, animationDelay: Long?) {
    if (animationDelay != null && animationDelay > 0) {
        GlobalScope.launch(Dispatchers.Main) {
            delay(animationDelay)
            setAnimatedVisibility(visible, null)
        }
        return
    }
    visibility = View.VISIBLE
    val targetAlpha = if (visible == true) 1f else 0f
    SpringAnimation(this, DynamicAnimation.ALPHA, targetAlpha).apply {
        spring.dampingRatio = SpringForce.DAMPING_RATIO_NO_BOUNCY
        addEndListener { _, _, _, _ ->
            if (visible != true) {
                visibility = View.GONE
            }
        }
        start()
    }
}

Sorry, I thought this was for reporting issues with databinding itself.


No a single complete trading cycle in the back-testing, no analysis!

I got this message when I try to run live paper trading with sma-cross example. Does it mean the app can not find an indicator to trade?

My bad, this is a silly question.


Change cudnn version checking to check Major version.

CuDNN versions with the same major version should be ABI
compatible, which means that if we release a binary
with cudnn version 5.1, it should be compatible with
a system whose runtime loads version 5.0.  This check
would trigger if the cudnn version loaded at runtime is
5 but the compile-time version used was 4.
This change is based off of recommendations from
https://github.com/tensorflow/tensorflow/issues/2525#issuecomment-223523008.
Fixes #3225.

Just FYI to @3XX0 who suggested this and @zer0n who ran into this.
(my GPU machine is off so this is untested at the moment, using our CI to 'test' ;)

LGTM


Add a function for /coins/{id}/contract/{contract_address} coingecko endpoint

For more details look at #4

The Defiwrapper team has assigned a reward of 500 USDC, paid through polygon, to the person(s) who's able to finish this high priority task.
Initially the issue has been assigned to James C.

@codeproline
Pro-Dev0219#4992

We've transferred 10% of the total amount to James a retainer fee, per his request, to begin tackling the issue and collaborating.
Welcome to the team @codeproline! :zap:

Txn of $450 to @codeproline for closing the issue 👏 thanks again dude :)


Add server API

What kind of change is this?

Did you add tests for your changes?

Summary of changes

Other information

#2  👈
main

This stack of pull requests is managed by Graphite. Learn more about stacking.

Join @eliastre100 and the rest of your teammates on  Graphite


Fix recursive materialized view

I hereby agree to the terms of the CLA available at: https://yandex.ru/legal/cla/?lang=en
Category (leave one):

Bug Fix

Test failures look relevant.

That test now kills the server:
CREATE TABLE test1 (a UInt8) ENGINE MergeTree ORDER BY a;
CREATE TABLE test2 (a UInt8) ENGINE MergeTree ORDER BY a;
CREATE MATERIALIZED VIEW mv1 TO test1 AS SELECT a FROM test2;
CREATE MATERIALIZED VIEW mv2 TO test2 AS SELECT a FROM test1;
insert into test1 values (1);

Some limitation on depth of passing MV is needed.

https://github.com/yandex/ClickHouse/pull/6433


Feature/app-98 Added Staging and production deployment to pipeline

As part of the circle ci build we can now deploy to staging and production.
This change also takes advantage of git crypt to hide secrets so when we deploy to staging and production we are not exposing passwords etc.
Worth noting that in order to allow others to test the functionality i have left a commit inside which allows deployment from the branch, this will need to be removed before we merge and going forward only master branch can be deployed to staging and production

If your automated tools are failing, it means the branch requires some more work before it can be reviewed. Before creating a PR & asking for a review you should make sure that the automated checks are passing.
Asking for a review should be done once you are confident there aren't any more improvements you should be making for the branch.


lifecycle-cpu-isolation and lifecycle-affinity-required-pods don't appear to be matching pods

Relevant portion of the TNF config (CNF name redacted, can provide whatever is needed side channel):
podsUnderTestLabels:
  - "app.kubernetes.io/name:cnfname-topology"
  - "app.kubernetes.io/name:cnfname-directive"
  - "cnfname-directive:cnfname-directive-payload-coredns"
  - "cnfname-directive:cnfname-directive-topology"
  - "app:nat"
  - "app:cnfname-operator"

And there are pods with requests/limits configured in a way that seems like it would cause the test to fail (mismatched, not using whole CPU's, etc):
[root@dci-server cnf-certification-test]# oc get pods -l cnfname-directive=cnfname-directive-payload-coredns
NAME                                    READY   STATUS    RESTARTS      AGE
cnfname-directive-payload-coredns-2fsgz   1/1     Running   0             21h
cnfname-directive-payload-coredns-5g6xg   1/1     Running   0             21h
cnfname-directive-payload-coredns-5p2tf   1/1     Running   0             21h
cnfname-directive-payload-coredns-5tj9d   1/1     Running   1 (17h ago)   21h
cnfname-directive-payload-coredns-m4sbd   1/1     Running   0             21h
cnfname-directive-payload-coredns-vz489   1/1     Running   0             21h
cnfname-directive-payload-coredns-znkhh   1/1     Running   0             21h

[root@dci-server cnf-certification-test]# oc get pods cnfname-directive-payload-coredns-znkhh -o yaml | grep -A6 resources:
    resources:
      limits:
        cpu: "1"
        memory: 1Gi
      requests:
        cpu: 250m
        memory: 250Mi

but that aren't found when the test suite runs:
          {
            "-classname": "CNF Certification Test Suite",
            "-name": "[It] lifecycle lifecycle-cpu-isolation [common, telco, lifecycle-cpu-isolation, lifecycle]",
            "-status": "skipped",
            "-time": "0.000523242",
            "skipped": {
              "-message": "skipped - Test skipped because there are no []*provider.Pod to test, please check under test labels"
            },
            "system-err": "\u003e Enter [BeforeEach] lifecycle - /usr/tnf/tnf-src/cnf-certification-test/lifecycle/suite.go:55 @ 05/19/23 17:19:27.076\n\u003c Exit [BeforeEach] lifecycle - /usr/tnf/tnf-src/cnf-certification-test/lifecycle/suite.go:55 @ 05/19/23 17:19:27.076 (0s)\n\u003e Enter [It] lifecycle-cpu-isolation - /usr/tnf/tnf-src/cnf-certification-test/lifecycle/suite.go:167 @ 05/19/23 17:19:27.076\n[SKIPPED] Test skipped because there are no []*provider.Pod to test, please check under test labels\nIn [It] at: /usr/tnf/tnf-src/pkg/testhelper/testhelper.go:130 @ 05/19/23 17:19:27.076\n\u003c Exit [It] lifecycle-cpu-isolation - /usr/tnf/tnf-src/cnf-certification-test/lifecycle/suite.go:167 @ 05/19/23 17:19:27.076 (1ms)\n\u003e Enter [ReportAfterEach] lifecycle - /usr/tnf/tnf-src/cnf-certification-test/lifecycle/suite.go:58 @ 05/19/23 17:19:27.076\n\u003c Exit [ReportAfterEach] lifecycle - /usr/tnf/tnf-src/cnf-certification-test/lifecycle/suite.go:58 @ 05/19/23 17:19:27.076 (0s)"
          },

The above is for lifecycle-cpu-isolation but's also relevant for lifecycle-affinity-required-pods as these same pods have affinity rules but not the affinity-related labels or annotations mentioned in the CATALOG.md description which seems like it should cause a failure rather than be skipped.

Has this been figured out?  Just going through the issue list and saw this hasn't been responded to.

Looking that DCI run that you sent me via Slack, the tnf_config.yml looks like its still using targetPodLabels instead of podsUnderTestLabels that is in the original comment.

There have been multiple iterations on this problem. IIRC the issue was filed with a manual run of the test suite but I gave you the latest DCI run. It's possible that's the disconnect.
I can try using the new version of the test suite

Looking that DCI run that you sent me via Slack, the tnf_config.yml looks like its still using targetPodLabels instead of podsUnderTestLabels that is in the original comment.

Just in case; on DCI, we are moving to podsUnderTestLabels starting on tnf v4.2.3, so if you use latest v4.3.0, you should have it in place.

OK I re-ran the tests in DCI again: https://www.distributed-ci.io/jobs/22d3f865-2240-4fb5-972c-6379127b0be2/files
Still getting a skip because of it's not locating the pods though.

@joeldavis84 I'm getting a "job not found" error from that link.

Ok sorry, I deleted a bunch of jobs in response to partner input and may have gotten a bit too over zealous.
New test run: https://www.distributed-ci.io/jobs/abc116a5-e157-478b-9c2b-387302f17fae?sort=date
From tnf_config:
podsUnderTestLabels:
- "app.kubernetes.io/name: cnfname-topology"
- "app.kubernetes.io/name: cnfname-directive"
- "cnfname-directive: cnfname-directive-payload-coredns"
- "cnfname-directive: cnfname-directive-topology"
And verified that the label is present (not sure if this is in the DCI results):
 [root@dci-server dci-openshift-app-agent]# oc get pod cnfname-directive-payload-coredns-dev-hv4gm -o yaml | yq .metadata.labels
{
  "app.kubernetes.io/name": "cnfname-directive",
  "controller-revision-hash": "6bb7fb979",
  "pod-template-generation": "1",
  "cnfname-directive": "cnfname-directive-payload-coredns-dev"
}

[root@dci-server dci-openshift-app-agent]# oc get pod cnfname-directive-payload-coredns-dev-hv4gm -o json | jq .spec.containers[0].resources
{
  "limits": {
    "cpu": "1",
    "memory": "1Gi"
  },
  "requests": {
    "cpu": "250m",
    "memory": "250Mi"
  }
}

In the DCI results I can see "lifecycle-cpu-isolation" being skipped due to no labels:
[SKIPPED] Test skipped because there are no []*provider.Pod to test, please check under test labels

And from how CATALOG.md is worded I would assume both the mismatch between limits and requests as well as requests.cpu being in milicores this would fail.

@joeldavis84 , I've been checking your job, and I think that what is happening is that you're not looking at the correct namespace to retrieve the pods.
If you check the tnf_config.yml file uploaded in the DCI job in Files section, you'll see that you're only tracking tawon namespace:
---
targetNameSpaces:
  - name: tawon

podsUnderTestLabels:
  - "app.kubernetes.io/name: tawon-topology"
  - "app.kubernetes.io/name: tawon-directive"
  - "tawon-directive: tawon-directive-payload-coredns"
  - "tawon-directive: tawon-directive-topology"
...

In the file called tawon_status.log, you can see all the pods deployed in that namespace:
NAME                                                  READY   STATUS    RESTARTS       AGE     IP             NODE        NOMINATED NODE   READINESS GATES   LABELS
nats-7d8fff94fb-6fj7b                                 1/1     Running   0              5d11h   <IP_ADDRESS>    worker-0    <none>           <none>            app=nats,pod-template-hash=7d8fff94fb
tawon-directive-payload-coredns-dev-8z69k             1/1     Running   0              2d      <IP_ADDRESS>   worker-0    <none>           <none>            app.kubernetes.io/name=tawon-directive,controller-revision-hash=6bb7fb979,pod-template-generation=1,tawon-directive=tawon-directive-payload-coredns-dev
tawon-directive-payload-coredns-dev-b6qg6             1/1     Running   0              2d      <IP_ADDRESS>   storage-2   <none>           <none>            app.kubernetes.io/name=tawon-directive,controller-revision-hash=6bb7fb979,pod-template-generation=1,tawon-directive=tawon-directive-payload-coredns-dev
tawon-directive-payload-coredns-dev-hv4gm             1/1     Running   2 (29m ago)    2d      <IP_ADDRESS>   worker-3    <none>           <none>            app.kubernetes.io/name=tawon-directive,controller-revision-hash=6bb7fb979,pod-template-generation=1,tawon-directive=tawon-directive-payload-coredns-dev
tawon-directive-payload-coredns-dev-p9cn9             1/1     Running   0              2d      <IP_ADDRESS>   storage-1   <none>           <none>            app.kubernetes.io/name=tawon-directive,controller-revision-hash=6bb7fb979,pod-template-generation=1,tawon-directive=tawon-directive-payload-coredns-dev
tawon-directive-payload-coredns-dev-pgkzp             1/1     Running   0              2d      <IP_ADDRESS>   worker-1    <none>           <none>            app.kubernetes.io/name=tawon-directive,controller-revision-hash=6bb7fb979,pod-template-generation=1,tawon-directive=tawon-directive-payload-coredns-dev
tawon-directive-payload-coredns-dev-r5btk             1/1     Running   2 (166m ago)   2d      <IP_ADDRESS>   worker-2    <none>           <none>            app.kubernetes.io/name=tawon-directive,controller-revision-hash=6bb7fb979,pod-template-generation=1,tawon-directive=tawon-directive-payload-coredns-dev
tawon-directive-payload-coredns-dev-wpbnt             1/1     Running   0              2d      <IP_ADDRESS>   storage-0   <none>           <none>            app.kubernetes.io/name=tawon-directive,controller-revision-hash=6bb7fb979,pod-template-generation=1,tawon-directive=tawon-directive-payload-coredns-dev
tawon-operator-controller-manager-6575fd7675-8pdmh    2/2     Running   0              7d7h    <IP_ADDRESS>   worker-3    <none>           <none>            control-plane=controller-manager,pod-template-hash=6575fd7675
tawon-topology-topology-aggregator-747dbb8966-ld59w   1/1     Running   0              7d6h    <IP_ADDRESS>   worker-1    <none>           <none>            app.kubernetes.io/name=tawon-topology,pod-template-hash=747dbb8966,tawon-directive=tawon-topology-topology-aggregator
tawon-topology-topology-aggregator-747dbb8966-wgpzg   1/1     Running   0              7d6h    <IP_ADDRESS>   worker-3    <none>           <none>            app.kubernetes.io/name=tawon-topology,pod-template-hash=747dbb8966,tawon-directive=tawon-topology-topology-aggregator

If you check the list, the pod you're commenting is not there, I suppose it's in a different namespace.
So, you need to really check the tnf_config variable passed to your DCI job to be sure that you're passing all the namepsaces where you're deploying workloads and the labels for pods and operators to retrieve by tnf. Remember you have some examples in our cnf-cert role.
I'd not say, for the moment, that it's an issue on tnf side, because we're testing these tests recurrently with the latest and we can confirm this is working fine in tnf v4.2.4 and v4.3.0 for sure. If you need some support here, don't hesitate to reach us!

As long as the pods are labeled they will be tested regardless of their parent being a daemonset or not.  CNFs aren't supposed to use daemonsets per the requirements docs but it shouldn't prevent the pods themselves from being tested if they are labeled.

we seem to be running into this issue again with a different partner who is using regular deployments. The test is being skipped when it seems like it should be failing due to subdividing CPU's and "limits" != "requests"

Can you send me the claim.json from their run?

This is the run I was looking at when I made this comment and it's the latest one: https://www.distributed-ci.io/jobs/80912905-b9ed-45dd-9701-ad35584d0712?sort=date


Return immediately if transition not found while ignore_invalid_triggers is True

Coverage decreased (-0.3%) to 97.372% when pulling 818a9ce7ef1fc1740683ea6bed2d3195409c0680 on Ch00k:master into fee785e87373f86923869fe6d1d26bb677d5a8a6 on tyarkoni:master.

Coverage decreased? Details  look good! Thank you @Ch00k!


i want to show TextLayer, which  js file  i must integrate?  thk

Link to PDF file (or attach file here):
Configuration:

Web browser and its version:
Operating system and its version:
PDF.js version:
Is an extension:

Steps to reproduce the problem:
1.
2.
What is the expected behavior? (add screenshot)
What went wrong? (add screenshot)
Link to a viewer (if hosted on a site other than mozilla.github.io/pdf.js or as Firefox/Chrome extension):

The viewer components examples, see https://github.com/mozilla/pdf.js/tree/master/examples/components, provides text-selection by default and should be the simplest way to build a custom viewer.
Closing as answered.


Chromium and Google Chrome need new maintainers

The Chromium and Google Chrome packages are desperately in need of a new maintainer (since updates are very security critical in both cases).
Ideally we'd have a team of multiple maintainers or at least multiple testers to test on multiple architectures and multiple channels.

The dev channel should not delay updates IMO and should probably be used for testing only (can be useful to test and fix build failures in advance).
Tests (should cover the essential functionality, minor regressions can also be fixed later):
Browser startup + version matches, Random Browsing, Video+Audio (YouTube), WebGL, and JS + WASM.
(Optional: Widevine CDM (proprietary), VA-API (requires a rebuild), Octane 2.0 JavaScript Benchmark, X11/XWayland + different GPUs (GPU acceleration)).
Unfortunately the build requirements for Chromium are quite demanding (source):

A 64-bit machine + enough RAM (officially >8GB, but the Nix build seems to only need ~2GB)
A high-end CPU or a lot of patience (builds can easily take 2-6 hours, depending on your setup)
10-20GB of free disk space (tarball: ~750MB, unpacked: ~6.2GB, during build: a few more GB)

Which means this requires some dedication and/or hardware.
Workflow
Notifications of new updates can be acquired via the following RSS feed:
https://chromereleases.googleblog.com/feeds/posts/default (filter for Stable Channel Update for Desktop).
Typically, within a few hours of an upstream release being available, a source tarball is also available and pkgs/applications/networking/browsers/chromium/update.sh can be used to update upstream-info.nix. Note that when upstream does not have a tarball yet, update.sh may silently fail to update a hash in upstream-info.nix, making it look like the version was updated while retaining the old hash.
All updates are considered security-critical need to be backported to the stable channel (i.e. open a separate PR).
Hints
In upcoming releases, I expect WebGL to break again because of a libGLESv2.so loading issue that this patch is working around, watch out for that.
Unverified: Use the --cores option to build with ~2x the numbers of threads/cores to avoid only 50% CPU utilization/load.

TODO: Add more relevant information (feel free to ask questions).
TODO: Need to package 79.0.3945.130 (released 2020-01-16).
Credits: @ivan (Workflow & Hints), @thefloweringash (Table for the "Testing-Matrix")
cc: @bendlas @thefloweringash @msteen

I don't know what this would look like yet, but I think we could provide access to a big machine for testing from time to time. How often would this be needed, and what would be the most convenient (for maintainers) way to do it?

@grahamc that sounds like a good idea, I was already wondering if something like this would be possible (especially if we have some underused resources to spare). From my RSS log there are usually 2 (sometimes 3) stable channel updates per month (not counting PRs for fixes, configuration changes, etc.). I'm not sure what the most convenient way would look like (or what options are available) but I guess it wouldn't matter that much.
Maybe also interesting in this regard: @GrahamcOfBorg doesn't blacklist Chromium and manages to build ~57% (x86_64) / ~73% (aarch64) during the one hour limit (IIRC the build rate decreases a bit towards the end, but even for x86_64 a complete build should then be possible withing ~2.5h). If there would be a way to fetch the build results form @GrahamcOfBorg (which I'm not aware of, but I'm not really familiar with the implementation or possible hacks (e.g. a hook to push the result to another server)), this might actually also be a good option.
The following notes are based on my limited experience as provisional maintainer (I only handled one update so far):
With the minimal testing approach (which should be sufficient) we'd need to build Chromium at least twice (for nixos-unstable and the stable channel) and I would try to build chromiumBeta and chromiumDev at least if the major version changes to catch bugs, incompatible patches, etc. in advance (so that stable channel updates are usually trivial and can be merged fast).
Currently I have only my old desktop PC (takes ~6h to build Chromium) and a spare VPS (only dual-core, takes ~24h to build Chromium) available, which is a bit limiting (and a reason why I'd like to avoid having to permanently maintain Chromium), especially since using my desktop PC for this is problematic/annoying. I think it would work for now (mainly takes a bit longer to test) and I should still have a few unused AWS credits that I could probably use for this. But if builds would sometimes fail towards the end (or actually even anywhere during the actual build phase) this could quickly become problematic (I did build Chromium with --keep-failed but haven't tested yet how easy it would be to iteratively fix and resume the build after errors)
I also assume that the build for the stable channel should be fine if Chromium builds on nixos-unstable, but I don't trust that assumption enough to merge the backport without testing (after all there could still be problems like too old dependencies, missing backports of some patches, different abstractions, etc.).
As a result I was wondering if it could make sense to add a Hydra job for a branch like chromium-stable which we would push to after the build is fine on master (but I haven't really thought this trough yet). The advantage would be that the result would already be in the official binary cache, which might simplify testing a bit (especially if we had multiple testers) and we could check if the aarch64 builds on nixos-stable succeed. But Hydra builds do also take ~24h IIRC (and there might be  additional drawbacks like evaluation overhead, management, etc.).
Anyway, these are my (a bit longer than expected - sorry :o) thoughts on this matter. I hope they do make some sense and are somewhat ordered. If there is an option that we could setup and maintain without much effort that'd be awesome, if not I'll try to optimize my current workflow and we could also revisit this topic later if problems/complications occur. And this is also only my opinion as a provisional maintainer, maybe we find another maintainer soon who has e.g. more resources available.

@primeos as discussed in #79242 you can put me for chromium testing on unstable. Just to clarify, the machine I can run tests on is headless, so, I'll not be able to really manually do any checks on the browser. And to confirm is that enough to run (for example) nixpkgs-review pr 79458 -p nixosTests.chromium?
P.S. If you need the same testing for stable, I can run it as well.

As a result I was wondering if it could make sense to add a Hydra job for a branch like chromium-stable which we would push to after the build is fine on master (but I haven't really thought this trough yet). The advantage would be that the result would already be in the official binary cache, which might simplify testing a bit (especially if we had multiple testers) and we could check if the aarch64 builds on nixos-stable succeed. But Hydra builds do also take ~24h IIRC (and there might be additional drawbacks like evaluation overhead, management, etc.).

This should definitely be fine. We have this also for other things, like Python and Haskell packages set. We would need then a pkgs/top-level/release-chromium.nix and a Hydra job. I can't create the Hydra job though. Those with write privileges can then (force-)push to that branch.

P.S. If you need the same testing for stable, I can run it as well.

@Frostman if that wouldn't be a problem for you this would be awesome and very helpful (I didn't mention nixos-stable right away as I was afraid of asking for too much :D). Anyway, thanks for your great help and sorry for the delayed reply.

@primeos yes, sure, I'll run nixosTests.chromium for stable as well.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/go-no-go-meeting-nixos-20-03-markhor/6495/16

This issue has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/chromium-for-darwin/9275/2


Consider improving understandability of Exceptions (consumption)

Is your feature request related to a problem? Please describe.
Consuming models may raise exceptions which may be difficult to understand and pinpoint the issue.
For example, my case I reveice "Index was outside the bounds of the array." an then "Destination is too short"
In StackTrace I can see it it related ngrams, and thus, probably string values in my data. In this case, I was not able to find the reason yet even if exception happens regularly in some cases. It might be related to calling the model from multiple threads.
   at Microsoft.ML.Data.NgramBufferBuilder.AddNgrams(VBuffer`1& src, Int32 icol, UInt32 keyMax)
   at Microsoft.ML.Transforms.Text.NgramExtractingTransformer.Mapper.<>c__DisplayClass11_0.<MakeGetter>b__2(VBuffer`1& dst)
   at Microsoft.ML.Transforms.LpNormNormalizingTransformer.Mapper.<>c__DisplayClass8_0.<MakeGetter>b__5(VBuffer`1& dst)
   at Microsoft.ML.Data.ColumnConcatenatingTransformer.Mapper.BoundColumn.<>c__DisplayClass20_0`1.<MakeGetter>b__0(VBuffer`1& dst)
   at Microsoft.ML.Data.ColumnConcatenatingTransformer.Mapper.BoundColumn.<>c__DisplayClass20_0`1.<MakeGetter>b__0(VBuffer`1& dst)
   at Microsoft.ML.Data.SchemaBindablePredictorWrapperBase.<>c__DisplayClass19_0`2.<GetValueGetter>b__0(TDst& dst)
   at Microsoft.ML.Data.PredictedLabelScorerBase.EnsureCachedPosition[TScore](Int64& cachedPosition, TScore& score, DataViewRow boundRow, ValueGetter`1 scoreGetter)
   at Microsoft.ML.Data.MulticlassClassificationScorer.<>c__DisplayClass16_0.<GetPredictedLabelGetter>b__0(UInt32& dst)
   at Microsoft.ML.Transforms.KeyToValueMappingTransformer.Mapper.KeyToValueMap`2.<>c__DisplayClass8_0.<GetMappingGetter>b__0(TValue& dst)
   at Microsoft.ML.Data.TypedCursorable`1.TypedRowBase.<>c__DisplayClass9_0`2.<CreateConvertingActionSetter>b__0(TRow row)
   at Microsoft.ML.Data.TypedCursorable`1.TypedRowBase.FillValues(TRow row)
   at Microsoft.ML.Data.TypedCursorable`1.RowImplementation.FillValues(TRow row)
   at Microsoft.ML.PredictionEngineBase`2.FillValues(TDst prediction)
   at Microsoft.ML.PredictionEngine`2.Predict(TSrc example, TDst& prediction)
   at Microsoft.ML.PredictionEngineBase`2.Predict(TSrc example)

   at System.ThrowHelper.ThrowArgumentException_DestinationTooShort()
   at System.Span`1.CopyTo(Span`1 destination)
   at Microsoft.ML.Data.BufferBuilder`1.GetResult(VBuffer`1& buffer)
   at Microsoft.ML.Data.NgramBufferBuilder.GetResult(VBuffer`1& dst)
   at Microsoft.ML.Transforms.Text.NgramExtractingTransformer.Mapper.<>c__DisplayClass11_0.<MakeGetter>b__2(VBuffer`1& dst)
   at Microsoft.ML.Transforms.LpNormNormalizingTransformer.Mapper.<>c__DisplayClass8_0.<MakeGetter>b__5(VBuffer`1& dst)
   at Microsoft.ML.Data.ColumnConcatenatingTransformer.Mapper.BoundColumn.<>c__DisplayClass20_0`1.<MakeGetter>b__0(VBuffer`1& dst)
   at Microsoft.ML.Data.ColumnConcatenatingTransformer.Mapper.BoundColumn.<>c__DisplayClass20_0`1.<MakeGetter>b__0(VBuffer`1& dst)
   at Microsoft.ML.Data.SchemaBindablePredictorWrapperBase.<>c__DisplayClass19_0`2.<GetValueGetter>b__0(TDst& dst)
   at Microsoft.ML.Data.PredictedLabelScorerBase.EnsureCachedPosition[TScore](Int64& cachedPosition, TScore& score, DataViewRow boundRow, ValueGetter`1 scoreGetter)
   at Microsoft.ML.Data.MulticlassClassificationScorer.<>c__DisplayClass16_0.<GetPredictedLabelGetter>b__0(UInt32& dst)
   at Microsoft.ML.Transforms.KeyToValueMappingTransformer.Mapper.KeyToValueMap`2.<>c__DisplayClass8_0.<GetMappingGetter>b__0(TValue& dst)
   at Microsoft.ML.Data.TypedCursorable`1.TypedRowBase.<>c__DisplayClass9_0`2.<CreateConvertingActionSetter>b__0(TRow row)
   at Microsoft.ML.Data.TypedCursorable`1.TypedRowBase.FillValues(TRow row)
   at Microsoft.ML.Data.TypedCursorable`1.RowImplementation.FillValues(TRow row)
   at Microsoft.ML.PredictionEngineBase`2.FillValues(TDst prediction)
   at Microsoft.ML.PredictionEngine`2.Predict(TSrc example, TDst& prediction)
   at Microsoft.ML.PredictionEngineBase`2.Predict(TSrc example)

Describe the solution you'd like
Unsure. Maybe  showing, something like "Column XXX throwed an exception" and then putting the actual Exception inside the InnerException?
Or, maybe Model Builder could include a "Create debuggable model" which would add the necessary source code the debug such issues without manual setup?
Or, a guide on how to enable debuggability manually, such as by downloading Microsoft.ML source code and referencing directly from local project?
Describe alternatives you've considered
I might try adding Microsoft.ML source code directly to my project and reference it from there. Are there any known issues doing this, such as version mismatch?

@beccamc , @JakeRadMSFT  for  visibility.

Issues was very likely to calling the class (but multiple instances, or at least that was the intent) from multiple threads. It is no longer happening after moving all calls to single thread. It was not about the contents of the field/property as I expected.
I think there may have been other issues in Github where it is not clear which columns and row is causing the issue, and/or what exactly is the issue, so potentially the error / dataset validation messages could still be improved.

@torronen To confirm, this is a problem coming from your code? This isn't an error being thrown by model builder, but rather an issue working with models?

@beccamc Yes, correct. Only relationship with model builder is that the model is created with Model Builder. The issues was fixed by removing multi-threading.


Error in Zoo attack

Describe the bug
Shape error in Zoo attack:
x_adv = attack.generate(x_test)
 File "/job/model-code/art/attacks/zoo.py", line 180, in generate
   res = self._generate_batch(x_batch, y_batch)
 File "/job/model-code/art/attacks/zoo.py", line 223, in _generate_batch
   best_dist, best_label, best_attack = self._generate_bss(x_batch, y_batch, c)
 File "/job/model-code/art/attacks/zoo.py", line 320, in _generate_bss
   x_adv = self._optimizer(x_adv, y_batch, c)
 File "/job/model-code/art/attacks/zoo.py", line 380, in _optimizer
   _,_ , loss = self._loss(expanded_x, expanded_x + coord_batch.reshape(expanded_x.shape), expanded_targets,
ValueError: cannot reshape array of size 8388608 into shape (256,3,32,32)

To Reproduce
CIFAR-10 dataset

Fixed in b0ecc55.

Bug still there (ART version 1.3.1)
Traceback (most recent call last):
  File "generate_adv.py", line 194, in <module>
    main(args)
  File "generate_adv.py", line 175, in main
    adv_data = attack.generate(x=x_test, y=y_test)
  File "/home/aaldahdo/adv_dnn/venv/lib/python3.8/site-packages/art/attacks/attack.py", line 74, in replacement_function
    return fdict[func_name](self, *args, **kwargs)
  File "/home/aaldahdo/adv_dnn/venv/lib/python3.8/site-packages/art/attacks/evasion/zoo.py", line 222, in generate
    res = self._generate_batch(x_batch, y_batch)
  File "/home/aaldahdo/adv_dnn/venv/lib/python3.8/site-packages/art/attacks/evasion/zoo.py", line 263, in _generate_batch
    best_dist, best_label, best_attack = self._generate_bss(x_batch, y_batch, c_current)
  File "/home/aaldahdo/adv_dnn/venv/lib/python3.8/site-packages/art/attacks/evasion/zoo.py", line 380, in _generate_bss
    x_adv = self._optimizer(x_adv, y_batch, c_batch)
  File "/home/aaldahdo/adv_dnn/venv/lib/python3.8/site-packages/art/attacks/evasion/zoo.py", line 455, in _optimizer
    expanded_x, expanded_x + coord_batch.reshape(expanded_x.shape), expanded_targets, expanded_c,
ValueError: cannot reshape array of size 25165824 into shape (4096,32,32,3)

Hi @aldahdooh, thank you for your message. I was not able to reproduce your observation with branch dev_1.4.3 based on example get_started_pytorch.pychange to useZooAttack`. Could you please provide more details or code example how to reproduce the error?

For CIFAR-10 dataset
Note: No error with MNIST
attack = ZooAttack(classifier=kclassifier, batch_size=32)
adv_data = attack.generate(x=x_test, y=y_test)

Hi @aldahdooh I have tried to reproduce this issue with dev_1.3.1 and dev_1.4.3 using get_started_keras.py and have not been able to reproduce the issue with the attack definition above for the first 32 test samples. Would you be able to show the entire code example producing this issue?

zoo_test.zip
Thanks for your reply, Attached is the code. Just run generate_adv.py -d=cifar. I run it with MNIST and no errors encountered. With CIFAR, the problem came with the last batch size iteration.

Oh, I see, it happens in the last batch iteration, thank you, that's very helpful. Let me try again using your code.

Hi @aldahdooh I have pushed an update for ZOO to #755 that should fix the issue. If you have time, could you please try it out and let me know if it works for you?
I have noticed that you are creating the attacks in generate_Adv.py with the attack's default arguments which are selected to let the attack run fast but not necessarily very strong.

Hi @beat-buesser, Many thanks for your feedback. I will do that ASAP since my machine is busy now with other tasks.
And thanks for your note, I do agree with you, I did that to compare with other works that use same settings.


⚠ Bofrost.at has degraded performance

In ebcbe6a, Bofrost.at (https://www.bofrost.at) experienced degraded performance:

HTTP code: 200
Response time: 1198 ms

Resolved: Bofrost.at performance has improved in c44df8a after 8 minutes.


feat: add drag and drop to move letters

Issue
N/A
Description
Add drag and drop to move letters.
Other Information

Pull Request Checklist
Please check if your pull request fulfills the following requirements:

[x] The pull request is named according to the format: <type>(optional scope): <description>
[ ] The pull request is associated with a GitHub issue. Note: if possible use the automatic close keywords
[x] The pull request is labeled
[x] Affected platforms are labeled
[x] Commits follow the Conventional Commits specification
[x] There are no difficult to understand places left without comments
[x] The changes do not generate new warnings

[!NOTE]
Types of pull requests

feat - adding new features
fix - bug fixes
test - adding or correcting tests
perf - changes that improve performance
refactor - simple rewriting or restructuring of code without adding new features or fixing bugs
style - changes in code styles and no changes in logic
build - changes related to the build of the project and dependencies
ci - changes related to continuous integration
docs - changes in documentation or just comments in source code
chore - something that doesn't fit the other possible types

Pull request labels

type/breaking-change - pull requests with changes that are not backward compatible
type/build - pull requests that change the project's build or dependencies
type/chore - pull requests without making changes to the code, project build, formatting, documentation, etc
type/ci - pull requests whose changes are related to continuous integration
type/documentation - pull requests that only change documentation
type/feature - pull requests that add new features
type/fix - pull requests that fix a bug
type/localization - pull requests that change translation
type/performance - pull requests that improve performance
type/refactor - pull requests that refactor a section of code
type/style - pull requests that change code styles
type/test - pull requests that add or correct tests
ignore-for-release - for pull requests that do not need to be appeared in release notes

A pull request appears in the release notes if it has one of the labels: type/breaking-change, type/feature, type/fix, type/localization, type/performance

Affected platforms labels

platform/all - pull requests that are related to the all platforms
platform/android - pull requests that are related to the Android platform
platform/desktop - pull requests that are related to the desktop
platform/ios - pull requests that are related to the iOS platform
platform/macos - pull requests that are related to the macOS platform
platform/other - pull requests that are related to an unknown platform
platform/uwp - pull requests that are related to the Universal Windows Platform
platform/wasm - pull requests that are related to the WebAssembly platform
platform/winui - pull requests that are related to the WinUI platform

As I wasn't sure how realistic of a ask this could be, I didn't open a separate issue and just asking here: Would it be possible implement feature to move emails "between" two email accounts? (I currently use Thunderbird for this)

Seems like a reasonable idea. Feel free to open an issue so we can track it properly. Adding details about your use case would be helpful!

As I wasn't sure how realistic of a ask this could be, I didn't open a separate issue and just asking here: Would it be possible implement feature to move emails "between" two email accounts? (I currently use Thunderbird for this)

Seems like a reasonable idea. Feel free to open an issue so we can track it properly. Adding details about your use case would be helpful!


error when i tried to extract a validation set

Hello , i got this error when i tried to extract a validation set, and measuring score and accuracy :

---------------------------------------------------------------------------
ValueError                                Traceback (most recent call last)
<ipython-input-23-580a17ec56d5> in <module>()
      5 X_test = X_test[:-validation_size]
      6 Y_test = Y_test[:-validation_size]
----> 7 score,acc = model.evaluate(X_test, Y_test, verbose = 0, batch_size = validation_size)
      8 print("score: %.2f" % (score))
      9 print("acc: %.2f" % (acc))

ValueError: not enough values to unpack (expected 2, got 0)

Why i got this error ?

Please check what value unpacking means:
https://stackoverflow.com/questions/749070/partial-list-unpack-in-python
Are you running my original notebook? Or are you training with your own data?

i'm running my own data, what is the solution ?

The solution is to check the dimensions of X_test, Y_test. And also check the documentation of  model.evaluate.
https://keras.io/models/model/
The inputs cleary doesn't fit for model.evaluate so it produces no return value. I think the problem is the dimension of your data.
I can't provide you exact solution so I am closing this issue. Please don't open an issue when the problem is  with your own code.


I want use gpt-3.5-turbo for nlp task

I sometimes use gpt-3.5-turbo for NLP tasks like text-davinci-003.
Because it's cheaper and feels like it performs much better than Curie.
But there are some problems with this. In the current version of python-preview, if I use the chat backend, it forces the template to record the user's conversation. This increases the number of tokens I use, which is costly. Also, if I'm dealing with long texts, it hits token limit in no time. like example below.

This can be solved by putting a memorization setting in the PromptTemplateConfig class and modifying the semantic-kernel/python/semantic_kernel/orchestration/sk_function.py, as shown in the photo below.
But I didn't open the PR because I'm not sure if it will match the direction Microsoft is looking at.

In the same vein, I'd like to see ChatCompletion imported via import_semantic_skill_from_directory the way it's done in the text-davinci-003. Currently I'm importing skills the following way and it feels unnatural, please let me know if I'm missing something.
def import_skills(
    kernel: sk.Kernel, skill_dir="./skills"
) -> Dict[str, sk.SKFunctionBase]:
    skills = {}

    for skill in os.listdir(skill_dir):
        if skill.endswith("Skill"):
            s = kernel.import_semantic_skill_from_directory(skill_dir, skill)
            skills[skill] = s

    skills["ChatSkills"] = {}
    skills["ChatSkills"][
        "ExtractInformationList"
    ] = extract_information.build_semantic_chat_function(kernel)

    return skills

I think using skprompt.yaml for prompt template instead of skprompt.txt would allow for a much freer use of the model.

Hey @joowon-dm-snu! Thanks for the thoughtful feedback, let me summarize to make sure I'm capturing everything:

You'd like to be able to use chat backends without keeping conversation history (totally agree with that!)
You've tried adding a memorize flag, and that seems like a natural solution (also agree, I like the look of that, it feels natural)
You want to be able to easily import skills that use chat backends from a directory (this is easy for functions that use a text completion backend, but not for ones using chat backends yet)
You would like more flexibility in skprompt.txt (suggest a structured format like YAML)

I'd be happy to make sure 1, 2, and 3 all happen! I think those are very reasonable asks. I think (4) we'd have to think through more; specifically, what information we'd want to put with a text prompt if we were going to support a structured format (and whether that info should just be in the config.json file, instead)
Thanks again for all your time working with SK @joowon-dm-snu! The community feedback is invaluable for developing and refining this further!!

I might be wrong but I think the ask if about using the /chat endpoint the same way we use /completion, ignoring the chat history aspect, and having only one System message and one User message, using the Assistant message response. @joowon-dm-snu does that make sense?
e.g.
function = skprompt.txt
Summarize this: {{$input}}
and translate to French

function.InvokeAsync(input)
POST /v1/chat/completions
{
  "model": "gpt-3.5-turbo",
  "messages": [{"role": "user", "content": "Summarize this: [injected text]\nand translate to French"}]
}

result = function.InvokeAsync(input)
{
  ...
  "object": "chat.completion",
  "choices": [{
    "index": 0,
    "message": {
      "role": "assistant",
      "content": "...summary in French here...",
    },
    "finish_reason": "stop"
  }],
  "usage": { ...  }
}

result => ...summary in French here...

Sorry for the confusion, I should have written a little more structured, but it was 4am and I was a little tired :)
I think @jjhenkel summarized it well, it was all what I wanted to say. 💯
The @dluc example is also correct, in fact I'm writing code like @dluc 's example in my personal library.
I wasn't sure how I can explain that example well, so I only included the intent this time, but thanks for catching it. You got my mind. I originally wanted to say this as another feature request.
Thanks for great open-source. I like its philosophy and MS's code works. I'm preparing consultations for other companies with semantic-kernel and hope this open source grow more. So feel free to message me if you need a little help.

@dluc perhaps my question relates to what @joowon-dm-snu is raising. Is there any ongoing shot in enabling gpt-3.5-turbo in ITextCompletion so that we can CreateSemanticFunction with this model?

@tynguyen it's not planned but I agree it's very important. I'm currently thinking through a few options to see which one would be the most seamless integration. One thing to check is how the tokenization works with the chat endpoint, and whether there's a message size limit. I couldn't find any information online yet.

@dluc: I'm pleased to hear that. Regarding to the tokenization, is this what you're referring to?

Source: https://platform.openai.com/docs/guides/chat/introduction
If this does not work, a trick in this is to set a conservative number (for example, 4000 instead of 4096) as the maximum total tokens limit (message + completion tokens) for gpt-turbo-3.5 and it's been working well. What do you think?

@jjhenkel
I hope feature below implemented soon. This will help managing my skill directories more systemically.

You want to be able to easily import skills that use chat backends from a directory (this is easy for functions that use a text completion backend, but not for ones using chat backends yet)

If concept below is okay, I can add PR soon like #505
# this is original import_semantic_skill_from directory
    def import_semantic_skill_from_directory(
        self, parent_directory: str, skill_directory_name: str
    ) -> Dict[str, SKFunctionBase]:
        CONFIG_FILE = "config.json"
        PROMPT_FILE = "skprompt.txt"

        kernel = self.kernel()
        ...
            config = PromptTemplateConfig()
            config_path = os.path.join(directory, CONFIG_FILE)
            with open(config_path, "r") as config_file:
                config = config.from_json(config_file.read())

            # Load Prompt Template
            with open(prompt_path, "r") as prompt_file:
                template = PromptTemplate(
                    prompt_file.read(), kernel.prompt_template_engine, config
                )
       ...

# this is my proposal for semantic chat skills
    def import_semantic_chat_skill_from_directory(
        self, parent_directory: str, skill_directory_name: str
    ) -> Dict[str, SKFunctionBase]:
        CONFIG_FILE = "config.json"
        USER_QUERY_FILE = "sk_user_query.txt"
        PROMPT_FILE = "sk_chat_prompt.txt"
        SYSTEM_MSG_FILE = "sk_system_prompt.txt"

        kernel = self.kernel()
        ...
            with open(user_query_path, "r") as prompt_file:
                user_query_msg = user_query_path.read()

            template = ChatPromptTemplate(
                user_query_msg, # if no user_query_file, use "{{$input}}"
                kernel.prompt_template_engine,
                config,
            )

            # Load System Message
            with open(system_msg_path, "r") as prompt_file:
                system_msg = system_msg_path.read()
            template.add_system_message(system_msg)

            # Load Prompt Template
            with open(prompt_path, "r") as prompt_file:
                prompt = prompt_file.read()
            template.add_user_message(prompt)
        ...

@joowon-dm-snu  @tynguyen this is now implemented, pls see the latest nuget 0.12
example: https://github.com/microsoft/semantic-kernel/blob/main/samples/dotnet/kernel-syntax-examples/Example26_SemanticFunctionsUsingChatGPT.cs
IKernel kernel = new KernelBuilder().WithLogger(ConsoleLogger.Log).Build();

// Note: we use Chat Completion and GPT 3.5 Turbo
kernel.Config
    .AddAzureChatCompletionService("id", "gpt-35-turbo", "https://....openai.azure.com/", "...API KEY...");

var func = kernel.CreateSemanticFunction(
    "List the two planets closest to '{{$input}}', excluding moons, using bullet points.");

var result = await func.InvokeAsync("Jupiter");
Console.WriteLine(result);

@joowon-dm-snu @tynguyen this is now implemented, pls see the latest nuget 0.12
example: https://github.com/microsoft/semantic-kernel/blob/main/samples/dotnet/kernel-syntax-examples/Example26_SemanticFunctionsUsingChatGPT.cs
IKernel kernel = new KernelBuilder().WithLogger(ConsoleLogger.Log).Build();

// Note: we use Chat Completion and GPT 3.5 Turbo
kernel.Config
    .AddAzureChatCompletionService("id", "gpt-35-turbo", "https://....openai.azure.com/", "...API KEY...");

var func = kernel.CreateSemanticFunction(
    "List the two planets closest to '{{$input}}', excluding moons, using bullet points.");

var result = await func.InvokeAsync("Jupiter");
Console.WriteLine(result);

@dluc does your team has plan for python porting? if no one took it yet, I can take care. i need it

@joowon-dm-snu ported, see https://github.com/microsoft/semantic-kernel/pull/643. Will be available with the next version of the pip package


hubot script how to get Room name？

I try to use hubot control permissions, I think most hubot all function can be applied to join in the Room, but some will only respond to the designated person or Room, at this time I can get to the Room ID, but can't get Room Name, how should do?

you'll need to access the getRoomId method on the adapter and pass the roomid to it.  You'll need the bot role assigned to the user in rocket.chat for this function to work also.

This method can only obtain the roomId, but unable to get to the room name

@thinkeridea i've the same problem, i'm unable to retrieve room name from a roomID.
		@tryCache _roomIdCache, 'getRoomIdByNameOrId', room, 'Room ID'```

@geekgonecrazy as you can see you can obtain the RoomId by name or id, but if we want to get the room name from an id, there is not method for this in driver.

@JigSawFr I know simple increase Rocket. Chat service API can quickly realize demand, but I'm meteor is not very familiar with, the modified build always fail (perhaps China's firewall), also in trying to have some progress

@thinkeridea yes, rocket api has a method to get info from a room by ID : https://rocket.chat/docs/developer-guides/rest-api/channels/info
And it's returning all info with it's name !

@JigSawFr I added the server methods getRoomNameById , maintain and present model is consistent, now also in testing availability, specific submission: https://github.com/thinkeridea/Rocket.Chat/commit/231cdaa26ca203d1c4ea4ac2623626a744939635

@JigSawFr @geekgonecrazy My practice is successful, very convenient, hubot rocketchat adapter changes: https://github.com/thinkeridea/hubot-rocketchat/commit/f84f50480adaa683480d1d7885bcb6a4ac7e1b4b

@thinkeridea, finally we have created a service for your scripts which can now use rocket chat api to have more need functions as for example: getRoomNameById, sendPrivateMessage, etc.. detect room type etc..

@thinkeridea you rock!  Looks like when 0.57.0 lands you will be able to simply call that method! :)

@JigSawFr @geekgonecrazy I implemented a simple hubot deployment script automatically, if interested can help add some functions, I will add more documents and assist in the next.
https://github.com/thinkeridea/hubot-gitlab-deploy


1.1.x do not work when deployed to Windows

Getting an error when deployed to Windows consumption plan. Downgrading to 1.0.5 works fine.

@horihiro Are you seeing the same?

Yes, I can reproduce it.😕

There are following logs in log file @ D:\home\LogFiles\Application\Functions\Host
2020-06-20T07:11:35.484 [Information] thread 'main' panicked at 'called `Result::unwrap()` on an `Err` value: Os { code: 6, kind: Other, message: "The handle is invalid." }', cli\ops\io.rs:86:17
2020-06-20T07:11:35.485 [Information] stack backtrace:
2020-06-20T07:11:35.551 [Information] 0:     0x7ff7554d176f - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.551 [Information] 1:     0x7ff7554f31bb - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.551 [Information] 2:     0x7ff7554c732c - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.551 [Information] 3:     0x7ff7554d4ccc - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.551 [Information] 4:     0x7ff7554d490f - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.551 [Information] 5:     0x7ff7554d54b7 - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.552 [Information] 6:     0x7ff7554d503f - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.552 [Information] 7:     0x7ff7554f1b10 - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.553 [Information] 8:     0x7ff7554f1963 - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.553 [Information] 9:     0x7ff753f0c616 - <unknown>
2020-06-20T07:11:35.553 [Information] 10:     0x7ff754122eca - <unknown>
2020-06-20T07:11:35.553 [Information] 11:     0x7ff753ec4c83 - <unknown>
2020-06-20T07:11:35.553 [Information] 12:     0x7ff753e6949e - <unknown>
2020-06-20T07:11:35.553 [Information] 13:     0x7ff753f7bf69 - <unknown>
2020-06-20T07:11:35.554 [Information] 14:     0x7ff753eb2724 - <unknown>
2020-06-20T07:11:35.554 [Information] 15:     0x7ff753ffc125 - <unknown>
2020-06-20T07:11:35.554 [Information] 16:     0x7ff753f57160 - <unknown>
2020-06-20T07:11:35.554 [Information] 17:     0x7ff7540e9326 - <unknown>
2020-06-20T07:11:35.554 [Information] 18:     0x7ff7554d56ca - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.559 [Information] 19:     0x7ff753f5b027 - <unknown>
2020-06-20T07:11:35.559 [Information] 20:     0x7ff755503df0 - CrashForExceptionInNonABICompliantCodeRange
2020-06-20T07:11:35.559 [Information] 21:     0x7fff7e5a84d4 - BaseThreadInitThunk
2020-06-20T07:11:35.582 [Information] 22:     0x7fff80cae8b1 - RtlUserThreadStart

And cli\ops\io.rs:86:17, which is pointed at above log, was changed in https://github.com/denoland/deno/pull/6126
https://github.com/denoland/deno/releases/tag/v1.1.0

https://github.com/denoland/deno/commit/1e0808d501cf9adea65e7cacd123ea4fea06a13a#diff-52a4a7cdf78afa52dbd3506067839baaL74-R88
It seems that the change is related to this issue...🤔

Additionally, std was upgraded, latest is 0.58.0 though I'm not sure that the upgrade is related to this issue...

I'm confused because following command can be executed on Kudu console.

The command was failed in the above log.
And the deno process on Kudu seems to work fine.

I cannot understand that only Kudu can execute the command.

My current hypothesis is:

When launching deno as HttpWorker, stdin is not enabled, because there is no RedirectStandardInput at DefaultWorkerProcessFactory on Function Host
https://docs.microsoft.com/en-us/dotnet/api/system.diagnostics.processstartinfo.redirectstandardinput?view=netcore-3.1#System_Diagnostics_ProcessStartInfo_RedirectStandardInput

Then deno cannot get stdin handle at this.

This is just a hypothesis, debugging of deno and/or function host may be needed in order to prove this.

This issue can be reproduced on Windows Web App and simple asp net core app which invokes deno process by same way as function host.
And I confirmed that it could be avoided this by adding RedirectStandardInput = true, to ProcessStartInfo's constructor as following in the simple aspnetcore app.
            var startInfo = new<EMAIL_ADDRESS>            {
                RedirectStandardInput = true,
                RedirectStandardOutput = true,
                RedirectStandardError = true,
                // : others
            };

Thanks for finding the problem!
Does it only happen on Windows Azure Functions / App Service? It’s working fine locally on Windows, right?
Let me know if there’s a workaround that we can implement in the Deno worker to fix it.
It sounds like this should be fixed in both the runtime and in Deno.
Can you please create an issue on https://github.com/Azure/azure-functions-host/issues to discuss? Thanks!
/cc @pragnagopa

Azure Functions should not require interactive inputs. This is by design that RedirectStandardInput is not set to true.
This should be tracked in deno repo.  Launching deno.exe should not require enabling std input.

Thank you for the comment @anthonychu  and @pragnagopa ,
Please let me clarify the condition this issue happens.
After that I will create an issue on deno repo.

Hmm, I cannot reproduce this on  local IIS 10 ( on Win10) and the aspnetcore app, or console app.
The environment I can reproduce this is only on App Service.
So it might be hard to debug on deno side.
@anthonychu and @pragnagopa
Do you have any idea to reproduce on local PC?

Did you try running the function locally using core tools: https://docs.microsoft.com/en-us/azure/azure-functions/functions-run-local?tabs=windows%2Ccsharp%2Cbash ?

Thanks Pragna for reply,
Yes I tried func command locally and it works.
As long as I know, this is only happened when deno is invoked by Process#Start with the ProcessStartInfo without RedirectStandardInpit = true on App Service.

I sent PR for workaround to avoid this issue.
# This also is hacky a little...

This issue will be fixed by https://github.com/denoland/deno/pull/6528
So next release ( v1.1.3 ) or later of deno will be able to work without any change on denofunc probably.

This issue is already fixed.


⚠ Bofrost.fr has degraded performance

In fa69bdd, Bofrost.fr (https://www.bofrost.fr) experienced degraded performance:

HTTP code: 200
Response time: 1203 ms

Resolved: Bofrost.fr performance has improved in ef9017f after 6 minutes.


Use MIT license

From README.md:

You are free to use and adapt this work in any way you want, with 2 overall principles:

Do not hold me or any contributors liable for your actions of using this software.
Please do the courtesy of fair acknowledgments if you derive works from it.

The MIT license is a simple, well-vetted, and widely used license with three simple clauses that boil down to exactly what you described. (See choosealicense.com's description of it.)
Explicitly using this license would make the app clean for F-Droid's Inclusion Policy.

Thanks for the suggestion, Stuart. Merged.


Fig 2D. Epitope Discovery - Graph Network

Hi,
Thanks for this amazing work. Really exciting to see that these TCR distances also work in practice.
I tried to recreate the TCR clonotype network from Figure 2D, since I ultimately want to apply a similar analysis to my own data.
I was able to reconstruct the Network Graph reasonably well on your data. Could you please explain how you derive the visualization from there via the Gephi tool mentioned in the Paper?
Thanks for your help.
Best,
Felix

Hi Felix,

save network to the file using igraph: write_graph(grb_filt, file=“my_network.gml , format=“gml”)
open in Gephi, do "Force Atlas 2" layout (Layout pane -> Force Atlas 2 -> Run)
Filter singletons(optional) (Filters pane -> Topology -> Degree range -> move slider to Degree>0)
make node size proportional to the degree (Appearance pane -> Nodes -> Size -> Ranking -> set to "Degree")
color the nodes by the attribute of choice (Appearance pane -> Nodes -> Color -> Partition -> set to "mira_match")

Then you could export to pdf.
Hope that helps!
Best,
Misha

Hi Misha,
Thanks that was very helpful.
Best,
Felix


Create Projects page

we need a list of our projects from our github organization to be listed on our website

How can I help?


Combinint @group and Formulas (template)

Excel Type

[x] XLSX
[ ] XLSM
[ ] CSV
[ ] OTHER

Upload Excel File
Please attach your issue file by dragging or droppng, selecting or pasting them.

MiniExcel Version
1.34.1
Description
I am trying to combine the @group functionality with the $=SUM functionality and I cannot get it to work. I am not sure if it is supported.
What I really would want essentially is the ability to do formulas (just SUMs) of the individual groups and a big SUM of all the data at the bottom.

how to type '@group' tag in your Excel template file?


On missing symbol: WAYLAND_CLIENT_OPTION => None instead of panic!

Apologies, in case this actually needs to be fixed in glutin -- here was just a one-line-change for me:
Why does client.rs use panic! here in case of a missing symbol?
pub static ref WAYLAND_CLIENT_OPTION: Option<WaylandClient> = {
   match WaylandClient::open("libwayland-client.so") {
      Ok(h) => Some(h),
      Err(::dlib::DlError::NotFound) => None,
      Err(::dlib::DlError::MissingSymbol(s)) => {
         panic!("Found library libwayland-client.so but symbol {} is missing.", s);
      }
   }
}

replacing with
Err(::dlib::DlError::MissingSymbol(_)) => None

fixed the following issue for me:
Compiling glutin 0.8.1, (with rustup and cargo) fails because there is an older version of libwayland-client.so in my system (Linux 16.04):
Package: libwayland-client0
Version: 1.9.0-1

which does not have wl_proxy_marshal_array_constructor_versioned, yet.
Without the panic, glutins api_dispatch.rs uses the fallback.
(It could, of course catch the panic, if it is needed here for other reasons.)

The original rationale was that if a missing symbol was found, it would probably be a bug in libwayland-sys and the panic would help to catch it.
Now, this is obviously wrong, taking into account old versions of libwayland.
This will be corrected, thanks for reporting it.

Thanks for the quick reply!
.. this is how I quickly fixed it, but, without any further considerations.
https://github.com/broesamle/wayland-rs/commit/176fa9dc6ca77548f19c13de8737813d6cb6997b


Needs testing on OS X 10.12 Sierra

I don't know whether or not menubar-toggle works on Sierra, and presently am blocked from upgrading to the new OS because Karabiner/Seil don't work either. Note to self: test this later.

Seems to be working on the latest macOS, but the brew formula may need to be tweaked.
Tested on macOS High Sierra 10.13.4.

First I attempted to install via brew, but got an error:

 $ brew tap sxmichaels/tap
==> Tapping sxmichaels/tap
Cloning into '/usr/local/Homebrew/Library/Taps/sxmichaels/homebrew-tap'...
remote: Counting objects: 4, done.
remote: Compressing objects: 100% (4/4), done.
remote: Total 4 (delta 0), reused 4 (delta 0), pack-reused 0
Unpacking objects: 100% (4/4), done.
Tapped 1 formula (28 files, 20.9KB)

 $ brew install menubar-toggle
==> Installing menubar-toggle from sxmichaels/tap
==> Downloading https://github.com/sxmichaels/menubar-toggle/archive/2.0.3.tar.gz
==> Downloading from https://codeload.github.com/sxmichaels/menubar-toggle/tar.gz/2.0.3
######################################################################## 100.0%
==> swift build --configuration release
Last 15 lines from /Users/z/Library/Logs/Homebrew/menubar-toggle/01.swift:
2018-04-12 12:35:05 -0500

swift build --configuration release

/private/tmp/menubar-toggle-20180412-33238-1wohc0f/menubar-toggle-2.0.3: error: manifest parse error(s):
sandbox-exec: sandbox_apply_container: Operation not permitted

If reporting this issue please do so at (not Homebrew/brew or Homebrew/core):
https://github.com/sxmichaels/homebrew-tap/issues

So I cloned the repo and built it manually:

 $ swift build --configuration release
Compile Swift Module 'menubar_toggle' (1 sources)
Linking ./.build/x86_64-apple-macosx10.10/release/menubar-toggle

And it works perfectly!
Thought this might help.

@sxmichaels btw, the new version of karabiner is working really nicely on Sierra. It was a rough transition at the start but @tekezo has done some really great work:
https://github.com/tekezo/Karabiner-Elements

@lodestone Thanks for testing this! I upgraded to Sierra a while ago once Karabiner got support for it, but it carried over my existing menubar-toggle install so apparently I never noticed this bug. It should be fixed now; I had to add --disable-sandbox to the swift build command. It looks like brew runs all its builds inside a sandbox, and swift was trying to start another sandbox within it, with weird results.


[list][table] problem on the link to sort column on the table

Actual behaviour
the click on column header navigate on sort
Expected behaviour
no navigation on sort. the link must have data-bypass and no href to call the sort handler
Versions
Focus-core: 0.11.3
Focus-components: 0.7.4

@obtl can you please try to stick to the guideline @Tommass suggested for the issue template ? thank you !

@obtl any update on the issue description ?

+1

+1

:+1:

@obtl thanks for the description :+1:

:+1: :trollface:

@obtl @durandx @garnier-f
Do ypu pass into https://github.com/KleeGroup/focus-components/blob/develop/src/list/table/list.js#L91 ?
Maybe the cause is https://github.com/KleeGroup/focus-starter-kit/blob/master/app/initializer/index.js#L10
Can someone try it and provide more context ?
Thanks.

@pierr  yes this is the problem. that's why in the description i gave you a solution "the link must have data-bypass and no href to call the sort handler". we have already tested it.


ALB is not getting created when using istio 1.7.3 version

Hi All,
I am using istio 1.7.3 version in my env and have installed ingress and egress using demo profile using below command:
istioctl install --set profile=demo
I have a below config that I am expecting to create a ALB after the ingress controller is created, but it does not create ALB, can you please check what I am missing or needs to be done in my istio settings/config below:
---
apiVersion: v1
kind: Service
metadata:
  name: istio-ingressgateway
  namespace: istio-system
  labels:
    app: istio-ingressgateway
    release: istio
    istio: ingressgateway
spec:
  type: NodePort
  selector:
    app: istio-ingressgateway
  ports:
  - name: status-port
    port: 15021
    targetPort: 15021
  - name: http2
    port: 80
    targetPort: 8080
  - name: https
    port: 443
    targetPort: 8443
  - name: tcp
    port: 31400
    targetPort: 31400
  - name: tls
    port: 15443
    targetPort: 15443

---
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
  labels:
    app: istio-ingressgateway
    release: istio
    istio: ingressgateway
  name: istio-ingress
  namespace: istio-system
  annotations:
    kubernetes.io/ingress.class: alb
    #alb.ingress.kubernetes.io/group.name: istio
    alb.ingress.kubernetes.io/scheme: internet-facing
    alb.ingress.kubernetes.io/certificate-arn: arn:
    alb.ingress.kubernetes.io/subnets: us-west-2a,us-west-2b,us-west-2c
    alb.ingress.kubernetes.io/security-groups: nodes.example.com
spec:
  rules:
  - host: example.com
    http:
      paths:
      - path: /*
        backend:
          serviceName: istio-ingressgateway
          servicePort: 80

---

Please help me and let me know.

P.S. it creates CLB  with ACM cert attached when I use below config:
apiVersion: v1
kind: Service
metadata:
name: istio-ingressgateway
namespace: istio-system
annotations:
service.beta.kubernetes.io/aws-load-balancer-ssl-cert: “arn:”
service.beta.kubernetes.io/aws-load-balancer-backend-protocol: “http”
service.beta.kubernetes.io/aws-load-balancer-ssl-ports: “https”
service.beta.kubernetes.io/aws-load-balancer-connection-idle-timeout: “3600”
labels:
app: istio-ingressgateway
release: istio
istio: ingressgateway
spec:
type: LoadBalancer
selector:
app: istio-ingressgateway
ports:

name: status-port
port: 15021
targetPort: 15021
name: http2
port: 80
targetPort: 8080
name: https
port: 443
targetPort: 8443
name: tcp
port: 31400
targetPort: 31400
name: tls
port: 15443
targetPort: 15443

Can you file this in https://github.com/kubernetes-sigs/aws-load-balancer-controller or similar? This is not an Istio bug, we do not control the ALB. Thanks!

@howardjohn roger that. closing it


Multiplot not respecting date format of individual plots

Here's my code:

# pieces is an Array of Daru::DataFrame objects indexed on DateTimeIndex.
plots = []
pieces.each do |df|
  plot = GnuplotRB::Plot.new([df['births'], with: 'lines', title: df['name'][0]])
  plot.format_x("%Y")
  plots << plot
end
GnuplotRB::Multiplot.new(*plots, layout: [2,2])

When I plot an individual plot the date format is correct (only year), and I expect the same for multiplot, but instead I get this:

Hm, when you set option using #<some_option_name> it creates and returns a new object with this option set. It does not affect existing object. If you want to change state of existing object, you should use destructive methods (ending with ! or =). Just as you do it with Array#sort and Array#sort!. Examples:
plots = []
pieces.each do |df|
  plot = GnuplotRB::Plot.new([df['births'], with: 'lines', title: df['name'][0]])
  plot.format_x = '%Y' # or plot.format_x!('%Y')
  plots << plot
end
GnuplotRB::Multiplot.new(*plots, layout: [2,2])

You can also set format_x option for multiplot and it will affect all nested plots:
plots = pieces.map do |df| # sorry if pieces is not Enumerable
  GnuplotRB::Plot.new([df['births'], with: 'lines', title: df['name'][0]])
end
GnuplotRB::Multiplot.new(*plots, layout: [2,2], format_x: '%Y')

I tried both those methods right now and none are working.

Oops, yes, I added destructive methods after v0.3.0.
But second version (pass  format_x to Multiplot::new) should work for v0.3.0 too. Will check it. You can also pass this options to Plot::new: Plot.new([df['births'], with: 'lines', title: df['name'][0]], format_x: '%Y').


Support passing arguments to underlying filesystem

Description
Motivating Slack conversation:
Q: Is fs_args not supported for the overarching PartitionedDataSet? I need to specify endpoint_url for my S3 interface, and I can do this on other datasets (e.g. pandas.ParquetDataSet) but not on PartitionedDataSet. Without it, I can’t discover partitions.
A: Currently you can put those into credentials as this is the only set of kwargs passed into the filesystem constructor. Would it be acceptable for your use case? I will create a ticket to add fs_args support. Thanks for raising this 👍
Development notes
See #522 for prior activity
Checklist

[x] Read the contributing guidelines
[ ] Opened this PR as a 'Draft Pull Request' if it is work-in-progress
[ ] Updated the documentation to reflect the code changes
[ ] Added a description of this change and added my name to the list of supporting contributions in the RELEASE.md file
[x] Added tests to cover my changes

Notice

[x] I acknowledge and agree that, by checking this box and clicking "Submit Pull Request":

I submit this contribution under the Apache 2.0 license and represent that I am entitled to do so on behalf of myself, my employer, or relevant third parties, as applicable.

I certify that (a) this contribution is my original creation and / or (b) to the extent it is not my original creation, I am authorised to submit this contribution on behalf of the original creator(s) or their licensees.

I certify that the use of this contribution as authorised by the Apache 2.0 license does not violate the intellectual property rights of anyone else.

@DmitriiDeriabinQB Added a test, as requested. When looking into that, was wondering... does it make sense to, by default, pass fs_args to the underlying dataset, too? I can't think of any cases where it would make sense to pass fs_args to the PartitionedDataSet constructor but the underlying dataset wouldn't take it.
If so, can implement this and corresponding tests much like it is for credentials.

@deepyaman Thanks very much for this! Yes, I would say that it makes perfect sense to propagate fs_args the same way we do for credentials 👍

@deepyaman Thanks very much for this! Yes, I would say that it makes perfect sense to propagate fs_args the same way we do for credentials 👍

Done and ready to go! :shipit: 🤞


Crashing when trying to download video-only playlist

Inserting a TIDAL link with a video-only playlist and pressing ENTER results in a crash of the app.

give me a playlist -url

On Win10 x64, updated to TIDAL-GUI <IP_ADDRESS> (Beta).
Tried downloading this video playlist with 1080p setting:
https://tidal.com/browse/playlist/2e763788-b816-4011-a0c6-7cd9f08e5e6c
The playlist loads, each video has "Running" eventually times out with "Err" Download Failed! and moves to next video which gives the same error and so on.
Tried with 1 track, tried 720p disabled certain settings but same issue.

Sorry for the late reply.
Here is my playlist: https://tidal.com/browse/playlist/452b5e93-1999-4a64-918d-c5e18d6c7cb3


Notebooks: Ensure Python Environment Variables are Removed Before First Python Command

Fixes #12995.
The call to get the python user directory actually executes a Python command:
let cmd = `"${pythonExecutable}" -c "import site;print(site.${sitePath})"`;

Because of this, existing environment variables can affect how this command gets run (and which version of Python is targeted). Removing the Python-related things environment variables before calling this fixes the issue. Verified this internally with someone running into this problem.

Pull Request Test Coverage Report for Build 332451990

3 of 3 (100.0%)  changed or added relevant lines in 1 file are covered.
No unchanged relevant lines lost coverage.
Overall coverage remained the same at 39.666%

Totals

Change from base Build 332395799:
0.0%

Covered Lines:
20610

Relevant Lines:
47708

💛  - Coveralls


etfs overview function takes too long to retrieve information

Since the scraping process that involves retrieving the list containing all the ETFs from every country and their overview take too much time; the function investpy.get_etfs_overview() needs to be improved so that just the overview of the main ETFs from every country is displayed.
Investing World ETFs Overview
The intention of this function is just to get an overview on the main ETFs so the information from all ETFs is not useless (since as described in #50 Investing.com has an indexing error which does not displays more than 1.000 results per page, so the overview of all ETFs is just from the first 1.000 ETFs displayed in Investing.com). Anyways, note that this is just an additional functionality included in investpy.

The described issue took so long not due to the bottle-neck with the Internet connection, but due to the amount of data retrieved.
So on, now just the overview of the top 100 ETFs from every country is going to be retrieved. This implies going back to the previous scraping process and discarding the new one created previously referencing this issue.

Issue when pushing the commit since the issue # was not properly specified.
58a2d91e4816a6ec1c1d92e804251fcc31214a06


tweak: move acks to feature folder

Signed-off-by: Daniel Hardman<EMAIL_ADDRESS>

It's a bit odd for me to merge my own PR, but we had another PR from @swcurran that I just merged, that anticipated this one. So I'm merging this one now, too. (This change is not controversial anyway.)


feat(apollo-client-helpers): optionally generate types for FieldPolicy

🚨 IMPORTANT: Please do not create a Pull Request without creating an issue first.
I'm a rebel (I was prototyping if it was possible, and why not open a PR 😅)
Description
Currently all type policies are typed as any, meaning no type safety in custom read functions.
Related # (issue) N/A

Type of change
Please delete options that are not relevant.

[ ] Bug fix (non-breaking change which fixes an issue)
[x] New feature (non-breaking change which adds functionality)
[ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
[ ] This change requires a documentation update

Screenshots/Sandbox (if appropriate/relevant):
N/A
How Has This Been Tested?

In my own project
Unit test

Test Environment:

OS:
@graphql-codegen/...:  2.13.7
NodeJS: 16.18.0

Checklist:

[x] I have followed the CONTRIBUTING doc and the style guidelines of this project
[x] I have performed a self-review of my own code
[x] I have commented my code, particularly in hard-to-understand areas
[ ] I have made corresponding changes to the documentation
[x] My changes generate no new warnings
[x] I have added tests that prove my fix is effective or that my feature works
[x] New and existing unit tests pass locally with my changes
[x] Any dependent changes have been merged and published in downstream modules

Further comments

I'm not sure about the References change. It should be allowed as return value, but this now also comes as existing to merge functions. Might just be a weakness in the Apollo types?
Client fields are not in my gqltypes, not sure how to deal with it 😅 Shouldn't block an initial release, tho.

Also, could you update this plugin documentation accordingly?

I thought PluginApiDocs generated that automatically?

I thought PluginApiDocs generated that automatically?

@SimenB, it does but for this new flag, it would nice to introduce more complete example of the final usage.

Hi!
All community plugins (see list below) have been moved to a new dotansimha/graphql-code-generator-community.

Community plugins:

@graphql-codegen/typescript-react-apollo
@graphql-codegen/typescript-graphql-request
@graphql-codegen/typescript-apollo-angular
@graphql-codegen/typescript-apollo-client-helpers
@graphql-codegen/typescript-react-query
@graphql-codegen/typescript-urql
@graphql-codegen/named-operations-object
@graphql-codegen/urql-introspection
@graphql-codegen/flow-resolvers
@graphql-codegen/typescript-vue-apollo
@graphql-codegen/typescript-rtk-query
@graphql-codegen/flow-operations
@graphql-codegen/typescript-msw
@graphql-codegen/typescript-mongodb
@graphql-codegen/typescript-type-graphql
@graphql-codegen/jsdoc
@graphql-codegen/typescript-vue-urql
@graphql-codegen/kotlin
@graphql-codegen/typescript-vue-apollo-smart-ops
@graphql-codegen/java
@graphql-codegen/c-sharp-operations
@graphql-codegen/hasura-allow-list
@graphql-codegen/typescript-stencil-apollo
@graphql-codegen/relay-operation-optimizer
@graphql-codegen/typescript-oclif
@graphql-codegen/java-resolvers
@graphql-codegen/java-apollo-android
@graphql-codegen/flutter-freezed

Please move your PR by following these steps:
From your current PR branch:

git remote add codegen-community git@github.com:dotansimha/graphql-code-generator-community.git
git fetch codegen-community
git push codegen-community

Open the PR on dotansimha/graphql-code-generator-community and close this PR.
Thank you!

yeeeeh, no


Fix CI fail

https://github.com/Rindrics/execute-script-with-merge/actions/runs/8440489821/job/23117472240

=== RUN   TestMainValidEvent
{"time":"2024-03-26T17:40:22.418476091Z","level":"ERROR","msg":"infrastructure.getGitDiff","cmd.Run() failed with":"exit status 128"}
--- PASS: TestMainValidEvent (0.00s)

=== NAME  TestAppLoadExecutionDirectiveList
types.go:59: Unexpected call to *domain.MockEventParser.ParseExecutionDirectives([{{ } []} ../infrastructure/assets/]) at /home/runner/work/execute-script-with-merge/execute-script-with-merge/application/types.go:59 because:
expected call at /home/runner/work/execute-script-with-merge/execute-script-with-merge/application/types_test.go:111 doesn't match the argument at index 1.
Got: ../infrastructure/assets/ (string)
Want: is equal to  (string)
=== NAME  TestAppLoadExecutionDirectiveList/LoadExecutionDirectiveList
testing.go:1576: test executed panic(nil) or runtime.Goexit: subtest may have called FailNow on a parent test
=== NAME  TestAppLoadExecutionDirectiveList
controller.go:243: missing call(s) to *domain.MockEventParser.ParseExecutionDirectives(is equal to {{ } []} (domain.ParsedEvent), is equal to  (string)) /home/runner/work/execute-script-with-merge/execute-script-with-merge/application/types_test.go:111
controller.go:243: aborting test due to missing call(s)
--- FAIL: TestAppLoadExecutionDirectiveList (0.00s)
--- FAIL: TestAppLoadExecutionDirectiveList/LoadExecutionDirectiveList (0.00s)

resolved by 4cbe590


Use alternative to BinaryFormatter in example

The code example within the Implement Redis cache client applications section uses BinaryFormatter, which  the BinaryFormatter Security Guide states is dangerous to use.
Just mentioning in case the security concern applies to the code example and an alternative serializer should be used instead.
Thank you!

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

ID: be785717-ca5e-f3d6-8e60-4005d9503d08
Version Independent ID: 3ce414e5-d923-0488-ff11-3aa8bd4c2d1e
Content: Caching guidance - Best practices for cloud applications
Content Source: docs/best-practices/caching.md
Service: architecture-center
Sub-service: best-practice
GitHub Login: @EdPrice-MSFT
Microsoft Alias: pnp

Thanks for reporting - this issue is under review. This is a Microsoft Internal DevOps Bug ID # 524626

#please-close


[BUG] Form elements (e.g. Checkbox) take focus on scroll

Describe the bug
When trying to scroll, if the mouse is over an element like a Checkbox, instead of scrolling in the parent view, focus is moved to that element.
To Reproduce
Reproduces in cargo run --example list_view. Move your mouse over the checkbox, and then scroll. The checkbox takes focus. Actually, the issue reproduces for all of the form controls — I don't want any of them to be taking focus in this situation
Expected behavior
The containing ScrollView should scroll.
Environment

Operating system used: macOS
Backend used: crossterm
Current locale:

* LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
LC_CTYPE="en_US.UTF-8"
LC_MESSAGES="en_US.UTF-8"
LC_MONETARY="en_US.UTF-8"
LC_NUMERIC="en_US.UTF-8"
LC_TIME="en_US.UTF-8"
LC_ALL=

Cursive version (from crates.io, from git, ...) 0c6669d6732c3cffeda983958bd9a0fe05ac3b44

Additional context
I tried adjusting take_focus as follows:
    fn take_focus(&mut self, direction: Direction) -> Result<EventResult, CannotFocus> {
        match direction {
            Direction::Abs(Absolute::None) => Ok(EventResult::Ignored),
            _ => self.enabled.then(EventResult::consumed).ok_or(CannotFocus),
        }
    }

Of course, this means that the element no longer responds to mouse click events, which is also not desirable. Is there any workaround to make these elements respond to clicks but not scrolls?

Hi,  and thanks for the report!
Indeed we probably don't want to change the selection with this.
We should be able to forward mouse wheel events down the view tree without changing selection to let users scroll a view that's not selected, as well as not select regular views like checkboxes or edit views in the process.


Lab configure defaults

Readme shows the default gitlab.com is printed, but when I installed it from Brew it isn't:
$ lab configure
Domain:

Not sure which lab is this:
[07:28:08][wk@wkoszek_mba:~/r]$ lab -v
Could not find command "_v".
[07:28:16][wk@wkoszek_mba:~/r]$ lab --version
Could not find command "__version".
[07:28:20][wk@wkoszek_mba:~/r]$ lab version
Could not find command "version".

Uf. My bad: lab collides with gitlab-ci Gem.


added scikit-learn to install script and asset as an optional import

References PR https://github.com/NeuralEnsemble/elephant/pull/76

Coverage increased (+0.0005%) to 97.134% when pulling 8679c6831e3cbd57f849379519190707e33c7521 on alperyeg:feature/optional_package into c0d7269eb409c0eea67833df3c05ce368e643879 on NeuralEnsemble:master.


186116095 xy plot logging - 2

Fulfills this ticket
 [Algebra] XY Plot Logging

Deployment
https://collaborative-learning.concord.org/branch/xy-plot-logging-2/?appMode=demo&demoName=CLUE&fakeClass=1&fakeUser=student:4&problem=1.1&unit=msa

Localhost:
http://localhost:8080/?appMode=demo&demoName=CLUE&fakeClass=1&fakeUser=student:4&problem=1.1&unit=msa

Moving these TODOs from the codebase into this thread
//TODO:
// we have to account for when graph unlinks a dataSet via the X button next to its series Done
// • account for multiple dialogs that are responsible for linking datasets (not just from use-provider-tile-linking)
//   ↳ such as Table's toolbar "Graph-it!" icon
// • Investigate why why modelLinkedArr only has one element, I thought it would would hold more than 1 model,
//   ↳for ex: if Graph linked to two tables, it would have [Table1, Table2] - but this is incorrect
// • When finished, document in ticket that logging occurs for both Graph Tile ("Add Data button")
//   ↳ and Geometry Tile useprovidertileLinking icon

@scytacki I requested review for the work I've done so far on this PR.
I actually think it might be best to go over it together after retro tomorrow since I've created a new ticket in PT and also suggesting we address other external linking of datasets in another ticket - but wanted your input.


Aspect Oriented Hooks

I would like a way to add start/end/around hooks to any reconciler or sub-reconciler object.
My main use case for this is to add additional logging and add span data to the context for tracing.
The injected methods would need access to the context (with the ability to provide a replacement in arounds )

In my mind, the simplest mechanism is to add a [before|after|around]reconcile method to all the reconcilers and subreconciler's interfaces. I'm sure a general pointcut solution for callbacks such as ReflectChildStatus has possible benefits, but I don't know if there's any point in complicating the whole engine with "true" AOP?

We love what you implemented in #502 but there's been no movement for 3 weeks. What can we do to get this over the line? CC @scothis

What's missing from that PR right now is tests and doc. I have a family obligation coming up, so it will be at least another week before I can fully finish it off. I don't expect the API shape to change much, so you can start building on it.


Error: status code 500

I built and ran the project using  java -jar shinyproxy-0.8.0.jar and navigated to http://localhost:8080/. Logged in and tried to navigate to the test applications but am getting a status code 500 error.
Error
Status code: 500

Message: Failed to start container: java.util.concurrent.ExecutionException: javax.ws.rs.ProcessingException: org.apache.http.conn.HttpHostConnectException: Connect to localhost:2375 [localhost/<IP_ADDRESS>, localhost/0:0:0:0:0:0:0:1] failed: Connection refused

Hi @lawwu,
Thanks for your interest in ShinyProxy. Did you check the relevant section in our troubleshooting guide? It that does not help, don't hesitate to post on our support portal and we'll help you get up and running.
Best,
Tobias


Fix Epsilon export

This PR condenses the exporting of Epsilon with its definition:
/**
 * Constant used to define the minimal number value in Babylon.js
 * @ignorenaming
 */
// eslint-disable-next-line @typescript-eslint/naming-convention
-const Epsilon = 0.001;
-export { Epsilon };
+export const Epsilon = 0.001;

Please make sure to label your PR with "bug", "new feature" or "breaking change" label(s).
To prevent this PR from going to the changelog marked it with the "skip changelog" label.

Snapshot stored with reference name:
refs/pull/15374/merge
Test environment:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15374/merge/index.html
To test a playground add it to the URL, for example:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15374/merge/index.html#WGZLGJ#4600
Links to test babylon tools with this snapshot:
https://playground.babylonjs.com/?snapshot=refs/pull/15374/merge
https://sandbox.babylonjs.com/?snapshot=refs/pull/15374/merge
https://gui.babylonjs.com/?snapshot=refs/pull/15374/merge
https://nme.babylonjs.com/?snapshot=refs/pull/15374/merge
To test the snapshot in the playground with a playground ID add it after the snapshot query string:
https://playground.babylonjs.com/?snapshot=refs/pull/15374/merge#BCU1XR#0

WebGL2 visualization test reporter:
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15374/merge/testResults/webgl2playwright/index.html

Visualization tests for WebGPU (Experimental)
https://snapshots-cvgtc2eugrd3cgfd.z01.azurefd.net/refs/pull/15374/merge/testResults/webgpuplaywright/index.html


WIP: Named tuples

Compiling fails with this;
[1/1] show
[1-148/162] upickle_named_tuples.jvm[3.6.1].compile
[1-148] [info] compiling 1 Scala source to /Users/simon/Code/upickle/out/upickle_named_tuples/jvm/3.6.1/compile.dest/classes ...
[1-148] [error] -- [E008] Not Found Error: /Users/simon/Code/upickle/upickle_named_tuples/src/NamedTupleReadWriter.scala:4:15
[1-148] [error] 4 |import upickle.default.*
[1-148] [error]   |       ^^^^^^^^^^^^^^^
[1-148] [error]   |       value default is not a member of upickle
[1-148] [error] -- [E046] Cyclic Error: /Users/simon/Code/upickle/upickle_named_tuples/src/NamedTupleReadWriter.scala:8:45
[1-148] [error] 8 |  inline given [N <: Tuple, V <: Tuple, T <: NamedTuple[N, V]]: ReadWriter[T] =
[1-148] [error]   |                                             ^
[1-148] [error]   |                               Cyclic reference involving val <import>
[1-148] [error]   |
[1-148] [error]   |                                Run with -explain-cyclic for more details.
[1-148] [error]   |
[1-148] [error]   | longer explanation available when compiling with `-explain`
[1-148] [error] -- [E008] Not Found Error: /Users/simon/Code/upickle/upickle_named_tuples/src/NamedTupleReadWriter.scala:3:13
[1-148] [error] 3 |import scala.NamedTuple.NamedTuple
[1-148] [error]   |       ^^^^^^^^^^^^^^^^
[1-148] [error]   |       value NamedTuple is not a member of scala
[1-148] [error] three errors found

Which makes me think I've stuffed up the build horridly, as it apparently doesn't resolve either pickle or named tuples.
I can't see how tho - if anyone is willing to point me in the right direction I'd be grateful

I believethat modules can't easily depend on different scala 3 versions, which makes this PR painful to do in a reasonable way.
Conclusion, wait until scala has an LTS > 3.6.x


Increase speed by parallel execution

We  can speed up the process if we do all three steps at the same time - first ffmpeg process creates sound and images (sound should be in some sort of streaming container), python stuff does it's job frame by frame and feeds those frames to the second ffmpeg. This shouldn't be too hard to implement with pipes.

That's true, and I definitely think this would help more for really long videos. It might even work on livestreamed videos! (Although.... that doesn't really make sense since the timeline is cut.) Anyway, I'll definitely work on piping the processes together when I get some free time again.
(One thing to note is that the python stuff (analyzing the audio) happens much faster than ffmpeg. So as the parallelized code is running, there will essentially be the two ffmpeg processes churning away, and the Python process waiting for 95% of the time.)

@balsoft @carykh I can parallelize this code by implementing this code in OpenCV with my Vidgear python library. I'm currently working on it!

I suspect this process, if anything, is IO limited by writing images out to storage. Parallel execution wont help much if we are waiting for IO to complete. If we can only write to RAM this may be a much faster process. Streaming it may be the right move here.

I suspect this process, if anything, is IO limited by writing images out to storage. Parallel execution wont help much if we are waiting for IO to complete. If we can only write to RAM this may be a much faster process. Streaming it may be the right move here.

Sorry to say that, but you're probably wrong on two accounts.

Parallel execution can massively speed up IO-heavy operations by executing many IO ops in parallel. Modern SSDs and HDDs can handle many IO operations at the same time.
FFMPEG isn't that much IO-limited, it's mostly encoding/decoding video streams from/into pictures and sound, which is a CPU/GPU-heavy task.

I'm happy to be wrong on this case, means more performance to gain. I can do tests on this later to get solid numbers on this. My comment was speculation, my mistake if I gave the impression it was factual.

Parallel execution can massively speed up IO-heavy operations by executing many IO ops in parallel.
Modern SSDs and HDDs can handle many IO operations at the same time.

Sure, but not concurrently. Only one block is written at a time, or is my knowledge dated?

FFMPEG isn't that much IO-limited, it's mostly encoding/decoding video streams from/into pictures and sound, which is a CPU/GPU-heavy task.

I suspected that the rendering of frames was the slowest part, but I don't have evidence of this.

Only one block is written at a time, or is my knowledge dated?

The matter is very complicated, but in general it's fine to assume that modern drives can do more than one page or block write at a time.

I suspected that the writing of frames was the slowest part, but I don't have evidence of this.

Even if this is the case, piping will speed up the process by eliminating "write-to-the-disk" operation entirely.

The matter is very complicated, but in general it's fine to assume that modern drives can do more than one page or block write at a time.

Reasonable assumption

Even if this is the case, piping will speed up the process by eliminating "write-to-the-disk" operation entirely.

That's what I'm going for, stream/pipe the whole process.

@carykh
In response to live-streaming:
As an aside to write speed, I think the benefit to a purely in memeory implementation is that you could then stitch in memory instead of offloading to ffmpeg. I'm going to rewrite this in go, I'm pretty sure you could then preform this live with a reasonable buffer instead of having to parse then restitch to view. A buffer would allow the process to run in a way where audio and video is preprocessed a few seconds ahead, since the video doesn't care about what happened before and after u could apply an algorithm as such:
Define i = 0
Calculate avg audio output for given chunk X (a predetermined Length of audio equal to 1 frame)
If X avg audio value < threshold
Then
Remove audio (doesn't seem to be needed at 20x)
If i++ % 20 == 0
Then
Added frame to video buffer
End if
Else
Apply same logic as above but keep audio, speed up audio for given frame, if the frame % speed up multiplyier is 0 then add frame to buffer but regardless add the sped up audio to buffer.
End else
The advantages of this approach is it doesn't have to look ahead and the image/audio can be separated into two streams and never has to be encoded (unless being saved but it looks like you have that logic down). Another advantage to this approach is it has no disk write ops which will bottle beck unlike stated above. Hard drives have limited write speed, writing a ton of images is going to take time. I don't u derstand why there are other comments stating that wouldn't be the case, any modern cpu is going to be able to rip through images faster than they can be written.