Dependence on tokio runtime

Disclaimer: This issue is supposed to be a discussion.
I think, with the upcoming async/await, other runtimes will appear. There are already 3 "large" ones: tokio, futures and async-std. Therefore in my opinion it's a bad thing to have a hard dependency on tokio for task spawning. I believe it's runtime is used for some background cleanup.
What do you think about this?

Cc @jonhoo because you're working on the fut 0.3 port

So, I think the biggest challenge here is the lack of a common trait for AsyncRead and AsyncWrite. Beyond that, I don't think the 0.3 port really depends on tokio in any particularly substantial way. The issues to track here are probably:
https://github.com/rust-lang-nursery/futures-rs/issues/1818
https://github.com/async-rs/async-std/issues/54
https://github.com/tokio-rs/tokio/issues/1297
https://github.com/tokio-rs/tokio/issues/1551
Until there's some kind of resolution to these, are isn't really a way to be generic over the runtime (sadly). Once there is, it should be fairly straightforward to make mysql_async applicable to any runtime.

Note I believe OP is referencing the, which currently are hard dependencies on a tokio runtime.
Use of tokio::spawn:
https://github.com/blackbeam/mysql_async/blob/master/src/conn/pool/mod.rs#L203
Use of tokio::timer:
https://github.com/blackbeam/mysql_async/blob/master/src/conn/pool/mod.rs#L641
Unfortunately none of the ecosystem is currently moving in a direction that would allow a library to decouple such features. That would either require building APIs that can interact generically with the underlying runtime over task-local storage, or use a wrapper (with the associated run time and complexity cost) like runtime.
I'm not sold on the latter approach for libraries so far, and task-local storage is not available in std::future.


[api-docs] fixes massive changelog dates

A new commit was made into the api-docs repo. This issue was created automatically. Need to review if we made any change to the library for this commit.
https://github.com/discord/discord-api-docs/commit/94e27e2321d971060e08b0b279b2a5fb1a2748c2

ncn


reduce font-size slightly (fix rendering issue on firefox)

thanks @data-intelligence-robot for hinting

@vpnachev seems to have been quicker ;-)

Sorry, I have not seen your PR :wink:
PS. It was @leonardlorenz with #174


Token for internal site name missing

Hello
I need to get the correct site name for creating a webpart which includes the group email address. Because there is no token for this available in the current token list: https://github.com/pnp/PnP-Sites-Core/blob/master/Core/ProvisioningEngineTokens.md, I wanted to combine<EMAIL_ADDRESS>but there is no token matching the real site name. ( {webname} returns null, {sitetitle} is the same as  {sitename} ...)
Does anyone already had this problem? How can I get or combine the group mail address?

A bit old I know but did you try "{groupsitetitle}"?

@BaronSparky
This doesn't work. With this token I'll get the as {sitename} - only the display name of the Site, and not the internal name.


Windows tests in Travis CI

Coverage decreased (-0.1%) to 96.114% when pulling d515f5ab5538a6d0a7bc03c9efb3f0925d26a360 on JSMonk:master into c95a98fa7ea2ca5a694d5096e73a5413cc2fea3e on paulmillr:master.


Postgresql compileColumnListing method does not consider table_schema

Laravel Version: all
PHP Version: all
Database Driver & Version: pgsql

Description:
Same as #13862, but looks like it's not fixed.
In class Database\Schema\Grammars\PostgresGrammar the compileColumnListing does not consider the table_schema attribute (like in the compileTableExists method).
Steps To Reproduce:
Same as #13862.

Can you list a detailed error stack for this?

There is no error stack. Only what  #13862 describes :
When you have multiple schemas in your database if you  have a 'foo' table in a schema with a 'bar' column and in the schema specified in your connection have a 'foo' table without a 'bar' column then Schema::hasColumn('foo', 'bar') will return true.
Because of the compileColumnListing function, which returns  :
"select column_name from information_schema.columns where table_name = '$table'";

and not :
"select column_name from information_schema.columns where table_name = '$table'" and table_schema = '$schema'"  ;

The table_schema used in compileTableExists but not in compileColumnListing

Feel free to propose a fix and open a PR.

@KevinHivert make sure you submit to 5.5 since this would be a breaking change.

@themsaid Why would it be breaking?
@KevinHivert Mate, will you make any PR for?
Ps.: I'd need it on 5.4 version :stuck_out_tongue:

Because after the change the some checks that used to return true ill return false :)

@themsaid So they won't tell any lie anymore heh
But I'm sure the 5.4 version still can get it :innocent:

I will probably open a PR in the next few days (First one on Laravel :muscle:).
@themsaid Thanks for the advice ;)
Sorry, @hakuno 5.5 it will be.


PyQt5 symbols are not recognized

Environment data

