GC Warning: Failed to expand heap

Hi there,
I'm receiving the following error:
│ 2023-10-12T06:07:26.021556Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Failed to expand heap by 131072 KiB    thread=27                        │
│ 2023-10-12T06:07:26.037565Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Failed to expand heap by 131072 KiB    thread=27                        │
│ 2023-10-12T06:07:26.053438Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Failed to expand heap by 131072 KiB    thread=27                        │
│ 2023-10-12T06:07:26.053456Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Failed to expand heap by 192 KiB    thread=27                           │
│ 2023-10-12T06:07:26.053459Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Out of Memory! Heap size: 706 MiB. Returning NULL!    thread=27         │
│ 2023-10-12T06:07:26.053577Z    error    envoy wasm external/envoy/source/extensions/common/wasm/wasm_vm.cc:38    Function: proxy_on_configure failed: Uncaught RuntimeError: unreachable                         │
│ Proxy-Wasm plugin in-VM backtrace:                                                                                │
│   0:  0xa4150 - runtime._panic                                                                                │
│   1:  0x171ceb - (*github.com/corazawaf/coraza/v3/internal/corazawaf.RuleGroup).Add                                                                                │
│   2:  0x1cee18 - github.com/corazawaf/coraza/v3/internal/seclang.directiveSecRule                                                                                │
│   3:  0x1d4760 - (*github.com/corazawaf/coraza/v3/internal/seclang.Parser).FromString                                                                                │
│   4:  0x1d3e93 - (*github.com/corazawaf/coraza/v3/internal/seclang.Parser).FromFile                                                                                │
│   5:  0x1d48b2 - (*github.com/corazawaf/coraza/v3/internal/seclang.Parser).FromString                                                                                │
│   6:  0x1da72f - proxy_on_configure    thread=27                                                                                │
│ 2023-10-12T06:07:26.053589Z    error    envoy wasm external/envoy/source/extensions/common/wasm/wasm.cc:109    Wasm VM failed Failed to configure thread-local Wasm plugin    thread=27

