Support auto generating release notes

I'm not sure if anything else is needed to support this setting, but the change looks to match prior PRs. I used trailing commas in this update but I can remove those if you don't want them.
API Docs: https://docs.github.com/en/rest/reference/repos#create-a-release (generate_release_notes)
Closes #167
Closes #173
Closes #176

:+1: to this - I'm looking to automate a bit more of my release workflows and this would be an excellent addition.

I didn't verify the change but I can later today.

Just did a couple releases in a test repo and the change looks to work. This is the workflow used:
on:
  push:
    tags:
      - "v*.*.*"

permissions:
  contents: write

jobs:
  release:
    runs-on: ubuntu-latest

    steps:
      - uses<EMAIL_ADDRESS>
      - uses: xt0rted/action-gh-release@testing
        with:
          generate_release_notes: true

The release created:

I removed the trailing commas, not sure how I missed the prettier setup for that, and added the setting to the readme.

@xt0rted, I also tried your action-gh-release@testing and it worked like a charm. ✨ Result: https://github.com/bennycode/trading-signals/releases/tag/v2.4.1 👌

@softprops thanks for merging this. Can you create a new tag & release version of your action so I can pin that in my GitHub workflow?

@softprops & @xt0rted is something missing from the merged PR? I added this to my GitHub workflow:
      - name: Release
        uses: softprops/action-gh-release@0465cdad11d833cabb6414f885edd2ccdfda4b96
        if: startsWith(github.ref, 'refs/tags/')
        with:
          generate_release_notes: true

Unfortunately, it created a release with empty release notes: https://github.com/bennycode/trading-signals/releases/tag/v2.5.0
With xt0rted/action-gh-release@testing it was working (see here) but I can't use this action anymore because it got deleted.

I'll publish this weekend

ok. should be set here

This is a bit old, but an excellent contribution. Any chance of adding an option to set the previous release? Currently, it generates to the last release created, which is a sensible default, but I'd like to differentiate between two cases:

Create a pre-release -- in this case, the changelog should be based on the last release of any type
Create a regular release -- in this case, the change should be based on the difference from the last full release (i.e., last release that's not marked as pre-release).

I'm currently creating the body for the changelog manually, but I'd like to move to letting the action trigger github's automatic generation; this is the only thing missing for me.


Make Reset button work

Reset button should empty all input and output fields.

One function in js/functions.js: clearAllFields().


Poor file transfer performance on windows mfgtools v2.8?

Hi,
I found when I using mfgtools 2.6.2, the transfer data(system.img, userdata.img etc.) speed can reach 18MB/s
But I compile latest windows mfgtools(v2.8). The speed drop to only around 2.8MB/s
Is any change make this result?
Thanks

Not sure,  Can you try our latest uuu tools?
Which platform do you use?

My compile platform is Windows.
But I also try 2.3.2 source code to compile with Visual Studio 2017 Enterprise+Windows 10 latest version.
The speed still low.
I don't find 2.6.2 source code that I can't verify the problem is.
Is there need adjust any special compiler parameter to compile?
I will try to compile uuu now.

@nxpfrankli We got the problem. We release and testing in wrong build profile.
Should using RELEASE build, but accident using DEBUG build when compile project.


Level 3 Section Title not show in left menu

3级章节没有显示在左侧菜单里，没有找到相关配置； 请赐教

I suspect you haven't configured your document's toclevels. For example, Spring Boot's documentation uses :toclevels: 4 with this backend and shows four levels in the table of contents.

thank you  very much ; up ssue has been resolved ;  another question , how to set up html  "shortcut icon" and change spring icon ;
非常感谢您如此快速的回复，上面的问题已经解决。另外的问题： 如何设置html tab 图标，以及更改spring 图标；

The purpose of this problem is to produce Spring-branded documentation. If you want to use it for another purpose then you are, of course, free to modify it to meet your needs but such usage isn't something that we intend to support or that we can afford spend time on.

thank you


Cannot setup on/off sound when capture

Cannot setup on/off sound when capture

Not enough information. Closing.


Can't use the instance of the contract deployed using factory contract

I'm using a factory contract to deploy contracts but unable to use an instance of that deployed contract using tronweb.
I have tried both contract().at('contract _address') and contract(abi,'contract_address') methods but getting "Failed to execute error" on any method call of that contract.
according to the feedback from some people, it looks like it's an issue of tronweb.

Try this way:
var contractAddress = 'contract_address';

var functionSelector = 'function_name(uint256)';

var parameter = [
    {type: 'uint256', value: 100}
]
var options = {};

transaction = await tronWeb.transactionBuilder.triggerConstantContract(contractAddress, functionSelector, options,parameter);

@CQBinh There are two parameters
like this？
var parameter = [
{type: 'uint256', value: 100}
{type: 'address', value: TEkU1EQGYYWT5qTzZM9MKT7HsE6aHRh1e9}
]


Cleanup of Storybook stories for Card

User Story

As a [user role below]:
IBM.com Library adopter

I need to:
see variations of the Card component in storybook

so that I can:
quickly see what available variations there are for the Card component

Additional information

Storybook URL: https://ibmdotcom-react.mybluemix.net/?path=/story/components-card--default
Should break down the types into their own stories
Break down any knobs with JSON

Suggested stories for Card

Default
With image

Acceptance criteria

[ ] Multiple storybook variations for Card component
[ ] No knobs with JSON
[ ] Add actual prop names in knob description in parenthesis
[ ] DDS Leads approve new stories

FYI @jeffchew I spoke with @kennylam about making this potential change. There are a lot of options for card component so it would be awesome to split them into separate stories. I'm thinking at minimum 2: Default and With image. The other knobs can remain as options in each.
@wonilsuhibm please share any thoughts on this.


Feat: Allow the CLI to take in flags.

This will most likely require breaking out of the Runner and creating an internal CLI. Thor is already here as a dependency.

Example:
viterb generate --template rails
viterb g --template hanami
viterb g --template sinatra

Example:
viterb generate --template rails
viterb g --template hanami
viterb g --template sinatra

As I'm going over this more, this could be a full fledged CLI generator. Think yarn init
viterb generate

** What type of project is this? **
* Rails
* Hanami
* Sinatra
* Other

** Where would you like to store your JavaScript files **

* default: (app/vite)
<Enter Text here>

** Where would you like your Vite config stored? **

* default: (vite.config.js)
<Enter directory here>

As I'm going over this more, this could be a full fledged CLI generator. Think yarn init
viterb generate

** What type of project is this? **
* Rails
* Hanami
* Sinatra
* Other

** Where would you like to store your JavaScript files **

* default: (app/vite)
<Enter Text here>

** Where would you like your Vite config stored? **

* default: (vite.config.js)
<Enter directory here>


LLMChain hard dependency on Redis, TypeORM

import { LLMChain } from "langchain/chains";

Causes
$ npx tsc

node_modules/langchain/dist/cache.d.ts:1:38 - error TS2307: Cannot find module 'redis' or its corresponding type declarations.

1 import type { RedisClientType } from "redis";
                                       ~~~~~~~

node_modules/langchain/dist/sql_db.d.ts:1:67 - error TS2307: Cannot find module 'typeorm' or its corresponding type declarations.

1 import type { DataSource as DataSourceT, DataSourceOptions } from "typeorm";
                                                                    ~~~~~~~~~

node_modules/langchain/dist/util/sql_utils.d.ts:1:52 - error TS2307: Cannot find module 'typeorm' or its corresponding type declarations.

1 import type { DataSource, DataSourceOptions } from "typeorm";

Reproducer repo:  https://github.com/dkarlovi/langchainjs-796

Hi, that's not a dependency, as it's clearly marked, on purpose, as import type it doesn't actually import the code.  I also lose the checks which I might want to see. 🤔

If there is a better solution I'm all for it

@nfcampos looking at the code, it seems there's some mixing of concerns here, maybe?
If we check the offending cache.ts, it directly loads from Redis:
https://github.com/hwchase17/langchainjs/blob/6b77cbe861addc47da69cb6e25cde7f4d35fd5bb/langchain/src/cache.ts#L2
It seems this should be split to allow loading the generic cache-related types to be loaded without immediately pulling in Redis-specific types, example here:
https://github.com/hwchase17/langchainjs/blob/6b77cbe861addc47da69cb6e25cde7f4d35fd5bb/langchain/src/llms/base.ts#L1

Yes changing that would be a breaking change. I'll have to consider whether it's worth making a breaking change to appease one out of many possible typescript configurations

@nfcampos I agree it's a BC break, but this type of bundling (specific in abstract) seems to have been undone for other modules already (OpenAI, Pinecone). IMO it's probably a good idea to solve these types of issues while the project is still very young because they'll 100% introduce issues down the line and solving them then will be quite a bit more complex, while they're constantly causing friction or issues (for example, for non-Node users).
It's up to you of course.

@dkarlovi opened a PR to do this


Autocomplete should also fill out the arguments I will need for my functions

Imagine I have function objectValue(obj: SomeObject), whenever I type objectVal and press CTRL+Space, I am expecting an IDE-like autocompletion where the parameters are pre-filled out for me.
(Is this a limitation in atom/autocomplete?)
This is the current behavior, perhaps it's not very obvious, but I'm struggling trying to make something appear, hitting the keys for autocompletion, but nothing happens:

I wish autocomplete had filled i.objectValue(obj: SomeObject) for me.

@Goodwine This is a duplicate for #608.
Couldn't agree more that this feature is very helpful!

You are right, thanks!


Content for Design Process

See chapter "6. WORKSHOP" in confluence, see mail.
Deadline Wednesday 15th January

Solved

Solved


Some benchmarks written for criterion just complete immediately with tasty-bench.

All.Comparison.1000.find.vector-hashtables,6580352,647420
All.Comparison.1000.find.vector-hashtables (frozen),1469,38

the same benchmarks ran using criterion
Comparison/1000/find/vector-hashtables,7.08775428580093e-6,6.878445436163731e-6,7.573894628958587e-6,1.0076997615131766e-6,5.435319381788577e-7,1.8001436015276278e-6
Comparison/1000/find/vector-hashtables (frozen),3.011253725428155e-6,2.997528898847814e-6,3.034834992200024e-6,5.824131186108332e-8,4.132973586165513e-8,8.391675029687467e-8

https://github.com/klapaucius/vector-hashtables/blob/2dc4c0dc2d9471bec8f1d1b8edd161fcc78250fc/bench/Main.hs#L52
 +RTS --info
 [("GHC RTS", "YES")
 ,("GHC version", "8.10.7")
 ,("RTS way", "rts_v")
 ,("Build platform", "x86_64-unknown-mingw32")
 ,("Build architecture", "x86_64")
 ,("Build OS", "mingw32")
 ,("Build vendor", "unknown")
 ,("Host platform", "x86_64-unknown-mingw32")
 ,("Host architecture", "x86_64")
 ,("Host OS", "mingw32")
 ,("Host vendor", "unknown")
 ,("Target platform", "x86_64-unknown-mingw32")
 ,("Target architecture", "x86_64")
 ,("Target OS", "mingw32")
 ,("Target vendor", "unknown")
 ,("Word size", "64")
 ,("Compiler unregisterised", "NO")
 ,("Tables next to code", "YES")
 ,("Flag -with-rtsopts", "")
 ]

That's probably expected:
https://github.com/Bodigrim/tasty-bench/blob/bb8810e3ca2d9752c4cf080f528eee3f96186074/src/Test/Tasty/Bench.hs#L1449-L1453
For some reason GHC optimizer does not get that aggressive with criterion harness, but that's a matter of luck. I think it would be nice to change
-fvhfind :: Int -> VH.FrozenDictionary V.Vector Int V.Vector Int -> IO Int
-fvhfind n ht = return $ go 0 0 where
+fvhfind :: Int -> VH.FrozenDictionary V.Vector Int V.Vector Int -> Int
+fvhfind n ht = go 0 0 where

and then
-            , bench "vector-hashtables (frozen)" $ nfIO (fvhfind n fh) ]
+            , bench "vector-hashtables (frozen)" $ nf (fvhfind n) fh ]