VS Code version: 1.41.1
Extension version (available under the Extensions sidebar): 2019.11.50794
OS and version: Windows_NT x64 10.0.18363
Python version (& distribution if applicable, e.g. Anaconda): Python 3.8.1
Type of virtual environment used (N/A | venv | virtualenv | conda | ...): virtualenv
Relevant/affected Python packages and their versions: PyQt5
Jedi or Language Server? (i.e. what is "python.jediEnabled" set to; more info microsoft/vscode-python#3977): "python.jediEnabled": false

Expected behavior
with the settings.json file configured as
"python.autoComplete.extraPaths": [
"C:/Users/Administrator/.virtualenvs/PyQt5-w5h0JEeT/Lib/site-packages",
"C:/Users/Administrator/.virtualenvs/PyQt5-w5h0JEeT/Lib"
],
I expect the code navigation function works, but it does not.
Actual behaviour
for this line:
from PyQt5.Qt import *
it shows 'from PyQt5.Qt import *' used; unable to detect undefined namesflake8(F403)
and if I right click on QApplication symbol and then I select "Go to Definition", it shows "No definition found for QApplication "
meanwhile it works for
import sys
print(sys.argv)
"Go to Definition" for sys.argv get me to correct location in sys.pyi

Not entirely sure what unable to detect undefined names flake8(F403) means... flake8 is not part of the LS and F403 is not something LS code outputs.
"No definition found for QApplication " is normal since Qt5 is compiled module in C++ and hence we do not have source to show.

The original motivation for this issue is that in PyCharm, we can check definitions for PyQt5 modules and it really helps to code quickly and correctly, but for VS Code there is no such experience, and it gets much harder to write PyQt5 programs.
After firing this issue, I find out that the PyCharm experience is based on PyQt5-stubs, so I created a new future request for support of PyQt5-stubs for python extension
https://github.com/microsoft/python-language-server/issues/1854
So we can close this issue if we are on the same page.


Correct documentation wording

I'll need to sign in the contribution agreement as this is my first PR. Will do it later today.

Actually i only need to sign if necessary. Waiting for the bot to tell me if it's the case.

Thanks


Replace msDisplayMax with displayMilliseconds option

Coverage increased (+0.4%) to 77.473% when pulling b507bce00989253c6cb3489dbd5293cd6cfc8ca8 on display-ms into 7a369b1fbc2e2a525794e4be20ab1a8dfbd5b77f on master.


Multiple IDP Configuration

I love how easy you've made setting up AD FS for me!  So I'd first like to say thanks!
It'd be great if this could handle multiple IDPs.  I think all that would need be done is allow a dev to add multiple IDP server names and in metadata(), create multiple HTTPMetadataProviders with their own ExtendedMetadataDelegagte and add them all to the list passed to the CachingMetadataManager.
Thanks again!

Glad you found it useful, @woody3000 .
My initial plan was to able to support multiple IDPs (for fallback, etc), but it quickly became very complicated because each IDP may require different SP configurations (due to different setups or ADFS versions). As a result, we may end up with one SAMLConfigBean per SP configuration, which led me to abandon that effort in attempt to simplify the already complicated configuration.
That said, I believe you can override certain methods on your end to pull it off, assuming your IDPs share identical configurations.
Hope this helps.


Node/pool Members are not synced on AS3 service discovery REST API for HA devices

Environment

Application Services Version: 3.24
BIG-IP Version: 14.1

Summary
Node/pool Members are not synced on AS3 service discovery REST API for HA devices. Although nodes do get synced between the two BIG-IP devices, it is just the REST API on two devices which are not in sync.
Steps To Reproduce
Steps to reproduce the behavior:
1.Configured AS3 service discovery endpoint and added nodes on one of the devices in HA.
[
    {
        "ip": "<IP_ADDRESS>",
        "id": "/AS3.24/<IP_ADDRESS>"
    },
    {
        "ip": "<IP_ADDRESS>",
        "id": "/AS3.24/<IP_ADDRESS>"
    },
    {
        "ip": "<IP_ADDRESS>",
        "id": "/AS3.24/<IP_ADDRESS>"
    }
]

2.Verified the service discovery REST API for BIG-IP1-  https://BIG-IP1/mgmt/shared/service-discovery/task/~AS3.24~AP1~Pool1
REST API Response on BIG-IP1-
{
    "code": 200,
    "result": {
        "id": "~AS3.24~AP1~Pool1",
        "updateInterval": 0,
        "provider": "event",
        "providerOptions": {
            "type": "event",
            "nodeList": [
                {
                    "ip": "<IP_ADDRESS>",
                    "id": "/AS3.24/<IP_ADDRESS>"
                },
                {
                    "ip": "<IP_ADDRESS>",
                    "id": "/AS3.24/<IP_ADDRESS>"
                },
                {
                    "ip": "<IP_ADDRESS>",
                    "id": "/AS3.24/<IP_ADDRESS>"
                }
            ]
        },
        "resources": [
            {
                "type": "pool",
                "path": "/AS3.24/AP1/Pool1",
                "options": {
                    "servicePort": 8080,
                    "connectionLimit": 0,
                    "rateLimit": "disabled",
                    "dynamicRatio": 1,
                    "ratio": 1,
                    "priorityGroup": 0,
                    "monitor": "default"
                },
                "requiresNodes": true
            }
        ],
        "kind": "shared:service-discovery:taskstate",
        "lastRun": "2020-11-30T13:01:05.902Z",
        "nodePrefix": "/AS3.24/"
    }
}

3.Verified the service discovery REST API for BIG-IP2-  https://BIG-IP2/mgmt/shared/service-discovery/task/~AS3.24~AP1~Pool1
REST API Response on BIG-IP2-
{
    "code": 404,
    "message": "",
    "referer": "<IP_ADDRESS>",
    "originalRequestBody": "",
    "errorStack": []
}

Expected Behavior
Dictionary with node IP entries should be same on both HA device's service discovery REST API endpoints
Actual Behavior
Node/pool members are not synced to peer device’s service discovery REST API. Although nodes do get synced between the two BIG-IP devices, it is just the REST API on two devices which are not in sync.

Found during testing integration with F5 ACI ServiceCenter

@dstokesf5 - any update on this issue.

Thank you for reporting this issue. I have added it to our internal product backlog as AUTOTOOL-2083.

In order to prioritize and understand the issue better, please reach out to us at<EMAIL_ADDRESS>


Expose Computed Values Api

This adds an example for how to use computed values. We had to make the
Compute trait public for that.

Awesome, thanks!


Create e2e testdir, fix contributing readme

Signed-off-by: Pavol Loffay<EMAIL_ADDRESS>

This change is


Wordsmith the edition documentation a bit more

This hopes to clear up a few recent PRs about the edition key in the
manifest. It shuffles things around so the defaults are talked about in
two different paragraphs. The first one talks about how cargo new uses
the 2018 edition and is the only paragraph to use the word "default".
The second section talks about the usage of 2015 with no edition field
present.
This didn't end up being quite as clear as I hoped it might be, but I'm
hoping that this provides a bit more emphasis or otherwise just
restructures things a bit to be more clear.

r? @Eh2406
(rust-highfive has picked a reviewer for you, use r? to override)


Open Canvas on Langgraph

I would really appreciate it if anyone help me run this project on local.
I run open-canvas on my local windows but some errors are happening.
These api request were failed.
POST /api/assistants/search 500
Error in proxy
TypeError: fetch failed
POST /api/threads 500
Error in proxy
TypeError: fetch failed
POST /api/assistants 500
Error in proxy
TypeError: fetch failed
I think the reason is lagngraph sever is not running on localhost:54367.
Please let me know how I can run open-canvas on local windows or mac os  and how to deploy langgraph to cloud and deploy open-canvas?

There is a previous comment about running it locally with docker-compose or in separate containers (redis, postgres, and the server).

This video walks through how to setup and run the project locally: https://www.youtube.com/watch?v=sBzcQYPMekc
I also added this section with common errors and solutions: https://github.com/langchain-ai/open-canvas?tab=readme-ov-file#troubleshooting


python3Packages.ibis-framework: 2.1.1 -> 3.0.0

Description of changes

python3Packages.poetry-dynamic-versioning: init at 0.14.1
python3Packages.ipython-sql: init at 0.4.0
python3Packages.duckdb-engine: init at 0.1.8
python3Packages.ibis-framework: 2.1.1 -> 3.0.0

Things done

Built on platform(s)

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

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

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

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

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

[x] Fits CONTRIBUTING.md.

@gador Done! Thanks for the review.

This is a semi-automatic executed nixpkgs-review with nixpkgs-review-checks extension. It is checked by a human on a best effort basis and does not build all packages (e.g. lumo, tensorflow or pytorch).
Result of nixpkgs-review pr 170756 run on x86_64-linux 1

8 packages built:

python310Packages.duckdb-engine
python310Packages.ibis-framework
python310Packages.ipython-sql
python310Packages.poetry-dynamic-versioning
python39Packages.duckdb-engine
python39Packages.ibis-framework
python39Packages.ipython-sql
python39Packages.poetry-dynamic-versioning

LGTM. Before merging I'd suggest rebasing some of the commits, so we only have one commit per package

Sounds good. There's one more thing to fix which is to bump to 3.0.2 so the version number is correct 😄 .

@gador Squashed, this should be good to merge! Thanks again.

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/prs-already-reviewed/2617/495

nixpkgs-review reveals no new failures, macos 10.15 & nixos x86_64.


Add resources for SSO auth

Related to issue https://github.com/OfficeDev/outlook-dev-docs/issues/350.

:white_check_mark: Validation status: passed

File
Status
Preview URL
Details

docs/add-ins/authenticate-a-user-with-an-sso-token.md
:white_check_mark:Succeeded

For more details, please refer to the build report.
Note: If you changed an existing file name or deleted a file, broken links in other files to the deleted or renamed file are listed only in the full build report.


notifications page broken by null status

on phanpy.social and dev.phanpy.social, my notifications page throws an error and becomes unresponsive:
notification.jsx:282 Uncaught (in promise) TypeError: Cannot read properties of null (reading 'id')
    at notification.jsx:282:58

It's trying to render "Y liked 4 of your posts", and _statuses is an array of 4 elements, where the 3rd element is null.
The null seems to be actual data returned from the server. On mastodon.social, my notifications has three entries "Y favorited your post" with no post shown. I'm not sure how that happened, but this looks to me like a bug on the server, producing unexpected data, that causes phanpy to fail.

@felix9 thanks! Is it possible to get the JSON response output from the API? If this is not possible, I'll be fixing this in the blind, assuming that one of the notification item has null status — possibly an user liked a deleted post or the server really produced unexpected response.

this is one of the bad entries from the XHR. tell me if you want more context
    {
        "id": "210692307",
        "type": "favourite",
        "created_at": "2023-10-28T16:08:09.723Z",
        "account": {
           /* ... */
        },
        "status": null
    }

@felix9 thanks! Just wondering, does this show up on the official web UI/apps (or other apps)?

on the mastodon.social web UI, this shows up as "Y favorited your post", but without a post shown.
I think there's not really much point in showing that to the user, other than maybe it's good to have the bug visible rather than invisible

@felix9 I've added a potential fix https://github.com/cheeaun/phanpy/commit/146e5d1a7e75fe964346cc203cdfa3e44f325603 on dev site, can you try it out? Thanks 🙇♂

yup, fixed on dev site. thanks!


accept flake config by default

It seems unlikely that we deploy untrusted flakes, so this seems like a sensible default.

So my nix 2.11 doesn't have this flag yet, but as i understand it, this trusts settings such as
    nixConfig.extra-substituters = [ "https://colmena.cachix.org" ];     nixConfig.extra-trusted-public-keys = [ "colmena.cachix.org-1:7BzpDnjjH8ki2CT3f6GdOk7QAzPOl+1t3LvTLXqYcSg=" ];
on your flake, without prompting the user? I believe the default is to prompt only the first time and then remember it in ~/.local/share/nix/trusted-settings.json.
If so, i'd prefer to not have it in here, as it might implicitly add trusted substituters to the system running nixos-remote, not the system to install; a delicate matter on workstations.
An alternative could be to just add "--nix-options" to allow users passing it themselves? (Or just an opt-in-flag --accept-flake-config)

Is --option from #44 sufficient as a replacement for this, or do you want to merge this after discussion in chat? :)


[Feature] Monitoring PostgreSQL Server

Search before asking

[X] I had searched in the issues and found no similar feature requirement.

Description
Right now, we have a MySQL Monitoring, and I want to add the PostgreSQL Server Monitoring to enhance SkyWalking's database monitoring.
The dataflow would be PostgreSQL Server -> postgres_exporter -> OpenTelemetry Collector -> SkyWalking OpenCensus Receiver -> MAL engine.
Steps

Discuss which metrics we should do for the PostgreSQL server.
Add PostgreSQL layer to OAP, and begin to set up dashboards.
Add PostgreSQL as a sub of the Database layer.

Related issues
No response
Are you willing to submit a PR?

[X] Yes I am willing to submit a PR!

Code of Conduct

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

@wu-sheng
I have listed the metrics:
https://docs.google.com/document/d/1Q22BNLbcptB-uXZbLt5c9LeO-XYJoyKqsGtzIMC_FKI/edit?usp=sharing
Refer to a dashboard of grafana：
I deployed it on my server:
http://<IP_ADDRESS>:3000/d/000000039/postgresql-database?orgId=1&from=1660693635763&to=1660704783403

It is better you don't provide private env, it is dangerous for your env(cyber attach), and it is not safe for others reading this page, and feel should access another IP. 😀

I understand, I have edited it.

Reviewed the doc, generally good for me.

I get it.

I have a metric like this:
pg_locks_count{datname="postgres",mode="accessexclusivelock",server="postgres:5432"} 0

I want delete the datname and  mode
And add a mode label = datname + mode, how can I do that?
I have tested this way: pg_locks_count.tag({tags -> tags.mode = tags.datname + tags.mode}).sum(['mode' , 'server']), but OAP will receive nothing.

@wankai123 ☝ Could you take a look?

There are two metrics that I haven't set up yet (Because of the problem which I said above ).
Others is following:

Is that ok?

The preview seems good.

pg_locks_count.tag({tags -> tags.mode = tags.datname + tags.mode}).sum(['mode' , 'server'])
This expression should be correct, I have tried it in https://github.com/apache/skywalking/blob/master/oap-server/analyzer/meter-analyzer/src/test/java/org/apache/skywalking/oap/meter/analyzer/dsl/AggregationTest.java.

            {
                "sum-by",
                of("http_success_request", SampleFamilyBuilder.newBuilder(
                    Sample.builder().labels(of("idc", "t1")).value(50).name("http_success_request").build(),
                    Sample.builder().labels(of("idc", "t3", "region", "cn", "svc", "catalog")).value(50).name("http_success_request").build(),
                    Sample.builder().labels(of("idc", "t1", "region", "us", "svc", "product")).value(50).name("http_success_request").build(),
                    Sample.builder().labels(of("idc", "t1", "region", "us", "instance", "<IP_ADDRESS>")).name("http_success_request").value(50).build(),
                    Sample.builder().labels(of("idc", "t3", "region", "cn", "instance", "<IP_ADDRESS>")).name("http_success_request").value(3).build()
                ).build()),
                "http_success_request.tag({tags -> tags.idc = tags.idc + tags.region }).sum(['region', 'idc'])",
                Result.success(SampleFamilyBuilder.newBuilder(
                    Sample.builder().labels(of("idc", "t1", "region", "")).value(50).name("http_success_request").build(),
                    Sample.builder().labels(of("idc", "t1", "region", "us")).value(100).name("http_success_request").build(),
                    Sample.builder().labels(of("idc", "t3", "region", "cn")).value(53).name("http_success_request").build()
                ).build()),
                false,
            }

the result is
<Result(success=true, isThrowable=false, error=null, data=SampleFamily(samples=[Sample(name=http_success_request, labels={region=us, idc=t1us}, value=100.0, timestamp=0), Sample(name=http_success_request, labels={region=, idc=t1null}, value=50.0, timestamp=0), Sample(name=http_success_request, labels={region=cn, idc=t3cn}, value=53.0, timestamp=0)], context=SampleFamily.RunningContext(meterSamples=null, histogramType=CUMULATIVE, defaultHistogramBucketUnit=SECONDS)))>

you could try it by yourself.
I think if the OAP receives nothing, you might need to check the other place.

Thank you , I understand !

I had a problem about e2e.
I write a case to verify metric:
    - query: swctl --display yaml --base-url=http://${oap_host}:${oap_12800}/graphql metrics multiple-linear --name=meter_pg_fetched_rows_rate --labels=postgres --service-name=postgresql::postgres:5432 |yq e 'to_entries | with(.[] ; .value=(.value | to_entries))' -
      expected:  expected/metrics-has-value-label.yml

When I run the e2e , I get the error:
WARNING verify case failure, will continue retry, failed to execute the query: swctl --display yaml --base-url=http://${oap_host}:${oap_12800}/graphql metrics multiple-linear --name=meter_pg_fetched_rows_rate --labels=postgres --service-name=postgresql::postgres:5432 |yq e 'to_entries | with(.[] ; .value=(.value | to_entries))' -, output: , error: Error: Parsing expression: Lexer error: could not match text starting at 1:14 failing at 1:19.
        unmatched text: "with("

But when I run the query without e2e, it will success.
[root@VM-0-8-centos ~]#  swctl --display yaml --base-url=http://localhost:49155/graphql metrics multiple-linear --name=meter_pg_fetched_rows_rate --labels=postgres --service-name=postgresql::postgres:5432 |yq e 'to_entries | with(.[] ; .value=(.value | to_entries))' -
- key: postgres
  value:
    - key: 2022-08-20 0635
      value: 1
    - key: 2022-08-20 0636
      value: 1
    - key: 2022-08-20 0637
      value: 1
    - key: 2022-08-20 0638
      value: 1
    - key: 2022-08-20 0639
      value: 1
    - key: 2022-08-20 0640
      value: 1
    - key: 2022-08-20 0641
      value: 1
    - key: 2022-08-20 0642
      value: 1
    - key: 2022-08-20 0643
      value: 1
    - key: 2022-08-20 0644
      value: 1
    - key: 2022-08-20 0645
      value: 1
    - key: 2022-08-20 0646
      value: 1
    - key: 2022-08-20 0647
      value: 1
    - key: 2022-08-20 0648
      value: 1
    - key: 2022-08-20 0649
      value: 1
    - key: 2022-08-20 0650
      value: 1
    - key: 2022-08-20 0651
      value: 1
    - key: 2022-08-20 0652
      value: 1
    - key: 2022-08-20 0653
      value: 1
    - key: 2022-08-20 0654
      value: 1
    - key: 2022-08-20 0655
      value: 1
    - key: 2022-08-20 0656
      value: 1
    - key: 2022-08-20 0657
      value: 1
    - key: 2022-08-20 0658
      value: 1
    - key: 2022-08-20 0659
      value: 1
    - key: 2022-08-20 0700
      value: 1
    - key: 2022-08-20 0701
      value: 1
    - key: 2022-08-20 0702
      value: 1
    - key: 2022-08-20 0703
      value: 1
    - key: 2022-08-20 0704
      value: 1
    - key: 2022-08-20 0705
      value: 1

So I don't know why it will fail in e2e test.

@kezhenxu94 Could you take a look? What is your suggestion?

Hi @yswdqz , bear in mind that we install yq and use that in our own directory for E2E, so please check the version you locally use is the same as what we specify here
https://github.com/apache/skywalking/blob/dc30ded4cf93e645547ed0964dac6bc7a3eb0a98/test/e2e-v2/script/prepare/setup-e2e-shell/install-yq.sh#L25-L30
Cases might be the versions are different so there are some syntax differencies

@kezhenxu94 Thank you, I get it. But I think maybe we should update the version to v4.14.1.
Because the query will fail in v4.11.1 and it will success in v4.14.1.
And the query is not designed by me, I copy from VM Monitoring.
I think in the version v4.11.1 that query will success and my query will fail because of this.
This is just a guess, I don't know whether it is correct.

I have sent the PR, #9495

Thanks, it seems we have a change to include this on 9.2.0 too.
Good work.

Reopen as menu setup is pending.

@kezhenxu94 The feature is done. Could you help on building this into showcase and demo?

@kezhenxu94 The feature is done. Could you help on building this into showcase and demo?

Sure


[ISV-1022] Continue integration of preflight into the CI pipeline

@haripate @wcheang @MarcinGinszt I addressed all comments in this PR + extend a preflight task to work with the preflight image. Please take a final look before I merge it. The CI pipeline successfully runs the preflight task and produces logs and test results.

LGTM


Remove code change issues in ROIGather's ablation experiments

Hi, Thank you for your contributions. I would like to ask some questions.
What is the code that removes the ROIGather part when doing an ablation experiment? Is it directly replaced by convolution, and the feature map size is resized into the ROI size and then entered into the reg_layers and cls_layers?
It would be appreciated that you can reply the question.

Hello, have you solved this problem？Looking forward to your reply.

Hi, Thank you for your contributions. I would like to ask some questions. What is the code that removes the ROIGather part when doing an ablation experiment? Is it directly replaced by convolution, and the feature map size is resized into the ROI size and then entered into the reg_layers and cls_layers? It would be appreciated that you can reply the question.

Hello, have you solved this problem？Looking forward to your reply.


rancher-monitoring deployment stuck when disabling rbac/psp

Hi,
I'm in the process of replacing the 'rancher-monitoring' psp's to gatekeeper policies in Rancher. One of my first steps is to disable the creation of psp's by the 'rancher-monitoring' chart. My gatekeeper policies are in place and functional.
Please note the following (templating) configuration which i use (deployment goes via Terraforms):
***configuration
global:
cattle:
systemDefaultRegistry: ""
imagePullSecrets: null
kubectl:
pullPolicy: IfNotPresent
repository: rancher/kubectl
tag: v1.18.6
rbac:
create: true
pspAnnotations: {}
pspEnabled: false
userRoles:
aggregateToDefaultRoles: true
create: true
systemDefaultRegistry: ""
*** setting
rbac:
create: true -> false
As soon as i set the flag to 'false' the deployments gets stuck. Setting it to 'true' the deployment is succesful.
templating:
location in this repo: charts/charts/rancher-monitoring/templates/prometheus/psp.yaml
{{- if and .Values.prometheus.enabled .Values.global.rbac.create .Values.global.rbac.pspEnabled }}
apiVersion: policy/v1beta1
kind: PodSecurityPolicy
metadata:
name: {{ template "kube-prometheus-stack.fullname" . }}-prometheus
labels:
app: {{ template "kube-prometheus-stack.name" . }}-prometheus
{{- if .Values.global.rbac.pspAnnotations }}
...
...
Is this the right place to disable the creation of psp's of the 'rancher-monitoring' chart?
Regards,

@MKlimuszka this is something we should look into as part of supporting Monitoring in k8s 1.25, when PSPs will no longer be available.

@bhagtrajaram there should be a couple of values.yaml fields you can use to disable all PSPs deployed with the chart, but it's not well-documented at the moment so I don't have an answer for this question off-hand. However, once we address this for 1.25 there should hopefully be a way to disable these PSPs from being created globally as well (probably by leveraging the global.rbac.pspEnabled field across all subcharts instead of the current behavior)


FusionInventory.64 version <IP_ADDRESS>

[ ] Have you signed the Contributor License Agreement?
[ ] Have you checked that there aren't other open pull requests for the same manifest update/change?
[ ] Have you validated your manifest locally with winget validate --manifest <path>?
[ ] Have you tested your manifest locally with winget install --manifest <path>?
[ ] Does your manifest conform to the 1.4 schema?

Note: <path> is the name of the directory containing the manifest you're submitting.

Microsoft Reviewers: Open in CodeFlow

Installation consistently fails with error:

ShellExecute installer failed: 2

This seems to be an issue with the installer and its silent switch /S, as running the installer directly with that switch also does not result in a completed install. But running the installer in normal attended mode installs it normally.

Close with reason: Stale pull request;


2FA potential issues?

Describe Your Problem:

I do not have a vaccuum from Wyze but I was interested in using this repo as a basis for extending some other Wyze devices to Homekit. Because of that I have a quick question, does each run of the python script not require a new mfa code and why not? If I run scripts standalone I have to enter a new mfa code each time, is this not the case when executing them from typescript?
Also as far as I can tell you do not currently use the provided mfaCode in your implementation, is this correct and intended?

Yes.


Not working anymore?

Any chance this can be updated? I think it might require bs4 but really new to this so not sure.

This will work now. It was just that the test sites had updated their nginx policies. I have updated it with a new test url.


Change color to be a string

Having the color as a Color and not string causes issues when trying to persist with Entity Framework.
Changing to string will allow us to save the color directly instead of having to convert it.

Will be going into BlazorScheduler.Core 2.0.0 tomorrow.


Backward operations support

Add backward operations support for following ops

[ ] #3900
[ ] #4858
[x] #6063
[x] #6132
[x] #6055
[x] #6061
[x] #5646
[x] #5511
[x] #5510
[x] #5679
[x] #5474
[x] #5822
[x] #5825
[x] #6004
[x] #3893
[x] #3896
[x] #4338
[ ] #6285
[x] #4338
[x] #6055
[x] #6061
[x] #6062
[x] #6107
[x] #6132
[x] #6133
[x] #6155
[x] #6236
[x] #6234
[x] #6226
[x] #6121
[x] #6120
[x] #6119
[x] #6057
[x] #6056
[x] #6007
[x] #6005
[x] #5954
[x] #5951
[x] #5894
[x] #5879
[x] #5811
[x] #5810
[x] #5761
[x] #5751
[x] #5682
[x] #5645
[x] #5643
[x] #4996
[x] #3894
[x] #4338
[x] #4341
[x] #4377
[x] #5520
[x] #5840
[x] #5885
[x] #5947
[x] #5961
[x] #6001
[x] #4289
[x] #6066
[x] #6136
[x] #6123

@eyonland Created primary issue for output arguments task. If this is the expectation we can follow this for the rest of the tasks as well

already subscribed. will take myself off the owner.

Hi @eyonland @razorback3 , while implementing div_no_nan backward op, we need some clarifications on the requirements for this op, we have opened a PR for this, can you please check the current implementation of the div_no_nan op then give us the suggestions to be modified?

Hi @eyonland , @razorback3 ,
The below list of ops have no gradient available. We have updated the same in the sheet

ElemwiseBinary/ELEMWISE_BINARY_GCD
ElemwiseBinary/ELEMWISE_BINARY_HEAVISIDE
ElemwiseUnary/ELEMWISE_UNARY_HEAVISIDE
ElemwiseBinary/ELEMWISE_BINARY_LCM
ElemwiseUnary/ELEMWISE_UNARY_SIGNBIT
ElemwiseBinary/ELEMWISE_BINARY_LOGICALANDI
ElemwiseBinary/ELEMWISE_BINARY_LOGICALAND
ElemwiseBinary/ELEMWISE_BINARY_LOGICALOR
ElemwiseBinary/ELEMWISE_BINARY_LOGICALORI
ElemwiseBinary/ELEMWISE_BINARY_LOGICALXOR
ElemwiseBinary/ELEMWISE_BINARY_LOGICALXORI
ElemwiseUnary/ELEMWISE_UNARY_LOGICALNOT
ElemwiseUnary/ELEMWISE_UNARY_LOGICALNOTI
ElemwiseUnary/ELEMWISE_UNARY_BITWISEAND
ElemwiseUnary/ELEMWISE_UNARY_BITWISENOT
ElemwiseUnary/ELEMWISE_UNARY_BITWISEOR
ElemwiseUnary/ELEMWISE_UNARY_BITWISEXOR
ElemwiseBinary/ELEMWISE_BINARY_BITWISEAND
ElemwiseBinary/ELEMWISE_BINARY_BITWISEOR
ElemwiseBinary/ELEMWISE_BINARY_BITWISEXOR
ElemwiseUnary/ELEMWISE_UNARY_ISFINITE
ElemwiseUnary/ELEMWISE_UNARY_ISINF
ElemwiseUnary/ELEMWISE_UNARY_ISNAN
ElemwiseBinary/ELEMWISE_BINARY_ISCLOSE
ElemwiseBinary/ELEMWISE_BINARY_ISCLOSENAN
ElemwiseUnary/ELEMWISE_UNARY_ISNEGINF
ElemwiseUnary/ELEMWISE_UNARY_ISPOSINF
ElemwiseUnary/ELEMWISE_UNARY_ISREAL
ElemwiseUnary/ELEMWISE_UNARY_LEFT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_LEFT_SHIFT
ElemwiseUnary/ELEMWISE_UNARY_RIGHT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_RIGHT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_NEXTAFTER

Hi @eyonland  , @razorback3  ,
The below list of ops have no gradient available. We have updated the same in the sheet

ElemwiseBinary/ELEMWISE_BINARY_GCD
ElemwiseBinary/ELEMWISE_BINARY_HEAVISIDE
ElemwiseUnary/ELEMWISE_UNARY_HEAVISIDE
ElemwiseBinary/ELEMWISE_BINARY_LCM
ElemwiseUnary/ELEMWISE_UNARY_SIGNBIT
ElemwiseBinary/ELEMWISE_BINARY_LOGICALANDI
ElemwiseBinary/ELEMWISE_BINARY_LOGICALAND
ElemwiseBinary/ELEMWISE_BINARY_LOGICALOR
ElemwiseBinary/ELEMWISE_BINARY_LOGICALORI
ElemwiseBinary/ELEMWISE_BINARY_LOGICALXOR
ElemwiseBinary/ELEMWISE_BINARY_LOGICALXORI
ElemwiseUnary/ELEMWISE_UNARY_LOGICALNOT
ElemwiseUnary/ELEMWISE_UNARY_LOGICALNOTI
ElemwiseUnary/ELEMWISE_UNARY_BITWISEAND
ElemwiseUnary/ELEMWISE_UNARY_BITWISENOT
ElemwiseUnary/ELEMWISE_UNARY_BITWISEOR
ElemwiseUnary/ELEMWISE_UNARY_BITWISEXOR
ElemwiseBinary/ELEMWISE_BINARY_BITWISEAND
ElemwiseBinary/ELEMWISE_BINARY_BITWISEOR
ElemwiseBinary/ELEMWISE_BINARY_BITWISEXOR
ElemwiseUnary/ELEMWISE_UNARY_ISFINITE
ElemwiseUnary/ELEMWISE_UNARY_ISINF
ElemwiseUnary/ELEMWISE_UNARY_ISNAN
ElemwiseBinary/ELEMWISE_BINARY_ISCLOSE
ElemwiseBinary/ELEMWISE_BINARY_ISCLOSENAN
ElemwiseUnary/ELEMWISE_UNARY_ISNEGINF
ElemwiseUnary/ELEMWISE_UNARY_ISPOSINF
ElemwiseUnary/ELEMWISE_UNARY_ISREAL
ElemwiseUnary/ELEMWISE_UNARY_LEFT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_LEFT_SHIFT
ElemwiseUnary/ELEMWISE_UNARY_RIGHT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_RIGHT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_NEXTAFTER

Hi @eyonland , @razorback3 , The below list of ops have no gradient available. We have updated the same in the sheet

ElemwiseBinary/ELEMWISE_BINARY_GCD
ElemwiseBinary/ELEMWISE_BINARY_HEAVISIDE
ElemwiseUnary/ELEMWISE_UNARY_HEAVISIDE
ElemwiseBinary/ELEMWISE_BINARY_LCM
ElemwiseUnary/ELEMWISE_UNARY_SIGNBIT
ElemwiseBinary/ELEMWISE_BINARY_LOGICALANDI
ElemwiseBinary/ELEMWISE_BINARY_LOGICALAND
ElemwiseBinary/ELEMWISE_BINARY_LOGICALOR
ElemwiseBinary/ELEMWISE_BINARY_LOGICALORI
ElemwiseBinary/ELEMWISE_BINARY_LOGICALXOR
ElemwiseBinary/ELEMWISE_BINARY_LOGICALXORI
ElemwiseUnary/ELEMWISE_UNARY_LOGICALNOT
ElemwiseUnary/ELEMWISE_UNARY_LOGICALNOTI
ElemwiseUnary/ELEMWISE_UNARY_BITWISEAND
ElemwiseUnary/ELEMWISE_UNARY_BITWISENOT
ElemwiseUnary/ELEMWISE_UNARY_BITWISEOR
ElemwiseUnary/ELEMWISE_UNARY_BITWISEXOR
ElemwiseBinary/ELEMWISE_BINARY_BITWISEAND
ElemwiseBinary/ELEMWISE_BINARY_BITWISEOR
ElemwiseBinary/ELEMWISE_BINARY_BITWISEXOR
ElemwiseUnary/ELEMWISE_UNARY_ISFINITE
ElemwiseUnary/ELEMWISE_UNARY_ISINF
ElemwiseUnary/ELEMWISE_UNARY_ISNAN
ElemwiseBinary/ELEMWISE_BINARY_ISCLOSE
ElemwiseBinary/ELEMWISE_BINARY_ISCLOSENAN
ElemwiseUnary/ELEMWISE_UNARY_ISNEGINF
ElemwiseUnary/ELEMWISE_UNARY_ISPOSINF
ElemwiseUnary/ELEMWISE_UNARY_ISREAL
ElemwiseUnary/ELEMWISE_UNARY_LEFT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_LEFT_SHIFT
ElemwiseUnary/ELEMWISE_UNARY_RIGHT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_RIGHT_SHIFT
ElemwiseBinary/ELEMWISE_BINARY_NEXTAFTER

@razorback3 , please comment on the limitation and how it affects the compiler.

@razorback3 , please comment on the limitation and how it affects the compiler.

@hschoi4448 is taking a look on this issue. He will soon leave the feedback.

Hi @razorback3 , for implementing backward op for bitmask version of relu, we need some clarification on the requirement of the op, can you share any reference for it if you have? as relu gives output of max(0,x), does it have any bitmask version?

Hi @razorback3 , for implementing backward op for bitmask version of relu, we need some clarification on the requirement of the op, can you share any reference for it if you have? as relu gives output of max(0,x), does it have any bitmask version?

Would you check the below document?
https://docs.google.com/document/d/1eVCEF0mU7KtczbnaRz7u4XJlwFhKc1DLUC9cNC07byI/edit?usp=sharing
Feel free to ask me if you are not familiar enough with the above document.

Hi @razorback3 , for implementing backward op for bitmask version of relu, we need some clarification on the requirement of the op, can you share any reference for it if you have? as relu gives output of max(0,x), does it have any bitmask version?

Would you check the below document? https://docs.google.com/document/d/1eVCEF0mU7KtczbnaRz7u4XJlwFhKc1DLUC9cNC07byI/edit?usp=sharing Feel free to ask me if you are not familiar enough with the above document.

@razorback3 Thanks for sharing the doc, but it is not accessible from my side, can you please check it and share it with me?

Hi @razorback3 , for implementing backward op for bitmask version of relu, we need some clarification on the requirement of the op, can you share any reference for it if you have? as relu gives output of max(0,x), does it have any bitmask version?

Would you check the below document? https://docs.google.com/document/d/1eVCEF0mU7KtczbnaRz7u4XJlwFhKc1DLUC9cNC07byI/edit?usp=sharing Feel free to ask me if you are not familiar enough with the above document.

@razorback3 Thanks for sharing the doc, but it is not accessible from my side, can you please check it and share it with me?

Would you tell me your tenstorrent email address?

Sure here it is,
<EMAIL_ADDRESS><EMAIL_ADDRESS>

Please check :)

