feat: Option to temporarily edit /etc/hosts to overcome an issue with callback urls

If we don't have a control over IdP, but we want to automate some api calls, then it's nice to edit /etc/hosts for the domain we have registered in IdP and after an operation revert back to previous state.

Could be done by creating an instance of Chromium that uses --host-rules argument. More info on that: https://stackoverflow.com/questions/14605636/host-rules-google-chrome-adding-configuration

Unfortunately solution with /etc/hosts work highly inconsistently. As a last resort I'm going to achieve this functionality by using chromiumoxide crate to bootstrap chromium browser and intercept all requests via https://chromedevtools.github.io/devtools-protocol/tot/Fetch/#method-enable API.


uichange R&D Console

About the PR

Media

[x] I have added screenshots/videos to this PR showcasing its changes ingame, or this PR does not require an ingame showcase

Changelog

:cl: DEATHB4DEFEAT

tweak: Nicer R&D console

Angle box abuse with no margins

I cannot read this.

does the ui still scroll back to the top every time the points change?


Add my weird website to the showcase

Hello !
I made a silly website : https://getanamewithapun.pages.dev/
Would you be open to the idea of adding it to your "Showcase" page?

I agree that a "Showcase" section would be nice. For instance at the bottom of the homepage https://simplecss.org/#who-is-simplecss-for

Who is Simple.css for?
Well the short answer to that question is anyone really. But Simple.css really shines when it comes to building simple websites like a personal blog, an about page, or the basis of a new website. Some example of websites using simple.css:

https://getanamewithapun.pages.dev/
https://code.pfad.fr/vanitydoc/

(maybe being added to this list could require being a sponsor of your work ;)

We no longer have a showcase page.


Replace the use of github.com/hashicorp/go-multierror with errors.Join

We don't really need github.com/hashicorp/go-multierror any more, from golang 1.20 we can use errors.Join instead. One less dependency to worry about...

I wonder if errors.Join could also be used here. It would make these tests simpler.


diff() can produce ops in the wrong order

There are two possible patches which will take you from [1,2] to []:
[{"op":"remove","path":"/1"},{"op":"remove","path":"/0"}]
[{"op":"remove","path":"/0"},{"op":"remove","path":"/0"}]

The diff() function gives the following (invalid) patch:
[{"op":"remove","path":"/0"},{"op":"remove","path":"/1"}]

🙀

Fixed in 0.2.4. Fix is a bit sketchy, but seems to work 😁

Thanks!


Update locate command to support validated heartbeats and speedtest a…

…verages

assuming you want to remove the similar ValidatedHeartbeat type from the mobile verifier in a separate change

They are different enough, I am not sure they should be combined. This new one is meant as the rust version of the proto, where the one in the mobile verifier is the struct representing a validated heartbeat during the validation process and has other stuff in needed for that process.  For the moment, I moved these new ones into a cli module.


fix buttons

buttons were not displaying on non retina/HDPI devices, media queries removed

@projectmushroom 💯


A note on how traitlet observation in react works

Just figured out how we can observe traitlets using anywidget+react 🎉
Therefore, I want to share this minimal example.
Hope this is useful as a reference.
import anywidget
from traitlets import Int, Unicode, observe
import pathlib

class Widget2(anywidget.AnyWidget):
    label = Unicode("Click me").tag(sync=True)
    count = Int(0).tag(sync=True)

    @observe("count")
    def _observe_count(self, change):
        print(f"Old value: {change['old']}")
        print(f"New value: {change['new']}")
        print(f"--------------------------")

    _esm = pathlib.Path.cwd() / "src" / "myprojectname" / "static" / "testing_observe.js"

w2 = Widget2()
w2

// this is at "js/testing_observe.jsx"
import * as React from "react";
import { createRender, useModelState } from "@anywidget/react";

export const render = createRender(() => {
  const [label] = useModelState("label");
  let [count, setCount] = useModelState("count");
  function handleClick() {
    console.log("button clicked");
    setCount(count + 1);
  }

  return (

      <button onClick={handleClick}>
        {count == 0 && label}
        {count} times clicked
      </button>

  );
});

and for reference, here is how the same code would look like in ipyreact:
from traitlets import Int, Unicode, observe
import ipyreact

class Example(ipyreact.ReactWidget):
    label = Unicode("Click me").tag(sync=True)
    count = Int(0).tag(sync=True)

    @observe("count")
    def _observe_count(self, change):
        print(f"Old value: {change['old']}")
        print(f"New value: {change['new']}")
        print(f"--------------------------")

    _esm = """
    import * as React from "react";

    export default function ({ label, count, set_count }) {
    function handleClick() {
        console.log("button clicked");
        set_count(count + 1);
    }
    return (

        <button onClick={handleClick}>
            {count == 0 && label}
            {count} times clicked
        </button>

    );
    }
    """

Example()

It's important to note that this pattern isn't specific to anywidget, but moreover Jupyter Widgets in general! It's just the the different mechanisms to write/read state are different depending on your front-end framework. It might be useful to add something like this to our "Jupyter Widgets the Good Parts" section of our documentation (or a new section like "frontend framework adapters").


[Bug]: Idle time detection doesn't work on Wayland

Version

[X] I'm using version 1.13.1

Known issues

[X] I've checked Known issues

Existing issues

[X] I've checked Existing issues

What operating system are you using?
Linux
Operating System Version
Ubuntu 22.04.1 LTS
Reproduction steps

Open stretchly in Ubuntu with Wayland
Do nothing for naturalBreaksInactivityResetTime ms or more

Reproduces how often: Always
Expected Behavior
Breaks should be paused.
Actual Behavior
Breaks are not paused.
Relevant log output
No response
Preferences
No response
Additional information
I tested this in the same system but with xorg and it didn't happen.
I also followed this tip and confirmed that powerMonitor.getSystemIdleTime() always returns 0 in Wayland but works well in xorg.
I think the underlying cause is this: https://github.com/electron/electron/issues/27912
Code of Conduct

[X] I agree to follow this project's Code of Conduct

Thanks! Looks like we need to wait for electron fix.


Add some documentation on benchmarking

@aisensiy yes, you can benchmark both TGI & vLLM in TGB.

@merveenoyan No you cannot.
text-generation-benchmark  bypasses the router in order to control everything directly at the gRPC layer which vLLM doesn' t implement.
If you want to make performance comparisons you can check https://github.com/huggingface/text-generation-inference/tree/main/load_tests which uses k6.
Try to make sure you are in optimal conditions for both setups when doing benchmarks. The suggested benchmark is actually not really the best. Check out https://k6.io/docs/test-types/load-test-types/ for more information on benchmarking live systems.

@aisensiy I believe it's better if you benchmark them on same machine. What kind of info are you looking for? We are documenting this bit as well so I thought I'd add while I'm on it.

@aisensiy I think it's better if @narsilou replies. I edited my answer accordingly. AFAIR, the feature was being added or was there.


Bring helm-api-test into unified docker image build framework

CHRON-370
PR Checklist
Please complete this checklist after opening your PR

[x] I have updated documentation as necessary
[x] I have updated helm chart(s) if needed
[x] I have added tests if needed
[x] All new and existing tests are passing
[x] Any breaking changes are clearly flagged and documented
[x] I’ve included a link to any relevant ticket(s)

Gah, simply moving the shell script has caused CI to pick up on deficiencies within it. Will look at tediously fixing those tomorrow.


parse projection functions

projection functions seemed to get lost in the initial parsing (before sending DAS/DDS/DODS requests). Attempting to implement/use projection functions per <IP_ADDRESS> below to subset (run for side effect only in this case).
see Data Access Protocol (DAP), version 2. ESE-RFC-004.1.2
<IP_ADDRESS> Calling server-side functions
Functions MAY be called as part of either the projection or selection
clauses. In the case of a selection, the function MUST return a value which can be used when evaluating the
clause. In the case of a projection, the function MUST return a DAP variable which will then be the return
value of the request or it MUST return nothing in which case it is run for side effect only

note: IP below not persistent, but should be able to verify regardless, fails before requests
[]$ ncdump -h "http://<IP_ADDRESS>:5000/dap/noaa.nwm.short_range.channel_rt/run/latest?streamflow,bbox(-72.292668,41.275831,-70.949589,42.057538)"
(proj->discrim == CES_VAR && proj->var->annotation != NULL && ((CDFnode*)proj->var->annotation)->ocnode != NULL)