I already pumped up the istio pods to 4 GB (instead of 1 GB) but still the same error.
Do you have any idea how to troubleshoot that?
Rules are as follows:
spec:
  phase: AUTHN
  pluginConfig:
    default_directives: default
    directives_map:
      blockAll:
        - Include @recommended-conf
        - SecRuleEngine On
        - Include @crs-setup-conf
        - Include @owasp_crs/*.conf
        - >-
          SecRule REQUEST_HEADERS:user-agent "@contains firefox" "id:1, phase:1,
          deny, log, logdata:'firefox forbidden'"
        - >-
          SecRule REQUEST_HEADERS:user-agent "@contains Firefox" "id:3, phase:1,
          deny, log, logdata:'firefox forbidden'"
        - >-
          SecRule REQUEST_URI "@beginsWith /admin" "id:2, phase:1, deny, log,
          logdata:'admin forbidden'"
      default:
        - Include @recommended-conf
        - SecRuleEngine DetectionOnly
        - Include @crs-setup-conf
        - Include @owasp_crs/*.conf
    per_authority_directives:
      special.domain.com: blockAll

I'm running Istio 1.18.*
We build our own plugin because we include additional files. And it looks like that's related to the embedded files being too big. As soon as I remove the files, it works as expected.

Looks it it could be related to using "nottinygc" https://github.com/wasilibs/nottinygc/issues/13

I investigated and the plugin works normaly with the following patch applied (disableing nottinygc)
diff --git a/init_tinygo.go b/init_tinygo.go
index 11fb7e9..15dd236 100644
--- a/init_tinygo.go
+++ b/init_tinygo.go
@@ -7,8 +7,7 @@ package main

 import (
 	"unsafe"
-
-	_ "github.com/wasilibs/nottinygc"
+	//_ "github.com/wasilibs/nottinygc"
 )

 // Some host functions that are not implemented by Envoy end up getting imported anyways
diff --git a/magefiles/magefile.go b/magefiles/magefile.go
index 5607cf4..91aa73c 100644
--- a/magefiles/magefile.go
+++ b/magefiles/magefile.go
@@ -188,7 +188,7 @@ func Build() error {
 	}

 	buildTags := []string{
-		"custommalloc",     // https://github.com/wasilibs/nottinygc#usage
+		//"custommalloc",     // https://github.com/wasilibs/nottinygc#usage
 		"no_fs_access",     // https://github.com/corazawaf/coraza#build-tags
 		"memoize_builders", // https://github.com/corazawaf/coraza#build-tags
 	}
@@ -214,8 +214,8 @@ func Build() error {
 			initialPages = ip
 		}
 	}
-
-	if err := sh.RunV("tinygo", "build", "-gc=custom", "-opt=2", "-o", filepath.Join("build", "mainraw.wasm"), "-scheduler=none", "-target=wasi", buildTagArg); err != nil {
+
+	if err := sh.RunV("tinygo", "build", "-opt=2", "-o", filepath.Join("build", "mainraw.wasm"), "-scheduler=none", "-target=wasi", buildTagArg); err != nil {
 		return err
 	}

Hi @woehrl01, thanks for raising it.

We build our own plugin because we include additional files. And it looks like that's related to the embedded files being too big. As soon as I remove the files, it works as expected.

Would you mind sharing the rough size of the additional files you are including? Are your changes strictly related to adding files with rules (no changes in the build process)?
Maybe also giving it a go with this debug branch might print some hints.
Thanks to @anuraaga, there has been a significant effort moving to nottinygc in order to overcome out-of-heap problems with the default GC, and overall it provided a great improvement. I'm kind of surprised the default one is behaving better.

@M4tteoP Thank you, absolutely!
Sizes without the additional file:

Sizes with the additional file (so approximately 6MB more)

So to be fully transparent about what I'm doing: I'm trying to get geoip based blocking to work in this wasm.
Therefore, I created a custom branch from the extended plugin: https://github.com/corazawaf/coraza-geoip/compare/master...woehrl01:coraza-geoip:support_v3_4
And I add the loading of the database as an //go:embed and call that method RegisterGeoDatabase from the main.go
By purely adding the 6MB database as //go:embed (without loading the plugin) the booting of the module fails, with the mentioned error.
By switching to the "default" gc, everything works and the blocking also works based on the geoip.

I did some tries only embedding different files and spinning up envoy. It seems to be not directly related to the size of the embedded file but rather to their content 🤔
▶ head -c 30000000 /dev/urandom | base64 > wasmplugin/rules/random_file

Total size: 48M, containing only ASCII characters, is correctly booted.
▶ head -c 1000000 /dev/urandom > wasmplugin/rules/random_file

Total size: 11M, random bytes, fails with:
[error][wasm] [source/extensions/common/wasm/context.cc:1154] wasm log my_vm_id: GC Warning: Failed to expand heap by 131072 KiB
[error][wasm] [source/extensions/common/wasm/context.cc:1154] wasm log my_vm_id: GC Warning: Failed to expand heap by 131072 KiB
[error][wasm] [source/extensions/common/wasm/context.cc:1154] wasm log my_vm_id: GC Warning: Failed to expand heap by 192 KiB
[error][wasm] [source/extensions/common/wasm/context.cc:1154] wasm log my_vm_id: GC Warning: Out of Memory! Heap size: 858 MiB. Returning NULL!
[info][wasm] [source/extensions/common/wasm/context.cc:1148] wasm log my_vm_id: panic: out of memory
[error][wasm] [source/extensions/common/wasm/wasm_vm.cc:38] Function: proxy_on_configure failed: Uncaught RuntimeError: unreachable
Proxy-Wasm plugin in-VM backtrace:
 0:  0xa3b6c - runtime._panic
 1:  0x161919 - (*github.com/corazawaf/coraza/v3/internal/corazawaf.RuleGroup).Add
 2:  0x1c2703 - github.com/corazawaf/coraza/v3/internal/seclang.directiveSecRule
 3:  0x1c804b - (*github.com/corazawaf/coraza/v3/internal/seclang.Parser).FromString
 4:  0x1c777e - (*github.com/corazawaf/coraza/v3/internal/seclang.Parser).FromFile
 5:  0x1c819d - (*github.com/corazawaf/coraza/v3/internal/seclang.Parser).FromString
 6:  0x1cdff1 - proxy_on_configure

@M4tteoP Great, that's a very interesting finding, and makes sense because the geopip database is binary file.

Thanks for the investigation @M4tteoP! Yeah this does confirm a suspicion I have had - random data will cause issues for the GC. bdwgc is by default a conservative GC and relies on finding values in memory that look like pointers to identify what to keep. Random data looks like pointers in 32-bits, which Wasm is (it's funny seeing the Wasm is the next compute hype when we see it taking us back 10 years :P). Generally random data within request parsing is not as big of a deal since the buffers themselves eventually get released, but embedded data is there forever and holding up GC of pointers that look like those values.
For reference, bdwgc has this note on 2GB heaps on 32-bit machines, while I don't know if we're running close to that in these cases, we are definitely using a reasonably high amount of memory on a 32-bit machine
https://github.com/ivmai/bdwgc/blob/806537be2dec4f49056cb2fe091ac7f7d78728a8/docs/faq.md?plain=1#L84
TinyGo with conservative GC will probably have similar issues but may run into them less by having more knowledge of the way it lays out memory while bdwgc is treating it as a complete black box. If it works for you, it could be a workaround for now, but just for reference, when I try the patch to use default GC and run go run mage.go ftw, luckily it doesn't seem to OOM, but there are obvious 1-2s GC pauses throughout the run, with the total taking 90s vs 40, the majority of that time is probably GC pauses. Something to keep in mind if trying that out in production.
bdwgc does have some support for precise GC which shouldn't have these issues, but both it and TinyGo's related functionality for it aren't that well documented and I was having trouble using it when experimenting once. I wasn't sure it would have a real benefit at the time so stopped exploring it, but now seeing these cases, I think I'll try again but can't guarantee succeeding anytime soon if at all.
https://github.com/ivmai/bdwgc/blob/806537be2dec4f49056cb2fe091ac7f7d78728a8/include/gc/gc_typed.h#L54

BTW @M4tteoP would you be able to share a branch with the random file, and for which I'm guessing the step to repo would be just go run mage.go e2e?

Luckily tinygo does have the docs that I was missing before this time around
https://github.com/tinygo-org/tinygo/blob/release/src/runtime/gc_precise.go#L24
I will look at adding more support for precise GC, but for now I made the trivial change to handle just empty objects, which means embedded byte arrays too 😎 Looks like it fixes it and probably improves performance/reduces memory usage in general a lot
https://github.com/wasilibs/nottinygc/pull/24/files

Thanks @anuraaga, I was also wondering because at least in proxy-wasm embedding files as variables is common so we probably need give the visibility to the practice of freeing the variable after loading its data. Specifically talking about proxy wasm it should happen after we create the waf.

Hmm - I'm not sure if in practice it matters, embedded data is part of the executable and not part of anything that can be GC'd or released I think. On a normal OS, embedded data is just mmap'd in from the executable, so it will be paged in by the OS when needed, and if not used will be paged out automatically by the OS (not Go). I'm not familiar with who Wasm runtimes deal with the data section in the binary, but I guess it could be possible for them to do something similar, but I suspect more likely the memory's used and not releasable in any way.

Awesome, thanks for the incredible quick fix.
The wasm plugin now loads correctly but spills the following errors:
2023-10-13T06:39:08.534901Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Repeated allocation of very large block (appr. size 92 KiB):
    May lead to memory leak and poor performance    thread=27
2023-10-13T06:39:08.540249Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Repeated allocation of very large block (appr. size 92 KiB):
    May lead to memory leak and poor performance    thread=29
2023-10-13T06:39:08.594505Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Repeated allocation of very large block (appr. size 68 KiB):
    May lead to memory leak and poor performance    thread=27
2023-10-13T06:39:08.611791Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Repeated allocation of very large block (appr. size 68 KiB):
    May lead to memory leak and poor performance    thread=29
2023-10-13T06:39:08.788888Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Repeated allocation of very large block (appr. size 92 KiB):
    May lead to memory leak and poor performance    thread=27
2023-10-13T06:39:08.804079Z    error    envoy wasm external/envoy/source/extensions/common/wasm/context.cc:1154    wasm log: GC Warning: Repeated allocation of very large block (appr. size 92 KiB):
    May lead to memory leak and poor performance    thread=29

Thanks for the report about the log message, I have released a patch release to suppress the message by default as bdwgc recommends for release builds
https://github.com/ivmai/bdwgc/blob/242a3a7b6040c2680e009367e96a77b0e167619a/misc.c#L1961
There is information about the message itself here
https://github.com/ivmai/bdwgc/blob/master/docs/debugging.md#warning-messages-about-needing-to-allocate-blacklisted-blocks
I believe it shows up because due to some limitations integrating bdwgc with TinyGo, we can't be fully precise. A few messages on startup should generally not be an issue and I think bdwgc recommends suppressing the message to not worry about it if the app performs well enough in practice, and if it doesn't then we'll need to see if there's some way to get the more precise behavior in

@anuraaga awesome, I just confirmed that the error is now gone. 👍🏼 Thank you 🙏🏼

Would be interested in a PR which adds GeoIP support (using an empty file for the public) which could be easily extended by dropping the database file into the repo for self compilation?

I think that would be great! Being something that requires a self-compilation I would make it opt-in, maybe with a dedicated build tag and some documented steps in the readme that could be something like adding your own GeoIP database and enabling the tag.


Policy documentation update

https://argoproj.github.io/argo-site/#/docs;doc=yaml%2Fpolicy_templates.md
`when:
multiple triggers can be specified
options: on_push, on_pull_request, on_pull_request_merge, on_cron

event: on_push
event: on_pull_request
event: on_pull_request_merge
event: on_cron
cron expression
0 1 * * *
| | | | |
| | | | |
| | | | +---- Run every day of the week
| | | +------ Run every month of the year
| +---------- Run at 1 Hour (1AM)
+------------ Run at 0 Minute
schedule: "0 * * * *"
timezone: "US/Pacific"
`

The cron expression explaination is not aligned properly in documentation.

Fixed. Will show up when we rebuild the documents.


[DNM]Bsim 15 4 support

Based on  the https://github.com/zephyrproject-rtos/zephyr/pull/47028 added config for echo server

Can it be closed?

Closed!


Virtualization Exception: Not Handling index = -1 in CreateAndRemoveContainers

private void CreateAndRemoveContainers()
{
var generator = Owner.ItemContainerGenerator;
var panel = VirtualizingPanel;
        if (!panel.IsFull && Items != null && panel.IsAttachedToVisualTree)
        {
            var memberSelector = Owner.MemberSelector;
            var index = NextIndex;
            var step = 1;

            while (!panel.IsFull)
            {
                if (index >= ItemCount)
                {
                    // We can fit more containers in the panel, but we're at the end of the
                    // items. If we're scrolled to the top (FirstIndex == 0), then there are
                    // no more items to create. Otherwise, go backwards adding containers to
                    // the beginning of the panel.
                    if (FirstIndex == 0)
                    {
                        break;
                    }
                    else
                    {
                        index = FirstIndex - 1;
                        step = -1;
                    }
                }

                var materialized = generator.Materialize(index, Items.ElementAt(index), memberSelector);

                if (step == 1)
                {
                    panel.Children.Add(materialized.ContainerControl);
                }
                else
                {
                    panel.Children.Insert(0, materialized.ContainerControl);
                }

                index += step;
            }

            if (step == 1)
            {
                NextIndex = index;
            }
            else
            {
                NextIndex = ItemCount;
                FirstIndex = index + 1;
            }
        }

        if (panel.OverflowCount > 0)
        {
            RemoveContainers(panel.OverflowCount);
        }
    }

I get an exception in generator.Materialize because sometimes index = -1
Perhaps this should be a valid case? Not sure what leads to this, I made a quick test of an if statement around it, and seems to fix my problem, but without an expert eye on this I wouldnt know if it was ok to fix like that.

I'm experiencing that problem also from time to time

No, index shouldn't ever be -1 there. That's a bug. If this is the same as #589 it should be easy enough to fix.

@grokys hm not sure, it might be same. It happens in my intellisense control when I'm trying fast casing the listbox to be hidden and shown rapidly.
not sure exactly what is causing it, other than that, if that gives a clue?

Ok this appears to have been resolved with recent fixes in related issues.


Custom merge operations?

I'm working on a Graph network which at various points has to multiply or divide the outputs of two preceding nodes. It looks like I can sum or concatenate the outputs of  two such nodes using the merge_mode and inputs options, but there is no clear way to perform any other binary functions. Am I missing an alternative or is this a limitation in the current syntax of Keras?
Thanks!
ps. oh, and using log and exp activations to perform multiplications using the merge_mode=sum also seems to run into trouble (no complex number support?). Not that this is an elegant solution in any way ...

It's not a perfect solution, but it'll work for now.
In the attached gist you can find code that implements layers with multi-input support and a NGraph model which can handle connecting them. Note that this worked for me on the old version of keras (without shape inference). I'll update it soon and put on my fork, but I think Keras' devs will soon have their own support for such things.
gist

Well, alternatively you could just add few lines to the Graph model to support dividing as an additional merge_mode.


Problem with handleFocus

We're a facing a problem when the component is mounting and it triggers autofocus, on file lib/index.js:210
var selectionEnd = this.theInput.value.length - this.props.suffix.length;

It's causing the following error:
Uncaught TypeError: Cannot read property 'value' of undefined
    at CurrencyInput.handleFocus (***)

Can you provide some sample code to reproduce this?

<CurrencyInput
  {...props.inputProps}
  name="someName"
  value="1234.56"
  allowNegative
  decimalSeparator=","
  thousandSeparator="."
  precision="2"
  className="pp-input"
  onChangeEvent={e => props.input.onChange(handleOnChange(e))}
/>

Where props.input.onChange is from Redux Form and handleOnChange clean up the masked value to store in Redux Form.
The scenario is:

The component is mounted as plain text
User clicks on a edit button
The component is mounted as CurrencyInput with autoFocus

At this point the error described occurs on Console.

Hey guys,
I am having a kind of focus problem, but only in a mobile version (I've tested in Safari and Chrome for iOS).
See the video: https://youtu.be/fTpESlAdSFs
I have 3  in the same page. The last one is highlighted since the page is opened. Every time I choose a different one above and hit a number, the code jumped focusing the last one.
<Row gutter={16}> 	<Col lg={8} md={8} sm={24} xs={24}> 		<Form.Item label="Balance"> 			{getFieldDecorator('balanceAmount')( 				<CurrencyInput 					name="balanceAmount" 					prefix="$" 					decimalSeparator="." 					thousandSeparator="," 					className="ant-input" 					pattern="[0-9]*" 				/> 			)} 		</Form.Item> 	</Col> 	<Col lg={8} md={8} sm={24} xs={24}> 		<Form.Item label="Bonus"> 			{getFieldDecorator('bonusAmount')( 				<CurrencyInput 					name="bonusAmount" 					prefix="$" 					decimalSeparator="." 					thousandSeparator="," 					className="ant-input" 					pattern="[0-9]*" 				/> 			)} 		</Form.Item> 	</Col> 	<Col lg={8} md={8} sm={24} xs={24}> 		<Form.Item label="Special Fund"> 			{getFieldDecorator('specialFund')( 				<CurrencyInput 					name="specialFund" 					prefix="$" 					decimalSeparator="." 					thousandSeparator="," 					className="ant-input" 					pattern="[0-9]*" 				/> 			)} 		</Form.Item> 	</Col> </Row>
Any thoughts?
Thank you.


Conditional Proxies overrides based on backend response code

Add the ability for a proxy to have match conditions for both request and response content. This will likely require a way to correlate multiple response matches & overrides to one request match.

@mattchenderson has some concerns about this. Discuss with him.

I just came across a use case for which this would be useful. My backend system (Azure Blob Storage) leaks the request URI in case of a 404 response, which reveals internal information. I would like to avoid leaking this information.
Match conditions on the response could help with this.


Speed up from_bitmap_bytes, and use less unsafe

Directly create an array/bitmap store based on the count of bits rather than always making a bitmap, and converting to the correct store after
Use u64 words to count bits and enumerate bits (this appears to make a pretty big difference)
Store in little endian, then just fixup any touched words
Only use unsafe to reinterpret a whole bitmap container as bytes, everything else is safe
Allow adding bytes up to the last possible offset

On my machine (an m1 mac), this speeds up the benchmarks by between 16%-120% (probably based on how sparse the data is)
See RoaringBitmap/roaring-rs#288

@Dr-Emann I have just reviewed your code.

It is surprising that using u64::count_ones  speeds up so much. Nice.
Defining from_lsb0_bytes for each store makes much sense.
Converting endians after writing bytes seems to be good, making code clearer.


Send some more options to cowboy_websocket

In some situations the validate_utf8 option is very useful when switched to false.
E.g. when working with buggy clients.
Also I added sending of active_n option.

Looks great!


docs(guide/Introduction): Edits to the introduction

What kind of change does this PR introduce? (Bug fix, feature, docs update, ...)
Docs update
Other information:
Edits aimed at improving clarity of expression, particularly as relates to the motivation and philosophy underlying the design of AngularJS.

Thx for submitting this PR.
Yet, I don't think that replacing most of the previous points is a good change. I am pretty sure each and everyone one of us could come up with a very different text. I think we should work more towards enhancing what's already there, instead of replacing big chunks of it (unless there is a substantial and objective improvement).
(We also what @googlebot said about the CLA :smiley:)

Closing due to no CLA


XOutput doesn't recognize my controller.

I don't know what is going on, the own COMPUTER recognizes my controller but the XOutput don't, I have already installed the viGem but my controller pluged on PC doen't appear in DIRECTINPUT in your software.

I have the same issue, older versions of the file work, but just once, and then stops recognizing my controller


Enhancement/ftrack family mapping settings

Brief description
Added missing Family Mapping settings

Aside of allowing customizing the family mapping this also now allows to enable/disable the Plugin itself in admin settings, correct?
Is that something we want or could that cause problems if someone would disable the IntegrateFtrackInstance plugin?

Yes, there's an enable/disable switch as well. All other FTrack plugin settings setup this way, I followed them. But of course it can be removed.

Maybe @mkolar or @iLLiCiTiT can give us some guide?

I am not sure about disabling IntegrateFtrackInstance. I guess it is integral part of ftrack module and you either want the whole ftrack module enabled or have it completely disabled? Of course, this cannot be done per project level so with this you could control it on project level, but the use case would be pretty niche I suppose.

There should not be enable checkbox on this plugin. If you want to disable ftrack per project you can "not add" ftrack families in Collect Ftrack Family.

Roger, checkbox removed and added more defaults, now all current OpenPype families are mapped by default. The exception is "Render", but it is never synced to FTrack.

Please don't use tabs but 4 spaces and do not save default values modifying the file but use settings tool to do so.

Done.

:) Check changes you've made in this PR. You've added space after all keys in the schema {"key" : "value"} which should be {"key": "value"} this is most likely style agreement we have and would be good to keep it consistent (and not change). Also you've manually saved the file with default values. I know that because of the change of last line in openpype/settings/defaults/project_settings/ftrack.json. If possible don't change json files with default values manually.

Yep, sorry for the formatting changes. I actually saved the defaults from the settings editor, but copy/pasted the content of the file into the github editor to commit. I'll install some IDE soon to do proper commits, I just wanted to create a quick patch for now. I hope the formatting is ok now.


fix drop index

Typo in if-statement if the index is present or not

Codecov Report

Merging #128 (224499e) into master (c4a9a4f) will increase coverage by 0.24%.
The diff coverage is 0.00%.

@@            Coverage Diff             @@
##           master     #128      +/-   ##
==========================================
+ Coverage   45.68%   45.93%   +0.24%
==========================================
  Files          21       21
  Lines        3248     3248
==========================================
+ Hits         1484     1492       +8
+ Misses       1662     1652      -10
- Partials      102      104       +2

Impacted Files
Coverage Δ

spanddl/database.go
52.80% <0.00%> (+8.98%)
:arrow_up:


Added "IP address" action that says Pi's IP

This PR is split off from #149:
@drigz commented on #138 that a PR to add this action would be welcome. There was a PR to add this a few days ago that was killed by the submitter, so I thought I would try to revive it. I initially had issues getting the "ip address" command to work, but capitalizing "IP" converting the command string to lowercase made Assistant recognize it.

Thanks for splitting the changes up!


Country Pages Active Operations Map and Table

Changes

Add a country variant to ActiveOperationsMap and AppealsTable
Use ActiveOperationsMap and AppealsTable in country pages

This PR doesn't introduce:

[x] typos
[x] conflict markers
[x] unwanted comments
[x] temporary files, auto-generated files or secret keys
[x] console.log meant for debugging
[x] codegen errors

Let's also add a filter by country in "View all ..." link


Fixed missing limits include for Windows, thanks @sebastianbaginski

If you're interested, AppVeyor can be used to do what Travis does, but under Windows. I'm still trying to figure out how to use it myself, but once I do, I could make another pull request with a .yml file for it, if you want.

Thanks :star2:
AppVeyor looks interesting, I'm curious how well it would integrate with MinGW.

Not sure if you meant to merge or close this one....
Anyway, yeah, that's what I'm trying to figure out, too. It should work, but I haven't been able to build anything complete yet. I'm looking into MinGW-w64 because it comes with packages for threading that are missing in the default MinGW, but they may already be there on AppVeyor (which comes preinstalled with MinGW, but I haven't figured out which packages yet).


why did not run？

very useful funtion！
but it can't work！
hope tu update the plugin，thank

Obsidian API looks like it has had breaking change. Looking at source, this plugin is calling library methods wrong, probably a result of this. As it stands, this plugin does not work. I have a reimplementation of this here.

Obsidian API looks like it has had breaking change. Looking at source, this plugin is calling library methods wrong, probably a result of this. As it stands, this plugin does not work. I have a reimplementation of this here.

so nice of you!wish you success!发自我的华为手机-------- 原始邮件 --------发件人： Oliver Andrews<EMAIL_ADDRESS>2021年1月4日周一 清晨6:26收件人： shichongrui/obsidian-rollover-daily-todos<EMAIL_ADDRESS>daytang<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>  题： Re: [shichongrui/obsidian-rollover-daily-todos] why did not run？ (#4)
Obsidian API looks like it has had breaking change. Looking at source, this plugin is calling library methods wrong, probably a result of this. As it stands, this plugin does not work. I have a reimplementation of this here.
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

so nice of you!wish you success!发自我的华为手机-------- 原始邮件 --------发件人： Oliver Andrews<EMAIL_ADDRESS>2021年1月4日周一 清晨6:26收件人： shichongrui/obsidian-rollover-daily-todos<EMAIL_ADDRESS>daytang<EMAIL_ADDRESS>Author<EMAIL_ADDRESS>  题： Re: [shichongrui/obsidian-rollover-daily-todos] why did not run？ (#4)
Obsidian API looks like it has had breaking change. Looking at source, this plugin is calling library methods wrong, probably a result of this. As it stands, this plugin does not work. I have a reimplementation of this here.
—You are receiving this because you authored the thread.Reply to this email directly, view it on GitHub, or unsubscribe.

Obsidian API looks like it has had breaking change. Looking at source, this plugin is calling library methods wrong, probably a result of this. As it stands, this plugin does not work. I have a reimplementation of this here.

Obsidian API looks like it has had breaking change. Looking at source, this plugin is calling library methods wrong, probably a result of this. As it stands, this plugin does not work. I have a reimplementation of this here.

Closing this issue in favor of #3 as it is the same issue.

Closing this issue in favor of #3 as it is the same issue.


Updated the OHS template to handle new OHS base images

Updated the OHS template to handle new OHS base images

Updated the vmSizeSelect parameter to vmSize
Removed the data disk option as new OHS base images are using OS disk only
Updated the JDK version and keytool path as per latest OHS base VM images

Resolved issue https://github.com/oracle/weblogic-azure/issues/226


fix the phone number format

What kind of change does this PR introduce?

[ ] Bug Fix
[ ] Documentation change
[ ] Added new company
[x] Other(s)

Why was this change needed?

Other information

LGTM! Make sure to check CONTRIBUTING.md for contribution guidelines. Thank you for your contribution @aayush105
Sure I will be following the CONTRIBUTING.md from now onward and please review correctly before merging from your team side as well. And could you please remove the invalid label from the 'feat: add Genese Solution' pull request? Your cooperation is greatly appreciated. Thank you!


slim resnet batchnorm missing

I just did a MWE of resnet v1 (see code below). However, when I inspect the graph in tensorboard, I could not see the batch norm layers.
import tensorflow as tf
import tensorflow.contrib.slim as slim
import tensorflow.contrib.slim.nets
import numpy as np

input = tf.placeholder(shape=[None, 224, 224, 3], dtype=tf.float32)
resnet = tf.contrib.slim.nets.resnet_v1.resnet_v1_50(input, 1000, is_training=True)
tf.summary.histogram("resnet", resnet[0])

init = tf.global_variables_initializer()
with tf.Session() as sess:
    sess.run(init)

    train_writer = tf.summary.FileWriter( './tflogs ', sess.graph)

    merge = tf.summary.merge_all()

    summary, out = sess.run([merge, resnet], feed_dict={input: np.random.random((2, 224, 224, 3))})

    train_writer.add_summary(summary)

You should use the resnet_arg_scope see
https://github.com/tensorflow/tensorflow/blob/9590c4c32dd4346ea5c35673336f5912c6072bf2/tensorflow/contrib/slim/python/slim/nets/resnet_v1.py#L43

input = tf.placeholder(shape=[None, 224, 224, 3], dtype=tf.float32)
with tf.contrib.slim.arg_scope(tf.contrib.slim.nets.resnet_v1. resnet_arg_scope()):
  resnet = tf.contrib.slim.nets.resnet_v1.resnet_v1_50(input, 1000, is_training=True)


Set C standard version to C11

arm-none-eabi-gcc (15:4.9.3+svn231177-1) 4.9.3 20150529 (prerelease) which is bundled with Ubuntu 16.04 defaults to ANSI C. ANSI C is missing a lot of features that are used in this codebase causing a lot of build errors and warnings.

Hey @antoneliasson , thanks for the patch. Actually we had it there in the beginning but because GCC version 5 defaults to C11. we removed it a while ago :smile: I will definitely merge it since it does not hurt, but this is the way we recommend to install ARM GCC toolchain on Ubuntu and keep track with the official project from Launchpad ( https://launchpad.net/gcc-arm-embedded ):
sudo add-apt-repository ppa:team-gcc-arm-embedded/ppa

sudo apt update

sudo apt install gcc-arm-embedded

arm-none-eabi-gcc --version

Thanks. I will probably install the newer toolchain later. I didn't bother to do so while setting up my development environment since I saw that a version was packaged for the Ubuntu version that I am using. As you say it doesn't hurt to be explicit and it may help those on a setup that is slightly different than the recommended one.

Yep, I agree with you. Thank you, Antone.


dvc: 3.53.1 -> 3.53.2, python312Packages.dvc-data: 3.15.2 -> 3.16.0

Description of changes
Closes #333739

Things done

Built on platform(s)

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

For non-Linux: Is sandboxing enabled in nix.conf? (See Nix manual)

[ ] sandbox = relaxed
[ ] sandbox = true

[ ] 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/)
24.11 Release Notes (or backporting 23.11 and 24.05 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

[ ] Fits CONTRIBUTING.md.

Add a :+1: reaction to pull requests you find important.

Result of nixpkgs-review pr 334222 run on x86_64-linux 1

22 packages built:

dvc (python312Packages.dvc)
dvc-with-remotes
dvc-with-remotes.dist
dvc.dist (python312Packages.dvc.dist)
python311Packages.dvc
python311Packages.dvc-data
python311Packages.dvc-data.dist
python311Packages.dvc-gdrive
python311Packages.dvc-gdrive.dist
python311Packages.dvc-hdfs
python311Packages.dvc-hdfs.dist
python311Packages.dvc.dist
python311Packages.dvclive
python311Packages.dvclive.dist
python312Packages.dvc-data
python312Packages.dvc-data.dist
python312Packages.dvc-gdrive
python312Packages.dvc-gdrive.dist
python312Packages.dvc-hdfs
python312Packages.dvc-hdfs.dist
python312Packages.dvclive
python312Packages.dvclive.dist


[Dockershim removal] move content of monitoring and security agents document to the markdown

/sig node
We discussed that moving content of https://docs.google.com/document/d/1ZFi4uKit63ga5sxEiZblfb-c23lFhvy6RXVPikS8wf0/edit# to https://kubernetes.io/docs/tasks/administer-cluster/migrating-from-dockershim/migrating-telemetry-and-security-agents/ would increase discoverability of the content. We need to make sure we only collect links to vendor docs, not specific instructions.

BTW, that new page needs to use the {{% thirdparty-content %}} shortcode.

can i work on it @sftim

/assign

/assign

/triage accepted

/milestone 1.24

I think we could postpone this 'til after the v1.24 release. Thoughts?

The content shown in https://docs.google.com/document/d/1ZFi4uKit63ga5sxEiZblfb-c23lFhvy6RXVPikS8wf0/edit# was added to the docs in PR #31469 and has been merged. I'm closing this issue.
/close

I thought the idea was to move specific agents information as well? I found that it is way less discoverable with the google doc link
/reopen

Dockershim removal work continues. Clearing milestone, this can be added to subsequent milestones if needed.
/milestone clear

/remove-lifecycle stale


[HOSTING-1001] Add environment-filter-utils permissions file

Description
https://issues.jenkins-ci.org/browse/HOSTING-1001
https://github.com/jenkinsci/environment-filter-utils-plugin

Submitter checklist for adding or changing permissions

Always

[x] Add link to plugin/component Git repository in description above

For a newly hosted plugin only

[x] Add link to resolved HOSTING issue in description above

For a new permissions file only

[x] Make sure the file is created in permissions/ directory
[x] artifactId (pom.xml) is used for name (permissions YAML file).
[x] groupId / artifactId (pom.xml) are correctly represented in path (permissions YAML file)
[x] Check that the file is named plugin-${artifactId}.yml for plugins

When adding new uploaders (this includes newly created permissions files)

[n/a] Make sure to @mention an existing maintainer to confirm the permissions request, if applicable
[x] Use the Jenkins community (LDAP) account name in the YAML file, not the GitHub account name
[n/a] Make sure to @mention the users being added so their GitHub account names are known if they require GitHub merge access (see below).
[x] All newly added users have logged in to Artifactory at least once

Reviewer checklist (not for requesters!)

[ ] Check this if newly added person also needs to be given merge permission to the GitHub repo (please @ the people/person with their GitHub username in this issue as well). If needed, it can be done using an IRC Bot command
[ ] Check that the $pluginId Developers team has Admin permissions while granting the access.
[ ] In the case of plugin adoption, ensure that the Jenkins Jira default assignee is either removed or changed to the new maintainer.
[ ] If security contacts are changed (this includes add/remove), ping the security officer (currently @daniel-beck) in this pull request. If an email contact is changed, wait for approval from the security officer.

There are IRC Bot commands for it

Once merged, please delete origin branch. Thanks!


Speech recognition API JavaScript binding problem on Chrome

Steps to Reproduce

Run flutter create bug.
Replace main.dart with this content

minimal code sample
import 'package:flutter/material.dart';
import 'dart:html' as html;

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key? key, required this.title}) : super(key: key);
  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;
  String _recognized = '';
  html.SpeechRecognition? _webSpeech;

  @override
  void initState() {
    super.initState();
    if (html.SpeechRecognition.supported) {
      _webSpeech = html.SpeechRecognition();
    }
  }

  void _incrementCounter() {
    _webSpeech?.stop();
    _webSpeech?.onResult.listen((speechEvent) => _onResult(speechEvent));
    _webSpeech?.interimResults = true;
    _webSpeech?.continuous = true;
    _webSpeech?.start();
    setState(() {
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headline4,
            ),
            Text(
              'You said: $_recognized',
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }

  void _onResult(html.SpeechRecognitionEvent event) {
    var results = event.results;
    if (null == results) return;
    for (html.SpeechRecognitionResult recognitionResult in results) {
      if (null == recognitionResult.length || recognitionResult.length == 0) {
        continue;
      }
      for (var altIndex = 0; altIndex < recognitionResult.length!; ++altIndex) {
        html.SpeechRecognitionAlternative alt =
            recognitionResult.item(altIndex);
        if (null != alt.transcript && null != alt.confidence) {
          setState(() {
            _recognized = alt.transcript!;
          });
        }
      }
    }
  }
}

Run the app on Chrome, make sure you have a microphone on your laptop / headset / etc. (I was using Chrome Version 91.0.4472.114 (Official Build) (x86_64) on Big Sur 11.4)
Click the '+' button in the sample app
Accept the Chrome browser request to allow the microphone to be used
Say something into your microphone
The app will crash

Expected results:
The words you spoke should appear on screen when they are recognized by the Chrome speech recognition API.
Actual results:
An exception was caught in the IDE:
Exception has occurred.
JSNoSuchMethodError (NoSuchMethodError: tried to call a non-function, such as null: 'recognitionResult[$item]')

That's at line 92-93:
html.SpeechRecognitionAlternative alt =
            recognitionResult.item(altIndex);

I also tried debugging in Chrome developer tools. Everything looks right, the SpeechRecognitionResult does have item as one of its methods. In JS in the console in the debugger I can do result.item(0) and see the expected SpeechRecognitionAlternative value that shows the words that were recognized. Similarly result("item") works fine. It seems like there's something wrong with the definition of $item but I looked at it and it seems to match the definitions for other speech API functions used in the same file, like $onResult for example.
This was working in previous versions of Flutter.

Logs

[  +81 ms] executing: sysctl hw.optional.arm64
[  +17 ms] Exit code 1 from: sysctl hw.optional.arm64
[        ] sysctl: unknown oid 'hw.optional.arm64'
[   +7 ms] executing: [/Users/stephen.owens/Documents/dev/flutter/sdk/flutter/] git -c log.showSignature=false log -n 1 --pretty=format:%H
[  +19 ms] Exit code 0 from: git -c log.showSignature=false log -n 1 --pretty=format:%H
[        ] d79295af24c3ed621c33713ecda14ad196fd9c31
[        ] executing: [/Users/stephen.owens/Documents/dev/flutter/sdk/flutter/] git tag --points-at d79295af24c3ed621c33713ecda14ad196fd9c31
[  +23 ms] Exit code 0 from: git tag --points-at d79295af24c3ed621c33713ecda14ad196fd9c31
[        ] 2.2.2
[   +6 ms] executing: [/Users/stephen.owens/Documents/dev/flutter/sdk/flutter/] git rev-parse --abbrev-ref --symbolic @{u}
[  +12 ms] Exit code 0 from: git rev-parse --abbrev-ref --symbolic @{u}
[        ] origin/stable
[        ] executing: [/Users/stephen.owens/Documents/dev/flutter/sdk/flutter/] git ls-remote --get-url origin
[  +12 ms] Exit code 0 from: git ls-remote --get-url origin
[        ] https://github.com/flutter/flutter.git
[  +90 ms] executing: [/Users/stephen.owens/Documents/dev/flutter/sdk/flutter/] git rev-parse --abbrev-ref HEAD
[  +13 ms] Exit code 0 from: git rev-parse --abbrev-ref HEAD
[        ] stable
[   +5 ms] executing: sw_vers -productName
[  +16 ms] Exit code 0 from: sw_vers -productName
[        ] macOS
[        ] executing: sw_vers -productVersion
[  +12 ms] Exit code 0 from: sw_vers -productVersion
[        ] 11.4
[        ] executing: sw_vers -buildVersion
[  +13 ms] Exit code 0 from: sw_vers -buildVersion
[        ] 20F71
[  +60 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterWebSdk' is not required, skipping update.
[   +3 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +42 ms] executing: /Users/stephen.owens/Library/Android/sdk/platform-tools/adb devices -l
[  +11 ms] executing: sysctl hw.optional.arm64
[   +4 ms] Exit code 1 from: sysctl hw.optional.arm64
[        ] sysctl: unknown oid 'hw.optional.arm64'
[        ] executing: xcrun xcodebuild -version
[ +109 ms] Exit code 0 from: xcrun xcodebuild -version
[   +1 ms] Xcode 12.5.1
           Build version 12E507
[   +3 ms] executing: xcrun xcdevice list --timeout 2
[   +3 ms] xcrun simctl list --json devices
[        ] executing: xcrun simctl list --json devices
[  +43 ms] List of devices attached
[ +181 ms] {
             "devices" : {
             }
           }
[+2380 ms] [
           ]
[   +7 ms] Artifact Instance of 'AndroidGenSnapshotArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'AndroidInternalBuildArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'IOSEngineArtifacts' is not required, skipping update.
[   +1 ms] Artifact Instance of 'WindowsEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxEngineArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'LinuxFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'MacOSFuchsiaSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerSDKArtifacts' is not required, skipping update.
[        ] Artifact Instance of 'FlutterRunnerDebugSymbols' is not required, skipping update.
[  +69 ms] Skipping pub get: version match.
[  +95 ms] Generating /Users/stephen.owens/Documents/dev/csd/csd-flutter-plugins/stt_sample/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[ +204 ms] Launching lib/main.dart on Chrome in debug mode...
[  +95 ms] Updating assets
[  +58 ms] Waiting for connection from debug service on Chrome...
[  +67 ms] <- reset
[   +6 ms] /Users/stephen.owens/Documents/dev/flutter/sdk/flutter/bin/cache/dart-sdk/bin/dart --disable-dart-dev /Users/stephen.owens/Documents/dev/flutter/sdk/flutter/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root /Users/stephen.owens/Documents/dev/flutter/sdk/flutter/bin/cache/flutter_web_sdk/ --incremental --target=dartdevc --debugger-module-names --experimental-emit-debug-metadata -DFLUTTER_WEB_AUTO_DETECT=true --output-dill /var/folders/z9/n2qxppwx25ldw1xmstdf_lh00000gq/T/flutter_tools.2jGAbA/flutter_tool.UMPn1U/app.dill --libraries-spec file:///Users/stephen.owens/Documents/dev/flutter/sdk/flutter/bin/cache/flutter_web_sdk/libraries.json --packages /Users/stephen.owens/Documents/dev/csd/csd-flutter-plugins/stt_sample/.dart_tool/package_config.json -Ddart.vm.profile=false -Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-root /var/folders/z9/n2qxppwx25ldw1xmstdf_lh00000gq/T/flutter_tools.2jGAbA/flutter_tools.hbaNCC --filesystem-scheme org-dartlang-app --initialize-from-dill build/b1b715402d823b7fd5c2b68d2edcb2ce.cache.dill.track.dill --platform file:///Users/stephen.owens/Documents/dev/flutter/sdk/flutter/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk_sound.dill --sound-null-safety
[   +7 ms] <- compile org-dartlang-app:/web_entrypoint.dart
[+13443 ms] Waiting for connection from debug service on Chrome... (completed in 13.5s)
[        ] Synced 28.3MB.
[        ] <- accept
[        ] Caching compiled dill
[  +75 ms] Using Google Chrome 91.0.4472.164

[+1228 ms] [CHROME]:
[   +1 ms] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:52709/devtools/browser/3a492468-4290-4b26-abab-40a633f43716
[ +877 ms] DwdsInjector: Received request for entrypoint at http://localhost:52688/main_module.bootstrap.js
[   +6 ms] MetadataProvider: Loading debug metadata...
[  +13 ms] MetadataProvider: Loaded debug metadata (sound null safety)
[   +6 ms] DwdsInjector: Injected debugging metadata for entrypoint at http://localhost:52688/main_module.bootstrap.js
[+1164 ms] ChromeProxyService: Initializing expression compiler for main_module.bootstrap.js with sound null safety: true
[  +57 ms] DevHandler: Debug service listening on ws://<IP_ADDRESS>:52727/VkSzb2nNtGs=/ws

[  +20 ms] This app is linked to the debug service: ws://<IP_ADDRESS>:52727/VkSzb2nNtGs=/ws
[   +6 ms] Debug service listening on ws://<IP_ADDRESS>:52727/VkSzb2nNtGs=/ws
[        ] 💪 Running with sound null safety 💪
[   +2 ms] 🔥  To hot restart changes while running, press "r" or "R".
[        ] For a more detailed help message, press "h". To quit, press "q".
[+32635 ms] TypeError: recognitionResult[$item] is not a function
                at main._MyHomePageState.new.[_onResult] (http://localhost:52688/packages/stt_sample/main.dart.lib.js:500:45)
                at http://localhost:52688/packages/stt_sample/main.dart.lib.js:478:88
                at Object._checkAndCall (http://localhost:52688/dart_sdk.js:5246:16)
                at Object.dcall (http://localhost:52688/dart_sdk.js:5251:17)
                at SpeechRecognition.<anonymous> (http://localhost:52688/dart_sdk.js:100646:100)
[+1092 ms] TypeError: recognitionResult[$item] is not a function
               at main._MyHomePageState.new.[_onResult] (http://localhost:52688/packages/stt_sample/main.dart.lib.js:500:45)
               at http://localhost:52688/packages/stt_sample/main.dart.lib.js:478:88
               at Object._checkAndCall (http://localhost:52688/dart_sdk.js:5246:16)
               at Object.dcall (http://localhost:52688/dart_sdk.js:5251:17)
               at SpeechRecognition.<anonymous> (http://localhost:52688/dart_sdk.js:100646:100)
[ +710 ms] TypeError: recognitionResult[$item] is not a function
               at main._MyHomePageState.new.[_onResult] (http://localhost:52688/packages/stt_sample/main.dart.lib.js:500:45)
               at http://localhost:52688/packages/stt_sample/main.dart.lib.js:478:88
               at Object._checkAndCall (http://localhost:52688/dart_sdk.js:5246:16)
               at Object.dcall (http://localhost:52688/dart_sdk.js:5251:17)
               at SpeechRecognition.<anonymous> (http://localhost:52688/dart_sdk.js:100646:100)
[ +595 ms] TypeError: recognitionResult[$item] is not a function
               at main._MyHomePageState.new.[_onResult] (http://localhost:52688/packages/stt_sample/main.dart.lib.js:500:45)
               at http://localhost:52688/packages/stt_sample/main.dart.lib.js:478:88
               at Object._checkAndCall (http://localhost:52688/dart_sdk.js:5246:16)
               at Object.dcall (http://localhost:52688/dart_sdk.js:5251:17)
               at SpeechRecognition.<anonymous> (http://localhost:52688/dart_sdk.js:100646:100)
[ +608 ms] TypeError: recognitionResult[$item] is not a function
               at main._MyHomePageState.new.[_onResult] (http://localhost:52688/packages/stt_sample/main.dart.lib.js:500:45)
               at http://localhost:52688/packages/stt_sample/main.dart.lib.js:478:88
               at Object._checkAndCall (http://localhost:52688/dart_sdk.js:5246:16)
               at Object.dcall (http://localhost:52688/dart_sdk.js:5251:17)
               at SpeechRecognition.<anonymous> (http://localhost:52688/dart_sdk.js:100646:100)
[ +105 ms] TypeError: recognitionResult[$item] is not a function
               at main._MyHomePageState.new.[_onResult] (http://localhost:52688/packages/stt_sample/main.dart.lib.js:500:45)
               at http://localhost:52688/packages/stt_sample/main.dart.lib.js:478:88
               at Object._checkAndCall (http://localhost:52688/dart_sdk.js:5246:16)
               at Object.dcall (http://localhost:52688/dart_sdk.js:5251:17)
               at SpeechRecognition.<anonymous> (http://localhost:52688/dart_sdk.js:100646:100)
[+1085 ms] TypeError: recognitionResult[$item] is not a function
               at main._MyHomePageState.new.[_onResult] (http://localhost:52688/packages/stt_sample/main.dart.lib.js:500:45)
               at http://localhost:52688/packages/stt_sample/main.dart.lib.js:478:88
               at Object._checkAndCall (http://localhost:52688/dart_sdk.js:5246:16)
               at Object.dcall (http://localhost:52688/dart_sdk.js:5251:17)
               at SpeechRecognition.<anonymous> (http://localhost:52688/dart_sdk.js:100646:100)
[+10432 ms] DevHandler: Stopped debug service on ws://<IP_ADDRESS>:52725

[ +993 ms] Application finished.
[   +5 ms] "flutter run" took 68,608ms.
[ +131 ms] ensureAnalyticsSent: 129ms
[   +1 ms] Running shutdown hooks
[        ] Shutdown hooks complete
[        ] exiting with code 0

flutter analyze
Analyzing stt_sample...

   info • Avoid using web-only libraries outside Flutter web plugin packages • lib/main.dart:2:1 •
          avoid_web_libraries_in_flutter

1 issue found. (ran in 2.9s)

I understand that advice, but I'm only doing this to create a small example to share. My actual use case is for a plugin.

I've also tried it in 2.2.3 with the same result.
[✓] Flutter (Channel stable, 2.2.2, on macOS 11.4 20F71 darwin-x64, locale en-CA)
    • Flutter version 2.2.2 at /Users/stephen.owens/Documents/dev/flutter/sdk/flutter
    • Framework revision d79295af24 (5 weeks ago), 2021-06-11 08:56:01 -0700
    • Engine revision 91c9fc8fe0
    • Dart version 2.13.3

[!] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
    • Android SDK at /Users/stephen.owens/Library/Android/sdk
    • Platform android-30, build-tools 30.0.2
    • ANDROID_HOME = /Users/stephen.owens/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    ✗ Android license status unknown.
      Run `flutter doctor --android-licenses` to accept the SDK licenses.
      See https://flutter.dev/docs/get-started/install/macos#android-setup for more details.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5.1, Build version 12E507
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] IntelliJ IDEA Community Edition (version 2017.2.5)
    • IntelliJ at /Applications/IntelliJ IDEA CE.app
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart

[✓] VS Code (version 1.58.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.24.0

[✓] Connected device (3 available)
    • Chrome (web)                       • chrome                               • web-javascript • Google Chrome 91.0.4472.164

! Doctor found issues in 1 category.

Hi @sowens-csd
Thanks for filing the issue, I can reproduce the issue on multiple platforms using Edge and Chrome.
Used the following minimal code sample

minimal code sample
import 'package:flutter/material.dart';
import 'dart:html' as html;

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key? key, required this.title}) : super(key: key);
  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;
  String _recognized = '';
  html.SpeechRecognition? _webSpeech;

  @override
  void initState() {
    super.initState();
    if (html.SpeechRecognition.supported) {
      _webSpeech = html.SpeechRecognition();
    }
  }

  void _incrementCounter() {
    _webSpeech?.stop();
    _webSpeech?.onResult.listen((speechEvent) => _onResult(speechEvent));
    _webSpeech?.interimResults = true;
    _webSpeech?.continuous = true;
    _webSpeech?.start();
    setState(() {
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headline4,
            ),
            Text(
              'You said: $_recognized',
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }

  void _onResult(html.SpeechRecognitionEvent event) {
    var results = event.results;
    if (null == results) return;
    for (html.SpeechRecognitionResult recognitionResult in results) {
      if (null == recognitionResult.length || recognitionResult.length == 0) {
        continue;
      }
      for (var altIndex = 0; altIndex < recognitionResult.length!; ++altIndex) {
        html.SpeechRecognitionAlternative alt =
            recognitionResult.item(altIndex);
        if (null != alt.transcript && null != alt.confidence) {
          setState(() {
            _recognized = alt.transcript!;
          });
        }
      }
    }
  }
}

Logs

logs
[        ]     |     },
[        ]     |     {
[        ]     |       "name": "typed_data",
[        ]     |       "rootUri": "file:///Users/tahatesser/.pub-cache/hosted/pub.dartlang.org/typed_data-1.3.0",
[        ]     |       "packageUri": "lib/",
[        ]     |       "languageVersion": "2.12"
[        ]     |     },
[        ]     |     {
[        ]     |       "name": "vector_math",
[        ]     |       "rootUri": "file:///Users/tahatesser/.pub-cache/hosted/pub.dartlang.org/vector_math-2.1.0",
[        ]     |       "packageUri": "lib/",
[        ]     |       "languageVersion": "2.12"
[        ]     |     },
[        ]     |     {
[        ]     |       "name": "stable_flutter",
[        ]     |       "rootUri": "../",
[        ]     |       "packageUri": "lib/",
[        ]     |       "languageVersion": "2.12"
[        ]     |     }
[        ]     |   ],
[        ]     |   "generated": "2021-07-19T15:37:57.892693Z",
[        ]     |   "generator": "pub",
[        ]     |   "generatorVersion": "2.14.0-321.0.dev"
[        ]     | }
[  +86 ms] Running "flutter pub get" in stable_flutter... (completed in 1,755ms)
[ +172 ms] Generating
/Users/tahatesser/StudioProjects/stable_flutter/android/app/src/main/java/io/flutter/plugins/GeneratedPluginRegistrant.java
[ +167 ms] Launching lib/main.dart on Chrome in debug mode...
[ +169 ms] Updating assets
[ +120 ms] Waiting for connection from debug service on Chrome...
[  +86 ms] <- reset
[   +9 ms] /Users/tahatesser/Code/flutter_master/bin/cache/dart-sdk/bin/dart --disable-dart-dev
/Users/tahatesser/Code/flutter_master/bin/cache/artifacts/engine/darwin-x64/frontend_server.dart.snapshot --sdk-root
/Users/tahatesser/Code/flutter_master/bin/cache/flutter_web_sdk/ --incremental --target=dartdevc --debugger-module-names
--experimental-emit-debug-metadata -DFLUTTER_WEB_AUTO_DETECT=true --output-dill
/var/folders/2c/0n3lcxpn4s14s3t7jcgg5kmh0000gn/T/flutter_tools.paMVPk/flutter_tool.FFAWeN/app.dill --libraries-spec
file:///Users/tahatesser/Code/flutter_master/bin/cache/flutter_web_sdk/libraries.json --packages
/Users/tahatesser/StudioProjects/stable_flutter/.dart_tool/package_config.json -Ddart.vm.profile=false
-Ddart.vm.product=false --enable-asserts --track-widget-creation --filesystem-root
/var/folders/2c/0n3lcxpn4s14s3t7jcgg5kmh0000gn/T/flutter_tools.paMVPk/flutter_tools.tbEhm4 --filesystem-scheme
org-dartlang-app --initialize-from-dill build/b1b715402d823b7fd5c2b68d2edcb2ce.cache.dill.track.dill --platform
file:///Users/tahatesser/Code/flutter_master/bin/cache/flutter_web_sdk/kernel/flutter_ddc_sdk_sound.dill --sound-null-safety
[  +11 ms] <- compile org-dartlang-app:/web_entrypoint.dart
[+16213 ms] Waiting for connection from debug service on Chrome... (completed in 16.3s)
[   +1 ms] Synced 26.1MB.
[        ] <- accept
[        ] Caching compiled dill
[ +103 ms] Using Google Chrome 91.0.4472.164

[  +86 ms] executing: sysctl hw.optional.arm64
[   +6 ms] Exit code 1 from: sysctl hw.optional.arm64
[        ] sysctl: unknown oid 'hw.optional.arm64'
[ +632 ms] [CHROME]:
[   +1 ms] [CHROME]:DevTools listening on ws://<IP_ADDRESS>:54590/devtools/browser/135bb936-6eed-4b87-8123-befa5035f6a4
[+1424 ms] DwdsInjector: Received request for entrypoint at http://localhost:54575/main_module.bootstrap.js
[  +10 ms] MetadataProvider: Loading debug metadata...
[  +29 ms] MetadataProvider: Loaded debug metadata (sound null safety)
[   +8 ms] DwdsInjector: Injected debugging metadata for entrypoint at http://localhost:54575/main_module.bootstrap.js
[+1677 ms] ChromeProxyService: Initializing expression compiler for main_module.bootstrap.js with sound null safety: true
[  +82 ms] DevHandler: Debug service listening on ws://<IP_ADDRESS>:54623/hREkLc9mFWs=/ws

[  +29 ms] This app is linked to the debug service: ws://<IP_ADDRESS>:54623/hREkLc9mFWs=/ws
[  +12 ms] Debug service listening on ws://<IP_ADDRESS>:54623/hREkLc9mFWs=/ws
[        ] 💪 Running with sound null safety 💪
[   +5 ms] 🔥  To hot restart changes while running, press "r" or "R".
[        ] For a more detailed help message, press "h". To quit, press "q".
[   +1 ms] An Observatory debugger and profiler on Chrome is available at: http://<IP_ADDRESS>:54623/hREkLc9mFWs=
[ +454 ms] DevTools activation throttled until 2021-07-19 22:23:10.775619.
[+5338 ms] The Flutter DevTools debugger and profiler on Chrome is available at:
                    http://<IP_ADDRESS>:9103?uri=http://<IP_ADDRESS>:54623/hREkLc9mFWs=
[+4426 ms] TypeError: recognitionResult[$item] is not a function
                        at main._MyHomePageState.new.[_onResult]
(http://localhost:54575/packages/stable_flutter/main.dart.lib.js:247:45)
                        at http://localhost:54575/packages/stable_flutter/main.dart.lib.js:225:88
                        at Object._checkAndCall (http://localhost:54575/dart_sdk.js:5267:16)
                        at Object.dcall (http://localhost:54575/dart_sdk.js:5272:17)
                        at SpeechRecognition.<anonymous> (http://localhost:54575/dart_sdk.js:100969:100)
[ +556 ms] TypeError: recognitionResult[$item] is not a function
                        at main._MyHomePageState.new.[_onResult]
(http://localhost:54575/packages/stable_flutter/main.dart.lib.js:247:45)
                        at http://localhost:54575/packages/stable_flutter/main.dart.lib.js:225:88
                        at Object._checkAndCall (http://localhost:54575/dart_sdk.js:5267:16)
                        at Object.dcall (http://localhost:54575/dart_sdk.js:5272:17)
                        at SpeechRecognition.<anonymous> (http://localhost:54575/dart_sdk.js:100969:100)

stable
master

❌
❌

Check flutter doctor -v outputs for each channel below

flutter doctor -v
[✓] Flutter (Channel stable, 2.2.3, on macOS 12.0 21A5284e darwin-x64, locale en-GB)
    • Flutter version 2.2.3 at /Users/tahatesser/Code/flutter_stable
    • Framework revision f4abaa0735 (3 weeks ago), 2021-07-01 12:46:11 -0700
    • Engine revision 241c87ad80
    • Dart version 2.13.4

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/tahatesser/Code/SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/tahatesser/Code/SDK
    • Java binary at: /Users/tahatesser/Code/openjdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_292-b10)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5.1, Build version 12E507
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio
    • Android Studio at /Applications/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[✓] VS Code (version 1.58.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.24.0

[✓] Connected device (4 available)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E            • ios            • iOS
      14.6
    • iPhone 12 Pro (mobile) • 77C62AB9-8B71-43CF-BCAB-85B0A5B52F85 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-x64     • macOS
      12.0 21A5284e darwin-x64
    • Chrome (web)           • chrome                               • web-javascript • Google
      Chrome 91.0.4472.164

! Doctor found issues in 1 category.

[✓] Flutter (Channel master, 2.4.0-5.0.pre.87, on macOS 12.0 21A5284e darwin-x64, locale en-GB)
    • Flutter version 2.4.0-5.0.pre.87 at /Users/tahatesser/Code/flutter_master
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision e084e9d946 (2 days ago), 2021-07-17 12:00:21 -0700
    • Engine revision 14a9e9a50e
    • Dart version 2.14.0 (build 2.14.0-321.0.dev)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/tahatesser/Code/SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/tahatesser/Code/SDK
    • Java binary at: /Users/tahatesser/Code/openjdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (AdoptOpenJDK)(build 1.8.0_292-b10)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5.1, Build version 12E507
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[!] Android Studio
    • Android Studio at /Applications/Android Studio Preview.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    ✗ Unable to find bundled Java version.
    • Try updating or re-installing Android Studio.

[✓] VS Code (version 1.58.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.24.0

[✓] Connected device (4 available)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E            • ios            • iOS 14.6
      18F72
    • iPhone 12 Pro (mobile) • 77C62AB9-8B71-43CF-BCAB-85B0A5B52F85 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-14-5 (simulator)
    • macOS (desktop)        • macos                                • darwin-x64     • macOS 12.0
      21A5284e darwin-x64
    • Chrome (web)           • chrome                               • web-javascript • Google Chrome
      91.0.4472.164

! Doctor found issues in 1 category.

✅ : No Issue ❌: Issue reproduced
Can you please let me know which version of Fluter it used to work?

I just tested and was able to get It to wors in 2.0.6 and not in 2.2.0. HTHs

Hi @sowens-csd
Thank you so much, I can confirm 2.0.6 works and text is updated with speech

flutter doctor -v
[✓] Flutter (Channel stable, 2.0.6, on macOS 12.0 21A5284e darwin-x64, locale en-GB)
    • Flutter version 2.0.6 at /Users/tahatesser/Code/flutter
    • Framework revision 1d9032c7e1 (3 months ago), 2021-04-29 17:37:58 -0700
    • Engine revision 05e680e202
    • Dart version 2.12.3

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.3)
    • Android SDK at /Users/tahatesser/Code/SDK
    • Platform android-30, build-tools 30.0.3
    • ANDROID_HOME = /Users/tahatesser/Code/SDK
    • Java binary at: /Users/tahatesser/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/202.7486908/Android
      Studio.app/Contents/jre/jdk/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Xcode 12.5.1, Build version 12E507
    • CocoaPods version 1.10.1

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 4.2)
    • Android Studio at /Users/tahatesser/Library/Application Support/JetBrains/Toolbox/apps/AndroidStudio/ch-0/202.7486908/Android
      Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 11.0.8+10-b944.6916264)

[✓] VS Code (version 1.58.2)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.24.0

[✓] Connected device (3 available)
    • Taha’s iPhone (mobile) • 00008020-001059882212002E • ios            • iOS 14.6
    • macOS (desktop)        • macos                     • darwin-x64     • macOS 12.0 21A5284e darwin-x64
    • Chrome (web)           • chrome                    • web-javascript • Google Chrome 91.0.4472.164

• No issues found!

Are there any updates on this?

I can still reproduce this on Flutter 2.5.0.

I have bisected the commit that introduced bug in Flutter from 10th, 2021, bug was introduced in a dart roll into engine, which was then rolled into Flutter

good
bad

047dcc70de3b46edd9c943a6d15ca829fdadebd0
a0c70d890b73e2faefccacd31f5c4ab55f1c82b1

I'm working on a school project, and I am trying to get the speech-to-text working for dart. It seems like if I could find a way to roll back to older engine for now it would work? Is that correct? Could someone point me in the right direction on how to do that?

I can also confirm running into that problem with Flutter 2.5.3 and Chrome - Android emulation works fine
 Running with sound null safety  Debug service listening on ws://<IP_ADDRESS>:61980/DZKgesn4nCI=/ws TypeError: recognitionResult[$item] is not a function     at speech_to_text_web.SpeechToTextPlugin.new.[_onResult] (http://localhost:61938/packages/speech_to_text/speech_to_text_web.dart.lib.js:173:45)     at http://localhost:61938/packages/speech_to_text/speech_to_text_web.dart.lib.js:108:98     at Object._checkAndCall (http://localhost:61938/dart_sdk.js:5268:16)     at Object.dcall (http://localhost:61938/dart_sdk.js:5273:17)     at SpeechRecognition.<anonymous> (http://localhost:61938/dart_sdk.js:101824:100)

Any update on this issue? Seems like @TahaTesser did a bunch of good work to make this easy to find and fix. Hopefully that means a fix is already in some upcoming branch?

This needs a fix from Dart SDK, filed an issue https://github.com/dart-lang/sdk/issues/47779

Hi everyone
There is a workaround shared by https://github.com/dart-lang/sdk/issues/47779#issuecomment-985910452
Try this code sample below

workaround minimal code sample
import 'package:flutter/material.dart';
import 'dart:html' as html;
import 'dart:js_util' as js_util;

void main() {
  runApp(MyApp());
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(title: 'Flutter Demo Home Page'),
    );
  }
}

class MyHomePage extends StatefulWidget {
  MyHomePage({Key? key, required this.title}) : super(key: key);
  final String title;

  @override
  _MyHomePageState createState() => _MyHomePageState();
}

class _MyHomePageState extends State<MyHomePage> {
  int _counter = 0;
  String _recognized = '';
  html.SpeechRecognition? _webSpeech;

  @override
  void initState() {
    super.initState();
    if (html.SpeechRecognition.supported) {
      _webSpeech = html.SpeechRecognition();
    }
  }

  void _incrementCounter() {
    _webSpeech?.stop();
    _webSpeech?.onResult.listen((speechEvent) => _onResult(speechEvent));
    _webSpeech?.interimResults = true;
    _webSpeech?.continuous = true;
    _webSpeech?.start();
    setState(() {
      _counter++;
    });
  }

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text(widget.title),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              'You have pushed the button this many times:',
            ),
            Text(
              '$_counter',
              style: Theme.of(context).textTheme.headline4,
            ),
            Text(
              'You said: $_recognized',
            ),
          ],
        ),
      ),
      floatingActionButton: FloatingActionButton(
        onPressed: _incrementCounter,
        tooltip: 'Increment',
        child: Icon(Icons.add),
      ), // This trailing comma makes auto-formatting nicer for build methods.
    );
  }

  void _onResult(html.SpeechRecognitionEvent event) {
    var results = event.results;
    if (null == results) return;
    for (html.SpeechRecognitionResult recognitionResult in results) {
      if (null == recognitionResult.length || recognitionResult.length == 0) {
        continue;
      }
      for (var altIndex = 0; altIndex < recognitionResult.length!; ++altIndex) {
        html.SpeechRecognitionAlternative alt =
            js_util.callMethod(recognitionResult, 'item', [altIndex]);

        if (null != alt.transcript && null != alt.confidence) {
          setState(() {
            _recognized = alt.transcript!;
          });
        }
      }
    }
  }
}

Pretty excited about this possible work around, thanks!
I just tried it on Flutter 2.5.3 and I'm getting:

"Error: Expected a value of type 'SpeechRecognitionAlternative', but got one of type 'JavaScriptObject'
The error is from this line:

html.SpeechRecognitionAlternative alt =
            js_util.callMethod(recognitionResult, 'item', [altIndex]);

I tried it both in my own code and using the exact minimal example copied from above. Is it a version problem or something else?

@sowens-csd
I've tested it on the master channel
https://user-images.githubusercontent.com/48603081/144752385-e20a0609-1f38-4055-a3f0-d6ce08b7f23d.mov

Confirmed, it works on master although not on stable. This slight variant seems to be working on stable:
var alt = js_util.callMethod(recognitionResult, 'item', [altIndex]);
if (null == alt) continue;
String? transcript = js_util.getProperty(alt, 'transcript');
num? confidence = js_util.getProperty(alt, 'confidence');
if (null != transcript && null != confidence) {
  setState(() {
    _recognized = alt.transcript!;
  });
}

[dart rotation] labeling as blocked by dart issue dart-lang/sdk#47779

Deduplicating into the Dart SDK issue.


Remove error messages caused by Save on Focus feature

Fixes #73765
To clarify: fixing it that way covers most of the problems caused by the underlying issue (showing dialogs on the root Window during notification processing).
Another issue could be created to track the underlying problem.

Tested locally, it works as expected (Windows 11). I no longer get errors when Save on Focus Loss kicks in.
The downside of this approach is that if saving takes a long time (e.g. due to a huge binary resource being serialized as text in a scene file), the editor will appear to freeze for a few seconds if you alt-tab back in quickly. Still, I consider this is preferable to displaying an error every time the editor loses focus.
Eventually, the scene saving UX should be reworked to use a visually non-blocking method that doesn't need to spawn a dialog. This will alleviate the issue entirely while being less intrusive when you press Ctrl + S or when saving before running a scene.

For me the editor freezes even without changes in this PR. It could be especially noticeable when you alt-tab between the editor and the running game.

Looks good. Could you amend the commit message (with git commit --amend, then git push --force to update the PR) to use a more explicit message?
E.g.:
Remove error messages caused by Save on Focus feature

Fixes #73765.

Thanks! And congrats for your first merged Godot contribution :tada:


Question: Why no the Thaumonomicon in search in creative mode.

That almost looks like a language issue.


Feature/junit reporter

Description
This adds a new flag to bru run, the --format flag. It defaults to "json", which is the current output file format, while also implementing a "junit" option that will produce JUnit-formatted XML.
There are some opinionated implementation choices which I don't have strong opinions about:

Using the bru filename (minus .bru) for test suite names in the junit markup
Using a structure where the filename becomes a JUnit test suite, and then assertions + tests become test cases inside the suite
JUnit tests (often? must?) supply a time attribute, and I had access to timing details on the .bru file / test suite level, but not the test case level. For implementation simplicity what I did was I used timing details from the .bru file to set the time attribute on the test suite, and then I divided it equally for the child testcases (which are the assertions / individual tests). This seemed accurate enough while hopefully not breaking some tooling that expects the time attr to be present

Also, I don't think I messed anything up applying a new npm module for xml writing (and chose a module which was already being required outside of the cli package), but the package-lock.json file updated widely so probably best to double-check there. I also removed a @jest/globals require in the test file because I couldn't get that to work locally, I can add that back, but I'm pretty sure it's unnecessary? And of course happy to address any feedback.
MOST IMPORTANTLY: THANK YOU so much for your work on Bruno, this project is awesome. I have now been burned twice on tools in this family (once with Swagger, and now again with Insomnia) adopting cloud policies that will never be acceptable as a business risk. I want to figure out how to champion sponsorship for this project but until then, consider this a small token of appreciation 😄
Contribution Checklist:

[x] The pull request only addresses one issue or adds one feature.
[x] The pull request does not introduce any breaking changes
[ ] I have added screenshots or gifs to help explain the change if applicable.
[x] I have read the contribution guidelines.
[x] Create an issue and link to the pull request.

Note: Keeping the PR small and focused helps make it easier to review and merge. If you have multiple changes you want to make, please consider submitting them as separate pull requests.
Publishing to New Package Managers
Please see here for more information.

Thanks for the kind words @awinder 💛
PR looks good to me. I would recommend once change before we merge this
Let's move the junit reporter logic to a separate file.
I am thinking of a structure like
src
  |--commands
  |--runner
  |--reporters
    |--junit.js
  |--utils

There are some conflicts since I merged some PRs. Please sync your fork with the main.

Awesome, good idea. I refactored this & cleared up the merge conflicts but let me know if there's anything else!

Merged!
Thank you @awinder !

@awinder I have released Bru CLI version 1.3.0

Hi @awinder, I hope you're well. First of all, thanks for your great effort!
I've tried to use 'bru run  --env  --output result.xml --format junit' command. However, I'm getting "Unknown argument: format" message. What might be the issue? Am I doing something wrong? Your works will help a lot, thanks!

Hi @awinder, I hope you're well. First of all thanks for your great effort!
I want to be sure that the command for format output feature is "bru run  --env  --output response.xml --format junit".  Because when I use this command, I got "Unknown argument: format" message. Thanks for your interest and time.

Hi @awinder, I hope you're well. First of all thanks for your great effort! I want to be sure that the command for format output feature is "bru run <folderName> --env <envName> --output response.xml --format junit". Because when I use this command, I got "Unknown argument: format" message. Thanks for your interest and time.

Hi @AkkafaOguz, you might need to upgrade the bru CLI to the latest version. Check bru --version and make sure it's > 1.3.0. Then you can run npm update -g @usebruno/cli if you're out-of-date to pick up this feature. Your command works locally after I removed & reinstalled so I'm pretty sure this is a version issue.


Reflection Baking Invalid Paths

I turned on reflection baking and I'm getting a lot of exceptions from Invalid paths. I believe it stems from some of the Unity packages I'm using with the Package Manager. Has anyone else been encountering this? I'm using Unity 2019.3.0f3 & Extenject 9.1.0
ArgumentException: Invalid path System.IO.Path.GetDirectoryName (System.String path) (at <437ba245d8404784b9fbab9b439ac908>:0) Zenject.ReflectionBaking.UnityAssemblyResolver..ctor () (at Assets/Plugins/Zenject/OptionalExtras/ReflectionBaking/Unity/UnityAssemblyResolver.cs:35) Zenject.ReflectionBaking.ReflectionBakingBuildObserver.TryWeaveAssembly (System.String assemblyAssetPath) (at Assets/Plugins/Zenject/OptionalExtras/ReflectionBaking/Unity/ReflectionBakingBuildObserver.cs:65) Zenject.ReflectionBaking.ReflectionBakingBuildObserver.OnAssemblyCompiled (System.String assemblyAssetPath, UnityEditor.Compilation.CompilerMessage[] messages) (at Assets/Plugins/Zenject/OptionalExtras/ReflectionBaking/Unity/ReflectionBakingBuildObserver.cs:37) UnityEditor.Compilation.CompilationPipeline+<>c.<SubscribeToEvents>b__16_3 (System.String assemblyPath, UnityEditor.Compilation.CompilerMessage[] messages) (at /Users/builduser/buildslave/unity/build/Editor/Mono/Scripting/ScriptCompilation/CompilationPipeline.cs:181) UnityEditor.BuildPipeline:BuildPlayer(BuildPlayerOptions)

Workaround:
before _appDomainAssemblyLocations[assemblies[i].FullName] = assemblies[i].Location;
add if (string.IsNullOrWhiteSpace(assemblies[i].Location)) continue;
:)


DAO Performance Details

I'd like a new section/page that focuses specifically on the performance of the DAO over time. We need to show how much value the DAO brings to BALN, and how much the DAO is earning. This is what I would like to show:
Fees - this can all be shown in one table. I'm thinking each row of the table will be 1 day, then at the top of the table we can show totals. We should also have a column for each asset type rather than converting to USD value in order to make it most accurate.

Total fees earned all time (top of the table)
Total origination fees earned all time (top of the table)
Total trading fees earned all time (top of the table)
Daily performance of the above categories

DAO Fund

Current AUM of each asset type
Chart showing the growth over time
Number of staked BALN - static number
Number of LPed BALN - static number
Value backing each eligible BALN in terms of DAO Fund (DAO Fund size / total staked/LPed BALN)

Building off my initial thoughts above, I'd like to essentially create an income statement and balance sheet for the DAO and allow users to select timeframes.
Income Statement:

Total fees earned of each asset type (current dollar price of these assets)
Total fees paid out to stakers
Net Income (first bullet minus second bullet)

Balance Sheet (This is static at a given point in time. For example, Balance Sheet on Day 100)

Assets held by the DAO of each type
Value of 1,000 BALN based on DAO Fund holdings

The income statement and balance sheet are here: http://balanced-development.s3-website-us-east-1.amazonaws.com/stats-dev/financial-statements/, linked to from the governance section on the Stats page: http://balanced-development.s3-website-us-east-1.amazonaws.com/stats-dev/.
The income statement allows you to choose trailing time periods (1 day, 1 week, 1 month, and 3 months, as well as 6 months and 1 year when we get that far along).
The balance sheet shows the DAO fund balance on that day, and another day of your choice (default to the day prior), as well as the % change between them.
We still need to get both the time period and date picker in place, but the rest is ready to implement.
The data will come from Geometry’s backend APIs. Depending on how fast it is to pull through, we may need some animations similar to the Vote page.
@hetfly let us know if you have any questions about the implementation.

Remove the following:

Replace "Financial Statements" with "Performance Details"
Replace "Income Statement" with "Earnings"
Replace "Balance Sheet" with "Holdings"

https://balanced.geometry.io/api/v1/docs#/stats/get_daofund_balance_sheet_api_v1_stats_daofund_balance_sheet_get
https://balanced.geometry.io/api/v1/docs#/stats/get_income_statement_api_v1_stats_income_statement_get

Remove and replace the following:

Replace "Financial Statements" with "Performance Details"
Replace "Income Statement" with "Earnings"
Replace "Balance Sheet" with "Holdings"

Earnings and Holdings are good, but let’s change the Financial statements heading and intro text to:

Performance details
Track Balanced's performance over time. All $ values are in USD, based on the current price of each asset.


rand/randfile.c: fix fallback to HOME, reject empty filenames.

Restore the fallback to $HOME for non-setuid programs when RANDFILE is
unset, broken since "rand/randfile.c: make it non-ASCII-savvy".
While at it, try harder to find a non-empty path and treat empty
paths as error. This fixes "unable to write 'random state'" errors on
Linux when running tools like genrsa.

Tested by running strace -e open openssl genrsa. Before the patch on OpenSSL 1.1.0 an empty path was observed and the above warning was produced. After the patch, no empty path is being read and the warning is gone.
If approved, could this be backported to 1.1.0?

If accepted, we will need a CLA.  Please see https://www.openssl.org/policies/cla.html

CLA has been submitted by email now.

There is alternative solution committed now, more readable. Thanks for report.


HIDP connection issues borking sound

Hi,
I'm building a small Pi audio player project relying on MPD/bluez-alsa, sending audio to bluetooth speaker. Player may be controlled by speaker keys or HID bluetooth remote.
I'm facing an issue where at some random times, some bluetooth errors have a side effect on audio-decoding, hence producing garbled output. Here is what is always the log at those times:
Apr 29 12:54:11 player daemon.err bluetoothd[2325]: Can't get HIDP connection info
Apr 29 12:54:15 player daemon.warn libsmbclient[2747]: alsa_output: Decoder is too slow; playing silence to avoid xrun
Apr 29 12:54:17 player daemon.err bluetoothd[2325]: connect error: Host is down (112)
Apr 29 12:54:41 player daemon.err bluetoothd[2325]: Can't get HIDP connection info
Apr 29 12:54:47 player daemon.err bluetoothd[2325]: connect error: Host is down (112)

Can't tell if its bluez or bluez-alsa or both acting together, and I'm happy to provide more detailed logs if directed to do so.
After some searches it seems many similar HIDP errors have started popping-out from kernel 4.19.x  Obviously blacklisting hidp driver solves the issue (but then I have no remote).
I'm on Alpine 3.11, kernel 5.4.27, bluez 5.54, bluez-alsa 2.1.0
Any hint appreciated (fix or workaround).
Thanks.

Which Pi model are you using? Are you using the on-board bluetooth adapter?
I'm not familiar with Alpine Linux, but from other posts I've seen here I know that some distributions struggle to correctly configure the UART interface to the BT adapter on Pis. So I would recommend looking into that first if you are using a Pi with on-board BT.

Thanks for feedback. I'm on a PiZeroW and yes, I did take much care in configuring UART properly for that device (it has HW flow control and decent speed).
In most cases audio and BT remote work just fine. Issue pop-up only when those HID error message pop-up.
Could be related to that, but I'm not capable to trace further without directions.
Maybe the stack upper in the foodchain gets locked by this problem?

As HIDP is a Bluez / kernel issue, there is nothing that bluealsa can do about this. I'm guessing that as there have been no further posts on this subject in over a year this is a rare occurrence. So I'm closing this issue now.


450 group bookings into types

This groups bookings into types in a tabbed view. To get this to work properly, we needed to add a status field to the API, which has been documented in Swagger. I've also added some traits to the booking factory, which makes it easier to create types of bookings in test and for stubs.
Screenshot

 group bookings into types


use qualified Prelude imports in Component.purs

this allows to shrink the distribution size of the bundle.
Also added the Oxford comma for correct English.

 Thank you for your submission, we really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.You have signed the CLA already but the status is still pending? Let us recheck it.


Too much specificity "tRNA transcription"

Original query:
Re:
GO:1900446 ; negative regulation of tRNA transcription from RNA polymerase III promoter
biological_process
Any process that stops, prevents or reduces the frequency, rate or extent of tRNA transcription from RNA polymerase III promoter.
From our recent discussion, should  GO:1900446 (above) warrant  a term ? Unless I am mistaken , there is no specific regulator for negatively regulating tRNA transcription which is separable from general negative regulation of transcription from RNA polymerase III.  Is this a case where you would advise users to capture the information in an extension, as it is not a biologically separable process ?
similarly tRNA transcription, is this an process  which can be distinguished from
transcription from RNA polymerase III
or
transcription from mitochondrial prompter?
(there is a possibility my biological knowledge is out of date here and RNA pol III  does have "gene specific" regulators but I have not seen anything.....)
Val
Reported by: ValWood
Original Ticket: geneontology/ontology-requests/9410

@jimhu-tamu can you please have a look at this old ticket and comment? I'm trying to clean up some old GH tickets.

I don't think we need this level of granularity for bacterial transcription either. There are differences in the regulation of tRNAs and rRNAs from most other mRNAs, but it's the same RNA polymerase in the eubacteria.

TO DO

[] obsolete GO:1900446

Obsoletion notice sent Nov 23
Dear all,
The proposal has been made to obsolete 'GO:1900446 negative regulation of tRNA transcription from RNA polymerase III promoter’. The reason for obsoletion is that there is no specific regulator for negatively regulating tRNA transcription which is separable from general negative regulation of transcription from RNA polymerase III.
There is a single protein annotated to this term by SGD. Comments can be added to the ticket:
https://github.com/geneontology/go-ontology/issues/9617
We’d like to proceed and obsolete this term on Nov 30, 2017. Unless objections are received by Nov 30, 2017, we will assume that you agree to this change.
Thanks, Pascale

OK - all good then. I left the naming of the 'initiation' as is (" transcription initiation from RNA polymerase III promoter" etc).
I'll merge this one.
Thanks, Pascale