Please check :)

Got it thanks

@jliangTT Seems like @Aswinmcw do not have access permission to the entire shared drive of Moreh-TT.
I gave him a permission to the above mentioned doc only for right now.

Hi @eyonland , @razorback3 , The below list of ops have no gradient available. We have updated the same in the sheet
@razorback3 , please comment on the limitation and how it affects the compiler.

The ops in the list appear to be ops for which backward does not exist in PyTorch.
For ops in PyTorch where backward does not exist, there is no problem even if backward is not implemented in TT.

We found 2 issues in the current backward implementation:

https://github.com/tenstorrent-metal/tt-metal/issues/6533
https://github.com/tenstorrent-metal/tt-metal/issues/6534

@razorback3 Will look into this and push the fix.

@hschoi4448 @razorback3 Please find PR #6542 with the fixes for above ops

Hi @eyonland , @razorback3,
The below list of backward support for complex ops are implemented for Type 1 complex tensor as of now ( yet to be implemented for type 2 complex tensor )

conj
imag
real
complex add
complex sub
complex mul
complex recip

Regarding sin_bw and cos_bw:

sin_bw and cos_bw use the forward op cos() and sin() respectively which have a range of 0 to 2*pi.
In torch, for values beyond 2pi, the result from (input % 2pi) is used for cos() and sin() operation.
In TT, there is no support for % operator or floor.
For such cases, what could be done?
-should we have an assert statement mentioning about the input range?