ncdump: ../../libdap2/constraints.c:118: qualifyprojectionnames: Assertion `dappanic("(proj->discrim == CES_VAR && proj->var->annotation != NULL && ((CDFnode*)proj->var->annotation)->ocnode != NULL)")' failed.
Aborted (core dumped)

libdap2/dcetab.c generated w/ bison sequence in https://github.com/Unidata/netcdf-c/blob/master/libdap2/Makefile.am#L61 as not built via make/cmake

Yes, this is an error. This PR fixes it and should be incorporated.
As an aside, there is one complication. And I see
it is not documented in the DAP2 documentation. The problem
is that the only server-side functions that will work are those
that are side-effect only. The reason is that for value-returning
function, the client side cannot get the DDS+DAS for the function
without executing the function. An attempt was made in DAP4 to
fix this, but I am not certain it works either.


Orchestrate Data Lake stack (Apache Hadoop cluster) containers in Kubernetes

Workload containers

[x] Kubernetes YAML

Improved Kubernetes components to work seamlessly in a multi-environment setup suitable for on-premise deployments.
Enhanced persistent volume templates to map with the corresponding persistent volume claims.
Updated stateful-set files for data and name nodes, incorporating key-value pairs for config maps.


Add constructor overloads to PlayOptions and PlayToAllOptions that accept single PlaySource as a param

Contributing to the Azure SDK
Please see our CONTRIBUTING.md if you are not familiar with contributing to this repository or have questions.
For specific information about pull request etiquette and best practices, see this section.

I'm not really clear on these changes.
Based on the conversation I had with Rui and Paresh, it seems like they reverted the list of playSources? I don't see it in Java anymore, but in the latest version of V4 Swagger.


F8 supporting driver changes

sl/f8_driver is branched off sl/f8 branch. It's meant for F8 driver related changes

This PR has dependency on this PR
https://github.com/ROCmSoftwarePlatform/MIOpen/pull/2134


Add arm64_mac in properties file

Signed-off-by: renfeiw<EMAIL_ADDRESS>

Not related with this PR,  I would suggest to update the originally PR https://github.com/AdoptOpenJDK/openjdk-tests/pull/2509/files Platform arm64_mac to aarch64_mac.  Two reasons:

all other arm64 on linux named as aarch64_linux in both build repo and openjdk-test repo.

https://ci.adoptopenjdk.net/job/build-scripts/job/jobs/job/jdk/

https://github.com/AdoptOpenJDK/openjdk-tests/blob/master/buildenv/jenkins/openjdk_tests#L12

Using arm64 is just a accident https://github.com/AdoptOpenJDK/openjdk-tests/issues/2501#issuecomment-821058755


Force pybind11 version

Force cmake to find pybind11 version 2.9.2 to not conflict with older pybind versions installed by ros 2 galactic

Thanks for the PR! It looked good and we've just now merged it into main.


BigtableSession should check for null credentials

I am using the Bigtable emulator for development, which doesn't require authentication so is configured with CredentialType.None. The CredentialFactory returns null when asked for credentials of this type:
https://github.com/GoogleCloudPlatform/cloud-bigtable-client/blob/master/bigtable-client-core-parent/bigtable-client-core/src/main/java/com/google/cloud/bigtable/config/CredentialFactory.java#L138
BigtableSession uses this factory and does not check for null credentials, resulting in null being passed into createNettyChannel:
https://github.com/GoogleCloudPlatform/cloud-bigtable-client/blob/master/bigtable-client-core-parent/bigtable-client-core/src/main/java/com/google/cloud/bigtable/grpc/BigtableSession.java#L470
This leads to failure with a NullPointerException:
Exception in thread "main" java.lang.NullPointerException: interceptor
	at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:787)
	at io.grpc.ClientInterceptors$InterceptorChannel.<init>(ClientInterceptors.java:113)
	at io.grpc.ClientInterceptors$InterceptorChannel.<init>(ClientInterceptors.java:107)
	at io.grpc.ClientInterceptors.intercept(ClientInterceptors.java:102)
	at io.grpc.internal.ManagedChannelImpl.<init>(ManagedChannelImpl.java:406)
	at io.grpc.internal.AbstractManagedChannelImplBuilder.build(AbstractManagedChannelImplBuilder.java:295)
	at com.google.cloud.bigtable.grpc.BigtableSession.createNettyChannel(BigtableSession.java:494)
	at com.google.cloud.bigtable.grpc.BigtableSession$5.create(BigtableSession.java:462)
	at com.google.cloud.bigtable.grpc.io.ChannelPool.<init>(ChannelPool.java:246)
	at com.google.cloud.bigtable.grpc.BigtableSession.createChannelPool(BigtableSession.java:458)
	at com.google.cloud.bigtable.grpc.BigtableSession.createChannelPool(BigtableSession.java:439)
	at com.google.cloud.bigtable.grpc.BigtableClusterUtilities.<init>(BigtableClusterUtilities.java:152)
	at com.google.cloud.bigtable.grpc.BigtableClusterUtilities.forAllInstances(BigtableClusterUtilities.java:69)
	at com.google.cloud.bigtable.grpc.BigtableClusterUtilities.lookupInstanceId(BigtableClusterUtilities.java:82)
	at com.google.cloud.bigtable.grpc.BigtableSession.resolveLegacyOptions(BigtableSession.java:278)
	at com.google.cloud.bigtable.grpc.BigtableSession.<init>(BigtableSession.java:205)

Hi joshfg,
Thanks for reporting the issue. Can you clarify which version of the client you are using? The line numbers from the stacktraces don't seem to line up with the current version of the client.
Can you try to reproduce the issue with the current version  (1.0.0-pre2)?
Thanks!

Hi @igorbernstein2, I was using version <IP_ADDRESS> of bigtable-client-core. That version is being pulled in by a library I'm using but I'll try to replicate the issue with 1.0.0-pre2 tomorrow.
It's not very nice, but as a workaround, I'm able to use the Bigtable emulator by setting a fake credentials file / service account key.

If you set the BIGTABLE_EMULATOR_HOST variable, things should just work with <IP_ADDRESS>.  https://github.com/GoogleCloudPlatform/cloud-bigtable-client/blob/bigtable-client-<IP_ADDRESS>/bigtable-client-core-parent/bigtable-client-core/src/main/java/com/google/cloud/bigtable/config/BigtableOptions.java#L215

@joshfg – did you follow the instructions on this page? As @sduskis said, you need the BIGTABLE_EMULATOR_HOST env var, which can be set via:
> gcloud beta emulators bigtable start
> $(gcloud beta emulators bigtable env-init)

prior to the start of your application, and then it should just work without any code changes.
If you are getting that error in spite of following the instructions, then please let us know so that we can fix that. The goal is for emulator usage to be seamless and not require custom code.

Hi @sduskis @mbrukman,
That error happened when I was setting the BIGTABLE_EMULATOR_HOST env var. I believe it's because of CredentialOptions.nullOption() being set here:
https://github.com/GoogleCloudPlatform/cloud-bigtable-client/blob/bigtable-client-<IP_ADDRESS>/bigtable-client-core-parent/bigtable-client-core/src/main/java/com/google/cloud/bigtable/config/BigtableOptions.java#L238
This leads to a null credentials interceptor being set here:
https://github.com/GoogleCloudPlatform/cloud-bigtable-client/blob/bigtable-client-<IP_ADDRESS>/bigtable-client-core-parent/bigtable-client-core/src/main/java/com/google/cloud/bigtable/grpc/BigtableSession.java#L454
...because of the null returned here:
https://github.com/GoogleCloudPlatform/cloud-bigtable-client/blob/master/bigtable-client-core-parent/bigtable-client-core/src/main/java/com/google/cloud/bigtable/grpc/io/CredentialInterceptorCache.java#L98
My workaround is to not set the BIGTABLE_EMULATOR_HOST env var, and instead configure the Bigtable options myself, setting a fake JSON credentials.

Hi @joshfg,
Can you confirm that this issue exists in 1.0.0-pre2?
Thanks!

Yes, this issue still exists and @joshfg 's comment is actually what I want to achieve.

@vertexclique is this issue present in the latest 1.3.0 release?

We fixed this problem recently.  This ought to be fixed once we release 1.4.0


Handle parsing of special comment characters in configuration

What changed?
In order to fix issue https://github.com/common-fate/granted/issues/739, the ini client is loaded with the following options:

SpaceBeforeInlineComment : Only interprets the inline comment if there is a space preceding the # character
UnescapeValueCommentSymbols : Prevents the # from being automatically escaped (i.e. #) as part of the output

Why?
Users were unable to use URLs that included the # character, which was typically used for inline comments. A thorough description of the issue can be seen here https://github.com/common-fate/granted/issues/739.
Fixes https://github.com/common-fate/granted/issues/739.
How did you test it?
Using the dummy configuration with # characters in git registry https://github.com/common-fate/granted-registry/blob/main/config2:
# this is a dummy config
[profile demo-main_dummy]
granted_sso_start_url = https://d-976708da7d.awsapps.com/start\#0000000000042
granted_sso_region = ap-southeast-2
granted_sso_account_id =<PHONE_NUMBER>29
granted_sso_role_name = AWSAdministratorAccess
region = ap-southeast-2
session_name = {{ .Required.SessionName }}
credential_process = granted credential-process --profile {{ .Profile }} --url https://internal.prod.granted.run

We then generate the registries in .aws/config using dgranted registry add -name test12 -url https://github.com/common-fate/granted-registry/ -prefix-duplicate-profiles
The output observed in  .aws/config is:
...

[profile test12.demo-main_dummy]
granted_sso_start_url  = `https://d-976708da7d.awsapps.com/start#0000000000042`
granted_sso_region     = ap-southeast-2
granted_sso_account_id =<PHONE_NUMBER>29
granted_sso_role_name  = AWSAdministratorAccess
region                 = ap-southeast-2
session_name           =
credential_process     = granted credential-process --profile test12.demo-main_dummy --url https://internal.prod.granted.run

[granted_registry_end test12]

Furthermore, when creating a new profile registry from your local AWS config, this is the generated granted.yml:
[profile test12.demo-main_dummy]
granted_sso_start_url  = `https://d-976708da7d.awsapps.com/start#0000000000042`
granted_sso_region     = ap-southeast-2
granted_sso_account_id =<PHONE_NUMBER>29
granted_sso_role_name  = AWSAdministratorAccess
region                 = ap-southeast-2
session_name           =
credential_process     = granted credential-process --profile test12.demo-main_dummy --url https://internal.prod.granted.run

Potential risks
Previous configurations that do not have a space before the inline comment will not have it recognised as an inline comment. Instead, it will be recognised as part of the value.
Is patch release candidate?
Link to relevant docs PRs

I tested this locally, I think this might cause us problems because backticks are not supported by the AWS CLI's config parser.
For example, the following configuration is invalid:
[profile example-backtick]
sso_start_url  = `https://d-12345abcdef.awsapps.com/start`
sso_region     = ap-southeast-2
sso_account_id =<PHONE_NUMBER>12
sso_role_name  = AWSAdministratorAccess

With the following error:
❯ assume

? Please select the profile you would like to assume: example-backtick
[!] error retrieving IAM Identity Center token from secure storage: The specified item could not be found in the keyring
[✘] operation error SSO OIDC: StartDeviceAuthorization, https response error StatusCode: 400, RequestID: 6bd61cdf-4aa7-419c-8fdd-786a96fd12dc, InvalidRequestException:

Essentially this is caused by a difference between the current ini package we use, and the Python ConfigParser package used in the AWS CLI. We might want to look at https://github.com/bigkevmcd/go-configparser as an alternative library

I realised we actually swapped away from the configparser library in this PR: https://github.com/common-fate/granted/pull/297


Bug fix 3.5/count collect should skip

Backport of https://github.com/arangodb/arangodb/pull/9511. See there for acceptance checklist.

http://jenkins01.arangodb.biz:8080/view/PR/job/arangodb-matrix-pr/5293/

http://jenkins01.arangodb.biz:8080/job/arangodb-matrix-pr-linux/6931/EDITION=community,STORAGE_ENGINE=mmfiles,TEST_SUITE=single,limit=linux&&test/artifact/testfailures.txt
* Test "shell_client_aql"
    [FAILED]  tests/js/common/aql/aql-view-arangosearch-noncluster.js

      "testViewInInnerLoopSortByTFIDF_BM25_Attribute" failed: at assertion #2: assertEqual: (bar) is not equal to (baz)
(Error
    at assertEqual (/work/ArangoDB/js/common/modules/jsunity/jsunity.js:109:19)
    at tests/js/common/aql/aql-view-arangosearch-noncluster.js:662:9
    at Array.forEach (<anonymous>)
    at Object.testViewInInnerLoopSortByTFIDF_BM25_Attribute (tests/js/common/aql/aql-view-arangosearch-noncluster.js:660:14)
    at Object.run (/work/ArangoDB/js/common/modules/jsunity/jsunity.js:532:23)
    at Object.Run [as run] (/work/ArangoDB/js/common/modules/jsunity.js:195:24)
    at tests/js/common/aql/aql-view-arangosearch-noncluster.js:899:9
    at tests/js/common/aql/aql-view-arangosearch-noncluster.js:902:3
    at RunTest (/work/ArangoDB/js/common/modules/jsunity.js:275:12)
    at testFunc (eval at runInLocalArangosh (/work/ArangoDB/js/client/modules/@arangodb/test-utils.js:800:3), <anonymous>:4:9))

      "totalSetUp" failed: undefined

      "totalTearDown" failed: undefined

   Suites failed: 1 Tests Failed: 3
* Test "shell_server_aql_4"
    [FAILED]  tests/js/common/aql/aql-view-arangosearch-noncluster.js

      "testViewInInnerLoopSortByTFIDF_BM25_Attribute" failed: at assertion #2: assertEqual: (bar) is not equal to (baz)