Well, this works. Thanks.


Parallelize using rayon

@jonhoo Feel free to close this PR if this is something you plan to implement in a follow-up stream.
Nice and easy speed improvement. I imagine that it isn't a 20x improvement (my 12700k has 20 Hyper threads) due to the single threaded dictionary initialization.
> hyperfine.exe -n old '.\roget-base.exe --implementation cutoff' -n new '.\target\release\roget.exe --implementation cutoff'
Benchmark 1: old
  Time (mean ± σ):      3.034 s ±  0.006 s    [User: 0.000 s, System: 0.009 s]
  Range (min … max):    3.025 s …  3.045 s    10 runs

Benchmark 2: new
  Time (mean ± σ):     248.0 ms ±   1.0 ms    [User: 1.4 ms, System: 5.5 ms]
  Range (min … max):   246.3 ms … 249.7 ms    11 runs

Summary
  'new' ran
   12.23 ± 0.06 times faster than 'old'

Ah, so, this is actually not the way I'd like to use rayon. Rather than using it to run games in parallel, I'd like to use it to explore the search space within a given game in parallel. Running games in parallel doesn't actually make the guessing faster, which is what we really care about. Happy to look at a PR that adds rayon to the guessing part though (probably using rayon::scope) — I'm not planning to do another stream on this.


All Story progressbar starts showing progress on different touch and pause play action

All Story progressbar starts showing progress on different touch and pause play action on the screen. Can you please check it.

I also have this issue
On Wed, 20 Jun 2018 at 6:07 pm, Rishabh Saxena<EMAIL_ADDRESS>wrote:

All Story progressbar starts showing progress on different touch and pause
play action on the screen. Can you please check it.
[image: screenshot_2018-06-20-13-35-28-819_jp shts android
storyprogressbar 1]
https://user-images.githubusercontent.com/18081678/41645574-00f380b6-748f-11e8-9f1b-b474b33962c2.png
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/shts/StoriesProgressView/issues/11, or mute the
thread
https://github.com/notifications/unsubscribe-auth/AIgngoKhX3Pa1z92Pz2E_FTarGp3NbJxks5t-gKmgaJpZM4Uuy5I
.

--
Regards
Brandon Stillitano
Project Manager
0401 007 904 <javascript:void(0);>

@shts , Can you please check this ?

@Xenero  did you find any way to implement this ?

Nope. Still waiting on the publisher to release a fix or atleast a
response. Would be good to see this maintained.
On Thu, 21 Jun 2018 at 7:07 pm, Rishabh Saxena<EMAIL_ADDRESS>wrote:

@Xenero https://github.com/Xenero did you find any way to implement
this ?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/shts/StoriesProgressView/issues/11#issuecomment-399031506,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIgngv9XVZfGINAIVBF0k4d2STYQuOI0ks5t-2JggaJpZM4Uuy5I
.

--
Regards
Brandon Stillitano
Project Manager
0401 007 904 <javascript:void(0);>

@Rishabh-sx Please show me your code?

If need be I can also publish my code as I get the same issue.
On Fri, 22 Jun 2018 at 12:14 am, Shota Saito<EMAIL_ADDRESS>wrote:

@Rishabh-sx https://github.com/Rishabh-sx Please show me your code?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/shts/StoriesProgressView/issues/11#issuecomment-399118509,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIgngmpSoUZJcX-X4warXEJjH0P_pMsVks5t-6pKgaJpZM4Uuy5I
.

--
Regards
Brandon Stillitano
Project Manager
0401 007 904 <javascript:void(0);>

I have the same issue...
The code is simple:
storiesProgressView = (StoriesProgressView) findViewById(R.id.stories);
storiesProgressView.setStoriesCount(5); // <- set stories
storiesProgressView.setStoryDuration(10000L); // <- set a story duration
storiesProgressView.setStoriesListener(this); // <- set listener
storiesProgressView.startStories(); // <- start progress
storiesProgressView.pause(); <- HERE IS THE PROBLEM

I test in two emulators:
The first with Android 7 not problem.
The second With Android 8 HERE IS THE PROBLEM... MAYBE only happen in android 8

My implementation is much more complex however still getting issues upon
calling pause.
My suggestion to the author is to include a method inside the
rewind/reverse method to clear all progress for any segments that are
further than the point being reversed to.
On Sat, 23 Jun 2018 at 11:54 am, Jose Jimenez<EMAIL_ADDRESS>wrote:

I have the same issue...
The code is simple:
storiesProgressView = (StoriesProgressView) findViewById(R.id.stories);
storiesProgressView.setStoriesCount(5); // <- set stories
storiesProgressView.setStoryDuration(10000L); // <- set a story duration
storiesProgressView.setStoriesListener(this); // <- set listener
storiesProgressView.startStories(); // <- start progress
storiesProgressView.pause(); <- HERE IS THE PROBLEM
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/shts/StoriesProgressView/issues/11#issuecomment-399622102,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AIgngr8CF6BD22kNbV40ttjzSrpxq937ks5t_Z_YgaJpZM4Uuy5I
.

--
Regards
Brandon Stillitano
Project Manager
0401 007 904 <javascript:void(0);>

@jjimenez0611  Thank you for your Information! I will investigate

@shts Thanks... Please let me know if you fix that.. I really need this library...

I am trying to fix it. Soon i will publish my code here. I hope you guys will also trying.It will be a great help for a publisher and others too.

I think the problem is if I call the pause() method in the onNext() Listener. O if call the pause() inside the activity..
But if a call the pause() inside a for example MotionEvent the pause() word perfect...
But I really don't know how to fix that...

@shts Do you have any news about this error? Or someone could find a solution ? I tried to fix but I still have problems...

Hey, Any news?

@Rishabh-sx @Xenero @jjimenez0611 @dajver
Released new version 3.0.0!
I think he got well...plz check it.

Thanks, had a look at your commits - great fixes!
On Tue, Aug 21, 2018 at 13:40, Shota Saito<EMAIL_ADDRESS>wrote:

@Rishabh-sx https://github.com/Rishabh-sx @Xenero
https://github.com/Xenero @jjimenez0611
https://github.com/jjimenez0611 @dajver https://github.com/dajver
Released new version 3.0.0!
I think he got well...plz check it.
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/shts/StoriesProgressView/issues/11#issuecomment-414631078,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAo0ttLVQySiSzdWgWo9d6XNcSDklGXoks5uS-OkgaJpZM4Uuy5I
.

--
Best Regards
Gleb
My portfolio https://dajver.com/

This issue still exists,even in updated code.
i've observed that this bug produces only  if video is available in stories,works perfect if only images are there
Please fix this issue asap.
Thanks

Hi guys,
I have working model of this as I have done this in my project and soon I will share it with you guys in the form of POC.
Drop me a mail at<EMAIL_ADDRESS>for help till then

I had the same issue and the code below fixed it!
                new Handler().post(new Runnable() {
                    @Override
                    public void run() {
                        storiesProgressView.pause();
                    }
                });

and
                new Handler().post(new Runnable() {
                    @Override
                    public void run() {
                        storiesProgressView.resume();
                    }
                });

@Rishabh-sx @berkyalnizcik @alexinadev @Kitlabs @dajver @shts @jjimenez0611 Hello Guys Have you found any fix for this issue.


[Typescript] PropTypes.Color does not allow new color variants

Related to #13875

[x] The issue is present in the latest release.
[x] I have searched the issues of this repository and believe that this is not a duplicate.

Current Behavior 😯
Types in packages/material-ui/src/index.d.ts, namely PropTypes.Color do not allow new color variants (success, info, warning).
Expected Behavior 🤔
PropTypes.Color should allow success, info and warning
Steps to Reproduce 🕹
Try to pass "info" as a color to any component that supports it (none right now in master, Alert in lab) and get a typescript warning.