Closing given all tasks completed.


http://<IP_ADDRESS>:3000/ doesn't work (ERR_ADDRESS_INVALID)

I'm using windows 7. After I figured out what's wrong with my installation (#109, #110), I ran npm run build:dev and I assume it was all good since..
Hash: e33d77cfa9cd8a705812
Version: webpack 1.12.14
Time: 36629ms
   Asset    Size  Chunks             Chunk Names
index.js  952 kB       0  [emitted]  main
   [0] multi main 28 bytes {0} [built]
    + 243 hidden modules

And then I ran npm start
$ npm start

><EMAIL_ADDRESS>start C:\Users\Private\Development\web\links\food-shop
> cross-env NODE_PATH=source babel-node devServer.js | bunyan

[2016-12-01T17:22:19.277Z]  INFO: Universal React Boilerplate/2148 on KarlEspiritu-PC: Listening at http://<IP_ADDRESS>:3000

But the browser tab opened with the url http://<IP_ADDRESS>:3000/ gave me a ERR_ADDRESS_INVALID response.
Did I miss something?

Try http://localhost:3000/?

@karlpatrickespiritu Install bunyan


Compiles error using slot inside component with specifying lang of

Version
3.0.5
Reproduction link
https://codesandbox.io/s/sweet-pike-uof96
Steps to reproduce
https://codesandbox.io/s/sweet-pike-uof96
<template lang="">
  <hello-world>
    <template v-slot:default> Slot Message </template>
  </hello-world>
</template>

What is expected?
Vue compiles with default template language.
What is actually happening?
VueCompilerError: Invalid end tag.

Btw, if attributes resemble <template lang=""></template> is not allowed, the compiler should tell something relevant.
It costs me some time to figure it out with Invalid end tag point to the end of slot-contained-component (</hello-world>).

After doing some verification, an error was reported in helloworld.vue, ‘The template root disallows'' elements ’

After doing some verification, an error was reported in helloworld.vue, ‘The template root disallows'' elements ’


better organization for names of icons

can we club plain and original to same category and simply name it as devicon-.
other files for icon stay with same names

@py563 hey :) I'm not sure if i understood you right.. Can you please make some examples to clear things up? :)