(Error
    at assertEqual (/work/ArangoDB/js/common/modules/jsunity/jsunity.js:109:19)
    at tests/js/common/aql/aql-view-arangosearch-noncluster.js:662:9
    at Array.forEach (<anonymous>)
    at Object.testViewInInnerLoopSortByTFIDF_BM25_Attribute (tests/js/common/aql/aql-view-arangosearch-noncluster.js:660:14)
    at Object.run (/work/ArangoDB/js/common/modules/jsunity/jsunity.js:532:23)
    at Object.Run [as run] (/work/ArangoDB/js/common/modules/jsunity.js:195:24)
    at tests/js/common/aql/aql-view-arangosearch-noncluster.js:899:9
    at tests/js/common/aql/aql-view-arangosearch-noncluster.js:902:3
    at RunTest (/work/ArangoDB/js/common/modules/jsunity.js:275:12)
    at source (eval at <anonymous> (unknown source), <anonymous>:4:52))

      "totalSetUp" failed: undefined

      "totalTearDown" failed: undefined

   Suites failed: 1 Tests Failed: 3

Something regressed.

https://github.com/arangodb/arangodb/pull/9512#issuecomment-512902347
Couldn't reproduce locally so far.


[DO NOT MERGE] Fix help window scaling issue

Fixes #89 .
Pending responses by Prof on if this modification is allowed -- it is a bugfix but does call the window showing closing operation.

Fix approved!
Can be merged!


Mark the different types of shots (on target, off target, blocked, saved, etc.) in the shot map

closed by 78ddd3af90ea3fdcb03cf65911fd580f4c3081fc


DCOS-22128 - fix(marathonUtil): fix parsePod function

This fixes the parsePod function in the case that a pod with a similar configuration as:
{
  "id": "/test",
  "containers": [
    {
      "name": "container-1",
      "resources": {
        "cpus": 0.1,
        "mem": 128,
        "disk": 0
      },
      "image": {
        "kind": "DOCKER",
        "id": "alpine"
      },
      "exec": {
        "command": {
          "shell": "sleep 1000"
        }
      },
      "volumeMounts": [
        {
          "name": "home",
          "mountPath": "/var/log"
        }
      ]
    },
    {
      "name": "container-2",
      "resources": {
        "cpus": 0.1,
        "mem": 128,
        "disk": 0
      },
      "image": {
        "kind": "DOCKER",
        "id": "alpine"
      },
      "exec": {
        "command": {
          "shell": "sleep 1500"
        }
      },
      "volumeMounts": []
    }
  ],
  "volumes": [
    {
      "name": "home"
    }
  ],
  "networks": [
    {
      "mode": "host"
    }
  ],
  "scaling": {
    "instances": 1,
    "kind": "fixed"
  },
  "scheduling": {
    "placement": {
      "constraints": []
    }
  },
  "executorResources": {
    "cpus": 0.1,
    "mem": 32,
    "disk": 10
  },
  "fetch": []
}

To test just deploy the previously mentioned configuration.


ERC-20: Add token price display for BCAC

block.cc Link: https://mifengcha.com/q/BCAC
Token Symbol: BCAC
Token Contract Address: 0x1aBdb309aa592f00a101c545168BFDF9a6Ec61CE
Etherscan Link: https://etherscan.io/token/0x1aBdb309aa592f00a101c545168BFDF9a6Ec61CE

block.cc Link: https://mifengcha.com/q/BCAC

请确保此链接可正常打开。


tinyvg

Probably a good time to mention TinyVG, which is a project to store vector graphics in a greatly simplified format. It's basically meant to cut out the majority of SVG down to the basic shapes used on production.
https://tinyvg.tech/
Relying on SVG support at runtime would be quite onerous as its a massive spec to support.

The TinyVG SDK is written in Zig, so that's a non-starter.

So I'm still thinking about this.
I think it makes sense to stay in SVG in revision control for various reasons: easy tooling, browsers can show individual images, GitHub can show you interactive diffs between revisions (which blew my mind), etc.
But it might make a lot of sense to have the final database pack down to TinyVG: we already have a step where we have to process the data into a single binary file, and we want it to be as small as possible, and it doesn't matter a lot what format it is in at that point, so smaller is better.
We did have a request in #1 to get SVG data at runtime, but we could generate that on the fly trivially from the TinyVG data.
I'm not deeply worried about the complexity of the SVG format, as we control the data and the parser (nanosvg), so if it doesn't work there, we'd just not ship it without modifications. I'm sure nanosvg has gaps in spec compliance, but we're probably only using the subset of SVG that TinyVG cares about anyhow.
So I might write a simple TinyVG parser in C, and have it output the data structure that nanosvg's parser spits out, so I can continue to use nanosvg's rasterizer, just without SVG data.
Then I can also convert that data structure down to TinyVG data, so cooking the database will parse the SVGs, then generate and pack TinyVG into the output instead of the SVG. Since the spec is pretty simple, this could be doable without having to use the existing Zig code.
This will take some work, but I think it's doable, and make this a better project if it works out.


error when installing 1.1.*

when installing throw composer get the following errors :
Problem 1
- The requested package bower-asset/blueimp-gallery could not be found in any version, there may be a typo in the package name.
Problem 2
- Installation request for 2amigos/yii2-gallery-widget 1.1.* -> satisfiable by 2amigos/yii2-gallery-widget[1.1.0].
- 2amigos/yii2-gallery-widget 1.1.0 requires bower-asset/blueimp-gallery ~2.17.0 -> no matching package found.
as mention in
https://packagist.org/packages/2amigos/yii2-gallery-widget
what to do?

same problem

I need to check that... Maybe is time to move to npm instead.


Creating input variables NetCDF file for improved testing

@angehung5   Do you think you can make an input gridded, NetCDF file that is identical to the current develop input_variables.txt file?
As shown in Issue #22 , we want to also add an option in canopy-app for both inputting and outputting NetCDF gridded files  to improve testing and assessment of different modules.

Sure, I definitely can do that. Just to clarify, should netCDF4 file include 1D or 2D variables? Or you want to make it flexible?

I would suggest making it 2-D, since that seems more natural, but maybe we can try to design so that it would be possible to load 1-D as well

OK, I will generate both 1D and 2D inputs for testing, we can determine this later

I like this plan @angehung5 and @zmoon.  The canopy-app may be mainly driven by 2D surface variables, but I can imagine there are some 1D variables that could be used.
One other thing to decide is what is our NetCDF file format/convention.  We should follow some standard for both the input and optional output NetCDF (e.g., latitude, longitude, time, height, etc.) and associated variable attributes.  Maybe CF convention?  https://cfconventions.org/Data/cf-standard-names/current/build/cf-standard-name-table.html

Yeah for sure we should try to make nice output files, following CF, i.e. making sure all have long_name and units attrs, and adding standard_name when possible (i.e. when variable is in the standard name table). I also like adding description attr with more detailed description in some cases.

yes, detailed descriptions would be helpful. I will add add them in the file.

@angehung5 @zmoon Closing this issue.


Feature/jwt external issuer

What type of PR is this?
/kind feature
What this PR does / why we need it:
Adds 4 new features using several new environment variables

Allow define jwt algorithm and payload map to actor_data
Adds a variable to prepend a namespace to MQTT topics
Adds timer count on healthcheck, including the possibility of returning 409 as response code.
Adds newrelic monitoring.

Which issue(s) this PR fixes:
Special notes for your reviewer:
Check out README for the new variables.
Does this PR introduce a user-facing change?:

Additional documentation e.g., usage docs, etc.:

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

npm package (@latest dist-tag)
GitHub release

Your semantic-release bot :package::rocket:


Suprem devel edeploy merge

Added:

Model Plugins
KMeansProxy and RandomizedLipschitz
Added basic HuggingFace Wrappers

Fixes

Harmonized API across classes
Text data sharding and masking
Various bug fixes and improvements


Enable docker infrastructure.

Try enabling the travis container infrastructure.
http://docs.travis-ci.com/user/workers/container-based-infrastructure/

looks good! +1

Coverage remained the same at 29.24% when pulling 9f81875359e20075d57656511b152be824f28b0a on dreid:travis-docker into a8ac5e281c6ad5bef5d5bc2f713ee37184ce58d6 on rackerlabs:master.

Coverage remained the same at 29.24% when pulling 9f81875359e20075d57656511b152be824f28b0a on dreid:travis-docker into a8ac5e281c6ad5bef5d5bc2f713ee37184ce58d6 on rackerlabs:master.


Backend: Store user's works

[ ] user is able to save music samples in their account
[ ] application remembers user's last work sample + tool settings


Unable to preprocess the FUNSD dataset

When I run the preprocess.py script in Google Colab, I get the following error:

Please help.

@PriyalNarang Your screenshot seems to be unavailable. Can you please re-send the error logs?

@PriyalNarang is your data in the same path as preprocess.py?
Seems like it is not.


Collection view doesn't load

What happened?
https://canary.kodadot.xyz/stmn/collection/18?collectionId=18

Please reproduce in steps
Missing pictures
Expected Behavior
Pictures loaded :)
What browsers are you seeing the problem on?
Chrome
At which address did you encounter bug?
No response
Are you logged in?
No
Which wallet you are using?
PolkadotJS
Screenshots
reason?

Relevant log output
No response
Payment link for reward
No response
Code of Conduct

[X] I agree to follow this project's Code of Conduct

unique pallet
https://canary.kodadot.xyz/ahk/collection/u-18


Perception module does not work with AMD drivers

OS Version: Ubuntu 18.04.3 LTS
Apollo Version: origin/r5.0.0
GFX card: AMD Caicos XT (Radeon HD 7470/8470 / R5 235/310 OEM)
I try to build the perception module using this link:
https://github.com/ApolloAuto/apollo/blob/master/docs/howto/how_to_run_perception_module_on_your_local_computer.md
But when I use :

cyber_launch start modules/drivers/tools/image_decompress/launch/image_decompress.launch

the system does waits with the message

[cyber_launch_491] INFO Launch file [/apollo/modules/drivers/tools/image_decompress/launch/image_decompress.launch]
[cyber_launch_491] INFO ========================================================================================================================
[cyber_launch_491] INFO Load module [image_decompress] library: [mainboard_default_491] [CYBER_DEFAULT] conf: [/apollo/modules/drivers/tools/image_decompress/dag/image_decompress.dag] exception_handler: []
[cyber_launch_491] INFO Start process [mainboard_default_491] successfully. pid: 499
[cyber_launch_491] INFO ------------------------------------------------------------------------------------------------------------------------
[mainboard_default_491]  WARNING: Logging before InitGoogleLogging() is written to STDERR
[mainboard_default_491]  I1115 09:31:58.746973   499 module_argument.cc:81] [] command: mainboard -d /apollo/modules/drivers/tools/image_decompress/dag/image_decompress.dag -p mainboard_default_491 -s CYBER_DEFAULT
[mainboard_default_491]  I1115 09:31:58.748311   499 global_data.cc:150] [] host ip: <IP_ADDRESS>
[mainboard_default_491]  I1115 09:31:58.749598   499 module_argument.cc:57] [] binary_name_ is mainboard, process_group_ is mainboard_default_491, has 1 dag conf
[mainboard_default_491]  I1115 09:31:58.749861   499 module_argument.cc:60] [] dag_conf: /apollo/modules/drivers/tools/image_decompress/dag/image_decompress.dag