This can be fixed with this diff:
--- a/packages/material-ui/src/index.d.ts
+++ b/packages/material-ui/src/index.d.ts
@@ -46,7 +46,7 @@ export interface Color {

 export namespace PropTypes {
   type Alignment = 'inherit' | 'left' | 'center' | 'right' | 'justify';
-  type Color = 'inherit' | 'primary' | 'secondary' | 'default';
+  type Color = 'inherit' | 'primary' | 'secondary' | 'warning' | 'info' | 'success' | 'default';
   type Margin = 'none' | 'dense' | 'normal';
 }

Let me know if I should send a PR!

Yes please.

The TypeScript definitions should match the implementation. I think that it would be better to duplicate the information until we unify it.

We need to be careful with this on and check every usage if it matches the Component.propTypes.
In the meantime you should be able to use module augmentation documented in our TypeScript guide.

@eps1lon @oliviertassinari I do not think that users should be augmenting the internal built-in types to make them work with internal built-in colors. But that does make sense to have definitions matching the implementation. Perhaps we could rename the existing PropTypes (and all its usages) into DEPRECATED_PropTypes and define a new PropTypes with the new colors. Then use them according to the component implementation, until all the components support the new colors and we can get rid of DEPRECATED_PropTypes?

@r3dm1ke I'm sorry, I don't understand. What problem do you want to solve?

@oliviertassinari I was looking into adding support for new colors to existing components and found out that the prop types for them do not allow the new colors. All the components reference the PropTypes.Color definition in packages/material-ui/src/index.d.ts. To add the new colors and not get typescript warnings, we need to either (1) change this definition, (2) introduce a new definition and slowly migrate the components to it or (3) hardcode the color types into each component, but I do not think it is sustainable

@r3dm1ke Thanks for the details. We also have this issue with the prop-types. If you add a new value, you will get a runtime warning. I was considering making the prop types a simple: 'string' in the past.
Regarding PropTypes.Color, the adoption rate seems to be at 30% (6 components strictly use it, and 14 components' color prop don't).

@oliviertassinari I had followed your advice and focused on 70% of the rest. For instance, I had started with the Checkbox component, trying to add new colors to it. It seemed like a simple enough component to play out the new color support before rolling it everywhere else. However, after I had updated Checkboxes' prop-types to allow new colors and added styling, I found out that it is not enough. Under the hood, Checkbox renders the SwitchBase component. It uses PropTypes.Color, thus making it extra hard to add new colors. How do you suggest I proceed? I can hardcode color?: 'primary' | 'secondary' .... to SwitchBase prop-types, moving it away from using PropTypes.Color. There may be a simpler solution, but I cannot see it at the moment.

Would the best solution be to remove the Color variable and to duplicate the enum every time? Then, as we move toward the support of any color from the palette, update the type according?

@oliviertassinari @r3dm1ke Just an FYI, I have been searching all over the internet how to have a basic "success" button, and everything points to creating a styled component. This completely defeats the purpose of having a theme altogether. If all my forms have a success button, I would need to make a success button component and import it into my forms. We should be to be able to use <Button color='success' /> or <Chip color='success' />, and not have to completely recreate a component with font size, hover, active, disabled state, etc. It's extremely limiting to have to rely on only 3 colors.
IMO, users should either be able to define their own colors (success, warning, error, peaches, strawberries, etc), or be able to use material colors (red, green, blue, etc) and have the ability to override these shades to their hex values. I do understand the adherence to strict types and such, but not at the expense of basic features. Having a success and error button is a very very very basic thing in any UI library.

@damusix Agree, it's planned for v5 #13875.

@oliviertassinari Awesome! What's the timeline for this?

Closing for the updated version of this issue #24778.


Reimplement AML parser

TODO

Codecov Report

Merging #63 into master will not change coverage.
The diff coverage is 100%.

@@           Coverage Diff           @@
##           master    #63     +/-   ##
=======================================
  Coverage     100%   100%
=======================================
  Files          34     38      +4
  Lines        1696   2836   +1140
=======================================
+ Hits         1696   2836   +1140

Impacted Files
Coverage Δ

...rc/gopheros/device/acpi/aml/parser_opcode_table.go
100% <100%> (ø)

src/gopheros/device/acpi/aml/obj_tree.go
100% <100%> (ø)

src/gopheros/device/acpi/aml/parser.go
100% <100%> (ø)

src/gopheros/device/acpi/aml/stream_reader.go
100% <100%> (ø)

Continue to review full report at Codecov.

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


Tuya power strip always show off

Home Assistant release with the issue:
Home Assistant
0.97.2
Operating environment (Hass.io/Docker/Windows/etc.):
Hass.io running on a Pi 4
Component/platform:
Tuya
Description of problem:
I connected a KMC wall socket with 3 outlets to my Hass.io, which is categorized as a power strip in the Tuya app.
I can see and control all 3 outlets without any issue in the Tuya app.
However, the 3 switches are always show "off" in the Hass.io even if it actually on.
I was able to see all the 3 switches, and call service to turn it on/off, but whenever I turn it to "on", the status of the switch will turn to "on" for a few seconds and quickly failback to "off", in the meanwhile the device is kept "on".
So I was not able to know it's real status and never able to toggle it off as well.

Problem-relevant configuration.yaml entries and (fill out even if it seems unimportant):
tuya:
username<EMAIL_ADDRESS>password: ******
country_code: 1
Additional information:

Yup, same here, any solution?

Same here with a Koogeek power strip, hass.io running in docker on a RPi4

Known issue, will be fixed in next HA release. https://github.com/home-assistant/home-assistant/issues/25992


Mat-table verticaly displayed data

Bug, feature request, or proposal:
Hi,
I've followed your example about mat-table and it works very fine
https://material.angular.io/components/table/overview
Now, is there a simple a neat way to switch rows and columns ?
Thanks a lot.
What is the expected behavior?
What is the current behavior?
What are the steps to reproduce?=
What is the use-case or motivation for changing an existing behavior?
Which versions of Angular, Material, OS, TypeScript, browsers are affected?
Angular CLI: 6.2.2
Node: 8.12.0
OS: win32 x64
@angular/material            6.4.7
Is there anything else we should know?

Hi,
Thank you a lot for the reply.
My need is very simple.
I need to print data in "columns" insteand than "rows".
Like in this example
(
https://upload.wikimedia.org/wikipedia/commons/4/4d/Row_and_column_major_order.svg
)
Best Regards,
Guillaume
Le lun. 24 sept. 2018 à 20:26, Shiven Sinha<EMAIL_ADDRESS>a
écrit :

Could you elaborate via an appropriate example?
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
https://github.com/angular/material2/issues/13218#issuecomment-424076125,
or mute the thread
https://github.com/notifications/unsubscribe-auth/ABXqd3cvlbRIp-NHYfEX406eZFT191VKks5ueSPYgaJpZM4WyTVo
.

Please keep GitHub issues for bug reports / feature requests. Better avenues for troubleshooting / questions are stack overflow, gitter, mailing list, etc.
(this is a canned response)


Update Helm release rabbitmq to v12

This PR contains the following updates:

Package
Update
Change

rabbitmq (source)
major
11.1.1 -> 12.0.2

Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.

[ ] If you want to rebase/retry this PR, check this box

This PR has been generated by Renovate Bot.

Renovate Ignore Notification
Because you closed this PR without merging, Renovate will ignore this update. You will not get PRs for any future 12.x releases. But if you manually upgrade to 12.x then Renovate will re-enable minor and patch updates automatically.
If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR.


[finalization] Declarative secrets

For discussion of the declarative secrets specification.
This continues discussion found in the original proposal.

The spec work is done here, so closing this issue!
Now various supporting tools can add their implementation, such as https://github.com/microsoft/vscode-remote-release/issues/8559 for the Dev Containers extension in VS Code.


Add TagBot

Automate git tag generation whenever version from Project.toml is updated.

@sjoelund
This line
          # Edit the following line to reflect the actual name of the GitHub Secret containing your private key
          ssh: ${{ secrets.DOCUMENTER_KEY }}
          # ssh: ${{ secrets.NAME_OF_MY_SSH_PRIVATE_KEY_SECRET }}

needs to be updated so TagBot has write access to the repository. Can you update the secrets / update this line with the correct name of the secret?


BUG: Older versions of setuptools no longer work

What pyzmq version?
25.1.1
What libzmq version?
Not relevant
Python version (and how it was installed)
3.8.10 via Ubuntu
OS
Ubuntu 20.04
What happened?
Version 25.1.1 no longer installs with older version of setuptools, e.g. setuptools==41.0.0:
    File "setup.py", line 39, in <module>
      from setuptools.errors import OptionError
  ModuleNotFoundError: No module named 'setuptools.errors'

This was introduced in https://github.com/zeromq/pyzmq/commit/8292503e760b352f616b2bb2f74ba2e05cde2825. Version 25.1.0 still works with setuptools==41.0.0.
A minimal version requirement should be added.
Code to reproduce bug
pip3 install setuptools==41
git clone https://github.com/zeromq/pyzmq.git .
git checkout v25.1.1
python3 setup.py install

Traceback, if applicable
No response
More info
No response

This is fixed in #1884, making the build dependency on setuptools>=61 explicit. The version requirement in 25.1.1 ought to be >=59.

Anyone with an old version of setuptools still gets 25.1.1, which will then fail.
Can the 25.1.1 version be yanked to avoid that?

I don't think it should be yanked, but I will publish a 25.1.2 with the version bound, though.

Anyone with an old version of setuptools still gets 25.1.1

This is also not true most of the time, because any standard install will get the latest setuptools during build:
python3 -m venv test-pyzmq
source test-setuptools/bin/activate
pip install setuptools==58.*
pip install --no-cache --no-binary pyzmq pyzmq

gives:
Using pip 23.2.1 from /Users/minrk/env/test-pyzmq/lib/python3.11/site-packages/pip (python 3.11)
Collecting pyzmq
  Downloading pyzmq-25.1.1.tar.gz (1.4 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.4/1.4 MB 31.8 MB/s eta 0:00:00
  Running command pip subprocess to install build dependencies
  Ignoring cffi: markers 'implementation_name == "pypy"' don't match your environment
  Ignoring cython: markers 'implementation_name == "cpython" and python_version >= "3.12"' don't match your environment
  Collecting setuptools
    Obtaining dependency information for setuptools from https://files.pythonhosted.org/packages/4f/ab/0bcfebdfc3bfa8554b2b2c97a555569c4c1ebc74ea288741ea8326c51906/setuptools-68.1.2-py3-none-any.whl.metadata
    Downloading setuptools-68.1.2-py3-none-any.whl.metadata (6.2 kB)
  Collecting setuptools_scm[toml]
    Downloading setuptools_scm-7.1.0-py3-none-any.whl (43 kB)
       ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 43.8/43.8 kB 3.3 MB/s eta 0:00:00
  Collecting wheel
    Obtaining dependency information for wheel from https://files.pythonhosted.org/packages/b8/8b/31273bf66016be6ad22bb7345c37ff350276cfd46e389a0c2ac5da9d9073/wheel-0.41.2-py3-none-any.whl.metadata
    Downloading wheel-0.41.2-py3-none-any.whl.metadata (2.2 kB)
  Collecting packaging
    Downloading packaging-23.1-py3-none-any.whl (48 kB)
       ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 48.9/48.9 kB 6.0 MB/s eta 0:00:00
  Collecting cython>=0.29
    Obtaining dependency information for cython>=0.29 from https://files.pythonhosted.org/packages/03/e9/9cc0c4f0d8a566089d096254cd25168a0db02dd047863a7f995d8d3eefa7/Cython-3.0.2-py2.py3-none-any.whl.metadata
    Downloading Cython-3.0.2-py2.py3-none-any.whl.metadata (3.1 kB)
  Collecting typing-extensions (from setuptools_scm[toml])
    Obtaining dependency information for typing-extensions from https://files.pythonhosted.org/packages/ec/6b/63cc3df74987c36fe26157ee12e09e8f9db4de771e0f3404263117e75b95/typing_extensions-4.7.1-py3-none-any.whl.metadata
    Downloading typing_extensions-4.7.1-py3-none-any.whl.metadata (3.1 kB)
  Downloading setuptools-68.1.2-py3-none-any.whl (805 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 805.1/805.1 kB 24.4 MB/s eta 0:00:00
  Downloading wheel-0.41.2-py3-none-any.whl (64 kB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 64.8/64.8 kB 5.5 MB/s eta 0:00:00
  Downloading Cython-3.0.2-py2.py3-none-any.whl (1.2 MB)
     ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.2/1.2 MB 31.8 MB/s eta 0:00:00
  Downloading typing_extensions-4.7.1-py3-none-any.whl (33 kB)
  Installing collected packages: wheel, typing-extensions, setuptools, packaging, cython, setuptools_scm
  Successfully installed cython-3.0.2 packaging-23.1 setuptools-68.1.2 setuptools_scm-7.1.0 typing-extensions-4.7.1 wheel-0.41.2
  Installing build dependencies ... done
...

so the vast majority of installs will either

get a wheel, or
build from source, in which case the latest setuptools will be downloaded, not an outdated version

neither of which encounter any errors. The same goes for the documented "install from source", which should use pip install ., not the deprecated and discouraged (throughout all Python packaging, not just pyzmq) direct invocation of setup.py install that encounter any errors, which would also ignore the version specification in pyproject.toml, anyway.

If there is another package in your software project that needs an older setuptools, pip would keep that version. In larger projects there are many version requirements, so it would be nice if version resolving works reliably.
But you are right, it only appears in special situations.

Can you point to a concrete example? I might be missing something, because there really are so many ways to install packages. Since pip's standard behavior is isolated environments for each package, pyzmq's build dependencies shouldn't be related to any other package in your environment. The dependency is only shared across packages if each package's build environment is ignored (e.g. --no-build-isolation), in which case expressing an explicit build dependency on setuptools>=59 won't solve anything because that pin is still ignored. It becomes an only "for humans" dependency communication.

Build dosen't use any version of setuptools anymore.


Sort algorithm is strange

Servers from icecast in following order:
q1
stewone2
stewone

Filled with zeros:
q00001
stewone00002
stewone00000

Sort -n:
q00001
stewone00000
stewone00002

Zeros deleted:
q1
stewone
stewone2

Seemed to be less characters before digits result to upper position.

It's correct that way. 'q' is definitely before 's'. Made a mistake.


Charts on iPad Safari

Describe the bug
When the chart page is displayed on iPad Safari, every chart start expanding and not able to display any charts

Reproduction
iPad Safari
Flowbite version and System Info
n/a

@shinokada
I think it's the preview with Iframe and the chart height set to 100%, if you try to set the height in px the graph doesn't expand; Possible solutions are either to disable the iframe preview or to give a height in px to each graph.

@gi4no Can you create a PR?

@gi4no Thank you for the PR.


Replace connection pool with thread-local connections

@mathieuripert This is just a draft for discussion on Monday. I need to write some tests and dig into some other issues that I've uncovered ("autocommit").
The main idea of this change is to make Jardin thread-safe for all database driver connections and get rid of the special-case control flow around pooled vs. non-pooled.
In addition to simplifying the code, it also dodges an issue with how the psycopg2 connection pool is being used. We are currently using Thread.get_ident() as the key, but that id is not guaranteed to be unique.
Using thread-local storage is definitely simpler than the connection pool, but the pool does have some advantages:

it can easily enforce a maximum number of open db connections
it allows a thread to put its connection back in the pool to be used later by a different thread.
psycopg2's pool has special logic to make sure that the reusable connection is in a good state.

Items (1) and (3) can be solved by just writing some extra code to do it ourself. Item (2) is only important if threads will be coming into and out of existence. I looked at how the batching hub endpoint works, and it uses a small, fixed number of worker threads. So at least for that application, the pool is more trouble than it's worth.

I may end up breaking this apart into separate PRs, but I wanted to see how it would turn out if I took the time to do some cleanup. The main things I tried to address were:

Confusing naming. For instance, there were a lot of things called "connection". And the word "driver" meant both the underlying db Python library (e.g. psycopg2) as well as the name of the directory containing the connection wrappers.
Too much indirection. The base connection wrapper and the per-driver subclasses were doing a complicated dance. I tried to make it more top-down and explicit.

I'm going to break this apart into separate PRs.


Detect Android platform in channel name

The documentation says:

The name of a channel has meaning:

If it contains win or windows, it'll be tagged as a Windows executable
If it contains linux, it'll be tagged as a Linux executable
If it contains osx, it'll be tagged as a Mac executable

It would be nice if it would automatically detect and tag the Android platform (this could also be done by file extension, since virtually all Android builds will be packaged as .apk files).
Aside: And maybe "mac" and "macintosh" should be used to detect the Mac platform, in addition to the "osx" keyword.

(This is really more of an https://github.com/itchio/itch.io issue)

Yeah, it probably is. But since I was dealing with butler and the docs for butler, I came here instead. Sorry.
Should I recreate this issue there?

Should I recreate this issue there?

No need, it's a good reminder to have it here, in this case.

Tagging a build with :android does actually mark it as an Android file even though it is not written in the documentation.

Tagging a build with :android does actually mark it as an Android file even though it is not written in the documentation.

True! I fixed the docs in https://github.com/itchio/butler/commit/ddcbdec2f3c699a4df806e395a4ba7f6201b9f3f


[b/356461225] Add HDFS progress logging

Actual PR is here https://github.com/google/dwh-migration-tools/pull/673


Documentation for Setting up Local Authentication is outdated

I found an inaccuracy in the documentation on the page: http://docs.feathersjs.com/authentication/local.html
It is written there:

You'll notice that it currently includes the password. You really don't want it exposed, so when you're ready to secure the service, you'll need an additional feathers-hook to remove the password property from the response.

But when I run the example, the server response does not contain the password.

It seems this documentation is outdated? Or am I doing something wrong?
I have no more additional hooks for user model.
import globalHooks from '../../../hooks';
import { hooks as auth } from 'feathers-authentication';

let before = {
  all: [],
  find: [],
  get: [],
  create: [auth.hashPassword()],
  update: [],
  patch: [],
  remove: []
};

let after = {
  all: [],
  find: [],
  get: [],
  create: [],
  update: [],
  patch: [],
  remove: []
};

export default { before, after };

And my app.js looks like:
import { join } from 'path';
import { static as serveStatic } from 'feathers';
import favicon from 'serve-favicon';
import compress from 'compression';
import cors from 'cors';
import feathers from 'feathers';
import configuration from 'feathers-configuration';
import hooks from 'feathers-hooks';
import rest from 'feathers-rest';
import bodyParser from 'body-parser';
import socketio from 'feathers-socketio';
import authentication from 'feathers-authentication';
import middleware from './middleware';
import services from './services';

let app = feathers();

app.configure(configuration(join(__dirname, '..')))
  .use(compress())
  .options('*', cors())
  .use(cors())
  .use(favicon( join(app.get('public'), 'favicon.ico') ))
  .use('/', serveStatic( app.get('public') ))
  .use(bodyParser.json())
  .use(bodyParser.urlencoded({ extended: true }))
  .configure(hooks())
  .configure(rest())
  .configure(socketio())
  .configure(authentication( app.get('auth') ))
  .configure(services)
  .configure(middleware)

export default app;

I just pushed a ton of updates to the authentication docs this morning. It was out dated. They are up to date now. The user returned from a successful authentication has the password removed. Thanks for reporting!

Cool! It seems I'll have to read the documentation more than once :)

@kulakowka ya sorry about that. Pretty much everything in the docs is stable and has been proof-read now. Auth was the last piece. I have a couple more updates I'm working on right now but after today it should be pretty solid.

I met a small number of errors compared to other projects. That is why I chose feathersjs as the basis for my new project. Thank you for the work done. :+1:


After the 1.77d update issue with the PlayableCharacterModelUMA.cs

After the recent 1.77d udpate, there is an issue with the SetPlayingWeaponsTypID.
Looked at the normal script and updated the UMA version to include the GetLeftHandShieldItem variable in the method call.

change line 73 from Behaviour.SetPlayingWeaponTypeId(rightWeaponItem, leftWeaponItem);
to Behaviour.SetPlayingWeaponTypeId(rightWeaponItem, leftWeaponItem, equipWeapons.GetLeftHandShieldItem());

You can create a pull request for this


[Issue #395] feat: remodel address to wallet on wallet card

Description:
Shows the paybuttons that belongs to a wallet by inferring them from the wallet addresses.
Test plan:
Go on to create a new wallet, select some address to it. See if all wallets now are correctly inferring their paybuttons.
Remarks:

Now, editing a wallet will produce unexpected results. This will be later addressed in another PR.

Depends on:

[ ] #398

I'm not sure how to test this as they're all greyed out.

I'm not sure how to test this as they're all greyed out.
You can add new ones or reset the database, which should bring it to a state where not all will be greyed out

Maybe we should indicate that an address is in use in XYZ wallet?

@chedieck Actually can you explain again why all of the addresses there are unavailable to be used in the new wallet I was trying to make?


Disable Travis Cargo cache to improve performance

Coverage remained the same at 87.587% when pulling a7011eef0c0b20ccd7253e281c8e5c30cea90b19 on xfix:patch-2 into ba1d6e0589458bc46aef05b1ebd13ce2b3b1b816 on Geal:master.

With this change: 52 min 22 sec
Without this change: Around 1 hour and 20 minutes

hello,
disabling the cache is not really a good option because building all the tools takes a lot of time (that job takes 20mn in your PR). But you had the correct idea, I deleted all the caches, ran one full build, and now CI times are back to normal (10mn full build, 34mn accumulated build time https://travis-ci.org/Geal/nom/builds/381031897 ).
I'll try cargo-tarpaulin to see if it can reduce the build time further


dep prune: panics when Gopkg.lock is deleted

I just deleted and executed dep prune and it panicked:
$ dep prune
panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0x13b3aa0]

goroutine 1 [running]:
main.(*pruneCommand).Run(0x16c96a8, 0xc4201317c0, 0xc42000c2e0, 0x0, 0x0, 0x0, 0x0)
	/Users/ahmetb/gotools/src/github.com/golang/dep/cmd/dep/prune.go:71 +0x3a0
main.(*Config).Run(0xc420019020, 0xc420019020)
	/Users/ahmetb/gotools/src/github.com/golang/dep/cmd/dep/main.go:159 +0x8b3
main.main()
	/Users/ahmetb/gotools/src/github.com/golang/dep/cmd/dep/main.go:44 +0x253

Eeek! Fortunately, should be a pretty simple fix 😄

I will take it


Add Google Poly

Google Poly seems like a nice UI for searching for 3D models. It's a bit annoying because you have to change the search options to remixable to find ones you can download. Models seem to all be OBJ files.
Seems to compare favourably in user experience to other options (blender-models requires facebook likes to download, Yobi3D has several steps to find download links on other websites). But selection is probably worse (best content seems to be provided by Google).
Why do you think the link is worth adding on this list?
Please describe the answer here
Does this project has any License?
Please describe the answer here

thanks @idbrii 🍻


Fix TextTokens - Format and TrimEnd

This fixes the Format and TrimEnd tokens and adds unit tests for all TextTokens.

Can you check the test Orchard.Tokens.Tests.dll: Orchard.Tokens.Tests.TextTokenTests.TestFormat it's not passing on the CI.
Also would you mind signing the CLA? https://cla2.dotnetfoundation.org
Thanks

CLA signed. As for the tests, the { and } chars are handled differently by the tokenizer on 1.9.x branch. I will look into this over the weekend.

@sebastienros The problem is that on 1.9.x branch the Tokenizer does not handle { and } chars in tokens. This is already fixed on dev branch in 423fec90b3494a2482ec186ad521862e9ed7be1e. I created pull request #6067 to bring this change to 1.9.x branch.


[WIP] Introduce Microsoft.Extensions.AI to AIPlatform

This is initial PR, its purpose is implement IChatClient from Microsoft.Extensions.AI.Abstractions LINK.
Before I jump into writing the implementation, please give me feedback on whether my approach is good for your repository.
Is the project location okay? Where can I add the unit tests?
@stephentoub I will glad to you if you also give me some help with this PR.

It would be better to file an issue about what you want to achieve first, IMO. Personally I would prefer there to be another package that depends on both the existing AI Platform package and Microsoft.Extensions.AI to bridge the two, rather than adding a dependency directly - but @amanda-tarafa may have alternative suggestions.

I will glad to you if you also give me some help with this PR.

I'll be glad to help.

@Krzysztof318 do please file an issue explaining what your goal is, if there are alternatives to achieving that goal that you have discarded, etc. For instance, same as @jskeet I'd prefer a completely separate package, but we should discuss that.
Equally, we'd need to discuss internally about ongoing maintenance, etc. and accept (or not) the work accordingly.
It's better to have all those discussions in an issue that in PRs. You can then use PRs to demonstrate or support some of the technical decisions being discussed.
Thanks!

@amanda-tarafa @jskeet Okay I will post issue tommorow

I created an issue #13815 and I leave this PR for future concept purposes.


Add source file headers

Issue #, if available:
Source files require a copyright header
Description of changes:
Added copyright header to all .ts, .js, and .py source files
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

Changes so far LGTM
What are the plans for adding the license to the other files like searchable-pdf jar?

We will apply the same headers to the additional files. Going ahead, we will need to add the header to all new source files.


feat: contract flattener

What I did
Adds Vyper contract flattener functionality.
fixes: #75
How I did it
How to verify it
Checklist

[x] Passes all linting checks (pre-commit and CI jobs)
[x] New test cases have been added and are passing
[x] Documentation has been updated
[x] PR title follows Conventional Commit standard (will be automatically included in the changelog)

Depends on release after https://github.com/ApeWorX/ape/pull/1963

I think the biggest thing I would prefer is to get rid of the OUTFILE requirement. Writing "out" should be done using the >> operator.
ape vyper flatten path.vy >> out.vy

This is how I originally wanted to do it but the ape logger ruins stdout.  The click command can't get in and adjust log level before ape starts outputting stuff we don't want.  Open to ideas.

Open to ideas.

one idea, let it default to stdout still so it isn't required.
my other idea: update ape_cli_context or something that allows us to completely disable the logger.
question, what are some of the earliest logs you were seeing?

Open to ideas.

one idea, let it default to stdout still so it isn't required. my other idea: update ape_cli_context or something that allows us to completely disable the logger.

Maybe, but defaulting to stdout seems like it'll be very annoying to users when the output isn't a compilable contract.
I'm not sure adjusting that decorator will do much when most of the output I've been seeing has come during plugin/config loading .

question, what are some of the earliest logs you were seeing?

Couple examples.  In a dev env:
WARNING: Found 2 packages named 'eth-ape'.
Installation paths:
	/home/mike/.venvs/ape-dev/lib/python3.11/site-packages/eth_ape-0.6.20.dev208+gbe26439c.d20240319.dist-info,
	/home/mike/dev/ape/src/eth_ape.egg-info

In a clean project env:
WARNING (ape-vyper): Unprocessed plugin config(s): solidity, hardhat. Plugins may not be installed yet or keys may be mis-spelled.

Think I've seen some others as well but this is what I was able to get on first tries.  We could suss out every warning or log output I can generate and suppress it but it doesn't really fix the fact that this is a common behavior of the ape logger.  Unless we can somehow completely shut down logging at logger init time, I'm not sure we can reliably prevent stdout from being ruined.


Fix MIME type for .mjs files

My bad for not testing. But now I will!
My browser refused to load the JS because of the fallback MIME type. So currently it's broken.

No longer since #11 takes care of this.


feat: loading state for account import

Description
Adds loading state to account import in the manage accounts drawer.
Pull Request Type

[ ] :bug: Bug fix (Non-breaking Change: Fixes an issue)
[ ] :hammer_and_wrench: Chore (Non-breaking Change: Doc updates, pkg upgrades, typos, etc..)
[x] :nail_care: New Feature (Breaking/Non-breaking Change)

Issue (if applicable)
closes #6849
Risk

High Risk PRs Require 2 approvals

Moderate risk. This is intended to prevent getting into invalid app state during account import. Noting the complexity of USB communication integrated with the app, we need the "worst case" to be a reload of the app required to reset valid state, rather than corruption of data in the store.

What protocols, transaction types or contract interactions might be affected by this PR?

Testing
Check that it's not possible to corrupt the state of the app by importing an account and opening/closing the account management drawer, and also rapidly adding/removing accounts.
Engineering
Operations

Screenshots (if applicable)

Note that it's still possible to get into an invalid state on ledger with the following steps:

click import accounts for a chain, add a new account
2.click done
immediately attempt to import accounts for the same chain
the list of accounts will be missing some rows


crashes scene

Hi there,
I'm trying to use this component in a scene but each time I add the vive-cursor attribute, it crashes the scene.
I'm using the latest master aframe and the latest of this component as well. Here's a codepen to see what's happening: http://codepen.io/sirkitree/pen/aBqQab?editors=1000 - if you modify that scene by just adding the vive-cursor attribute to the vive-control entity, you'll see it crash.
You can't see the error on codepen's console, but here is what I get locally:

Any thoughts on what I might try to get to the bottom of this?

My guess is that a change (probably with the raycaster) has broken vive-cursor in the latest A-Frame master build.
Curiously, adding A-Frame's own raycaster component to the vive-control entity causes the same crash, so the problem may not lie entirely with vive-cursor.

I believe this issue was fixed with the release of A-Frame 0.4.0.
Applying the vive-cursor component to a vive-control entity no longer causes a crash in your CodePen (just tried it now).

It has a different issue with aframe 0.4.0, saying
TypeError: attributes.position is undefined

could this be related to https://github.com/aframevr/aframe/pull/1925 ?

@noerw Could you file a new issue with more info? I'm not sure how to reproduce that error.

this only occured with this aframe build.
current master works again, nevermind!


Acceptance criteria checklist (DoD)

The following checklist must be complete before a template is published.
Repository Management

[x] Standards compliant readme.md is in place
[x] License is in place. Make sure you choose the correct license
[x] Security guidelines are in place
[x] Contribution guidelines are in place
[x] Code of conduct is in place
[x] Issue template is in place
[x] #19
[x] Repo description is in place, describing the use case and technologies used in the solution

Source code structure and conventions

[ ] GitHub Actions (This refers to .github/workflows/azure-dev.yml or custom workflow to run on a GitHub runner) is in place
[x] DevContainer (/.devcontainer folder where applicable) configuration is in place
[x] Infrastructure as code is in place (/infra folder where applicable, manifest files or code generators in the case of Aspire and similar )
[x] Azure services configuration (/azure.yml file) is in place
[ ] Minimum coverage tests are in place

Functional requirements

[x] azd up successfully provisions and deploys a functional app
[ ] GitHub Actions run tasks without errors
[x] DevContainer has been tested locally and runs
[x] Codespaces run [locally and in browser]
[ ] All tests pass

In the absence of e2e tests,

[x] The application has been manually tested to work as per the requirement

Security requirements

[x] Microsoft Managed Identity is implemented
[x] microsoft/security-devops-action is integrated to the CI/CD pipeline and the analyzer were ran

When a service selected doesn't support Managed Identity, the corresponding issue must have been reported and the security considerations section in the readme, should clearly explain the alternatives.

Azure Key Vault is a preferred alternative

The following items are not strictly enforced but may prevent the template from being added to the gallery.
Project code follows standard structure, per language. Please check one.

[x] Yes, follows standards
[ ] No, doesn't follow standards

Code follows recommended style guide

[x] Yes, follows style guide
[ ] No, doesn't follow style guide

Working on azd pipeline config! Forgot about that.


Unable to download webpage: HTTP Error 404: Not Found

'$ youtube-dl --verbose -F https://player.vimeo.com/video/664495314
[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: ['--verbose', '-F', 'https://player.vimeo.com/video/664495314']
[debug] Encodings: locale UTF-8, fs utf-8, out utf-8, pref UTF-8
[debug] youtube-dl version 2021.12.17
[debug] Python version 3.8.10 (CPython) - Linux-5.4.0-91-lowlatency-x86_64-with-glibc2.29
[debug] exe versions: ffmpeg 4.2.4, ffprobe 4.2.4, rtmpdump 2.4
[debug] Proxy map: {}
[vimeo] 664495314: Downloading webpage
ERROR: Unable to download webpage: HTTP Error 404: Not Found (caused by <HTTPError 404: 'Not Found'>); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 634, in _request_webpage
return self._downloader.urlopen(url_or_request)
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2288, in urlopen
return self._opener.open(req, timeout=self._socket_timeout)
File "/usr/lib/python3.8/urllib/request.py", line 531, in open
response = meth(req, response)
File "/usr/lib/python3.8/urllib/request.py", line 640, in http_response
response = self.parent.error(
File "/usr/lib/python3.8/urllib/request.py", line 569, in error
return self._call_chain(*args)
File "/usr/lib/python3.8/urllib/request.py", line 502, in _call_chain
result = func(*args)
File "/usr/lib/python3.8/urllib/request.py", line 649, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
'
Using the latest version, 'youtube-dl is up-to-date (2021.12.17)'
Also tried with the complete URL, from '?' to the end.

Its not a valid URL:
PS C:\> curl -I https://player.vimeo.com/video/664495314
HTTP/1.1 404 Not Found

There were 2 URLs in the page source, and I copied/pasted as I always do.  Both came up with Error 404.

Hmmmm - when I paste that URL into a browser tab, I get the intended Vimeo video.  When I grab the URL from THAT page, youtube-dl WILL find it (when I leave off the trailing backslash):
https://player.vimeo.com/video/664429574?h=0c86d78c90\

No need for YouTube-DL, this page has links to download:
https://vimeo.com/664429574/0c86d78c90

Yup.  I've just been spoiled by copying the vimeo.com link from page source, and using youtube-dl to download in the desired format.  Thanks for your input.
It does appear that the link is valid, but youtube-dl gives the 404 Error.  So I followed the instructions to post the debug output here.

Please use issue template next time. You can choose the one when you click the New issue button if you log in first then (re)open the page.
There's this checklist item at the top of the template, so you can make sure first that the URL is valid.

[ ] I've checked that all provided URLs are alive and playable in a browser

And please close this. No point in keeping this open anymore, I think.


Pure Data example not working

Hi Antoine / IRCAM!
Fantastic work getting everything to run in real-time! I wanted to play around with the included PD patch, but found that it only produces sounds with many artefacts using your supplied pre-trained model.
I tried training on the violin audio used in the original DDSP paper, and while that appears to go well (samples sound comparable), loading the real-time converted pre-trained model gives no sound so far alas. This applies for both 16kHz and 48.
Thanks!

Hi! I'm curious to know if you've managed to train a custom model with the provided train.py script... I seem to have problems when training.

@moiseshorta I'm able to train a model, yes. I've only evaluated the output with the checkpointing that's in place - I haven't been able to reproduce it yet with offline / real-time tonetransfer code.

Are you using the same pitch and loudness estimators for training and generation? If you want to use Sigmund in the end, you should use it as a preprocessing function too (look at the provided patches and the preprocess_from_sigmund script)

Furthermore sigmund is far below crepe in terms of precision, so it might create artifacts too!

Are you using the same pitch and loudness estimators for training and generation? If you want to use Sigmund in the end, you should use it as a preprocessing function too (look at the provided patches and the preprocess_from_sigmund script)

Good point - I overlooked this. I'll make sure to convert before training with the example.pd patch, I couldn't figure out what the left-hand side of the patch was used for exactly until now.

Are you using the same pitch and loudness estimators for training and generation? If you want to use Sigmund in the end, you should use it as a preprocessing function too (look at the provided patches and the preprocess_from_sigmund script)

Is the supplied pre-trained weights trained on a sigmund-converted dataset? I'm not entirely sure what output to expect at the moment, it would be helpful to have a reference :)
I'll post some audio sample links once I have some samples in from the violin dataset to check.

Yes the pretrained model is based on a sigmund preprocessing at 48kHz, I should mention it somewhere! I will post a more "clear" demo of the patch soon :)

Commit b8bc22ffc01de8792b1160a908a77dd3d8e8da21 fixes #12


The column (field) that must be sorted by default when data loads into grid.

Hi,
How to force the field that will be used to sort (from the time the page is loaded)? Example: by field "Address".
I use code like in Basic Scenario demo.
https://github.com/tabalinas/jsgrid/issues/189
I have the same issue what is described above. I used the suggested solution , so that sorting is happening by default when the grid id loading. But the problem is when i click on search icon or clear filter icon(without giving any text to search or giving text) again the sort order is missing.
My requirement is data should be in sorting order even if we click on search or clearfilter icon.

Hi,
Just redefine loadData function.
This is raw function copied from jsgrid source and '$("#jsGrid").jsGrid("sort", "Age");'  is added which does the trick
$("#jsGrid").jsGrid({
    height: 300,
    width: "100%",
    filtering: true,
    sorting: true,
    paging: true,
    autoload: true,
    pageSize: 6,
    pageButtonCount: 5,
    controller: db,
    fields: [
        { name: "Name", type: "textarea", width: 150 },
        { name: "Age", type: "number", width: 50 },
        { name: "Address", type: "text", width: 200 },
        // problematic field: if you uncomment the following field definition,
        // you'll see that no records will be displayed in the grid.

        { name: "Country", type: "select", items: db.countries, valueField: "Id", textField: "Name" },

        { name: "Married", type: "checkbox", title: "Is Married", sorting: false }
    ]
,

 loadData: function (filter) {
        filter = filter || (this.filtering ? this.getFilter() : {});

        $.extend(filter, this._loadStrategy.loadParams(), this._sortingParams());

        var args = this._callEventHandler(this.onDataLoading, {
            filter: filter
        });

        return this._controllerCall("loadData", filter, args.cancel, function (loadedData) {
            if (!loadedData)
                return;

            this._loadStrategy.finishLoad(loadedData);

            this._callEventHandler(this.onDataLoaded, {
                data: loadedData

            });
              $("#jsGrid").jsGrid("sort", "Age");
        });
    }

});

Hi heiovsky,
Thank you very much for giving the solution. It is working exactly as per my requirement.


Add a per-method doc comment with the API version

Fixes https://github.com/Azure/azure-sdk-for-go/issues/17679


Negative numbers in preloadPagesCount

Hey again,
Do you know what is happening when preloadPagesCount is negative? I tried with preloadPagesCount = -1 and -3 and in both cases it behaves like I'll just put a 1 - is it desired behavior?
Maybe a negative numbers in preloadPagesCount property should throw an error since those are not logically correct?

I set 0 and negative number to 1 when user pass those number to preloadPagesCount. I will Think about allow 0 and throw exception when user pass negative number

0 is correct value so it should be allowed. Exception on negative/null value will be great.


support Descriptors for metadata

Feature Request
I have an issue when create cr about tekton-operator tektonpipeline.
The CRD‘s controller designs that limit the name of cr which name must be 'pipleine'.
Describe the solution you'd like
Is it possible to add rules to restrict the fields in the metadata, like SpecDescriptors

We do not control the tekton-operator manifest. So if you have an issue with tekton-operator CRD, please reach out to their development team directly: https://tekton.dev/docs/operator/.


build: release monopackage

Description

Moved @dialpad/dialtone -> @dialpad/dialtone-css
Renamed root package to @dialpad/dialtone
Fixed a bunch of linter errors
Added the monopackage release process

Notes:

Will make the appropriate changes on tags to be able to release this as dialtone 9 once this is merged into staging.
I'm not making this a breaking change to avoid accidentally increasing the version on all of our libraries as this contains changes on many of them.

Pull Request Checklist

[x] Ask the contributors if a similar effort is already in process or has been solved.
[x] Review the contribution guidelines.
[x] Use staging as your pull request's base branch. (All PRs using production as its base branch will be declined).
[x] Ensure all gulp scripts successfully compile.
[ ] Update, remove, or extend all affected documentation.
[x] Ensure no private Dialpad links or info are in the code or pull request description (Dialtone is a public repo!).

Obligatory GIF (super important!)

looks like a bad path still exists somewhere when running the deploy preview


Modify EventButton to actually parse transactions and events

Right now it only displays the latest event in a transaciton
We should look at all events and fill in some kind of metadata on the entire transaction, like type, from, to, amount, caller, etc

Crude but working. Ignoring a lot of events atm


Updated for Codekit 3

Updating for Codekit 3's new config file extension: https://codekitapp.com/help/

@codethirteen any links to StackOverflow discussions or other documentation about this change?

@codethirteen it looks like the .codekit3 file isn't supposed to be shared? The documentation mentions that this does update settings when you get it from somewhere else, but doesn't quite indicate whether this file should be versioned or not.

Finally, gitignore.io does list the file.

The source of that change doesn't provide any other context: https://github.com/dvcs/gitignore/pull/61

I'm going to take this in because it's additive to what was used for versions 1 and 2 and there's been no pushback about that. Thanks for the additional context @codethirteen!


add Ember.computed equivalents

that have dependent properties on both sides

@TopsyCM v0.5.0 released.


container not authenticating after mapping ssh key

I am mapping my ssh key as shown in the documentation, it seems like the container isn't using the correct username when running the following:
docker run -it -v ~/.ssh/id_rsa:/root/.ssh/id_rsa abhartiya/tools_gitallsecrets -token=REDACTED -org=REDACTED

Username for 'https://github.com': Username for 'https://github.com': Username for 'https://github.com': Username for 'https://github.com': Username for 'https://github.com': Use
rname for 'https://github.com': Username for 'https://github.com': Username for 'https://github.com': Username for 'https://github.com': Username for 'https://github.com':
Password for 'https://github.com': signal: interrupt: Cloning into '/tmp/repos/org/.........REDACTED

Did I miss something?

@MScranoGA try giving it the -scanPrivateReposOnly flag as well. The SSH mapping is supposed to work for scanning private repos only and you need that flag for that function to work.

thank you that seems to have resolved my issue.


improve #[may_dangle] for type parameters

based on the discussion from https://github.com/rust-lang/rust/pull/103413 and https://rust-lang.zulipchat.com/#narrow/stream/213817-t-lang/topic/deprecating.20spooky-dropck-at-a-distance/near/349392447. A big thanks to @SoniEx2 for their valuable input in these threads.
I consider this to be solely the responsibility of t-types, but cc @rust-lang/lang, @RalfJung
rendered

yeah, thought a bit about this myself, and maybe keeping #[may_dangle] for lifetimes and requiring either #[may_dangle(can_drop)] and #[may_dangle(must_not_use)] would be good :shrug:

went with #[may_dangle(droppable)] vs #[may_dangle(must_not_use)].
with this the more dangerous variant has a scarier and longer name, which should hopefully push users towards the more correct one even more.

How does this relate to https://github.com/rust-lang/rfcs/pull/3414 ?

How does this relate to #3414 ?

See https://rust-lang.zulipchat.com/#narrow/stream/213817-t-lang/topic/deprecating.20spooky-dropck-at-a-distance/near/350749724

In case another instance of a need for this outside of std is of interest, here's a recent one from the tracing crate: https://github.com/tokio-rs/tracing/issues/2578
(Feel free to mark as off-topic if deemed as such)

If use cases are an open question, another notable case where it's desired is https://crates.io/crates/typed-arena. Several optimizations I'd like to implement are impossible without implementing my own Drop, which would break many use cases of typed_arena.


removed unnecessary check

Description
removed an unnecessary check.
Related issues and discussion
#1173

Merged, thanks @jaztriumph


Move log tailing after publish

we can no longer tail the logs before the message is published since we scale to 0

Now that the function pods are ephemeral, I wonder if we should also change the publish examples to use the new support for additional args to specify a number of messages and a sleep interval. For example the following will publish 10 messages with 5 seconds delay between each publish:
./publish greetings hello 10 5


How do I return indented json?

First Check

[X] I added a very descriptive title to this issue.
[X] I used the GitHub search to find a similar issue and didn't find it.
[X] I searched the FastAPI documentation, with the integrated search.
[X] I already searched in Google "How to X in FastAPI" and didn't find any information.
[X] I already read and followed all the tutorial in the docs and didn't find an answer.
[X] I already checked if it is not related to FastAPI but to Pydantic.
[X] I already checked if it is not related to FastAPI but to Swagger UI.
[X] I already checked if it is not related to FastAPI but to ReDoc.

Commit to Help

[X] I commit to help with one of those options 👆

Example Code
return json.dumps({key: value}, indent=4)

Description
The question is how do I indent a json response? the above code did not work.
Operating System
Linux
Operating System Details
No response
FastAPI Version
0.68.0
Python Version
3.9.6
Additional Context
No response

I'm not very good with object orient programming but I think this should work https://pastecord.com/botevykola.py
please correct me if I am wrong. If it will work I will create a pull request on the starlette github.

this works. I made a pull request on starlette's github. I could also just make my own response like this return Response(media_type="application/json", content=json.dumps({key: valur}, indent=4))


What about Docs?

Let's work on these suggestions:

[ ] #7
[ ] #8
[ ] #9
[ ] Decide if we want to go with something more complex

What you are saying is that we should do

[ ] Create a docs folder
[ ] Create a new index.md file
[ ] Turn on git pages
[ ] Decide if we want to go with something more complex

document.write('Hello World!')


Image picker mocking

Description
I am new testing and detox and the App i am automating is trying to upload a picture and i cant seem to pull trigger on this
metro.config.js

imagePickerProvider.tsx

imagePickerProvider.mock.tsx

and this is my test and i want to upload the image on step 3

this is the app
stage 1  click on " Add Image"

Stage 2 click "photo gallery" well i guess this is where the mocking should be happening and i am not sure if i applied the mock work i saw online correctly but i cant use it

Your environment
Detox version:
React Native version:
Node version:
Device model:
OS:
Test-runner (select one): jest / other

Hey @usandaBolder, just checking, did you run your app with APP_MODE=mocked?

Hey @asafkorem  i run my metro with  RN_SRC_EXT=e2e.js react-native start


styled-components is ~50% larger than it could be due to IE11 support

The problem
Looking at Bundlephobia, it appears that tslib dependency is taking 19% of the bundle size. My own tests using Vite Bundle Analyzer yielded even more unfavorable results: styled-components consists of 32.88 KB of styled-components "itself" and 14.42 KB, or 30% of the total size, of tslib.
This made me wonder if it's possible to get rid of tslib and reduce the bundle size.
Possible solutions
:-1: Avoid problematic syntax
Looking at unminified bundle we can see only two imports from tslib:
import { __spreadArray, __assign } from 'tslib';

The former is used 8 times, the latter - 18. I don't think it would be wise to try and rewrite the code to get rid of these imports, as it would make the code less readable and maintainable (I tried!).
:+1: Target ES2015
A much better solution would be to change the target in tsconfig.json to ES2015. This would allow TypeScript to use ES6 features, such as spread operator and object.assign, without transpiling them to ES5.
Not only that, but the "core" styled-components code would be reduced from 29255 to 26884 bytes, which is another 8% reduction in size.
Browser support
Looking at the docs, we can't find any info on what browsers are supported in v6, so I guess I should assume that it's the same as in v5, which unfortunately includes IE11.
On the contrary, there's this post from @kitten suggesting that IE11 support is going to be dropped in v6. Also, with 0.16% of global usage, there isn't much to worry about.
Still - a breaking change, so we can't just change the target to ES2015.
What we can do
Here's what we can do:

Release a new major version of styled-components with ES2015 target in tsconfig.json
Release a new minor version of styled-components which would include additional, opt-in ES2015-targeted build

There is another thing to consider: performance. Part of why we target ES5 is the ES5 APIs are actually faster than their ES6 counterparts.

For a library like styled-components where our hot paths are invoked potentially many thousands of times upon a page and sometimes even dynamically, it matters.


Iris writes non-CF-compliant polar stereographic netCDF files (wrongly named grid mapping attribute)

🐛 Bug Report
When loading a polar stereographic netCDF file, Iris correctly interprets the "standard_parallel" attribute of the polar stereographic grid mapping variable, storing this in the "true_scale_lat" attribute of the PolarStereographic coordinate system (line 456 of iris/fileformats/_nc_load_rules/helpers.py).
But when saving such a cube to netCDF, Iris writes this value to an attribute of the grid mapping variable called "true_scale_lat", not "standard_parallel", as required by the CF convention (https://cfconventions.org/Data/cf-conventions/cf-conventions-1.10/cf-conventions.html#polar-stereographic).
This looks to be a defect in line 2150 of iris/fileformats/netcdf/saver.py, which reads:
                    cf_var_grid.true_scale_lat = cs.true_scale_lat

Where I would have expected:
                    cf_var_grid.standard_parallel = cs.true_scale_lat

The consequence is that the netCDF written by Iris is not CF-compliant, and cannot even be read back correctly by Iris due to the lack of the required "standard_parallel" or "scale_factor_at_projection_origin" grid mapping attributes, meaning that the cube ends up lacking horizontal coordinates or a coordinate system.
Happy to provide example data file and code to reproduce the bug, or any other information that might be useful.
Environment

Iris Version: 3.3 or later (i.e. one with polar stereographic support)

Thanks @TonyP-BAS
I don't know how it slipped through exactly, but clearly you are right.
From the recently-added coverage scan, these lines are not touched by any tests, so no wonder.
( I would link, but it seems the CodeCov site is currently down :frowning_face: )
Do you feel able to submit a PR for this yourself ?
I think the code change is probably just as simple as you suggest, but we should definitely add a test.
The simplest I can think of is an integration test to check that Iris can save and re-load one of these and retrieve a coord-system with the same parameters.

I don't know how it slipped through

But it appears that I merged it. :flushed:


Feature request: add headers to csv exports

It isn't always obvious in the export what the purpose is of a particular column (especially when it is empty across all entries). Adding the column headers to the export would be helpful. Can this be considered please?

This is covered by #655

Reopening this as an outstanding item from #655 since I probably won't get to it today.


Remove past events from main even list and create "past events" section

Hi @biancarosa, the PR #135 should fix that when its done.
o/

About the Past Events page #217 i created a issue for that.
You you want to contribute more please feel free to open and close our issues.

Can this issue be closed? @luanfonceca

I am closing this one, cause that was already fixed on other PR.


Added the support to pass in rootfs.img string in build command

Added the ability to pass ZENBUILD_VERSION as an environment variable to
the build, to be used as the version string for the rootfs.img.

Ex:
  ZTOOLS_TAG=kalyan-test ZENBUILD_VERSION=kalyan-test-ver1 make rootfs.img

  The image version would bei ( from zcli device show --detail output ):
    Configured Current Base Image: kalyan-test-ver1

Got the go ahead from Roman.. Merging the change.


Remove ibis version cap

Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:

Comparison is base (e37dde5) 100.00% compared to head (bcea439) 100.00%.

:exclamation: Your organization needs to install the Codecov GitHub app to enable full functionality.
Additional details and impacted files
@@            Coverage Diff            @@
##            master      #533   +/-   ##
=========================================
  Coverage   100.00%   100.00%
=========================================
  Files          128       128
  Lines        12271     12270    -1
=========================================
- Hits         12271     12270    -1

:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.


refactored js v.1

Describe the changes you have made in this PR -

Refactored the JavaScript code in three files under simulator folder as of now. If this PR is approved then I will refactor rest of the JS code.
Used ES6 arrow notation and replaced var with let.
Used a for-of loop instead of a for loop.

Screenshots of the changes (If any) -
None
Note: Please check Allow edits from maintainers. if you would like us to assist in the PR.

Coverage remained the same at 84.751% when pulling 28c66f73193f1603e8ec8e741e65d5add759d6cd on ShreyaPrasad1209:refactor/simulator into 3dfe1ee09fc7d3bcfb6800a39e5227281638ee78 on CircuitVerse:master.


test: Add "generate" target to Jenkins file

Related to PR #240

once #240 is merged and we validated that this job runs green against then master it lgtm

Generate job runs green
https://jenkins-monitoring.prod.coreos.systems/job/prometheus-operator-generate-content/1/console

Nice!


Fix rendering of chat info button

Addresses #229.
Currently a new chat info button is created whenever the UI is updated. This creates a problem as when the UI is re-rendered it is still referencing the original button (which has not actually been updated). To fix this issue a button should only be created once and then updated in place prior to each re-render.

@pmeier I've added your suggestions and I think this should be ready for merge now.


Blob via submitRequest util

how do i send a blob image using submitRequest? I tried to set Content-Type header as miltipart/form-data but it didnt work

You need to use form data for that case
const formData = new FormData();
formData.append("_method", "PUT");

formData.append("avatar", profileForm.value.avatar);

const data = await $larafetch(`/api/profile`, {
  method: "POST",
  body: formData,
});

Do you want to submit the form as POST or PUT request?

i want to submit form as PUT request with image

`
const form = reactive({
_method: 'PUT',
first_name: account.value.first_name,
surname: account.value.surname,
patronymic: account.value.patronymic,
graduation_year: account.value.graduation_year,
country: account.value.country,
city: account.value.city,
job: account.value.job,
comment: account.value.comment,
avatar_url: null as Blob,
faculty_id: account.value.faculty_id,
position_x: account.value.position_x,
position_y: account.value.position_y,
});
// ....
const formData = new FormData();
for (let key in form) {
formData.append(key, form[key]);
}
submitRequest(
$larafetch(/account/${account.value.id}, {
headers: {
"Content-Type": "multipart/form-data",
},
method: "POST",
body: formData,
}))
`

const form = reactive({
_method: 'PUT',
first_name: account.value.first_name,
surname: account.value.surname,
patronymic: account.value.patronymic,
graduation_year: account.value.graduation_year,
country: account.value.country,
city: account.value.city,
job: account.value.job,
comment: account.value.comment,
avatar_url: null as Blob,
faculty_id: account.value.faculty_id,
position_x: account.value.position_x,
position_y: account.value.position_y,
});
// ....

const formData = new FormData();
for (let key in form) {
formData.append(key, form[key]);
}
submitRequest(
$larafetch(/account/${account.value.id}, {
headers: {
"Content-Type": "multipart/form-data",
},
method: "POST",
body: formData,
}))

I don't think you need the "Content-Type": "multipart/form-data" headers

doesnt work either

Can you please pull the latest commit and see if your issue is solved?

@amrnn90 yeah now it works thank you


Remove torch dependency, use CuPy for feature extraction

Hi all,
This PR aims to remove the torch dependency as it's only used for feature extraction, there are 3 alternatives:

use NumPy only and scrap GPU acceleration completely, this will slightly simplify the FE code by removing the device handling and framework handling code
use NumPy + CuPy (the current implementation), this will allow the usage of GPU acceleration for those who want it, we still need to decide whether CuPy will be included in the base requirements or maybe as an optional requirement or none at all
use CuPy only, it has the option to use numpy when there's no GPU available, this will simplify the code as option 1 but will come with some drawbacks:

it needs testing to see how it behaves in both cpu-only environments and gpu environments where cuda is not properly set up
it will use GPU by default with no option to turn it off
it needs to be included as a base requirement

These are performance figures on a 30s segment
# torch on CPU
7.07 ms ± 173 μs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)
# torch on GPU
704 μs ± 102 μs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)
# New numpy on CPU
27.2 ms ± 1.43 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)
# New CuPY on GPU
2.68 ms ± 62.2 μs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)
# Old numpy on CPU (v1.0.3)
61.6 ms ± 2.1 ms per loop (mean ± std. dev. of 7 runs, 100 loops each)

Mentioning community reviewers, feel free to ignore this
@Purfview @Jiltseb @ozancaglayan @jordimas @hoonlight @zh-plus

Hi,
What's the value for MKL_NUM_THREADS and OMP_NUM_THREADS here for the CPU tests? Or are they not set?

I have a librosa.stft based implementation for this. I checked that your stft and librosa.stft is producing the same results and more or less performing at the same speed (6ms) Unfortunately, these implementations does not seem to be using multi-threaded computation whereas torch.stft efficiently uses all cores which make the difference: 1.6ms
Another main bottleneck here is the padding with 30 seconds.

I get 32ms on a sample of 30s of audio with n_mels=128 and 27ms with n_mels=80
With padding=False, 32ms goes down to 16ms obviously

But essentially the effect of padding the input is padding the output with some constant vector. So one could mitigate this doubling by just padding the stft/mel outputs cleverly.

I think doing this on GPU with torch is a bit overkill as feature extraction is seldom the bottleneck in the whisper pipeline. Simplicity, dependency management is more important here. And when things move towards numpy2, it'll be not that bad.

This looks interesting as well, should be quite fast
https://github.com/IntelPython/mkl_fft

Hi,

What's the value for MKL_NUM_THREADS and OMP_NUM_THREADS here for the CPU tests? Or are they not set?
Is this for 80 mels or 128 mels case?

I updated the figures along with the benchmarking script and limiting it to 4 cores for reproducability
I'm using 128 Mels

I think doing this on GPU with torch is a bit overkill as feature extraction is seldom the bottleneck in the whisper pipeline. Simplicity, dependency management is more important here. And when things move towards numpy2, it'll be not that bad.

We're removing torch that's for sure, the choice here is between both cupy and numpy or one of them

I have a librosa.stft based implementation for this. I checked that your stft and librosa.stft is producing the same results and more or less performing at the same speed (6ms for unpadded 30s of audio). Unfortunately, these implementations does not seem to be using multi-threaded computation whereas torch.stft efficiently uses all cores which make the difference: ~1ms

This implementation is ported from C++ pytorch implementation, it's very similar to the librosa implementation but has some extra functionality that I'm not sure we need here

Another main bottleneck here is the padding with 30 seconds.

I get 32ms on a sample of 30s of audio with n_mels=128 and 27ms with n_mels=80
With padding=False, 32ms goes down to 16ms obviously

But essentially the effect of padding the input is padding the output with some constant vector. So one could mitigate this doubling by just padding the stft/mel outputs cleverly.

I'm working on removing the padding completely while still generating identical results but I'm leaving it for another PR, Check here it does reduce the FE time to half indeed

We lose almost the same amount of time as STFT to np.log10(np.clip(mels, a_min=1e-10, a_max=None)) as np.log10 is horribly slow. I think they fixed this in numpy 2 numpy/numpy#19478

I have no idea how to calculate log10 using another way that is faster unfortunately

I'm working on removing the padding completely while still generating identical results but I'm leaving it for another PR, https://github.com/huggingface/transformers/pull/34111#issuecomment-2441321749 it does reduce the FE time to half indeed

Interesting. I'm always confused about one thing. Given that whisper is trained with 30 secs segments, the above PR and your thinking is not about running Whisper freely on arbitrarily sized audio files but rather removing the always add 30 secs more of 0.0s logic in FE right?
I thought that to do proper seeking and timestamping, Whisper requires that +30 secs of zeros all the time but isn't that the case then? i.e. would the output of Whisper be exactly the same if we just pad the inputs to 30 secs at most?

I'm working on removing the padding completely while still generating identic
Interesting. I'm always confused about one thing. Given that whisper is trained with 30 secs segments, the above PR and your thinking is not about running Whisper freely on arbitrarily sized audio files but rather removing the always add 30 secs more of 0.0s logic in FE right?

I thought that to do proper seeking and timestamping, Whisper requires that +30 secs of zeros all the time but isn't that the case then? i.e. would the output of Whisper be exactly the same if we just pad the inputs to 30 secs at most?

We don't even need to pad it to 30s, adding hop_length samples is enough since we remove the padding and then pad it again with zeros, that means we remove only the last frame in the features instead of 3000+ samples
I've verified that it's numerically identical but I'm still thoroughly investigating if further effects exist

I implemented the reduced padding in bc86503, everyone feel free to test it and report if there are any issues

Thanks! I wont probably have time next week as I'll be on annual leave. One thing though, does this mean that you'll no longer be padding let's say an audio file of 10 seconds to 30 seconds? People were saying that Whisper has a severe hallucination problem if you let it transcribe signals less than 30 seconds because its not trained with an attention mask. There are even papers which finetunes it to mitigate this.
But I'm not 100% sure whether its the same thing or not, need to test it properly.

Thanks! I wont probably have time next week as I'll be on annual leave. One thing though, does this mean that you'll no longer be padding let's say an audio file of 10 seconds to 30 seconds? People were saying that Whisper has a severe hallucination problem if you let it transcribe signals less than 30 seconds because its not trained with an attention mask. There are even papers which finetunes it to mitigate this.
But I'm not 100% sure whether its the same thing or not, need to test it properly.

In the original whisper implementation, the features are padded with 30s of zeros, converted to log mel spectrogram, and then the features that correspond to the padding are removed, and the features are then padded again with zeros until they are equivalent to 30s.
What I did here is that I found that padding with 10ms instead of 30s is mathematically equivalent and produces the same encoder input and output within the numerical tolerance of the data type used.
Why does this works? because in the STFT calculation, each window is independent and has an overlap of hop_length, so padding with hop_length is enough to simulate that the last frame has zeros after it, any more padding does not overlap at all with the audio and it's discarded later, so we can count that as redundant calculation.

I want to merge this before Friday so we can release a new version at 15th of November, so if anyone has any comments or reviews please let me know

It is terrific to see that the community feedback worked and torch dependencies are gone with such PRs, bringing the faster-whisper back to its origin @MahmoudAshraf97.
But one question; have you tested your new implementation with short chunks? I have tested the new feature extractor and it produces no transcripts when chunks are shorter than 30 secs.
Pytorch implementation works fine and produces the correct results.
I see your discussions with @ozancaglayan and others about deprioritizing short-chunk processing. But we should not break an existing and expected feature.

This implementation should produce identical results to the old and original whisper implementation and it's completely backwards compatible, I'm not sure I understand your description of the problem, can you write code to reproduce it?

I'm processing massive amount of short 1-3 second chunks, and until now I passed torch array to Transcribe to skip the slow audio decoding. Now since I cannot pass torch array anymore, passing numpy array, but that and moving FTT to numpy from torch implementation (and moving load from GPU to CPU) slowed down the whole transcribing by a lot on my side. So maybe use_pytorch boolean flag somewhere would be better to keep pytorch optionally available for audio input and for feature extraction.

And just to emphasize, removing torch array as input type for transcribe function was a breaking change.

@formater Removing the torch array is required to keep faster-whisper out of torch dependency and it is not a breaking change as the latest release of faster-whisper (1.0.3) has an interface with numpy array. This PR is important to keep it as it is.
I think putting a boolean flag will make torch processing optional but not torch dependency optional, so your proposed solution is not applicable in the context of the PR.
One option might be making FeatureExtractor an injectable component via an interface. So people can plug in their FeatureExtractor implementation with their package dependency if they do not like the default FeatureExtractor implementation provided by the faster-whisper.

This implementation should produce identical results to the old and original whisper implementation and it's completely backwards compatible, I'm not sure I understand your description of the problem, can you write code to reproduce it?

@MahmoudAshraf97 I had used the new feature extractor with the 1.0.3 version as I do see that it has the same interface. My tests were based on that. When I switched the implementation to the new numpy version, the transcripts for 1-3 second size audio chunks are gone.
I am using numpy array as input, instead of filename. So this might help you reproduce the issue.
Let me try to give you more details on my experiment.

@formater if your use case is just audios shorter than 30s, then using faster whisper is very inefficient, use CTranslate2 directly or TRT.
You can use the original whisper feature extraction which uses torch on GPU, then stack the feature arrays, convert them to ct2.StorageView objects and feed them directly to the CT2 model, this should be much faster than faster whisper

@MahmoudAshraf97  When I run with the PyTorch or 1.0.3 version, I get an "80x3084" matrix with float32 data type when inputting data with 7039 bytes. The new FeatureExtractor extracts an "80x49" matrix from the same input, which is pretty much wrong in dimension size and order.
This will result in two things;

For audio data bigger than 30 seconds, transcriptions at the end of the data that have less than a 30-second frame will be transcribed as invalid, reducing the accuracy of the faster whisper.
For short chunk-based audio processing, it will give nothing.

I think this version should not be tagged as 1.10.0 even if it does not work for core features.

The new feature extractor is expected to produce an array with smaller dimension, the new dimensions are handled in transcribe.py
If you want to test this PR in v1.0.3, then you need to pull all the changes, not just the feature extractor

But @MahmoudAshraf97, I see a strange performance difference here;
faster-whisper 1.0.3 + pytorch CPU feature extractor  => works and it is fast, faster than 1.1.0 version in CPU.
faster-whisper 1.1.0 + pytorch CPU feature extractor => works but it is 2x slow compared to new numpy implementation.
Normally pytorch feature extractor is expected to improve the performance compared to the numpy implementation in CPU as tested in 1.0.3.
But I guess due to the changes in the intermediate steps, it causes a 2x slow down in 1.1.0. That might be due to some sizing updates and so.

it all resolves down to using the correct value of content_frames in transcribe.py, this depends on the feature extractor you are using

I think the considerable effect lies in subtracting constant 1 instead of self.feature_extractor.nb_max_frames when determining content_frames.

@MahmoudAshraf97 I understand it more now, in the last implementation the padding is just not done accordingly to the sample size but very strict to avoid performance due to that.
I have update the padding stuff accordingly in the pytorch implementation and it performed similarly.

One comment here though, even if we use the same feature extractors in 1.0.3 and 1.1.0, there is a slight difference in performance which requires to be regressed.
Version 1.1.0 seems to be performing %5-6 slower compared to 1.0.3, everything kept as the same.

I received similar report in #1167 , but haven't dived deep into it as it's probably related to CT2 more than faster whisper

@MahmoudAshraf97 I should be better to dive in.
But I think it should not be related to the CT2 version or others, as in my tests, I kept the CT2 version the same as 4.5.0.


Run Dashboards integ test from public endpoint

Is your feature request related to a problem? Please describe
#604
Describe the solution you'd like
It will need to know where OpenSearch is.
Potential solutions:

use a single public endpoint for both OS and OSD

provide two parameters to integ test where one for OS and one for OSD

Describe alternatives you've considered
No response
Additional context
No response

Looks like we may need to extend the test args to support an optional path for dashboards.
https://github.com/opensearch-project/opensearch-build/blob/1ea1896f1979cfa9471ad7cb74eb9008173ab562/src/test_workflow/test_args.py#L27

@dblock @peterzhuamazon @seraphjiang


Burst length vs Burst length -1 for SPI user interface

Should we keep Burst length definition for user interface or Burst Length -1.
Advantage of Burst Length is more intuitive. Disadvantage is need extra bit to represent full capacity and waste 0.  RTL implementation needs to do minus 1 internally.
Advantage of Burst Length -1 is that the full capacity is used, and more natural to RTL implementation.
We can discuss during the meeting. How is other IP implementing?

AXI4 burst_length = Length Specified + 1

This is implemented as described in the HAS.  Unless it is a non functional bug, we cannot entertain new changes.

My read of the HAS: Burst length is the burst count (not count -1).