it is hard to remember which icon is plain and which is original? why are they different versions. like for java icon i think you have plain but not original.
does original mean you got it form the brand's website?

As it is written in our CONTRIBUTING.md:

The plain and line versions (with or without wordmark) are designed to be available in the final icon font. So they need to stay as simple as possible (one color and ensure that the paths are united before to export to svg). You can use a service like compressor or SVG Editor in order to optimize the svg file.
The original versions are only available in svg format, so they do not need to be as simple and they can contain numerous colors.
Some icons are really simple (like the apple one), so the original version can be used for the icon font. In this case, I'll add an alias so they can be found with the "original" or "plain" naming convention.

It is indeed possible, that there are some icons which does not implement all variations. Feel free to add them and open a pull request :)
Hope this answers your question why there are different versions and what the mean.


[RFC] Python library wrappers

Motivation for this change
Some python libraries require specific environment variables to be set. One example are those that use gtk libraries. On most other distros, those environment variables would either be set in the global environment or the dependencies would be found in standard paths. Since that is not the case for nixos, we need to hardcode those environment variables into the libraries.
We have makeWrapper for binaries. Here I try (purely as a proof of concept, kept as simple as possible) to add a makePythonWrapper function that does the same for python libraries. In particular, this would make the gtk3 matplotlib backend usable without using nix-shell and without manually setting environment variables.
python3 -c 'import matplotlib.pyplot as p; p.switch_backend("gtk3agg")'

Should now succeed. This works because python always executes all parent modules before importing a module. So by adding some code to the top of the topmost module (taking care to leave module docstrings in tact), we can set environment variables as soon as a module is imported.
Some next steps/improvements would be:

factor out makePythonWrapper
provide the full functionality makeWrapper provides
automatically determine the right __init__.py to modify
provide a GTK setup hook or maybe adapt the existing one

What do you think?
CC @jtojnar @FRidh
(This is not about enabling the gtk backend in matplotlib by default, that is just for easier testing)

This library might be useful: https://github.com/google/pasta

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/declarative-wrappers-another-idea/6661/1

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/low-effort-and-high-impact-tasks/21095/41

This pull request has been mentioned on NixOS Discourse. There might be relevant details there:
https://discourse.nixos.org/t/terminal-emulator-leaks-environment-variables-to-shell/33673/11


Display apply button states, more error triggering, and bug fixes

Fixes bug where the button state (ie loading) is applied to all buttons at once in a chat room
When the button is in failed state, display error message in the UI (some of these were previously silent or uncaught errors, updated tests accordingly)
ApplyButton component template change: Only ready state is a button, all other states (applying, applied, failed) are just state indicators -- or we can disable the button, if that's preferred (for the failed state, there's a separate Retry button in the chat along with the error message)

Note: Currently the Apply button states are not persistent. We should think about how we want to handle this.
Success state when patch is applied:

Failed state:

Error when the patch code is wrong because of wrong attribute:

Error when card is not open in stack but pressed Apply:

I would consider a state for both success and error state where there is a disabled button with text + icon instead of just icon, something like this:

I find this a bit more friendly/informational, especially when displaying historic states from the past will be supported. Regarding the persistence of the apply state, this could be a field on the message perhaps?

Merging this PR and handling the above in follow up ticket CS-6705


Display "expand" button in dataset view only if there is additional metadata to display

https://nar-browser-app.brainsimulation.eu/app/#!/datasets

outdated


Add "Microsoft Edge Add-ons" to installation links

Having the link there would help security-conscious/-paranoid users verify that the extension there was published by you and not someone impersonating you.
I found it by searching for the addon on Bing (just made a new profile and that was the default search engine). The developer link there leads to this GitHub repository, and the "other extensions by this developer" (appear to) match your extensions on the Chrome Web Store.

@kawamataryo Just to verify in case of impersonation: did you publish this extension on the Edge Add-ons site too? And is this your developer page?

Thank you for the PR. This is what I published. However, since I don't usually use Edge, I forgot to update it... I will publish the latest version on the Edge store.