Is there any workaround for this?

Hello,
An update:
I am using a normal desktop PC with a USB Webcam. I want to test the framework first before I buy the components mentioned by Apollo.
I

@ankitdgolatkar we appreciate your interest in Apollo. Internally we have not tested the GFX card you mentioned. If someone in the community has tested it out, let's wait to hear their solution.

@ankitdgolatkar we appreciate your interest in Apollo. Internally we have not tested the GFX card you mentioned. If someone in the community has tested it out, let's wait to hear their solution.

Hello,
Keeping the issue of the GFX card aside, is it possible to test the Perception module using a normal webcam?

I am using latest AMD RX 5700 GPU and would like to see apollo perception module works with my platform.

The amd team is supporting this, we will release it as soon as possible after test！


add types for set methods proposal

Fixes #57228.
Set methods are stage 3, and I expect to ask for stage 4 in April.
I've used the simplest possible types here, but in some sense these are too restrictive. It's perfectly reasonable to ask if a Set of 0 | 1 is a subset of a Set of number, for example, or even of a Set of 1 | 2 - anything where the intersection of the types is nonempty (I guess that would be, any type S such that T & S extends never is false).
Unfortunately I don't know of a good way to express that constraint, at least not without making the types way more complex. So I've stuck with the simple thing here. But if someone has a suggestion for better types I'd happily take it.
One possibility would be to have the Set-producing types take SetLike<T> but the predicates take SetLike<unknown>. I don't know if that would be better.
Do note that this this PR introduces the SetLike interface.

I guess that would be, any type S such that T & S extends never is false

I think this concept of "overlaps with" or its opposite "is disjoint with" is actually useful quite often. For example, it would be the ideal type of the parameter in [].includes(...). Currently I use this utility:
export const includes = <array extends readonly unknown[], element>(
	array: array,
	element: element & array[number] extends never ? array[number] : element
): element is element & array[number] => array.includes(element)

declare const array: string[]
declare const overlapping: string | number
declare const nonOverlapping: boolean | number

// okay
includes(array, overlapping)

// error
includes(array, nonOverlapping)

I wonder if the team would consider adding a builtin Overlaps type for cases like these and the set methods in this PR.

Unfortunately I don't know of a good way to express that constraint, at least not without making the types way more complex. So I've stuck with the simple thing here. But if someone has a suggestion for better types I'd happily take it.

I'm not sure there's a good solution for this right now - it's more or less the same problem as #48247/#26255 and the fix is generally considered to be #14520 (lower-bounded type parameters)--though FWIW I think an "overlaps with" constraint would be more useful for this than "supertype of"

@fatcerberus I definitely agree overlaps would be very useful in a number of circumstances like includes, as well as internally for a lot of these comparison errors that incorrectly assert the lack of an overlap (when really they're just checking for a downcast):
declare const a: { a: true }

declare const b: { b: true }

// '{ a: true; }' and '{ b: true; }' have no overlap
if (a === b) {
}

Well, in reality any overlaps primitive we got would likely use the same internal check that produces the "these types don't overlap" error, so I don't think it would fix that problem by itself :wink:

@fatcerberus Maybe it would be an opportunity to revisit that logic if it were to be published as its own utility 😅

@typescript-bot pack this
@typescript-bot test this
@typescript-bot test top200
@typescript-bot user test this
@typescript-bot run dt
@typescript-bot perf test this

The "overlaps" concept is what we internally call "comparability". The problem with expressing it as an intersection that produces never is that it is rarely possible to say an intersection of two object types is vacuous.
In other words, you can't say that { meow(): void } & { woof(): void } is an impossible type to fulfill, so there is no straightforward way to disallow catSet.intersection(dogSet).

@DanielRosenwasser Yes, that is exactly the behavior I'd expect in a structural type system, with a result of Set<{meow(): void; woof(): void}>. The type could still give completions based on the base type which must be overlapped, but this kind of intersection is definitely sensible as illustrated by an alternate example like { poisonous: true } & { mammalian: true } for a set of platypuses and echidnas 😄
I'm often frustrated by TS overreaching based on a comparability check (e.g. https://github.com/microsoft/TypeScript/issues/44645), especially when the word "overlap" is used in the error message which has a specific meaning that does not match the criteria for the error.

I brought this up in the design meeting, specifically focusing on

the types of union/intersection
the parameter container types.

The feedback for them was:

Methods like union and intersection should be generic and return a corresponding TypeScript type. union should return a Set<T | U>, and intersection should return a Set<T & U>.

Methods should not expect their arguments to be related to the underlying container type. This risks accidental invocations of intersection that are guaranteed to produce empty collections, but it has the benefit of allowing more symmetric operations.
In other words, both stringSet.intersection(stringOrBooleanSet) and stringOrBooleanSet.intersection(stringSet) are valid invocations of each other.
I'll note that I am personally the most opposed to this behavior, but I was the lone dissenter. 🙂

With respect to SetLike, @rbuckton raised the same points of ReadonlySet being overkill. I suggested ReadonlySetLike might make more sense. Nobody else had a strong opinion.

@bakkot, in this PR I'd suggest to just address the first two points, do whatever you feel is right for point 3, and we will bikeshed by the time we can bring this in for TypeScript 5.5.

WFM, thanks for the feedback. I'll get that pushed up later today.
Any opinions on isSubsetOf and friends? If not I'll default to making them generic, following point 2, even though (because they return booleans) this doesn't let you constrain the output.

Any opinions on isSubsetOf and friends? If not I'll default to making them generic

I think the right thing for those is to take a Set<unknown> since the type parameter will never be observed.

In other words, both stringSet.intersection(stringOrBooleanSet) and stringOrBooleanSet.intersection(stringSet) are valid invocations of each other.

This is generally what people expect of e.g. Array.prototype.includes as well, and I largely concur, but to my knowledge there's no way to allow that without also allowing stringSet.intersection(numberSet) (unless we get lower-bounded or comparability constraints), correct?

@DanielRosenwasser Done. Specifically:
union<U>(other: ReadonlySetLike<U>): Set<T | U>; // things in result are in either
intersection<U>(other: ReadonlySetLike<U>): Set<T & U>; // things in result are in both
difference<U>(other: ReadonlySetLike<U>): Set<T>; // things in result are in receiver
symmetricDifference<U>(other: ReadonlySetLike<U>): Set<T | U>; // things in result are in either

and then ReadonlySetLike<unknown> as the parameter for the three predicates.

@fatcerberus It's possible to validate as a function parameter with an approach like the one I mentioned in my original comment which could be leveraged here, but I assume that falls into the category of "too complex for builtin types."

Hmm, I have mixed feelings about the name ReadonlySetLike.  While I get it--it doesn't have any of the mutating methods--it'd be weird (and maybe a bit misleading, for people reading the code) if I actually wanted to make a mutable setlike and had to extend ReadonlySetLike to get there.
Also it doesn't seem completely analogous to ArrayLike since the methods are defined to return a full-fledged Set...

but to my knowledge there's no way to allow that without also allowing...

Correct. "This is why we need Comparable<T>!" got brought up multiple times in the discussion 🙂

If we are seriously thinking about Comparable<T>, why not take the more conservative option first and then introduce Comparable?

The conservative approach still fails basic desirable things like subtyping the output or a.intersect(b) === b.intersect(a)

Hmm, I have mixed feelings about the name ReadonlySetLike. While I get it--it doesn't have any of the mutating methods--it'd be weird (and maybe a bit misleading, for people reading the code) if I actually wanted to make a mutable setlike and had to extend ReadonlySetLike to get there.

While I'm fine with both SetLike and ReadonlySetLike, there are other names we could consider as well. In C++, the requirements for a Container are quite similar (i.e., has a size, is iterable), so Container<T> is a possible option if there's a strong negative sentiment towards ReadonlySetLike.

Also it doesn't seem completely analogous to ArrayLike since the methods are defined to return a full-fledged Set...

These methods allocate and return a new Set no matter what object you pass as the argument so long as it has the minimum necessary API for the methods to succeed. In fact, ArrayLike and SetLike are nearly identical in their capabilities, but are tailored to their specific protocols. Both are minimal, read-only representations of their respective full implementations. ArrayLike has a read-only length, the ability to read a single element by index, and the ability to read all elements by index and length. While SetLike has a read-only size, the ability to test whether a single value is in its domain via has(), and the ability to read all elements via keys().

Ah, I think I misinterpreted ReadonlySetLike as being the interface that provided the methods, which I'm guessing now isn't actually the case - that's the part I was objecting to, since they always return a real Set.  My objections may have been misplaced :)

@RyanCavanaugh Huge +1 for Comparable as a builtin type.
While I still prefer Overlaps because it's easier to reason about (is it possible to create a value that satisfies both types) without knowing the heuristics in TSC, Comparable would still be a huge practical improvement.
For now, I'm stuck using this utility which, while neat, feels like overkill 😅
export type isDisjoint<l, r> = l & r extends never
	? true
	: // domainOf is similar to typeof in JS, but aligned to TS keywords
	domainOf<l> & domainOf<r> extends never
	? true
	: [l, r] extends [object, object]
	? true extends valueOf<{
			[k in Extract<
				keyof l & keyof r,
				requiredKeyOf<l> | requiredKeyOf<r>
			>]: isDisjoint<l[k], r[k]>
	  }>
		? true
		: false
	: false

@bakkot I'm not from TS team and just curious: wouldn't it be better if ReadonlySetLike interface will be like this:
type ReadonlySetLike<T> = Pick<Set<T>, 'size' | 'has' | 'keys'>

In any case of probable future changes of Set typings for size, has or keys ReadonlySetLike will also have it automatically

Sure, that would work too. I leave it up to the TS to decide which approach they'd prefer.

Doesn't keys() need to return an Iterator anyway, not an Iterable?
https://github.com/microsoft/TypeScript/blob/6ceb39551a30a3aac50eb862c3f959cfc892d478/src/lib/esnext.collection.d.ts#L17
In current Chrome:
const mySetLike = {
  size: 2,
  has(a) { return a === 'foo' || a === 'bar' },
  keys() { return ['foo','bar'] }
};

// new Set(['baz']).union(mySetLike);
// Uncaught TypeError: string "next" is not a function

mySetLike.keys = () => {
  let i = 0;
  return {
    next() {
      i++;
      if (i === 1) return { value: 'foo', done: false };
      if (i === 2) return { value: 'bar', done: false };
      return { done: true };
    }
  };
};

new Set(['baz']).union(mySetLike);
// Set(3) {'baz', 'foo', 'bar'}

Also piggybacking off Set would require it to return an IterableIterator, which isn't necessary as you can see.

@noinkling Nice catch, that's an embarrassing typo given that I designed the feature 😅. Fixed.
Possibly should update the description of keys/values/entries on Map and Set to say "iterable iterator" instead of "iterable", but not in this PR.

@bakkot One more question about return type for difference and symmetricDifference.
I suspect a return type for this two functions should be something like this, isn't it?
difference<U>(otherSet: ReadonlySetLike<U>): Set<Exclude<T, U>>

symmetricDifference<U>(otherSet: ReadonlySetLike<U>): Set<Exclude<T, U> | Exclude<U, T>>

Depends on how we want to make the tradeoff between precision and making the types noisier, but yes, formally that's correct.

Any blockers* for this PR? My PR into Mobx mobxjs/mobx#3853 state manager (which mostly used for React.js) is depending on it

* except failed tests

@bakkot One more question about return type for difference and symmetricDifference. I suspect a return type for this two functions should be something like this, isn't it?
difference<U>(otherSet: ReadonlySetLike<U>): Set<Exclude<T, U>>

symmetricDifference<U>(otherSet: ReadonlySetLike<U>): Set<Exclude<T, U> & Exclude<U, T>>

Those definitions would be too strict since a given instantiation of Set does not imply that the set itself contains all of those values, only that it may contain those values:
const set1 = new Set<"A" | "B">(["A", "B"]);
const set2 = new Set<"B" | "C">(["C"]);
const set3 = set1.difference(set2);
set.has("A"); // true
set.has("B"); // true

Even though set2 is declared as Set<"B" | "C">, it does not actually contain a "B" value, thus "B" is not actually excluded from set3.

@bakkot I'm not from TS team and just curious: wouldn't it be better if ReadonlySetLike interface will be like this:
type ReadonlySetLike<T> = Pick<Set<T>, 'size' | 'has' | 'keys'>

In any case of probable future changes of Set typings for size, has or keys ReadonlySetLike will also have it automatically

IMO, an interface is a better option as it allows for interface merging if a polyfill is loaded that also introduces these types.

Those definitions would be too strict

@rbuckton so maybe wrap it in Partial<> ?

It looks like baselines need to be updated after the most recent commit.

Hm. The way I've been doing that (npm ci; npm run build; npm run test -- --no-lint; npx hereby baseline-accept) doesn't produce any changes locally for this commit. And the diff in CI doesn't immediately look like it should be caused by the last commit, even though the one before was passing. Is there a different process I should follow here?

CI always tests main + the PR; have you merged main locally?

Aha, thanks, that's fixed it.


Android + TTS documentation

This fills out the initial version of the Android section and adds a short guide for TTS.
Note that nav.json isn't totally being honored (at least it wasn't for me)—I'm trying to have the welcome doc show up at the very top, and then have the iOS section above Android, but Android keeps showing up at the top when I run the site locally. I haven't found anything explicit that does this; it just looks like the sections are sorted based on their contents' dates, a frontmatter field that's been deprecated.