Multiple widgets used the same GlobalKey error

Steps to Reproduce
Create a TabBarView with 3 RefreshIndicators children.
Run the app and after changing tabs a few times (5 to 10 times) you get a " Multiple widgets used the same GlobalKey." error.
@override
Widget build(BuildContext context) {
   final GlobalKey<RefreshIndicatorState> _RIKey1 = new GlobalKey<RefreshIndicatorState>();
   final GlobalKey<RefreshIndicatorState> _RIKey2 = new GlobalKey<RefreshIndicatorState>();
   final GlobalKey<RefreshIndicatorState> _RIKey3 = new GlobalKey<RefreshIndicatorState>();

   debugPrint(_RIKey1.toString());
   debugPrint(_RIKey2.toString());
   debugPrint(_RIKey3.toString());
   return new Scaffold(
     body: new DefaultTabController(
       length: 3,
       child: new Scaffold(
         appBar: new AppBar(
           bottom: new TabBar(
             tabs: [
               new Tab(icon: new Icon(Icons.view_list)),
               new Tab(icon: new Icon(Icons.hotel)),
               new Tab(icon: new Icon(Icons.assessment)),
             ],
           ),
           title: new Text('Data'),
         ),
         body: new TabBarView(
           children: [
             new RefreshIndicator(
               key: _RIKey1,
               onRefresh: _actualizoData,
               child: new ListView.builder(
                   padding: new EdgeInsets.only(top: 5.0),
                   itemCount: linea_reservas.length * 2,
                   itemBuilder: (BuildContext context, int position) {
                     if (position.isOdd) return new Divider();
                     final index = position ~/ 2;
                     return _buildRow(index);
                   }),
             ),
             new RefreshIndicator(
               key: _RIKey2,
               onRefresh: _actualizoData,
               child: new ListView.builder(
                   padding: new EdgeInsets.only(top: 8.0),
                   itemCount: linea_inouthouse.length * 2,
                   itemBuilder: (BuildContext context, int position) {
                     if (position.isOdd) return new Divider();
                     final index = position ~/ 2;
                     return _buildRowInOutHouse(index);
                   }),
             ),
             new RefreshIndicator(
               key: _RIKey3,
               onRefresh: _actualizoData,
               child: new ListView.builder(
                   padding: new EdgeInsets.only(top: 5.0),
                   itemCount: linea_ocupacion.length * 2,
                   itemBuilder: (BuildContext context, int position) {
                     if (position.isOdd) return new Divider();
                     final index = position ~/ 2;
                     return _buildRowOcupacion(index);
                   }),
             ),
           ],
         ),
       ),
     ),
   );
 }