The graphql query was indeed trying to sort by frontmatter date, but that field no longer exists so it was just sorting on undefined. So, it was a noop. There is a manual sort in the docs nav that sorts by nav.json. I'll see if I can figure out why it's not putting Welcome at the top.

The problem was due to a mismatch between what's in nav.json and what is set for the navId (e.g. 'Android Speech Pipeline' vs 'Spokestack Android Speech Pipeline').

I added a check that will throw an error for that case in the future.

D'oh. Thanks—I was wondering why the sections that were in both the local and published versions weren't ordered the same.

:tada: This issue has been resolved in version 1.1.0 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


chore: release 0.3.1

Release-As: 0.3.1

@wangela
This triggers release please to create new release for https://github.com/googlemaps/flutter-navigation-sdk/pull/161 which was marked as chore (and therefore is not triggering the release automatically). This should have been feature PR, as it improves how plugin can be used with flutter projects.
(as we need to have Release-As: 0.3.1 as a commit message, should whis be merged without squashing?)


Skill exception handling template

Description
We're not handling exceptions for skills and it's causing problem such as multiple exceptions and no trace and logs. This change is to standardize the exception handling for skills.
Related Issue
#279
Testing Steps
With contacts missing, from the auth scope string for AADv2, send the message 'send an email to Ryan letting him know I'll be back in Seattle on January 2nd' to the bot to trigger the exception about not having permission to find contact. With this change, there's only going to be one error message about error with the bot and developer being notified.
Checklist

[x] I have commented my code, particularly in hard-to-understand areas

Thank you so much for your kindly help!


login redir problem

I install the plugin it works. but
when i login in , the url redir to xxxx/manifest.webmanifest?loggedin=true.  The browser show the json content.
I am using nginx as reverse proxy,  is there special config required?
Before I using the plugin , everything is ok.

When you try to log in or when you are logged?
Because this plugin should not touch anything when the user is connected to the nodebb forum.
As long a NodeBB is aware of your connection, reverse proxy or not, I should not change anything.

This plugin should print debug messages if the forum is started like this, can you try?
./nodebb dev

Login is a success.  It seems it is related manifest process.
https://serverfault.com/questions/992633/how-to-make-nginx-server-json-files-with-the-type-application-json-instead-of-te
It seems no related to the plugin, but how to properly setup the nginx.

Good to know, thanks for the update!

I  also contact nodebb:  https://github.com/NodeBB/NodeBB/issues/10258
but I did not understand where is  the problem.

As you can see here, the plugin does not block the manifest file. For me this should not cause any trouble.
Does it work correctly without the plugin?

without plugin , it works correct.  As I said,  after register, it jump to
?loggedIn=true, works.  but with plugin in, it also jump to ?loggedIn, but
there is a Location in head,  it contains web.manifest?loggedIn=True, and
than go this page.  The flow is stopped.
So I am hard to determine which part is the problem.
On Mon, Feb 7, 2022 at 11:16 PM Louis MILCENT @.***>
wrote:

As you can see here, the plugin does not block the manifest file. For me
this should not cause any trouble.
Does it work correctly without the plugin?
—
Reply to this email directly, view it on GitHub
https://github.com/LM1LC3N7/nodebb-plugin-private-forum/issues/5#issuecomment-1031579349,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AA4Y6UH6NKSGMMBCXKEBDP3UZ7O5ZANCNFSM5NMCCKKQ
.
Triage notifications on the go with GitHub Mobile for iOS
https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675
or Android
https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.
You are receiving this because you authored the thread.Message ID:
@.***>

Hello, can you try again with the latest version 1.3.0?

I check your code changing, but I did not understand. It seems you change the solution, privious solution is based on the route, and then based on the request.  It seems based on the request is "easy" for understand, but on the route is a little difficult to known the behaviour.

The new version is very succesful.  In the previous solution, though chrome F12 , there is always lots of error, but now all the error request is gone.   It likes magic.
I am new to nodebb, I have not understand the plugin design in nodebb. Your plugin is a good start.

Great to read the problem is solved.
I have found a small part of the solution on the forum, the other one on an existing plugin (and documentation) 😇
I am a beginner too in NodeBB, so feel free to copy the code and study it, if it can help 😊


Provide information on what ES version a JS feature is added in

Request type

[ ] Please close this issue, I accidentally submitted it without adding any details
[x] New documentation
[ ] Correction or update

Details

Correction or update
when im learning about items in javascript, closures ternary operators higher order methods for functions and the sort i dont know what ecmascript version they are es5 es6 eslint and so i, i need this in the specs because this is crucial to my API projects thanks much MDN the best
for now since i think of using closures, tell me is clousres in the use of
function Foo(bar){
var _name = bar
function getName(){return _name}
}
is es5 javascript
and fix the global larger problem thanks much MDN the best

Duplicate of https://github.com/mdn/sprints/issues/2735


subscribe as needed

There is a scene like this:
With 50 people in one room, it is impossible to subscribe to all of them on the mobile.
modile can only decode several streams.

i think this will be solved with the simulcast support. for simulcast, i would like the client to be able to request different video resolutions over a data channel (depending on layout, ect). one of those could be no video/no audio. so the tracks would still be sub'd but in a suspended state


PMID:25533340

increased double-strand break repair via nonhomologous end joining
decreased double-strand break repair via nonhomologous end joining
delayed mitotic G2 DNA damage checkpoint
spores resistant to ionizing radiation

added:
delayed mitotic G2 DNA damage checkpoint FYPO:0004781
spores resistant to ionizing radiation FYPO:0004782
already existed:
increased double-strand break repair via nonhomologous end joining FYPO:0003584
decreased double-strand break repair via nonhomologous end joining FYPO:0004287

edit file: 50c79b49a8ad108d502392d5315198de054d365d
release: 2c741a5af24c2df0a7d56ce61ba1fc188161a57d


Issue with TABs now showing correctly

There seems to be an issue with the editor, and tabs / indenting.
When I code using nano, it looks right, same with vi/vim.   But with micro is looks
unaligned.  An example is this
#define SOMETHING1     1
#define SOMETHING2     2
#define SOMETHING3     3

(TAB between name and number above).
In micro it can look like this
#define SOMETHING1     1
#define SOMETHING2             2
#define SOMETHING3     3

Now if you fix that, it will look off in the other edits.  Very annoying issue, as
you keep "correcting" unaligned code, but you're actually making something
correct, not correct.
Surely must be a parse issue in micro?
Using latest version, linux version doesnt make any difference.

Could you attach a file that exhibits the issue?

This usually happens when you've files with a mixture of TAB and SPACE indentations and the TAB indent width doesn't fit to the used space count to indent. At least that's the first which comes to my mind looking at the example, but unfortunately it right know includes spaces only due to code black.
So long story short:
As already referred by @zyedidia the file to reproduce the issue is necessary.

Sample from a header file.
sample.h.gz

Yeah a tab size of 8 is usually the default for old Unix tools, but I think most people use 4 space tabs now so that is the default for micro. Glad this didn’t turn out to be a bug, thanks for the help JoeKar!


Sensor not registering any values

The owlet base picked up properly because the sensor ends with the matching serial number that the app has so I know my main config is correct but I added the template section to get the sensors and they register nothing.  Any advice?

Nope it didn’t pick up. None of the sensors have the serial numbered appended at the end of the name like the hub does. Is that part of the problem somehow?

friendly bump:
Any help would be SUPER appreciated. I’ve got a high risk newborn and I think this would make me feel so much better to tie in these metrics with my lights and speakers. I’m getting the base station to register with the serial number automatically appended to the end of the entityID so that MUST mean the login process is working, right? It’s just the other sensors that won’t return any data. Should I delete everything and start from the beginning but have the serial number already appended to my other sensors? I’d like to run the base python api login in a terminal window to see if that works but I’m not sure how to do that. Any other ways to debug what’s going on that y’all could point me to? Thanks in advance.

And just to be sure that my config for integration is okay, this is my setup:
configuration.yaml:

sensor: !include sensors.yaml
secrets: !include secrets.yaml
sensors.yaml:

#######  Owlet SmartSock Integration by jlamendo

platform: owlet
username: !secret owlet_username
password: !secret owlet_password
region: "world"
####### Owlet attributes test:
platform: template
sensors:
owlet_heart_rate:
friendly_name: "Owlet Heart Rate"
unit_of_measurement: 'bpm'
value_template: "{{ state_attr('sensor. owlet_smart_sock_ac000w016550878', 'heart_rate') }}"
######## Owlet SmartSock Sensors
platform: template
sensors:
owlet_heart_rate:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.heart_rate}}"
unit_of_measurement: BPM
owlet_spo2:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.oxygen_saturation}}"
unit_of_measurement: SPO2
owlet_movement:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.movement}}"
unit_of_measurement: "%"
owlet_battery:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.battery}}"
unit_of_measurement: "%"
owlet_rssi:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.ble_rssi}}"
unit_of_measurement: dBm
owlet_monitoring_status:
value_template: "{{(states.sensor.owlet_smart_sock_ac000w016550878.attributes.active) and (states.sensor.owlet_smart_sock_ac000w016550878.state == 'Connected')}}"
unit_of_measurement: boolean
owlet_connection:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.state}}"
unit_of_measurement: boolean
owlet_tachycardia_alert:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.HIGH_HR_ALRT}}"
unit_of_measurement: boolean
owlet_bradycardia_alert:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.LOW_HR_ALRT}}"
unit_of_measurement: boolean
owlet_hypoxia_alert:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.LOW_OX_ALRT}}"
unit_of_measurement: boolean
owlet_lobatt_alert:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.LOW_BATT_ALRT}}"
unit_of_measurement: boolean
owlet_read_integrity_alert:
value_template: "{{states.sensor.owlet_smart_sock_ac000w016550878.attributes.LOW_INTEG_READ}}"
unit_of_measurement: boolean

The "### Owlet Attributes Test" section was just another failed attempt and creating a sensor a different failed way that I found in some forum but I really don't know enough about coding to know if I have anything wrong.  I found another older owlet integration by CAB426 where the login info was placed in the actual configuration.yaml file and I guess it wasn't a sensor.  I have all my setup in the sensors.yaml file including the login info.  He also had an additional field of "name" to fill in but this one rejects my setup if I add that field.  Should I be setting all this up as sensors even including the integration itself and should I give it a "name" field? Also, should I load the integration initially without all of the attribute sensors and then restart with the sensors added after it discovers the base?  Should I be manually appending the serial number in each of the sensor attribute fields the way I have?  Should I use [brackets] around them like in the example?  I assumed I delete those brackets.  Sorry for the long question here guys.  Any help appreciated.  I know its a lack of knowledge of my part but I'm learning a lot about HA with this.

Check out issue #13, I think that you are describing the same issue. This is fixed in the version in my repo. I have suggested that this is brought into the main repo through pull #14, but it has yet to be accepted.

friendly bump: Any help would be SUPER appreciated. I’ve got a high risk newborn and I think this would make me feel so much better to tie in these metrics with my lights and speakers. I’m getting the base station to register with the serial number automatically appended to the end of the entityID so that MUST mean the login process is working, right? It’s just the other sensors that won’t return any data. Should I delete everything and start from the beginning but have the serial number already appended to my other sensors? I’d like to run the base python api login in a terminal window to see if that works but I’m not sure how to do that. Any other ways to debug what’s going on that y’all could point me to? Thanks in advance.

not sure where to ask this question, but you two would likely know since you are still using this... does SPO2 still work via HA?

@RampantRedsFan @jacobwtyler
not sure where to ask this question, but you two would likely know since you are still using this... does SPO2 still work via HA?

I can confirm that SpO2 works with sock v3 using the fork in my repo as of
12 hours ago (have not tried since last night my time).
On Thu, May 12, 2022 at 7:13 PM opie546 @.***> wrote:

@RampantRedsFan https://github.com/RampantRedsFan @jacobwtyler
https://github.com/jacobwtyler
not sure where to ask this question, but you two would likely know since
you are still using this... does SPO2 still work via HA?
—
Reply to this email directly, view it on GitHub
https://github.com/jlamendo/ha-sensor.owlet/issues/15#issuecomment-1125499927,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACVK3Z4AE2FUFVUAT2OUHXTVJWGA7ANCNFSM5T7N46YA
.
You are receiving this because you were mentioned.Message ID:
@.***>

--
Sent from my mobile

I can confirm that SpO2 works with sock v3 using the fork in my repo as of 12 hours ago (have not tried since last night my time).
On Thu, May 12, 2022 at 7:13 PM opie546 @.> wrote: @RampantRedsFan https://github.com/RampantRedsFan @jacobwtyler https://github.com/jacobwtyler not sure where to ask this question, but you two would likely know since you are still using this... does SPO2 still work via HA? — Reply to this email directly, view it on GitHub <#15 (comment)>, or unsubscribe https://github.com/notifications/unsubscribe-auth/ACVK3Z4AE2FUFVUAT2OUHXTVJWGA7ANCNFSM5T7N46YA . You are receiving this because you were mentioned.Message ID: @.>
-- Sent from my mobile

awesome! does it work with their app? I thought they were getting rid of that feature

As far as I have read, they have no plans to decommission this
functionality in socks v1, v2, or v3 regardless of region. They are
releasing (or maybe have released) a version of the sock that does not
track vitals (or at least does not show) to the US market to appease the
overzealous regulators. I do not know how this integration would work with
the regulator-appeasing version of the sock.
On Fri, May 13, 2022 at 9:07 AM opie546 @.***> wrote:

I can confirm that SpO2 works with sock v3 using the fork in my repo as of
12 hours ago (have not tried since last night my time).
On Thu, May 12, 2022 at 7:13 PM opie546 @.> wrote: @RampantRedsFan
https://github.com/RampantRedsFan https://github.com/RampantRedsFan
https://github.com/RampantRedsFan @jacobwtyler
https://github.com/jacobwtyler https://github.com/jacobwtyler
https://github.com/jacobwtyler not sure where to ask this question, but
you two would likely know since you are still using this... does SPO2 still
work via HA? — Reply to this email directly, view it on GitHub <#15
(comment)
https://github.com/jlamendo/ha-sensor.owlet/issues/15#issuecomment-1125499927>,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACVK3Z4AE2FUFVUAT2OUHXTVJWGA7ANCNFSM5T7N46YA
https://github.com/notifications/unsubscribe-auth/ACVK3Z4AE2FUFVUAT2OUHXTVJWGA7ANCNFSM5T7N46YA
. You are receiving this because you were mentioned.Message ID: @.>
-- Sent from my mobile
awesome! does it work with their app? I thought they were getting rid of
that feature
—
Reply to this email directly, view it on GitHub
https://github.com/jlamendo/ha-sensor.owlet/issues/15#issuecomment-1126037870,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACVK3Z2YR6OO64FURPFJBQTVJZHZHANCNFSM5T7N46YA
.
You are receiving this because you were mentioned.Message ID:
@.***>

thanks, I am confused because I thought that the v3 is what they are selling right now... when did you buy yours / was it listed as the dream sock?

This is v3: They are not selling it anymore in the US (although some
retailers still may be selling them) ->
https://owletbabycare.co.uk/products/owlet-smart-sock
This is Dream Sock: They are marketing this in the US ->
https://www.owletcare.com/products/owlet-dream-sock
As of ~3 months ago, I was using v2 with SpO2 working with the HA
integration (it was working when I decommissioned). I currently use two v3s
with SpO2 working with the HA integration. I honestly have no idea if dream
sock would send real-time data to HA. I could see it going either way (it
likely depends on how similar dream sock is to v3 as far as the sock to
server to api programming).
On Fri, May 13, 2022 at 1:32 PM opie546 @.***> wrote:

thanks, I am confused because I thought that the v3 is what they are
selling right now... when did you buy yours / was it listed as the dream
sock?
—
Reply to this email directly, view it on GitHub
https://github.com/jlamendo/ha-sensor.owlet/issues/15#issuecomment-1126284774,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/ACVK3ZYIMPQGYMDUT6Q2CNLVJ2G3ZANCNFSM5T7N46YA
.
You are receiving this because you were mentioned.Message ID:
@.***>

thanks for that clarification, a US based search makes it more confusing since there is an ad that calls it "All New Owlet Dream Sock - Owlet Smart Sock 3"

This should be fixed in the latest version of the integration