Please tell us what you were doing and what went wrong. If you are running flutter tools from the command line, please try adding the -v or --verbose option to gather more information.
If the problem is with your application's rendering, please attach a screenshot and any relevant source code.
If you are getting an exception in the logs, and your code is implicated in the first few frames, then please include the source code for the functions involved.
Logs
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#d6dbe]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#91b52]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#e4401]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#de378]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#2accf]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#a5168]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#0c05e]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#75aa5]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#a8dd6]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#11fdf]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#6fda6]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#f486c]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#09ebf]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#5ea61]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#914b7]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#e2168]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#a636b]
I/flutter ( 3245): [LabeledGlobalKey<RefreshIndicatorState>#9b57f]
I/flutter ( 3245): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter ( 3245): The following assertion was thrown building NotificationListener<KeepAliveNotification>:
I/flutter ( 3245): Multiple widgets used the same GlobalKey.
I/flutter ( 3245): The key [LabeledGlobalKey<RefreshIndicatorState>#9b57f] was used by multiple widgets. The parents of
I/flutter ( 3245): those widgets were:
I/flutter ( 3245): - RepaintBoundary-[<[LabeledGlobalKey<RefreshIndicatorState>#9b57f]>](renderObject:
I/flutter ( 3245):   RenderRepaintBoundary#38cd2 DETACHED)
I/flutter ( 3245): - RepaintBoundary-[<[LabeledGlobalKey<RefreshIndicatorState>#9b57f]>](renderObject:
I/flutter ( 3245):   RenderRepaintBoundary#44883 NEEDS-LAYOUT NEEDS-PAINT)
I/flutter ( 3245): A GlobalKey can only be specified on one widget at a time in the widget tree.
I/flutter ( 3245): When the exception was thrown, this was the stack:
I/flutter ( 3245): #0      GlobalKey._debugReserveFor.<anonymous closure> (package:flutter/src/widgets/framework.dart:164:11)
I/flutter ( 3245): #1      GlobalKey._debugReserveFor (package:flutter/src/widgets/framework.dart:182:6)
I/flutter ( 3245): #2      Element.updateChild.<anonymous closure> (package:flutter/src/widgets/framework.dart:2664:13)
I/flutter ( 3245): #3      Element.updateChild (package:flutter/src/widgets/framework.dart:2667:6)
I/flutter ( 3245): #4      SingleChildRenderObjectElement.mount (package:flutter/src/widgets/framework.dart:4637:14)
I/flutter ( 3245): #5      Element.inflateWidget (package:flutter/src/widgets/framework.dart:2890:14)
I/flutter ( 3245): #6      Element.updateChild (package:flutter/src/widgets/framework.dart:2693:12)
I/flutter ( 3245): #7      ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3636:16)
I/flutter ( 3245): #8      Element.rebuild (package:flutter/src/widgets/framework.dart:3478:5)
I/flutter ( 3245): #9      ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3605:5)
I/flutter ( 3245): #10     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3600:5)
I/flutter ( 3245): #11     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2890:14)
I/flutter ( 3245): #12     Element.updateChild (package:flutter/src/widgets/framework.dart:2693:12)
I/flutter ( 3245): #13     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3636:16)
I/flutter ( 3245): #14     Element.rebuild (package:flutter/src/widgets/framework.dart:3478:5)
I/flutter ( 3245): #15     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3605:5)
I/flutter ( 3245): #16     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3600:5)
I/flutter ( 3245): #17     ParentDataElement.mount (package:flutter/src/widgets/framework.dart:3938:11)
I/flutter ( 3245): #18     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2890:14)
I/flutter ( 3245): #19     Element.updateChild (package:flutter/src/widgets/framework.dart:2693:12)
I/flutter ( 3245): #20     ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:3636:16)
I/flutter ( 3245): #21     Element.rebuild (package:flutter/src/widgets/framework.dart:3478:5)
I/flutter ( 3245): #22     ComponentElement._firstBuild (package:flutter/src/widgets/framework.dart:3605:5)
I/flutter ( 3245): #23     StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:3752:11)
I/flutter ( 3245): #24     ComponentElement.mount (package:flutter/src/widgets/framework.dart:3600:5)
I/flutter ( 3245): #25     Element.inflateWidget (package:flutter/src/widgets/framework.dart:2890:14)
I/flutter ( 3245): #26     Element.updateChild (package:flutter/src/widgets/framework.dart:2693:12)
I/flutter ( 3245): #27     SliverMultiBoxAdaptorElement.createChild.<anonymous closure> (package:flutter/src/widgets/sliver.dart:729:20)
I/flutter ( 3245): #28     BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2205:19)
I/flutter ( 3245): #29     SliverMultiBoxAdaptorElement.createChild (package:flutter/src/widgets/sliver.dart:722:11)
I/flutter ( 3245): #30     RenderSliverMultiBoxAdaptor._createOrObtainChild.<anonymous closure> (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:254:23)
I/flutter ( 3245): #31     RenderObject.invokeLayoutCallback.<anonymous closure> (package:flutter/src/rendering/object.dart:1666:58)
I/flutter ( 3245): #32     PipelineOwner._enableMutationsToDirtySubtrees (package:flutter/src/rendering/object.dart:740:15)
I/flutter ( 3245): #33     RenderObject.invokeLayoutCallback (package:flutter/src/rendering/object.dart:1666:13)
I/flutter ( 3245): #34     RenderSliverMultiBoxAdaptor._createOrObtainChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:243:5)
I/flutter ( 3245): #35     RenderSliverMultiBoxAdaptor.addInitialChild (package:flutter/src/rendering/sliver_multi_box_adaptor.dart:351:5)
I/flutter ( 3245): #36     RenderSliverFixedExtentBoxAdaptor.performLayout (package:flutter/src/rendering/sliver_fixed_extent_list.dart:169:12)
I/flutter ( 3245): #37     RenderObject.layout (package:flutter/src/rendering/object.dart:1570:7)
I/flutter ( 3245): #38     RenderViewportBase.layoutChildSequence (package:flutter/src/rendering/viewport.dart:285:13)
I/flutter ( 3245): #39     RenderViewport._attemptLayout (package:flutter/src/rendering/viewport.dart:1008:12)
I/flutter ( 3245): #40     RenderViewport.performLayout (package:flutter/src/rendering/viewport.dart:932:20)
I/flutter ( 3245): #41     RenderObject._layoutWithoutResize (package:flutter/src/rendering/object.dart:1445:7)
I/flutter ( 3245): #42     PipelineOwner.flushLayout (package:flutter/src/rendering/object.dart:709:18)
I/flutter ( 3245): #43     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&RendererBinding.drawFrame (package:flutter/src/rendering/binding.dart:270:19)
I/flutter ( 3245): #44     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&RendererBinding&WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:622:13)
I/flutter ( 3245): #45     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:208:5)
I/flutter ( 3245): #46     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:990:15)
I/flutter ( 3245): #47     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:930:9)
I/flutter ( 3245): #48     _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:842:5)
I/flutter ( 3245): #49     _invoke (dart:ui/hooks.dart:120:13)
I/flutter ( 3245): #50     _drawFrame (dart:ui/hooks.dart:109:3)
I/flutter ( 3245): ════════════════════════════════════════════════════════════════════════════════════════════════════
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 2209 pos 20: '_debugCurrentBuildTarget == context': is not true.
I/flutter ( 3245): Another exception was thrown: RenderBox was not laid out: RenderRepaintBoundary#44883 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 2209 pos 20: '_debugCurrentBuildTarget == context': is not true.
I/flutter ( 3245): Another exception was thrown: RenderBox was not laid out: RenderRepaintBoundary#b2936 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 579 pos 16: 'indexOf(child) == index': is not true.
I/flutter ( 3245): Another exception was thrown: RenderBox was not laid out: RenderRepaintBoundary#44883 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 579 pos 16: 'indexOf(child) == index': is not true.
I/flutter ( 3245): Another exception was thrown: RenderBox was not laid out: RenderRepaintBoundary#44883 NEEDS-LAYOUT NEEDS-PAINT
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/rendering/sliver_multi_box_adaptor.dart': Failed assertion: line 215 pos 16: 'indexOf(child) > index': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: 'package:flutter/src/widgets/framework.dart': Failed assertion: line 3480 pos 14: 'owner._debugCurrentBuildTarget == this': is not true.
I/flutter ( 3245): Another exception was thrown: The _ScaffoldLayout custom multichild layout delegate forgot to lay out the following children:

## flutter analyze
Analyzing C:\...
  error - The constructor returns type 'dynamic' that isn't of expected type 'Widget' at test\widget_test.dart:14:29 - strong_mode_invalid_cast_new_expr
  error - Undefined class 'MyApp' at test\widget_test.dart:14:33 - undefined_class
  warning - This function declares a return type of 'Future<String>', but doesn't end with a return statement at lib\tabs.dart:34:3 - missing_return
  warning - This function declares a return type of 'Future<String>', but doesn't end with a return statement at lib\tabs.dart:72:3 - missing_return
  warning - This function declares a return type of 'Future<String>', but doesn't end with a return statement at lib\tabs.dart:112:3 - missing_return
  warning - This function declares a return type of 'Future<Null>', but doesn't end with a return statement at lib\tabs.dart:161:3 - missing_return
  lint - Name types using UpperCamelCase at lib\Linea_inouthouse.dart:2:7 - camel_case_types
  lint - Name types using UpperCamelCase at lib\Linea_ocupacion.dart:1:7 - camel_case_types
  lint - Name types using UpperCamelCase at lib\Linea_ultimasreservas.dart:1:7 - camel_case_types
  lint - Name non-constant identifiers using lowerCamelCase at lib\login_page.dart:44:18 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:25:7 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:26:7 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:27:7 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:51:13 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:52:13 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:91:13 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:92:13 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:198:9 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:242:44 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:243:44 - non_constant_identifier_names
  lint - Name non-constant identifiers using lowerCamelCase at lib\tabs.dart:244:44 - non_constant_identifier_names
  hint - Unused import: 'package:smarthotelier/reserva.dart' at lib\login_page.dart:7:8 - unused_import
  hint - Unused import: 'package:smarthotelier/config.dart' at lib\main.dart:3:8 - unused_import
  hint - This method overrides a method annotated as @mustCallSuper in 'State', but does not invoke the overridden method at lib\tabs.dart:157:8 - must_call_super
24 issues found.
(Ran in 15.7s)

Flutter Doctor
[√] Flutter (Channel beta, v0.2.8, on Microsoft Windows [VersiÃ³n 10.0.16299.371], locale es-MX)
• Flutter version 0.2.8 at C:\Users\Alejandro\Flutter
• Framework revision b397406561 (2 weeks ago), 2018-04-02 13:53:20 -0700
• Engine revision c903c217a1
• Dart version 2.0.0-dev.43.0.flutter-52afcba357
[√] Android toolchain - develop for Android devices (Android SDK 27.0.3)
• Android SDK at C:\Android\android-sdk
• Android NDK location not configured (optional; useful for native profiling support)
• Platform android-27, build-tools 27.0.3
• ANDROID_HOME = C:\Android\android-sdk
• Java binary at: C:\Program Files\Android\Android Studio1\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b02)
• All Android licenses accepted.
[√] Android Studio (version 2.3)
• Android Studio at C:\Program Files\Android\Android Studio
• Java version OpenJDK Runtime Environment (build 1.8.0_112-release-b06)
[√] Android Studio (version 3.1)
• Android Studio at C:\Program Files\Android\Android Studio1
• Java version OpenJDK Runtime Environment (build 1.8.0_152-release-1024-b02)
[√] VS Code, 64-bit edition (version 1.21.1)
• VS Code at C:\Program Files\Microsoft VS Code
• Dart Code extension version 2.11.1
[√] Connected devices (1 available)
• Android SDK built for x86 • emulator-5554 • android-x86 • Android 6.0 (API 23) (emulator)
• No issues found!

For more information about diagnosing and reporting Flutter bugs, please see https://flutter.io/bug-reports/.

I suggest you move the global out of the build method into the enclosing class so the same key is used when build is called multiple times.

I did, but the error persists

@aleangelico  I meet the same problem, Have you resolved  it ?

yes, I created my own keys:
class RIKeys {
  static final riKey1 = const Key('__RIKEY1__');

  static final riKey2 = const Key('__RIKEY2__');

  static final riKey3 = const Key('__RIKEY3__');
}

check this thread https://stackoverflow.com/questions/49862572/multiple-widgets-used-the-same-globalkey

I meet the same problem ,  now i have not idea
@override
  Widget build(BuildContext context) {
    final GlobalKey<RepositoryDetailFileListPageState> fileListKey = new GlobalKey<RepositoryDetailFileListPageState>();

    final  GlobalKey<ReposDetailInfoPageState> infoListKey = new GlobalKey<ReposDetailInfoPageState>();

    final GlobalKey<RepositoryDetailReadmePageState> readmeKey = new GlobalKey<RepositoryDetailReadmePageState>();

    return new GSYTabBarWidget(
        type: GSYTabBarWidget.TOP_TAB,
        tarWidgetControl: tarBarControl,
        tabItems: [
          new Tab(text: GSYStrings.repos_tab_info),
          new Tab(text: GSYStrings.repos_tab_readme),
          new Tab(text: GSYStrings.repos_tab_issue),
          new Tab(text: GSYStrings.repos_tab_file),
        ],
        tabViews: [
          new ReposDetailInfoPage(
            reposDetailInfoPageControl,
            userName,
            reposName,
            branchControl,
            key: infoListKey,
          ),
          new RepositoryDetailReadmePage(
            userName,
            reposName,
            branchControl,
            key: readmeKey,
          ),
          new RepositoryDetailIssuePage(userName, reposName),
          new RepositoryDetailFileListPage(
            userName,
            reposName,
            branchControl,
            key: fileListKey,
          ),
        ],
        backgroundColor: GSYColors.primarySwatch,
        indicatorColor: Colors.white,
        title: new GSYTitleBar(reposName));
  }

I have exactly the same issue and found no solution.
@aleangelico The workaround you provided here does not work for me, 'cause I need GlobalKeys, that is, I need to call RefreshIndicatorState.show(), while LocalKey does not have a `currentState' property.

try asking in Flutter Chat (https://gitter.im/flutter/flutter), unfortunately, posting here seems to be a waste of time...

@aleangelico please refrain from such statements.
You are aware that more people post issues, feature requests, and questions here that people who process them and processing them usually also takes longer then posting them.
I agree that it is a good idea to try other channels first until you have some certainty that the issue is with Flutter not with your custom code.

Related #20306

@zoechi I didn't want to offend anybody, I was just stating the obvious. It takes a lot of time to post a proper question (reformat the code, debug, upload logs, etc) and the time it takes for anyone else with the same issue to came here, read everything, post some idea or question, etc. After more than 4 months there is nothing useful about this issue (and the same happens to a lot of issues in this repository).  So, it is a waste of time, not only for me, but for everybody else...
I don't see how this is inappropriate or unprofessional. Don't blame the messenger.

@aleangelico I'm sorry, I have to disagree.
The developers working on this project have been at it for years (and hopefully still have many more years of development to come). To say posting here is a waste of time is insulting. While I understand it's frustrating to not see progress on this issue I think it's important to keep perspective. There are over 3,500 open issues, some things will take time to fix.
I actually ran in to this exact same problem, we ended rearchitecting our app around it. I'd be happy to provide more details if it will help.
The Flutter community will take on the attitudes we give to it. At a baseline I think it's critical we're nice to each other, everything else is secondary...

@zoechi @hillelcoren I apologize for my comments. It was not my intention to be rude.

@aleangelico I appreciate your effort. It's a proper report and I'm sorry that there are not more ressources to answer, reproduce, and fix. We do our best.

I meet the same problem, and I solved my problem in this way：
 new RefreshIndicator(key: new GlobalKey<RefreshIndicatorState>(),  ...

@aleangelico is this still an issue?

@zoechi I don't know, it's and old project I solved with the workaround explained in this thread.

using custom  debugLabel
  final GlobalKey<FormState> _loginFormKey=       new GlobalKey<FormState>(debugLabel: '_loginFormKey');
solved it for me

I meet the same error, when I use TabBarView as follow code:
class GlobalKeysReuseWidget extends StatefulWidget {
  @override
  State<StatefulWidget> createState() => _State();
}

class _State extends State<GlobalKeysReuseWidget> {
  final configWidgetGlobalKey = GlobalKey();
  final scaffoldKey = GlobalKey<ScaffoldState>();

  @override
  Widget build(BuildContext context) {
    return DefaultTabController(
      length: 2,
      child: Scaffold(
        key: scaffoldKey,
        appBar: TabBar(
          labelColor: Theme.of(context).accentColor,
          tabs: <Widget>[Icon(Icons.access_alarms), Icon(Icons.work)],
        ),
        body: TabBarView(
          children: <Widget>[
            Padding(
              padding: EdgeInsets.all(8),
              child: ConfigWidget(scaffoldKey, key: configWidgetGlobalKey),
            ),
            Padding(
              padding: const EdgeInsets.only(left: 8, top: 200),
              child: ConfigWidget(scaffoldKey, key: configWidgetGlobalKey),
            )
          ],
        ),
      ),
    );
  }
}

class ConfigWidget extends StatefulWidget {
  final GlobalKey<ScaffoldState> scaffoldKey;

  ConfigWidget(this.scaffoldKey, {Key key}) : super(key: key);

  @override
  State<StatefulWidget> createState() => _ConfigWidgetState();
}

class _ConfigWidgetState extends State<ConfigWidget> {
  bool enable = false;
  double sliderValue = 0;

  @override
  Widget build(BuildContext context) {
    return Column(
      mainAxisSize: MainAxisSize.min,
      children: <Widget>[
        Row(
          children: <Widget>[
            Padding(
              padding: EdgeInsets.only(right: 8),
              child: Text("Only wifi:"),
            ),
            Switch(
              onChanged: (bool v) {
                setState(() {
                  enable = v;
                });
                showSnackBar(v);
              },
              value: enable,
            ),
          ],
        ),
        Row(
          children: <Widget>[
            Padding(
              padding: const EdgeInsets.only(right: 8),
              child: Text('Volume:'),
            ),
            Slider(
              onChanged: (double v) {
                setState(() {
                  sliderValue = v;
                });
              },
              value: sliderValue,
            )
          ],
        )
      ],
    );
  }

  void showSnackBar(bool b) {
    widget.scaffoldKey.currentState.hideCurrentSnackBar();
    final bar = SnackBar(content: Text("enable: $b"));
    widget.scaffoldKey.currentState.showSnackBar(bar);
  }
}

Exception log:
I/flutter (26207): ══╡ EXCEPTION CAUGHT BY WIDGETS LIBRARY ╞═══════════════════════════════════════════════════════════
I/flutter (26207): The following assertion was thrown while finalizing the widget tree:
I/flutter (26207): Duplicate GlobalKey detected in widget tree.
I/flutter (26207): The following GlobalKey was specified multiple times in the widget tree. This will lead to parts of
I/flutter (26207): the widget tree being truncated unexpectedly, because the second time a key is seen, the previous
I/flutter (26207): instance is moved to the new location. The key was:
I/flutter (26207): - [GlobalKey#7ea15]
I/flutter (26207): This was determined by noticing that after the widget with the above global key was moved out of its
I/flutter (26207): previous parent, that previous parent never updated during this frame, meaning that it either did
I/flutter (26207): not update at all or updated before the widget was moved, in either case implying that it still
I/flutter (26207): thinks that it should have a child with that global key.
I/flutter (26207): The specific parent that did not update after having one or more children forcibly removed due to
I/flutter (26207): GlobalKey reparenting is:
I/flutter (26207): - Padding(padding: EdgeInsets.all(8.0), dependencies: [Directionality], renderObject:
I/flutter (26207):   RenderPadding#ef502)
I/flutter (26207): A GlobalKey can only be specified on one widget at a time in the widget tree.
I/flutter (26207):
I/flutter (26207): When the exception was thrown, this was the stack:
I/flutter (26207): #0      BuildOwner.finalizeTree.<anonymous closure>
I/flutter (26207): #1      BuildOwner.finalizeTree
I/flutter (26207): #2      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding&WidgetsBinding.drawFrame
I/flutter (26207): #3      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding&PaintingBinding&SemanticsBinding&RendererBinding._handlePersistentFrameCallback
I/flutter (26207): #4      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._invokeFrameCallback
I/flutter (26207): #5      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding.handleDrawFrame
I/flutter (26207): #6      _WidgetsFlutterBinding&BindingBase&GestureBinding&ServicesBinding&SchedulerBinding._handleDrawFrame
I/flutter (26207): #10     _invoke  (dart:ui/hooks.dart:219:10)
I/flutter (26207): #11     _drawFrame  (dart:ui/hooks.dart:178:3)
I/flutter (26207): (elided 3 frames from package dart:async)

Have someone solved this?  :hushed:

@stefanJi That error is unrelated to TabBarView. I think the error is caused by that you use configWidgetGlobalKey in multiple places. (In this case, keys of two Padding) I hope this will help you. But I guess if you posted this question on StackOverflow, you could get an answer more quickly🤔

yes, I created my own keys:
class RIKeys {
  static final riKey1 = const Key('__RIKEY1__');

  static final riKey2 = const Key('__RIKEY2__');

  static final riKey3 = const Key('__RIKEY3__');
}

check this thread https://stackoverflow.com/questions/49862572/multiple-widgets-used-the-same-globalkey
@aleangelico can you edit the url so it links properly?

changing the key from static final to just final and adding debugLabel solved it for me
class _LoginFormState extends State<yourStatefulWidget> {
  final GlobalKey<FormState> _formKey =
      new GlobalKey<FormState>(debugLabel: '_LoginFormState');
  ...

@shashikantj changing from static to non-static means the key is being recreated every time the widget is, so it's no longer global. This defeats its purpose.
I too am experiencing this issue. I want to assign a GlobalKey to a specific widget that appears on every page of my app so that it can animate between values (it's a progress indicator). This works for a couple of navigations, but I eventually see this same error.

I stucked with this:

final List keys = List.generate(optionalChars.length, (index) => GlobalKey(debugLabel: "key$index"));
Any way to use it in a list?:D

I was using a custom widget that wrapped a Container widget. I needed to pass the key from the custom widget to the container, and I was using a parameter key in the wrapper constructor. Ran into the same issue. My fix was to avoid using the word key in the wrapper constructor, changed it to refKey and the error went away.

I didn't have any keys in my app yet I got that error
I ran flutter clean and restarted the app and it worked

I solved it by making StatefulWidget into  function reusable widget . I got this error when i  pass FormState key into StatefulWidget which  basically return TextFormField.

I meet the same problem, and I solved my problem in this way：
  @override
  Widget build(BuildContext context) {
      //... return
      new RefreshIndicator(key: new GlobalKey<RefreshIndicatorState>(),  ...
}

thank you. it works for me.

I was using a custom widget that wrapped a Container widget. I needed to pass the key from the custom widget to the container, and I was using a parameter key in the wrapper constructor. Ran into the same issue. My fix was to avoid using the word key in the wrapper constructor, changed it to refKey and the error went away.

This Fixed my issue. Thanks.

I meet the same problem, and I solved my problem in this way：
  @override
  Widget build(BuildContext context) {
      //... return
      new RefreshIndicator(key: new GlobalKey<RefreshIndicatorState>(),  ...
}

thank you. it works for me.

It worked for me too! Thanks a bunch!

FWIW, I made a list of keys in their own respective class, used static properties in order to prevent any reuse/new instances happening. A lot of the other solutions I saw posted above either didn't reference GlobalKey objects or were prefixed with new which would defeat the purpose of having a single GlobalKey instance.
This is what worked for me. It might not work for you depending on your use case.
class MyGlobalKeys {
  static final GlobalKey<MyChildWidgetState> myKeys1 =
      GlobalKey<MyChildWidgetState>(debugLabel: '_childWidgetKey1');
  static final GlobalKey<MyOtherChildWidgetState> myKeys2 =
      GlobalKey<MyOtherChildWidgetState>(debugLabel: '_childWidgetKey2');
}

class MyParentWidgetState extends State <ParentWidget> {
  MyChildWidget _childWidget = MyChildWidget(key: MyGlobalKeys.myKeys1);

  void _myFunction() {
    MyGlobalKeys.myKeys1.currentState.doSomeFunction();
  }
}


Inventory crash on 3.2.4/3.3.0-alpha.4

Describe the bug
Inventory crashes on all worlds
Expected behavior
No crash
Observed/actual behavior
Crash
Steps To Reproduce

Open FO 3.2.4
Open any world
Open inventory
Crash

Modpack version
3.2.4
Launcher
GDLauncher
Install method
FO fresh install/new profile
Additional context
Currently unmarked the version as latest stable because of that

Am able to recreate this also https://crashy.net/ZOhsB5E9hD0uhbMubAa0

Not only inventory, when switching to 3rd person the game crashes, on the first report it said none mods where causing then Iris.. Also the hand on first person renders with transparent gaps.. (MultiMC, Linux)
https://crashy.net/efVQcioUDtdJmycErBLV

Fixed on 3.2.5/3.3.0-alpha.5.


Fix subo README table formatting

Closes #80
I've often found that moving docs from Github to other has the side-effect of messing up some formatting that's fixed by adding an extra newline 👀

Yay, LGTM! :eyes:


Sonarr/Radarr on download changed to on grab

Looks like "Download" notification trigger is no longer available, it's changed to "On Grab" instead.

I updated the script from Download to Grab and seems to be working fine.
Though I'm not sure where this icon is specified, it's not $radarr_ntfy_icon, any idea?

EDIT: found the answer,

Sorry for not replying earlier, I missed that there was an issue.
Thanks for the information, I'll change the script asap!
Seems weird to remove "On download". I'm guessing that "On grab" is when the download starts, not the same thing.
But, it is what it is I guess. :)

I added the eventtype Grab, but left Download. Hopefully it will come back at some point.
Thanks for pointing out the issue! #