Did anyone buy an Owlet Dream Sock and test it? (I don't understand if Dream Sock = v3)

It does seem to authenticate and pull data for Owlet Dream Sock; not sure if it's actually working though:
https://github.com/jlamendo/ha-sensor.owlet/issues/20#issuecomment-1541179688


Scroll event not fire in React

Hi there.
I am creating the integration of lottie in our wordpress plugin.
The wordpress editor is react app, so the problem is the scroll event is not fire.
Can you help me with this, is it bug or no?
Thank you very much.

Or can we add 3rd parametr true for listener.     window.addEventListener('scroll', this.#scrollHandler, true);

Hi @grogou,
Scrolling on react apps seems to work on my end, I've made this code sand box to show you how I set up playing on scroll with the second lottie:
https://codesandbox.io/s/lottie-react-direction-test-ysj6p?file=/src/App.js
This is using our lottie-react player available here:
https://github.com/LottieFiles/lottie-react

@samuelOsborne I am using non react lib in my app, is it the problem?

@grogou which player are you using? Can you link please. And share a snippet of your implementation

import {
    useBlockProps,
    InspectorControls,
    MediaPlaceholder,
    MediaReplaceFlow,
    BlockControls,
} from "@wordpress/block-editor";
import {
    PanelBody, RangeControl, SelectControl, ToggleControl
} from '@wordpress/components';
import {__} from '@wordpress/i18n';
import {LottieIcon} from "@xpac-group/icons";
import {useEffect, useRef, useState} from "@wordpress/element";
import '@lottiefiles/lottie-player';
import {create} from '@lottiefiles/lottie-interactivity';

export default (props) => {

    const {
        attributes: {
            id,
            url,
            mode,
            state,
            type,
            count,
            speed,
            delay,
            visibility_start,
            visibility_end,
            loop_after_scroll
        },
        setAttributes,
        clientId
    } = props;

    const lottie = useRef(null);
    const [interactivity, setInteractivity] = useState(null);

    useEffect(() => {
            let actions = {};
            if (mode === 'chain') {
                actions = [
                    {
                        state: state,
                        forceFlag: true,
                        loop: count && state === 'loop' ? count : null,
                        speed: speed,
                        delay: delay * 1000
                    }
                ];
            }
            if (mode === 'scroll') {
                actions = [
                    {
                        visibility: [visibility_start / 100, visibility_end / 100],
                        type: "seek",
                        frames: [0, lottie?.current?._lottie?.totalFrames],
                    }
                ];
                if (loop_after_scroll && type === 'seek') {
                    actions.push(
                        {
                            visibility: [visibility_end / 100, 1],
                            type: "loop",
                            frames: [0, lottie?.current?._lottie?.totalFrames]
                        }
                    );
                }
            }
            if (lottie.current !== null) {
                if (url) {
                    lottie.current.addEventListener('load', () => {
                        let interactivity = create({
                            player: `#${id}`,
                            mode: mode,
                            actions: actions,
                        });
                        setInteractivity(interactivity);
                    });
                }
                if (interactivity !== null) {
                    interactivity.redefineOptions({
                        player: `#${id}`,
                        mode: mode,
                        actions: actions,
                    });
                }
            }
        },
        [interactivity, url, mode, type, state, speed, count, delay, visibility_start, visibility_end, loop_after_scroll]
    );

    return (
        <div {...useBlockProps()}>
            {url && id !== undefined &&
                <lottie-player
                    ref={lottie}
                    id={id}
                    mode={mode}
                    src={url}
                />
            }
        </div>
    )
};```

Sorry for big part code I removed unnecessary  parts.

@samuelOsborne I think the problem is my envirment, when I manual add
window.addEventListener('scroll', (e) => {
     console.log(e)
});

it is not working, but when I add true as 3rd param it works.
window.addEventListener('scroll', (e) => {
     console.log(e)
}, true );

@grogou Could you try adding the lottie variable to the useEffect array at the bottom, to make sure the Lottie ref isn't null inside of useEffect
[lottie, interactivity, url, mode, type, state, speed, count, delay, visibility_start, visibility_end, loop_after_scroll]

@samuelOsborne yes sure will try it.
But I found article about this problem on wordpress
https://make.wordpress.org/core/2021/06/29/blocks-in-an-iframed-template-editor/
It is the iframe problem

The interesting part is But what if the library is using the global window or document and it’s out of your control?

@grogou Could you try adding the lottie variable to the useEffect array at the bottom, to make sure the Lottie ref isn't null inside of useEffect
[lottie, interactivity, url, mode, type, state, speed, count, delay, visibility_start, visibility_end, loop_after_scroll]

It's not working.

And I can share with you the Wordpress developer comment on this problem
https://github.com/WordPress/gutenberg/issues/38692#issuecomment-1035091059
Sorry for me and my questions, but this is interesting case.

@grogou have you tried out what they recommend in the meantime?
"In the meantime, you can use the script that is loaded inside the iframe. We’ve loaded all front-end scripts in the iframe to fix these cases, but note that ideally you shouldn’t use scripts loaded in the iframe at all. You can use defaultView to access the script.
const ref = useRefEffect( ( element ) => {  const { ownerDocument } = element;  const { defaultView } = ownerDocument;   // Use the script loaded in the iframe.  // Script are loaded asynchronously, so check is the script is loaded.  // After the dependencies have loaded, the block will re-render.  if ( ! defaultView.jQuery ) {    return;  }   defaultView.jQuery( element ).masonry( … );  return () => {    defaultView.jQuery( element ).masonry( 'destroy' );  }} );const props = useBlockProps( { ref } );

"

@grogou I've just noticed, could you also try swapping out the 'load' event to 'ready':
 lottie.current.addEventListener('ready', () => { ......

and see how that goes

Ah oki, the problem is that 3rd parametr, https://github.com/facebook/react/issues/5042 the React issue. Could you able to add it to lib in new version, or ownerDocument implementation? It can be helpful for me and guys similar me, because the wordpress community can do nice things with this repo. If you need I can mention wordpress devs, in our distinction. they say Feel free to contact us to mention the issue.

@grogou I've just noticed, could you also try swapping out the 'load' event to 'ready':
 lottie.current.addEventListener('ready', () => { ......

and see how that goes

Not working (:

@grogou Will look in to including this in a new version, I'll keep you updated

@samuelOsborne thank you very much for your help. I will try to add notice in my plugin about issue, until problem will be fixed. Have a good day and thank you again.

@samuelOsborne thank you very much for this fix. And one more question. Is it related bug for me, when I change url variable and src attribute got rendered with new url why my lottie player play old lottie?

Hi @grogou I've pushed up a beta package on npm:
<EMAIL_ADDRESS>can you let me know if this resolves your issue please.
For your second questions, I'm not sure what you mean, could you explain to me again please?

Thank you, will check it now.
About second question.

When url state changed and component get rerendered with new url, lottie still animate old one.

Hi @grogou I've pushed up a beta package on npm:
<EMAIL_ADDRESS>can you let me know if this resolves your issue please.
For your second questions, I'm not sure what you mean, could you explain to me again please?

It is still not working becouse of this 3rd param in listener I guess.
https://github.com/WordPress/gutenberg/issues/38692#issuecomment-1035091059

@grogou I've added use capture to this version, please let me know if it works for you:
<EMAIL_ADDRESS>

@samuelOsborne yes it's works now, thx very much you best)))

@grogou Great, I'll push this in to the master branch and release soon, I'll ping you here and close the issue

And about second question. Is thery a way to destroy current lottie after lottie src change and reinit it.

@grogou Yes, on the lottie-player, there is a destroy() method available

@grogou In which case do you need to change the URL of the lottie? It might be possible with lottie-interactivity directly

@samuelOsborne I have integration of your lib in my wordpress contructor and use case is when user need to change lottie in editor.

Can I change url with redefineOptions ?

@grogou Yep you can:
  interactivity.redefineOptions({
    player: '#firstLottie',
    mode: 'chain',
    actions: [
      {
        path: 'https://assets6.lottiefiles.com/packages/lf20_yefgzddc.json'
      },
    ],
  });

only works with chain mode though.
Otherwise the lottie-player element can be called with the destroy method

@grogou I've merged, this is out in version 1.3.5.
Cheers, closing this now.

Hi @grogou,
Scrolling on react apps seems to work on my end, I've made this code sand box to show you how I set up playing on scroll with the second lottie:
https://codesandbox.io/s/lottie-react-direction-test-ysj6p?file=/src/App.js
This is using our lottie-react player available here: https://github.com/LottieFiles/lottie-react

Hey @samuelOsborne, do you have any idea what I'm doing wrong here?
`
import { create } from "@lottiefiles/lottie-interactivity";
import { Player } from "@lottiefiles/react-lottie-player";
import { createRef, memo, useState } from "react";
import { Block } from "../../../components";
export const Customization = memo(() => {
const lottieRef = createRef();
const [lottie, setLottie] = useState(null);
return (

Der Biocycle one wurde
Nur für deinen Fuss
entwickelt
    <Player
      ref={lottieRef}
      lottieRef={(instance) => {
        setLottie(instance);
      }}
      onEvent={(event) => {
        if (event === "load") {
          create({
            mode: "scroll",
            player: lottie,
            actions: [
              {
                visibility: [0.5, 1],
                type: "seek",
                frames: [0, 100],
              },
            ],
          });
        }
      }}
      controls={true}
      autoplay={false}
      loop={false}
      src={"/animations/monster.json"}
      style={{ width: "320px" }}
    ></Player>
  </div>
</Block>

);
});
`
It just doesn't do anything on scroll, even though I copied your code to the last bit.

GOT IT! For anyone finding this and using @samuelOsborne's example and then nothing happening: Check the amount of frames your file has. For me that was the problem. The first 100 frames didn't really do much, so I didn't see any animation. Also the visibility [0.5, 1] killed a lot of the animation, so set that to [0,1] and see how it works.


Dart vdd

Related: #101
root
├───rust
│   └───dart_vdd                        # Rust - Dart bridge (Dart package)
│       ├───example
│       │   └───dart_vdd_example.dart
│       ├───lib
│       │   └───src
│       │       └───generated
│       │           └───api.dart        # Dart API generated from Rust
│       └───rust                        # Cargo project
│           └───src
│               └───api.rs              # Rust API
└───vdd_control                         # Flutter app
    └───lib
        └───main.dart

There are a few points of interest:

rust/dart_vdd/rust/src/api.rs: This is where the library is implemented on the Rust side
rust/dart_vdd/lib/src/generated/api.dart: These are the generated bindings by flutter_rust_bridge
rust/dart_vdd/example/dart_vdd_example.dart: A (non exhaustive) usage example

I used a Dart feature called native-assets to build and link the Rust library, which is currently not stable and behind an experimental flag. It is essentially a build.dart file, similar to Rusts build.rs. Traditionally, it was not possible to distribute binaries with just Dart. Flutter has its own mechanisms for this, but then, the package can only be used in Flutter projects. The native-assets feature is meant to replace these mechanisms in the future. But for now, it is only available in Flutter on the main channel (like nightly in Rust).
The API uses a Dart Stream as the main way of communicating the driver's state (as an immutable data structure). It would stream any changes made to the driver, regardless of who did it, so it would always reflect the correct state of the driver. This pattern is quite native to Flutter to build on top of.

I have read the CLA Document and I hereby sign the CLA

@Dampfwalze Okay, bindings should be hooked up now. Let me know if this initial implementation is ok or needs reworking 😁

I've made improvements to the bindings. I'll fix them on on this branch later today

I made breaking changes to the bindings again. I'll fix them on on this branch later today

I reverted the merge for now with a force push

Should be good now. I feel like I've more or less settled on a good and robust api (though let me know if I did miss something).

Should be good now. I feel like I've more or less settled on a good and robust api (though let me know if I did miss something).

I feel like you are desperately trying to hide the tokio runtime inside your api and keeping your api synchronous. I don't think this is beneficial. It should be the responsibility of the user to provide a runtime. In fact, flutter_rust_bridge provides its own tokio based runtime.
There are many methods which can just be asynchronious, which not only reduces complexity, but also gives the control to the user.

Should be good now. I feel like I've more or less settled on a good and robust api (though let me know if I did miss something).

I feel like you are desperately trying to hide the tokio runtime inside your api and keeping your api synchronous. I don't think this is beneficial. It should be the responsibility of the user to provide a runtime. In fact, flutter_rust_bridge provides its own tokio based runtime.
There are many methods which can just be asynchronious, which not only reduces complexity, but also gives the control to the user.

Tokio is indeed an intentional implementation detail, in which the runtime was required to properly handle things for the sync api.
Later on I will probably re-organize the API and internal code more to better reflect both cases, and in the async case, use the users runtime. When I was talking about settling on something good, I meant with the internal design.
I was not avoiding making more async methods that match their sync counterparts. The API design is still in flux.


Investigate SCP support

Mina has an SCP command processor, and it should build on the same filesystem already in place:
https://github.com/apache/mina-sshd/blob/master/docs/scp.md

Initial support is in, but the construct scp -r someserver:\* . results in no files, and scp -r someserver: . results in all files going in a local dir named null.


Statistical Rethinking 2nd Edition

The new revision of the book, Statistical Rethinking 2nd Edition, is almost done, and the R code should not be changing much before it is published.  https://xcelab.net/rm/sr2/

Thanks @LarryRiedel
Reposting link because the text doesn't match the actual URL
https://xcelab.net/rm/sr2/

@LarryRiedel Thanks for the link and interest.
The author of Statistical Rethinking, Richard McElreath, have plans to keep working on that draft. He wants to have a more definite version by next September/October. We will start porting the code by that time.

I think we can close this issue, as we're now working on porting the 2nd edition


Allow shadowing of unavailable members

This change permits a subclass to redeclare an unavailable member from a superclass. For instance, suppose you write this code (or, more likely, a version where Base is an ObjC class):
class Base {
  @available(*, unavailable) init() {}
}

class Derived: Base {
  /* override */ init() {}
}

Previously, Swift would reject Derived.init() without the override keyword, telling you that you should add it, but it would also reject it with the override keyword, telling you that you can't override something that's unavailable. This PR makes Swift accept it without the override keyword; declaring it with the keyword is still forbidden.
Fixes rdar://65702529.

@slavapestov Is fixing this bug actually this simple? Or is something in, say, vtable layout going to mess up because it can't handle this? I'm not sure what I should test to find out.

VTable layout is based off of getOverriddenDecl() so as long as the unavailable method is not recorded as an override in TypeCheckDeclOverride.cpp, the method in the subclass will just receive a new vtable entry.

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - c75b25da94438cae7820c53822bcf08b0c1b54a8

Build failed
Swift Test OS X Platform
Git Sha - c75b25da94438cae7820c53822bcf08b0c1b54a8

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 3793f2cdca3f9aa43ce166e7ac3a472b0b567bda

Build failed
Swift Test OS X Platform
Git Sha - 3793f2cdca3f9aa43ce166e7ac3a472b0b567bda

@swift-ci please test

Build failed
Swift Test Linux Platform
Git Sha - 192759f95f56b0badcad258195c729af0d540a49

Build failed
Swift Test OS X Platform
Git Sha - 192759f95f56b0badcad258195c729af0d540a49


created find_optimal_alignment

Codecov Report

Merging #12 into development will not change coverage.
The diff coverage is 100.00%.

@@              Coverage Diff              @@
##           development       #12   +/-   ##
=============================================
  Coverage       100.00%   100.00%
=============================================
  Files                4         4
  Lines              310       366   +56
  Branches            54        63    +9
=============================================
+ Hits               310       366   +56

Flag
Coverage Δ

#unittests
100.00% <100.00%> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

Impacted Files
Coverage Δ

src/nuclease_off_target/crispr_target.py
100.00% <100.00%> (ø)

src/nuclease_off_target/genomic_sequence.py
100.00% <100.00%> (ø)

Continue to review full report at Codecov.

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


undefined: *.twirp.go

(this might be related to https://github.com/twitchtv/twirp/issues/169)
I'm running go 1.13 using go mod. I see in my go vendor and go src the compiled *.twirp.go and *.pb.go files in the same package. However, when I try to build my source code, I'm able to use *.pb.go but not *.twirp.go even though they're colocated and should be available through the same import statement.

to elaborate, this will run
package main

import (
	"fmt"
	"github.com/foo-organization/schema/go/bar"
)

func main() {
	fmt.Println(bar.GetBarRequest{})
}

but this will result in ./main.go:10:14: undefined: upload.BarPathPrefix
package main

import (
	"fmt"
	"github.com/foo-organization/schema/go/bar"
)

func main() {
	fmt.Println(bar.BarPathPrefix)
}

I can see the compiled bar.twirp.go both in the vendor/ folder and in my $GOPATH/src

Could you possibly make a tiny github repository with the setup you describe as a reproducer for this issue?

I'll try to get to it this weekend

Closing this for now. Please leave a comment if you would like to revisit this.


Introduce pytest

It was necessary to add permission for createing database to user in postgresql.
$ sudo -u postgres psql

postgres=# select * from pg_user;
postgres=# ALTER ROLE user_name WITH CREATEDB;
postgres=# \du;
postgres=# \q


Make search by area tool tip semi-transparent

I was struggling to recreate this. I think the issue is that you double clicked the button and the tool tip drew twice? Try clicking just once.

I don't know what happened, but it's working now!


Support Purpur (server software) for auto-updating

https://purpur.pl3x.net/
Here is some usefull stuff for implementation:
https://github.com/pl3xgaming/Purpur

Yes pls


Fix messaging properties duplicated

Description
Resolves https://github.com/Azure/azure-sdk-for-java/issues/32034 in spring boot 3.
All SDK Contribution checklist:

[x] The pull request does not introduce [breaking changes]
[x] CHANGELOG is updated for new features, bug fixes or other significant changes.
[x] I have read the contribution guidelines.

General Guidelines and Best Practices

[x] Title of the pull request is clear and informative.
[x] There are a small number of commits, each of which have an informative message. This means that previously merged commits do not appear in the history of the PR. For more information on cleaning up the commits in your PR, see this page.

Testing Guidelines

[x] Pull request includes test coverage for the included changes.

/azp run java - spring - tests

API change check
API changes are not detected in this pull request.


Fix dns_answer_unpack() to support non-compressed answers

Fixes #16594

Will this be backported to 1.14?

Will this be backported to 1.14?

We could do it, I forgot to put the backport label to the PR so it was not done automatically.

Will this be backported to 1.14?

We could do it, I forgot to put the backport label to the PR so it was not done automatically.

If you could do it, that would be awesome. We are planning to use 1.14 for the foreseeable future


Changing the color of a category is horribly broken

After creating a new category with a label and setting its color, a newly created annotation with that label has the correct color. Changing the color of the category again and creating another annotation with the label gives this new annotation the correct color, but the color of the first annotation changes as well.
After a reload, though, the first annotation has its original color.  Changing the color of the category now has no effect on either new or old annotations with the label, i.e. old annotations keep their color and new ones also get the old color, as opposed to the new one.
After reloading again, any newly created annotations from the previous step, though, are in the default mud color!

EDIT: After some of the recent major refactorings, I now witness the following behavior: New labels (and their annotations) get the current color of the category; so far, so good. Changing the color also changes the labels, but not the annotations. Creating a new label after changing the color again behaves correctly. It seems like the color is saved with the annotations instead of just looked up at the labels.

In the current version changing color is easy, all labels of a category get changed directly and keep their color after a reload.


Can't get full markup from "renderToStringWithData"

I can't get full page markup, only part without queries. Intial state come with data but markup doesn't full. Sorry for my English. Thanks a lot for help.
app.use((req, res) => {
  const memoryHistory = createMemoryHistory(req.url);
  const user = Object.assign({}, { current: req.user });
  if (user.current) {
    delete user.current.password;
  }

  const apolloClient = new ApolloClient({
    ssrMode: true,
    // Remember that this is the interface the SSR server will use to connect to the
    // API server, so we need to ensure it isn't firewalled, etc
    networkInterface: createNetworkInterface({
      uri: 'http://localhost:3000/graphql',
      credentials: 'same-origin',
      // transfer request headers to networkInterface so that they're
      // accessible to proxy server
      // Addresses this issue: https://github.com/matthew-andrews/isomorphic-fetch/issues/83
      headers: req.headers,
    }),
  });

  const initialState = { user };
  const store = configureStore(memoryHistory, initialState, apolloClient);
  const history = syncHistoryWithStore(memoryHistory, store);
  match(
    { history, routes: createRoutes(store), location: req.originalUrl },
    (error, redirectLocation, renderProps) => {
      if (error) {
        res.status(500).send(error.message);
      } else if (redirectLocation) {
        res.redirect(302, redirectLocation.pathname + redirectLocation.search);
      } else if (renderProps) {
        const component = (
          <ApolloProvider store={store} client={apolloClient}>
            <MuiThemeProvider muiTheme={getMuiTheme(null, { userAgent: req.headers['user-agent'] })}>
              <RouterContext {...renderProps} />
            </MuiThemeProvider>
          </ApolloProvider>
        );

        renderToStringWithData(component).then((content) => {
          res.send(renderInitialView(content.markup, content.initialState));
        }).catch(dataError => winston.error('RENDERING ERROR:', dataError));
      }
    }
  );
});

@novus57 sorry, I'd like to help but it's pretty hard without additional information. Could you provide a link to a repository with a minimal reproduction of the problem?

I had same problem, renderToStringWithData changed in react-apollo 0.6.0 update its just content now not content.markup
also you need to get the state from the client now not the callback..
const initialState = client.store.getState()[client.reduxRootKey].data;
See http://dev.apollodata.com/react/server-side-rendering.html#renderToStringWithData

@novus57 does @acorcutt 's solution solve your problem?

@helfer sorry, but I can't give more code due to license requirements. No, it doesn't.

@acorcutt thanks, but it doesn't help.

@novus57 ok, no problem, but as long as nobody else runs into the same issue and is able to somehow convince me that this is a bug in apollo-client, I can't spend time looking into it. I hope you understand.
You can also try to get help on the slack channel or on stackoverflow, maybe that will be easier.

The problem was solved. I set data from query in the componentWillReceiveProps but this method doesn't work on the server.

Ok, glad you solved it!


Footer Added

Changes

Footer added to the portfolio along with links to social media and Jekyll Acknowledgement

How Has This Been Tested?

Tested the code on local machine by creating the suitable environment (Ruby, Bundlers)

Changes made, do not affect any other code as new modules for Footer were added (footer.html, footer.scss)
Mentions

@DebugAgrawal @iamyevesky and @yvonmanzi are working on this issue
Types of changes

[ ] Breaking change (fix or feature that would cause existing functionality to change)
[x] New feature and improvements (non-breaking change which adds/improves functionality)
[ ] Bug fix (non-breaking change which fixes an issue)
[ ] Code Refactoring (internal change which is not user facing)
[ ] Documentation
[ ] Test, CI, or build

Checklist

[x] Coding style of this project is followed
[ ] Change in documentation is required
[ ] Documentation has been updated accordingly
[ ] Unit tests have been added to cover code change

It's live here : https://debugagrawal.github.io/portfolio-template/ for better view
Yesterday instead of forking the repo we cloned it and stared creating footer 🙂
later on today when the footer was done while making a PR there wasn't any option for it, as it was cloned.
So forked the official repo and then made the changes and created a PR

Since the header has white font behind the blue frame:

Would it make sense to convert the footer's font to white?

Since the header has white font behind the blue frame:

Would it make sense to convert the footer's font to white?

Yeah makes sense 🙌
Done (working on logos now)

I think #63 is trying to solve the same issue, please co-ordinate with them and find the best way out.

LGTM!
I am not merging this just yet, since #63 is also regarding the same. So I would like to ask @wrussell1999 @RashikaKarki @yashika51 abt what should be done here?

I think this would be useful to have both, and let people chose. Make them both components in _includes and let the people decide.

I think this would be useful to have both, and let people chose. Make them both components in _includes and let the people decide.

I think thats a great suggestion will work on that

I think this would be useful to have both, and let people chose. Make them both components in _includes and let the people decide.

Hey so shall we update Readme too regarding the footer choice ?

Yes please @DebugAgrawal

It would be great if you can solve the conflicts so we can get this PR merged too :)

@DebugAgrawal , I think you have overwritten the footer.html file. This would take away the option from the user. I think the steps you can follow could be:

Add footer_.html file.
Add footer_.scss file.
Addfooter_.scss to the all.scss file.

This would give the choice.

Shall I add Images for footer choice in Readme ?
like :
You can choose the footer by changing the value of - footer_file_name : in _head/footer.yml as

footer_flat.html for

footer_minimal.html for

Shall I add Images for footer choice in Readme ?
like :
You can choose the footer by changing the value of - footer_file_name : in _head/footer.yml as
1. `footer_flat.html` for

1. `footer_minimal.html` for

Oh yes, thats a great idea!

Thanks a lot for being patient ! <3