fix: convert deepClone to structuredClone in directive-wrapper

Description of changes
Convert usage of deepClone into structuredClone.
Using deepClone is giving error: RangeError: Maximum call stack size exceeded when compiling large schema files with cdk synth. the structuredClone achieves the same result as deepClone but without a call stack size error.
CDK / CloudFormation Parameters Changed
none
Issue #, if available
#1978
Description of how you validated changes
Ran locally to compile large schema file giving an error on deepClone, verified cdk synth ran correctly and deployed correctly.
Checklist

[x] PR description included
[x] yarn test passes
[ ] Tests are changed or added
[ ] Relevant documentation is changed or added (and PR referenced)
[ ] New AWS SDK calls or CloudFormation actions have been added to relevant test and service IAM policies
[ ] Any CDK or CloudFormation parameter changes are called out explicitly

By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.

structuredClone is only available in Node 17+, but we officially support back to Node12. Chatting with the team -- I think that's just an artifact that we haven't updated to reflect the CLI's current NodeJS requirement of 18+.

I've started the e2e tests (after a rebase with main): https://us-east-1.console.aws.amazon.com/codesuite/codebuild/594813022831/projects/amplify-category-api-e2e-workflow/batch/amplify-category-api-e2e-workflow:9bcc0135-8c4d-43c1-bc02-15de1bf14954?region=us-east-1

I've tested this on a larger schema file and noticed the issue still occurs with structuredClone. I was able to get it to work with:
{...defaultValue }
Though this doesnt clone every child object. Would this be an issue elsewhere, and is it important the entire object is cloned? I didn't notice any issues locally using this.

I believe a deep clone is needed here, but I will need to verify that.

Resolved by https://github.com/aws-amplify/amplify-category-api/pull/2212


Facebook share also not working.

and card validator:
https://cards-dev.twitter.com/validator

Card validator does work...facebook still no.


Items and entire tabs are missing.

Title. I thought maybe only the alternative/grouped recipes were showing up, but Adorn (the first tab) has multiple recipes like that, and it doesn't show up at all.
Creative tab, mods: Adorn, Comforts, Gravity API and Plushie-Mod.
Recipe book, only Comforts shows up, and it's incomplete.

Hey, I believe you didn't unlock all recipes yet.
Could you try running:
/recipe give @s *
If that is the case, Better Recipe Books has an option to unlock all recipes instantly.

Weird...
Could you please tell me mod version, Minecraft version, mod loader and possibly latest.log?

I figured out where Adorn's items went.
Adorn adds it's items to 2 creative tabs and since recipe book can't have items in 2 groups, they got auto-sorted to decoration blocks.
And it seems like Gravity API has no craftable items.

Well, I can't replicate this issue

Recipe Book Screenshot

The log has no related errors, and even the [RBIP] recipe book init complete message is where it should be. (Which is not the case in some packs)
I've also noticed that the combat category is missing entirely.
So, my only guess is there was an error whilst adding to RecipeBookGroup enum. Since the way I add to that enum is not recommended by Fabric wiki itself. (link)
There is a different way, but it doesn't fit my case.
As for mugs, the mug is probably in the food category. Other drinks must be made via Brewer.

I am so stupid, and I am so sorry.
I wasn't using the goddamn crafting table.
Coming fresh off of other recipe viewers I was expecting it to show everything, and since I never used the vanilla recipe book it didn't even cross my mind that you need to use the correct crafting block.
I'm really sorry for wasting your time.
That being said, there's no recipe book for Brewer. I didn't expect it to anyway, and I'm not sure what mod's problem that is, just thought I'd let you know.


Feature Request: Crazy Idea to gain responsiveness, distribute scrapes, and ease load on yahoo severs

Describe the problem
With all these recent issues like Spam bocks and encryption changes, I would like to start a discussion of a solution that eases the pain on the yahoo servers but maybe is a bit crazy.
Describe the solution
I am not quite sure yet about the implementation details but I would like to start the discussion about the following idea. I would assume that statistically the same Tickers are queried over and over again by thousands of different users. What if we could build a decentralized cache? Whenever one calls an API we first check the cache then we eventually download missing data and update the shared cache. This would ease the pain on the yahoo servers by a lot and we would gain as a community a fast queryable data source. And on top of that, we might even achieve a more or less complete financial database ideal if you need to build a screener.
Please don't shoot me, I know this is a crazy idea and is far beyond the current yfinance library, and of course, this would be a rather big project. However isn't that the dream of all of us, having a low-latency full local copy? As I don't want to just start such a big project all by myself and I have no other idea where to start such a discussion, I am brave enough to post this here. I assume there is a lot of peer-to-peer software which could be reused (like p2p-python). The distribution of the requests among thousands of IPs could help to not get blocked, and a local cache would ease the load on yahoo servers and allows us to get full sets of data blazing fast.
The rough idea would be that a daemon is needed as a p2p node which:

runs a local sqlite database
every client request is proxied through the local node
local data is queried from the sqlite db
missing local data is fetched from yahoo, added to the database, and sent as message to all the peers (which update their database)
the local and remote data is sent back to the client

And since sqlite implements the MySQL replace into syntax we don't need to worry about race conditions, at least not for a prototype. And maybe we add filters for countries or symbols you are interested in to reduce the local db size. But as I mentioned, the implementation details are not clear yet.

My quick initial thought is: Yahoo probably won't like others distributing their data.

I do as well, but what is the difference me and thousands of others downloading everything and storing it, from we download it together and store it. At least all the meta data like info, profile etc is explicitly allowed to be scraped in the robots.txt and sitemap.xml (from where you could can get (allmost?) all possible symbols btw).

The difference is legal not technological.

you must not reproduce, modify, rent, lease, sell, trade, distribute, transmit, broadcast, publicly perform, create derivative works based on, or exploit for any commercial purposes, any portion or use of, or access to, the Services (including content, advertisements, APIs, and software).

The difference is legal not technological.

you must not reproduce, modify, rent, lease, sell, trade, distribute, transmit, broadcast, publicly perform, create derivative works based on, or exploit for any commercial purposes, any portion or use of, or access to, the Services (including content, advertisements, APIs, and software).

Quite worrisome- does this mean my personal pet non commercial project can't be hosted on the web? It's technically "broadcasting" yahoo data. I'm only really showing share prices though.

And that is why somehow everybody does. And you can find lots of yahoo data on sites like dolthub or quandl (which is now owned by nasdaq). As long as you don't monetize money usually you will be left alone.
But yes maybe this is the wrong way to set this up. Maybe we first need a general-purpose p2p cache and leave it to every individual whether to implement that cache with yf data.

Unless you have explicit written permission, ...

Quandl talk about acquiring access/distribution rights, so probably have an agreement with Yahoo. Don't know about dolthub, but I'm not seeing much data hosted there.
I think this GitHub project is the wrong place to discuss your idea, best to separate the two.

Unless you have explicit written permission, ...

Quandl talk about acquiring access/distribution rights so probably have an agreement with Yahoo. Don't know about dolthub, but I'm not seeing much data hosted there.
I think this GitHub project is the wrong place to discuss your idea, best to separate the two.

Is there any change of yfinance contacting Yahoo about this? Companies always want to look good supporting open source software.


lite/micro: Fix bug in tensor lifetime calculation.

Fix for issue #35121
The tensor lifetime may be incorrectly calculated in MicroAllocator::FinishTensorAllocation() if the same sensor is used multiple times as inputs to different operations or is used as input/output or variable of the graph.

@petewarden : Looks easy enough to add more nodes to the MockModel and adjust existing tests that use it.
I will open a new PR for the test code as I assume we want to observe if failing before this PR is pulled.

Until someone comes to talk to me in person we done I have no idea who
Google and you are up too
On Wed, Dec 18, 2019, 19:15 Stephan Uphoff<EMAIL_ADDRESS>wrote:

@petewarden https://github.com/petewarden : Looks easy enough to add
more nodes to the MockModel and adjust existing tests that use it.
I will open a new PR for the test code as I assume we want to observe if
failing before this PR is pulled.
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
https://github.com/tensorflow/tensorflow/pull/35123?email_source=notifications&email_token=AOBPXOQ6MVOY2XCTOP4ZM23QZK4KFA5CNFSM4J25DPH2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEHH5PDY#issuecomment-567269263,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/AOBPXOT23VYHHC3S2EVRMWDQZK4KFANCNFSM4J25DPHQ
.

@petewarden : Tests are in #35294

@suphoff  Can you please resolve conflicts? Thanks!

@gbaned : Conflicts removed - conflicting changes only addressed a subset of the issues.


Render labels on top of the macro instead of to the left when zoomed out

Description
open floorplan.odb in the GUI, zoom in/out.
zoomed out, the labels are to the left of the macros in some cases, but not all:

floorplan_microwatt_sky130hd_base_2023-08-09_13-52.tar.gz
Suggested Solution
No response
Additional Context
No response

@oharboe this is probably a result of your change for the centering.

@oharboe this is probably a result of your change for the centering.

I need a bit of help of deciphering all the rotations, translations and coordinate systems there...

you are adding a positive xOffset in one case and negative in the other?
It also looks like the text is not really centered (slight below the center and slightly to the left of center).

@oharboe I don't know if I have time today to help

@oharboe I don't know if I have time today to help

No rush for my part and I don't think anyone else either... I just wanted to get a reproducible test-case registered with this issue so it could be attended to in due time.
The current implementation works quite well.
I think it is struggling when the labels are long and the centering could be improved.

I personally don’t think 90 degree rotated instance names are very readable and hope there are no upside down ones.
Luckily few technologies allow 90 degree rotations these days.

@stefanottili there are some macros that are tall and thin where rotation is the only useful orientation.  We could vary the threshold.
The label rotation is a function of the macro bounds and is never upside down or backwards.


Mouse scroll zoom issue

Mouse scroll zoom in and out seems to be laggy. Dataset I am using is very small. I am having the same issue with the examples in sigmajs page. Please let me know how this can be fixed

One more observation. This issue is only happening on chrome. Firefox things are working fine.

I'm encountering the same problem both for Firefox, Chrome and Edge. If anybody has a fix or can point me in the direction it would be greatly appreciated.


Enable setting "breadcrumbs.symbolSortOrder" to be specific to languages

Problem
The setting "breadcrumbs.symbolSortOrder" cannot be enabled for a specific language, i.e.
"[markdown]": {   "breadcrumbs.symbolSortOrder": "position"   }
is not possible in the settings.
Use case

It makes sense to sort by position in markdown files to see headers and subheaders as they are.
However, one might want to display symbols by type when writing code.

Thank you in advance!

Actually not a duplicate but should be straight forward to implement as filter-options can already be defined per language

Could you point me towards how to get the current resource from the editor model inside breadcrumbsPicker.ts?

The OutlineModel has a reference to the text model


Trim Version When Parsing

[x] I have signed the Contributor License Agreement.
[ ] This pull request is related to an issue.

When parsing a version, it may be possible that a publisher included one or more whitespace characters at the end of the DisplayVersion key. Since a folder name cannot end with a whitespace character, this means that any PackageVersion in the community repository cannot have a trailing whitespace character.
Due to the way versions are parsed, the trailing whitespace gets considered as an "other" of the version part during the version comparison. This means that 5.8  is considered a lower version than 5.8 when parsed.
This PR makes it so that when a version is assigned, as is the case when parsing the installed versions, both the final version and the version parts are trimmed of whitespace. This means that 5.0.13 is now considered equal to 5.0 .13, 5.0.13 , or even 5 .   0   .13
Microsoft Reviewers: Open in CodeFlow

/azp run


feat: reference docs

Need to add reference docs. Refer to IbisML and Ibis for examples.

started at least


Fix error translation

Fixes #28
Description:
Made some changes to now use ERROR_CODES constants as the errors instead of strings, this seems to work properly now and errors are being translated
Changes made:
e902908f56af772da4a872c4cbcac4183a2d6ee5 solves #28
d3351eee114fd1f2918bc73c74913afa5aa8f558 adds translation for the error codes on existing languages
a493c544b8ba8770738f13754c17aca4b36f0510 removes need for error code since it is simpler to disable button if team is not selected
fa63d2aa8e8dcfbed9cdc35d919584c55c9a4de0 same thing as above, we don't send a request until we have validated on front-end
2420e1a75c795ba65ec54cdfdbc7564f76a1e18d fixes incorrect ternary operator
b0da0369f7024498fa65ef8e0382cc8a77770a2a adds lucide-react as a dependency for incoming UI changes
9f6e9122c7b32f21915e21cacc16b14acead1cfa creates components/ui folder and tooltip component
2ca69521e0b0af714ac5a81549aa93183a25b679 adds a CSV format guide to CSV loader window
78252394d4886973620bc0efb2c3370d585c56a6 adds translations for CSV loader window and fixes translation mistakes in estonian

Good stuff 👌
Hoping to have some time today to work on famf and review your changes


Add S3 Object resource

Signed-off-by: Binbin Zou<EMAIL_ADDRESS>
Description of your changes

This PR adds an Object resource for S3 bucket that allows create object or directory in a bucket using Crossplane.
I have:

[x] Read and followed Crossplane's contribution process.
[x] Run make reviewable test to ensure this PR is ready for review.

How has this code been tested
Manually and through unit tests

Can anyone review this PR？

@zbbkeepgoing can you add an example for s3 object?

@zbbkeepgoing can you add an example for s3 object?

nice advice, done

@haarchri Hi, is this pr can be merged?


Add option for post-authentication None cipher (None switch)

Greetings, please add the ability and option dialog check-box for optionally using the None cipher.
This is a post-authentication cipher for use inside an otherwise protected or trusted network, eg. inside VPN (already encrypted), office cable LAN, etc. and obviously provides huge performance gains for such situations.
Example code and documentation reference for this "None switch" is available at the website of the Pittsburg Supercomputing Center's website for the High Performance Networking (HPN) SSH patchset.
For reference, the HPN patchset is becoming more and more widespread use, and packages are available in Debian and Ubuntu standard repositories, so it is not something "exotic". The patchset is also backward-compatible; it is the same SSH protocol, the same OpenSSH server software, but optimized buffer handling and windowing, which provides big performance gains, so it is a no-brainer to install it, so I can only assume that its deployment is on the rise.
Besides the other mentioned SSH optimizations from the patchset, the None cipher provides considerable performance boost when network protection / confidentiality on the network is already otherwise protected or not necessary.
It is only one additional cipher without any actual encryption being at work, so implementation effort should be relatively small.
I am not sure, if this issue is to be filed here or at the Dokany library, but I wanted to voice this feature enhancement proposal for the None cipher on some place, to get started.

HPN is very interesting, but it's not officialy included yet in any distro. Also I know none well  maintained repository with patch. And compiling on your own with every security patch is pain and not for everybody.
Client side support will not be so simple. SSH related stuff shoud go to https://sshnet.codeplex.com/. Project seems to be dying, theres no big update since 2014.. But its still the best ssh library probably.

"HPN is very interesting, but it's not officialy included yet in any distro."
This is not true, the OpenSSH HPN-SSH patches have been included in FreeBSD since 9.0, but since win-sshfs relies on SSH.NET not OpenSSH I would guess it is not possible to merge in the HPN patches.
The only easy option I can see is if win-sshfs switched from SSH.NET to the OpenSSH distribured with Cygwin and included the HPN-SSH patches:
https://github.com/rapier1/hpn-ssh/tree/master/contrib/cygwin
http://www.mls-software.com/opensshd.html
...or even better dump SSH.NET and switch to the official Microsoft Win32-OpenSSH (despite the name there are also 64-bit builds):
https://github.com/PowerShell/Win32-OpenSSH


Expose routerReducer so it works with @rematch/core

Regarding https://github.com/rematch/rematch/issues/409
@rematch/core is exposing a field to put rootReducers, but it can only receive a reducer, but not a function returning a reducer.  https://github.com/rematch/rematch/blob/master/docs/reduxApi.md#rootreducers
Can connected-react-router expose this reducer directly without high order function?
https://github.com/supasate/connected-react-router/blob/master/src/reducer.js#L15

Hey @linonetwo, I had a similar problem while using redux-sagas-injector. I needed the reducer exposed too, so I came up with a hack where you can get the reducer without exposing it from the library.
// pass the empty function for the rootReducer
let routerReducer = connectRouter(history)(() => {});

// then use routerReducer as regular reducer in your reducers map with an extra line of code
let allMyReducers = {
...allMyReducers,
router: (state, action) => { let result = rootReducer(state, action); return state.router }
}

Let me know if it works for you, and please, let me know if I am missing something with this approach. Thanks!

Sorry @dantonijevic , I'm not using connected-react-router and rematch anymore. I've switched to Apollo-GraphQL for more convenient data fetching...

@linonetwo can you reopen this issue please? it's still relevant I think even though you're not using it anymore.
cc @supasate This would be really helpful to use with redux-loop

bump @supasate any thoughts on this?

PR #140 is addressing this issue.

cool thanks!

Closing as already fixed in #150.


drivers: dma: esp32: added support for multiple descriptors

In the past, configuring the GDMA was limited to using a single descriptor, which restricted memory transfers to a maximum of 4kB.

This pull request introduces support for multiple descriptors, allowing users to define multiple dma_blocks.
The maximum number of descriptors available can be configured using the CONFIG_DMA_ESP32_DESCRIPTOR_NUM option.
Additionally, the dma_get_status() function now provides the index of the currently processed descriptor through the status.read_position and status.write_position fields.

This is my first PR, and I welcome any feedback!

@epc-ake please fix the marked compliance errors, also please use the single new-line in code.

I'm not happy about the descriptors getting defined twice, once trough the API and and then again in the driver to convert dma_config_blocks to dma_descriptor_t.
An alternative I could think of is to ignore the dma_descriptor_t max buffer size when defining a dma_config_block block and then generate as many dma_descriptor_t descriptors as needed to fit the size of a dma_config_block block.
At least this would reduce the number of dma_config_block blocks. (most of the time to 1 block i guess)
Any inputs on that?

@raffrost, can you take a look?

hi @epc-ake,
thanks for submitting your code as a PR. I tried you changes locally with the default Zephyr tests for DMA but it won't pass them:
tests/drivers/dma/loop_transfer
tests/drivers/uart/uart_async_api
would you be willing to take a look and make sure the original functionality is preserved? we could afterwards do a full review on your code. A first question I'd have is: should the number of descriptors be a constant? Considering other subsystems in Zephyr might use only one descriptor (as in the original code), how would that work out?

@raffarost Thanks for reviewing and pointing me to these tests—I wasn't aware of them.
I had a bug in the TX path, but it’s resolved now.
tests/drivers/dma/loop_transfer seems to pass now.
However, tests/drivers/uart/uart_async_api still has two failing tests, which were already failing before my changes.
A quick look suggests that the driver cannot handle access to external memory (e.g., this line fails for external memory):
https://github.com/zephyrproject-rtos/zephyr/blob/8d3b16e13bbb80f22c52e23535907975651f8644/drivers/dma/dma_esp32_gdma.c#L167
It might be best to open a new issue for this since the GDMA should be able to access external memory.
Regarding your question, CONFIG_DMA_ESP32_DESCRIPTOR_NUM reserves memory for the specified number of descriptors.
If an application specifies only one block, only one descriptor is initialized in that memory.
Initially, I allocated the needed memory for the DMA dynamically on the heap, but the API documentation advises against this, and I agree with their recommendation:
https://docs.zephyrproject.org/latest/hardware/peripherals/dma.html#transfer-descriptor-memory-management
As I mentioned, I’m not entirely satisfied with the current solution, but it’s the only feasible option using the DMA API.
You can find a usage example for this PR in the following link, where you might also see the problem I described earlier.
https://github.com/zephyrproject-rtos/zephyr/blob/a705d8595e1a724da22a44dbf102ab0cf18967f2/drivers/video/video_esp32_dvp.c#L161

@raffarost Thanks for reviewing and pointing me to these tests—I wasn't aware of them.
I had a bug in the TX path, but it’s resolved now.
tests/drivers/dma/loop_transfer seems to pass now. However, tests/drivers/uart/uart_async_api still has two failing tests, which were already failing before my changes. A quick look suggests that the driver cannot handle access to external memory (e.g., this line fails for external memory):
https://github.com/zephyrproject-rtos/zephyr/blob/8d3b16e13bbb80f22c52e23535907975651f8644/drivers/dma/dma_esp32_gdma.c#L167
It might be best to open a new issue for this since the GDMA should be able to access external memory.
Regarding your question, CONFIG_DMA_ESP32_DESCRIPTOR_NUM reserves memory for the specified number of descriptors. If an application specifies only one block, only one descriptor is initialized in that memory. Initially, I allocated the needed memory for the DMA dynamically on the heap, but the API documentation advises against this, and I agree with their recommendation: https://docs.zephyrproject.org/latest/hardware/peripherals/dma.html#transfer-descriptor-memory-management
As I mentioned, I’m not entirely satisfied with the current solution, but it’s the only feasible option using the DMA API. You can find a usage example for this PR in the following link, where you might also see the problem I described earlier.
https://github.com/zephyrproject-rtos/zephyr/blob/a705d8595e1a724da22a44dbf102ab0cf18967f2/drivers/video/video_esp32_dvp.c#L161

I see now you concern regarding initializing

I'm not happy about the descriptors getting defined twice, once trough the API and and then again in the driver to convert dma_config_blocks to dma_descriptor_t. An alternative I could think of is to ignore the dma_descriptor_t max buffer size when defining a dma_config_block block and then generate as many dma_descriptor_t descriptors as needed to fit the size of a dma_config_block block. At least this would reduce the number of dma_config_block blocks. (most of the time to 1 block i guess)
Any inputs on that?

I see now your concern regarding initializing descriptors. Do you think converting desc_list[] from data type dma_descriptor_t to dma_config_block and adjusting the internals of the driver for that change is possible? To me it looks like doing that loop inside the driver might not even be a productive task for the driver to do, and could be done outside, unless there's some unavoidable validation to be done internally or some lower layer detail forbids us to do so.

I checked again and it seems unlikely we could adapt the

I believe the current implementation is the best we can achieve without altering the DMA API.

Edit: I checked again and it seems unlikely we could adapt the LL workings with Zephyr's data type. We could either leave it as you implemented or do the initialization of dma_descriptor_t * instead of dma_block_config * outside and pass it to the driver. This would violate data typing (terrible idea) but the current implementation seems to not use the other fields of dma_block_config. Other than this, I'd prefer others to give their opinions on this regard.

I changed my mind. I think this might be the better option for now and then try to alter the DMA API?
E.g. removing the dma_block_config struct and passing a void pointer instead. Or removing the dma_block_config completely from the DMA API and let the DMA drivers deal with how to split up the memory into descriptors.
Also zephyrs dma_block_config is quiet overloaded (e.g. >=30bytes per block). The dma_descriptor_t from esp hal only uses 12bytes.

Edit: I checked again and it seems unlikely we could adapt the LL workings with Zephyr's data type. We could either leave it as you implemented or do the initialization of dma_descriptor_t * instead of dma_block_config * outside and pass it to the driver. This would violate data typing (terrible idea) but the current implementation seems to not use the other fields of dma_block_config. Other than this, I'd prefer others to give their opinions on this regard.

I changed my mind. I think this might be the better option for now and then try to alter the DMA API? E.g. removing the dma_block_config struct and passing a void pointer instead. Or removing the dma_block_config completely from the DMA API and let the DMA drivers deal with how to split up the memory into descriptors. Also zephyrs dma_block_config is quiet overloaded (e.g. >=30bytes per block). The dma_descriptor_t from esp hal only uses 12bytes.

Hi @epc-ake,
I'm somewhat new to Zephyr, so I'm not sure I can give a more qualified opinion on this. My first thought is that it would be interesting if dma_block_config had a void field, so we could pass the descriptors already filled in the right format. I'm not sure this is a genuine claim though, and would ask first if there are other drivers which implement multiple descriptors and how they do it. I won't be able to dig into this now, as I have to work on other things, but I thought I might just share what I think for now. It would be nice if someone more experienced in this subsystem chimed in.

Edit: I checked again and it seems unlikely we could adapt the LL workings with Zephyr's data type. We could either leave it as you implemented or do the initialization of dma_descriptor_t * instead of dma_block_config * outside and pass it to the driver. This would violate data typing (terrible idea) but the current implementation seems to not use the other fields of dma_block_config. Other than this, I'd prefer others to give their opinions on this regard.

I changed my mind. I think this might be the better option for now and then try to alter the DMA API? E.g. removing the dma_block_config struct and passing a void pointer instead. Or removing the dma_block_config completely from the DMA API and let the DMA drivers deal with how to split up the memory into descriptors. Also zephyrs dma_block_config is quiet overloaded (e.g. >=30bytes per block). The dma_descriptor_t from esp hal only uses 12bytes.

This is the downside generally of the DMA API as an attempt to sort of cover all possible hardware with a single API. In DMA we don't end up with a least common denominator but instead a union of all DMA functionality all hardware in Zephyr supports.
Mostly this isn't a problem to be honest though, DMA is typically embedded in various bus drivers rather than being exposed as an application API. It has one application level user in SoF which requires some specific DMA drivers to ensure things work as expected.

Edit: I checked again and it seems unlikely we could adapt the LL workings with Zephyr's data type. We could either leave it as you implemented or do the initialization of dma_descriptor_t * instead of dma_block_config * outside and pass it to the driver. This would violate data typing (terrible idea) but the current implementation seems to not use the other fields of dma_block_config. Other than this, I'd prefer others to give their opinions on this regard.

I changed my mind. I think this might be the better option for now and then try to alter the DMA API? E.g. removing the dma_block_config struct and passing a void pointer instead. Or removing the dma_block_config completely from the DMA API and let the DMA drivers deal with how to split up the memory into descriptors. Also zephyrs dma_block_config is quiet overloaded (e.g. >=30bytes per block). The dma_descriptor_t from esp hal only uses 12bytes.

Hi @epc-ake, I'm somewhat new to Zephyr, so I'm not sure I can give a more qualified opinion on this. My first thought is that it would be interesting if dma_block_config had a void field, so we could pass the descriptors already filled in the right format. I'm not sure this is a genuine claim though, and would ask first if there are other drivers which implement multiple descriptors and how they do it. I won't be able to dig into this now, as I have to work on other things, but I thought I might just share what I think for now. It would be nice if someone more experienced in this subsystem chimed in.

This is wrong, if you wish to implement the DMA API today, you would convert from the dma.h descriptors to your hardware descriptors. That's it. If you are unhappy with the zephyr dma.h API and descriptors there's nothing preventing your device from saying "please use the hal driver if you wish to use DMA directly".

@epc-ake Would you mind fixing the compliance checks and conflicts so we can merge this PR? Nice work!

@epc-ake Would you mind fixing the compliance checks and conflicts so we can merge this PR? Nice work!

@epc-ake a rebase will be needed as well

LGTM, to need to check compliance stuff.


How to switch to a different user on same agent to run a particular task in AzureDevOps pipeline

I have a pipeline with 6 tasks in one job, this job runs on agent01(self-hosted), there are two users, user1 and user2(more privileges) on agent01.
My requirement is, my pipeline job running on agent01 must use user1 for task 1,2,3 and use2 for task 4,5,6. How to achieve this ? please suggest.

Thank you @anatolybolshakov. I will try what you suggested,

Let me close this one at the moment since it doesn't seem to be related to agent issues - please feel free to ask any further questions.


dependency resolution performance improvments

motivation: better performance, happier users
changes:

load root manifests in parallel
add caching to manifest loader
further tweaks to pubgrub data strucutures to make them thread-safe, and simplify flow
comments cleanup

ℹ this is the final PR in the dependency resolution series (beyond any follow on bug fixes)

@swift-ci please smoke test

@swift-ci please smoke test

This looks good to me.  As noted, if there are any issue with doing concurrent manifest loading, it would be easy enough to turn this back to serial while that's being addressed and still have the other cleanup in this PR.


[8.x]  Make the ConcurrencyLimiter methods public

The DurationLimiter acquire() method is public. This PR makes the methods of the concurrency limiter also public.

This is a breaking change if anyone is extending these classes and overriding the methods.


Initial height option

Is there an option to set the initial height of the editor (in the case of autoGrow)?

I need that too , any solution??

CSS : min-height :)

@Alex-D I already tried that solution, it does not work in the case of auto grow. Can you reopen this issue?

@Alex-D Any progress on this? Do you want me to submit a PR?

If you have the fix, make a PR for sure :)
I don't have the time to check the bug, but I can review and merge PRs :)

@Alex-D Ok, I will make an effort to submit one within the next week or so (my users are complaining about this so I am forced to =) )

@Alex-D @razzbee For me, the solution is (as Alex hinted at), to play with these two:
.trumbowyg-box.trumbowyg-editor-visible, .trumbowyg-editor {
min-height: 150px;
}

Aaah :)
Thanks for your test/validation !

Am having this issue still.
My textarea has an initial height of 100px.
Trumbowyg forces it to 300px initially, and doesn't autogrow.
Here is the whole setup
<textarea id='trumb' style='height:100px'></textarea>
<script src="//ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script>window.jQuery || document.write('<script src="js/vendor/jquery-3.3.1.min.js"><\/script>')</script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Trumbowyg/2.21.0/trumbowyg.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/Trumbowyg/2.21.0/ui/trumbowyg.min.css">
<script>$('#trum').trumbowyg({tagsToRemove: ['script'], autogrowOnEnter: true});</script>


kernel: Move kernel to 5.0.y

Fixes: #1503
Signed-off-by: Ganesh Maharaj Mahalingam<EMAIL_ADDRESS>

/test

You may need a config file in packaging repository too.
Because config add kernel config live in different repository you will need to add depends-on in this commit.
https://github.com/kata-containers/tests#breaking-compatibility

s/5.x/5.0.y/ ?

@jcvenegas will test all kata systems with the new kernel and current config to make sure it is alright to delve into the new configs. i will push a follow-on patch with the same soon.

/test

We carry a pretty large arm64 kernel patch in packaging. Is it still needed once we move to 5.0.y? @Weichen81

Hi @pennyzct , @jongwu Could you please have a look at 5.0 kernel?

I think the 52bit ipa feature has been included in the 5.x kernels. So I think it’s ok to remove the patch

Thanks for confirmation @Weichen81
@ganeshmaharaj please add a PR to packaging repo to drop the arm64 kernel patch otherwise this PR will break CI as the arm64 patch will fail to apply. -- sadly we apparently are not catching it in CI here.

Adding dnm until the arm patch is dropped since otherwise it breaks CI.

Currently waiting on https://github.com/kata-containers/tests/pull/1442 and https://github.com/kata-containers/packaging/pull/432 to land before proceeding with this change.

depends on ?  https://github.com/kata-containers/packaging/pull/314

Hi~ @bergwolf @ganeshmaharaj As you may not notice, we also backport one patch for kernel v4.9.x for memory hotplug, which has been already included in v5.0.x, you could confirm from here. Btw, not all parts, still left one little part regarding probe interface under review. But, we can wait for this PR merged and do the refinement. ;)
So,  @ganeshmaharaj let's also drop arm64 memory hotplug patch to avoid break CI.

ack @Pennyzct - I tried to build a 5.0.7 kernel yesterday and the arm memory patches failed to apply, so I (locally) deleted them :-) @ganeshmaharaj - I think we can thus nuke the arm patch subdir in this PR (can/must/need to).

@Pennyzct @grahamwhaley Yes, i do have a commit with new config changes and the patch updates here. https://github.com/ganeshmaharaj/packaging/commit/b86b07c818ebb8f74cd28e993d3759e218162e0c I was going to re-work the PR right after we finish the kernel fragment PR to avoid too many clashes. If you wish to get that going now, i can get it ready.

Still blocked on https://github.com/kata-containers/packaging/pull/314 fwics.

Right. the current plan is to hold off with 5.x move and work on getting virtio-fs & kernel fragments based off 4.x onto the tree. Following which we can work out a plan to move to 5.x

@ganeshmaharaj any updates? Still blocked by https://github.com/kata-containers/packaging/pull/314?

Yeah, I think so, which is then blocked on the firecracker CI seeming less stable with the fragment kernel config.... we may have to bite the bullet on kernel version updates if we don't figure that out soon.

@ganeshmaharaj I think this can be closed at this point?


[Event Hubs Client] Removed extra line

Hello,
There was an extra line and I thought to remove it to keep things tidy

Can one of the admins verify this patch?


Can't locate include directory 'XXXX \ 1.0.0 - beta - 63127-02 \ build \ Microsoft build. The Tasks. The Git. The targets of the repository.

请问这个问题，需要怎么处理呢！谢谢！

Weird, I've never seen this before. Do you know how to reproduce this issue? Do you have git installed on your machine?

Installed the git.

Are you still running into issues? If so, could you send me a binlog of your build?

Make sure you've installed the .NET Core SDK
Navigate to BaGet
Build BaGet using dotnet build /bl
This will create a file named msbuild.binlog. Please send that to me

I think I figured it out - did you download the source code from the GitHub release? If so, this issue will be fixed by https://github.com/loic-sharma/BaGet/pull/434

This has been fixed by the latest release. Please let me know if you have any additional issues or feedback!


[BUG] Cannot prevent auto update to v3.1.0 and 3.1.0 does not work

Please confirm these before moving forward

[X] I have searched for my issue and have not found a work-in-progress/duplicate/resolved issue.
[X] I have tested that this issue has not been fixed in the latest (beta or stable) release.
[X] I have checked the FAQ section for solutions.
[X] This issue is about a bug (if it is not, please use the correct template).

UniGetUI Version
3.0.2
Windows version, edition, and architecture
Microsoft Windows 11 Pro X64 10.0.22631 Build 22631
Describe your issue
Unigetui 3.1.0 does not work because of a powershell error - Wingetui 3.0.2 works fine.
So, uninstall wingetui
install wingetui
disable network adaptors
run wingetui
disable auto update of wingetui in settings
enable network
wingetui always downloads unigetui v.1.0 upon start
wingetui always runs the installer to update to v 3.1.0 upon exit.
even if the prompt to update is cancelled, wingetui will not now load.
If the update is run, the installer loops on
ensuring wingetui is installed properly
When the install is abandoned and the program started....
The program is useless as you always get the message
Missing dependency
UniGetui requires Winget Powershell moduleto operate, but it was not found.
It is not possible to resolve this issue..
I am forced to uninstall and cease using wingetui / unigetui
I have log files and screen shots
wingetui 3.1.0 log 4.txt
wingetui 3.1.0 log 3.txt

wingetui 3.0.2 log 2.txt
wingetui 3.0.2 log 1.txt
of each stage
Steps to reproduce the issue
See issue description
UniGetUI Log
as attached

Package Managers Logs
Not relevant

Relevant information
No response
Screenshots and videos
as uploaded

After disabling updates on Version 3.0.2, kill WingetUI from the task manager. It should not update anymore

Thank you - tried that......
Does not make any difference

Please follow this guide to downgrade:
https://github.com/marticliment/UniGetUI/issues/2438

Hello, please follow this guide in order to downgrade WingetUI

Same thing happening for me on Windows 11 23H2 (KB5039212). Everything was working fine as WinGetUI but after the upgrade to UniGetUI I am stuck in a constant loop, as described above. It tells me I have a missing dependency - so I click the option to install it, then restart the app, only for the process to begin again. I definitely have the module installed, and even did so manually under PowerShell 7 just to make sure it was not an error with my system or PowerShell install. The app is now useless for me because it will not detect any package upgrades and I cannot get past this "missing dependency" issue.

It if  helps, when I click the option to "Install WinGet PowerShell Module" it defaults to trying to install it under Windows Powershell (5) which then fails with this error:
Install-Module : The term 'Install-Module' is not recognized as the name of a cmdlet, function, script file, or operable program. Check the spelling of
the name, or if a path was included, verify that the path is correct and try again.
At line:1 char:4
+ & {Install-Module -Name Microsoft.WinGet.Client -Force -Confirm:$fals ...
+    ~~~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (Install-Module:String) [], CommandNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

So that is why I manually installed the module under PowerShell 7 in administrator mode, only to have UniGetUI continually display the messages in my post above.

Try to install the module on PowerShell 5.1

Hello,
To all users facing issues with version 3.1.0, please try the new 3.1.1 beta, which aims to fix this issues.
UniGetUI 3.1.1-beta0 release: https://github.com/marticliment/UniGetUI/releases/tag/3.1.1-beta0
Direct installer URL: https://github.com/marticliment/UniGetUI/releases/download/3.1.1-beta0/UniGetUI.Installer.exe
Excuse me for the inconveniences.

Try to install the module on PowerShell 5.1

That is what I did. I have 5.1 installed under Windows 11, and I tried installing manually under that and also separately under PowerShell 7. In either case, UniGetUI is not recognizing I have installed the module, and keeps prompting for it.

Hello,
To all users facing issues with version 3.1.0, please try the new 3.1.1 beta, which aims to fix this issues.
UniGetUI 3.1.1-beta0 release: https://github.com/marticliment/UniGetUI/releases/tag/3.1.1-beta0 Direct installer URL: https://github.com/marticliment/UniGetUI/releases/download/3.1.1-beta0/UniGetUI.Installer.exe
Excuse me for the inconveniences.

Unfortunately, the Beta release suffers from the same issue.
They only thing that works for me at this stage, is downgrading back to WinGetUI 3.0.2  - everything went back to normal after that and my package updates are showing up again. I would think that this proves the helper module is installed properly.

On the beta, please go to Settings -> WinGet -> enable Use legacy bundled winget

Will try that shortly...

On the beta, please go to Settings -> WinGet -> enable Use legacy bundled winget

Thanks - seems to have settled down now. But I still had to click the option not to be reminded each time the app starts up, as it keeps saying I do not have the PowerShell module installed. However, it does now bypass this and uses the legacy in-built version, so the updates still work.

I will fix this on the next version

Thank you


Adds more suffixes

Changelog:

Adds missing suffixes to items(Pipe, Cap Gun, Dice Bag)

should ideally upstream this to avoid conflicts


How to access individual pixels and set new value to it

i want to loop through all the pixel and want to do like this if color == white: color = transparent
please make an example folder and provide some basic examples. thank you.

png.data is char sequence, so three char is a pixel. convert char to int by using int()


Fix textarea style

主要改动

textarea-item 组件的部分全局样式没有用上, 这次加上
texarea-item demo的样式调整

Codecov Report

Merging #571 into dev will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##              dev     #571   +/-   ##
=======================================
  Coverage   80.98%   80.98%
=======================================
  Files          98       98
  Lines        2803     2803
  Branches      544      544
=======================================
  Hits         2270     2270
  Misses        376      376
  Partials      157      157

Impacted Files
Coverage Δ

components/textarea-item/index.vue
100% <ø> (ø)
:arrow_up:

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 170e583...79cfddb. Read the comment docs.


Updating only meta data for an object

The ability to update just the meta data for an object (content-disposition, etc.) would be very useful for certain tasks.
Currently when saving an object it appears to download and then re-upload the entire object including it's content even when the only thing that has been changed is a header which wastes a lot of bandwidth and time.

Cleaning up my old issues. Feel free to reopen if still relevant 🙂

Cleaning up my old issues. Feel free to reopen if still relevant 🙂


Ideas on how to improve the project

Great project! I suggest implementing username and message sanitization to protect against common attacks like XSS.
Also, consider adding authentication and encryption to the program. It might be a good idea to have a central server handling all requests and broadcasting sanitized messages to authenticated clients. You can use a service like Firebase for user account management and logins.
In terms of encryption, ensure that all data is transmitted over HTTPS and TLS. Additionally, it's a good idea to implement End-to-End Encryption (E2EE) for secure communication. With E2EE, data is encrypted on the sender's device and can only be decrypted on the recipient's device, preventing intermediaries, including the server, from accessing the message contents. I hope these suggestions are helpful. Good luck!

@saikrishna488 Is this repository still being worked on or has development finished?

As of now, there are no plans to work on it
On Mon, 22 Jul 2024, 8:19 pm DiscoverProgramming, @.***>
wrote:

@saikrishna488 https://github.com/saikrishna488 Is this repository
still being worked on or has development finished?
—
Reply to this email directly, view it on GitHub
https://github.com/saikrishna488/wchat/issues/4#issuecomment-2243150347,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A4A5DOC3667H2MTQOTC76OLZNULWLAVCNFSM6AAAAABLHLD34CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBTGE2TAMZUG4
.
You are receiving this because you were mentioned.Message ID:
@.***>

Alright. Good luck on your coding journey! You have some amazing projects out there. Keep up the good work!

Thanks a lot.
On Mon, 22 Jul 2024, 10:47 pm DiscoverProgramming, @.***>
wrote:

Alright. Good luck on your coding journey! You have some amazing projects
out there. Keep up the good work!
—
Reply to this email directly, view it on GitHub
https://github.com/saikrishna488/wchat/issues/4#issuecomment-2243444271,
or unsubscribe
https://github.com/notifications/unsubscribe-auth/A4A5DOBTKTTWYFX6ZQD5RULZNU5A5AVCNFSM6AAAAABLHLD34CVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDENBTGQ2DIMRXGE
.
You are receiving this because you were mentioned.Message ID:
@.***>


Automatic binning in Dynamic KeyNMF using change point detection

It's mildly inconvenient that users have to define time bins ahead of time. This could be resolved by detecting change points in topic proportions in the document-topic-matrix using change point detection methods. I was thinking about using the ruptures Python package for this as they have a very nice and simple API and good documentation.
Could also be potentially implemented in the other models, but I would prefer to stick to KeyNMF for now.

I'm not so sure anymore that this is a good idea, and users should probably do things like this themselves. I'm closing this.


How to use decimal replace with float 64?

In our project, We defined decimal(38) in our database, When we use gorm gen,It generate float64 as mapping. Is there any way to use decimal mapping?
Use it like  https://pkg.go.dev/github.com/shopspring/decimal

@MikyChow FieldType or WithDataTypeMap

@MikyChow
specify import package path  by WithImportPkgPath
e.g.
cfg := gen.Config{xxx}
cfg.WithImportPkgPath("github.com/shopspring/decimal")

Thanks. Finally it worked


Problem with sampling using ADC via DMA (IDFGH-228)

Development Kit:     Platform IO
Kit version (for WroverKit/PicoKit/DevKitC): v3.1-dev-661-gf586f5e6
Core (if using chip or module): ESP32 Lolin
IDF version                    v3.1-dev-661-gf586f5e6
Development Env:		VS Code + PlatformIO
Operating System:		Windows
Power Supply:                USB

Platform Espressif 32 (Stage)
Updating espressif32                                  @ 29b3a81
Updating tool-esptoolpy                            @ 1.20100.0
Updating framework-arduinoespressif32    @ 6826508
Updating tool-espotapy                             @ 1.1.0
Hi all.
This is a cross-post from esp32.com since it didn't get any love over there.
I'm trying to acquire a single channel analogue input using the I2S DMA. This is somewhat successful in that I can configure the I2S and read data correctly and it gives me sensible values. Great work getting it working. However. I seem to be getting two channels of the same measurement, separated by 1/f, instead of one.
The image below shows some waveforms with their resultant FFTs. The top waveform is a plot of the buffer (with adjustment to remove the DC) assuming it is a single channel (f=120KHz sampling rate) with a signal source of about 10KHz being read by the ADC. The FFT yields 2 major peaks at about 10KHz and at about (f/2)-10KHz. These FFT signals converge until they overlap and then proceed to diverge as the test signal is increased, so they are definitely related to the single signal.

The bottom two are the result of the same data but de-interleaved. The raw measurements (buffer dump of the i2s_read_bytes) can be found here. For these two plots, I am assuming that we have two channels, each sampling at f/2 which yield the expected results.
So it seems I have two interleaved channels, of the same signal, at f/2 sample rate that are "out of phase" by 1/fs. These two channels are then interleaved into the read buffer as if it were a single signal.
By de-interleaving the buffer and then shifting the second signal by 1/fs (delete the first sample from the array of channel 2) and then interleave back, I now get the signal I expect.

Can anyone explain this behaviour? Is there some configuration setting I'm missing?
Code to reproduce: [Note: a physical connection is required between pins 25 and  34]

So. No one is going to suggest it is an IQ signal?
There seems to be no documentation for this or how it basically halves the requested sample rate. How does it work with multiple channels? Does the sample rate halve for each channel acquired?

For example, if add after i2s_adc_enable():
SYSCON.saradc_ctrl.sar1_patt_len = 3;
SYSCON.saradc_sar1_patt_tab[0] = 0x0e3e6e7e;
SYSCON.saradc_ctrl2.sar1_inv = 1;
This can scan 0,3,6,7 ADC1 with a 12-bit resolution and 6 dB attenuation. In this case, the sampling frequency remains the same f/2 for each channel with the same distortion.

#include "soc/syscon_reg.h"
#include "soc/syscon_struct.h"

@phonec

For example, if add after i2s_adc_enable():
SYSCON.saradc_ctrl.sar1_patt_len = 3;
SYSCON.saradc_sar1_patt_tab[0] = 0x0e3e6e7e;
SYSCON.saradc_ctrl2.sar1_inv = 1;
This can scan 0,3,6,7 ADC1 with a 12-bit resolution and 6 dB attenuation. In this case, the sampling frequency remains the same f/2 for each channel with the same distortion.

That doesn't seem to do anything. It is still a single channel.

Hi, @Splediferous
Have you solved the issue?

@Splediferous Hi, would you help share if any updates for this issue? Thanks.

Are you sure this is an issue with the ADC. Haven't tested fully yet, but found that all appeared OK from the ADC using my scope's test square wave (Added a cap to get a sloping at the start of the waveform). My scope also has crazy jitter trying to view the DAC signal from the ESP32. Have you sampled other waveforms apart from the DAC cosine? Will test with another, as soon as I get the ad9833 on my bench going.

Sorry for the delay in replying. We went with another product in the end.
I haven't had the opportunity to revisit this but I will in the next couple of weeks and report back.

Hey,
I had exactly the same issue like @Splediferous in his first post. ADC with I2S & DMA works fine but the results are very weird. I made the same experience:

So it seems I have two interleaved channels, of the same signal, at f/2 sample rate that are "out of phase" by 1/fs. These two channels are then interleaved into the read buffer as if it were a single signal.

This was my first raw measurement with 16kHz:

I measured a 1 kHz reference signal from an oscilloscope. It was noticeable that some values are repeated after a certain period of time. This must be the "interleaved channels" problem.
So I added more channels to the ADC pattern table, that it can't be a pattern table reading problem.
    //[...]
    i2s_driver_install(I2S_NUM_0, &i2s_config, 0, NULL);

    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_1);
    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_3);
    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_6);
    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_7);

    i2s_set_adc_mode(ADC_UNIT_1, ADC1_CHANNEL_7); //Channel doenst care, will be overridden later

    // ADC-I2S Scanning does not normal start (more badly) after the reset of ESP32.
    // It is necessary to add a delay of 5 seconds before switching on the ADC for a reliable start, this is issue.
    vTaskDelay(5000/portTICK_RATE_MS);

    i2s_adc_enable(I2S_NUM_0);

    //Enable Multipattern scanning
    SYSCON.saradc_ctrl.sar1_patt_len = 1; //2 Items in pattern table
    SYSCON.saradc_sar1_patt_tab[0] = 0x7f3f6f1f; //Array[0] first 4 items, Array[1] next 4 items...
                                                 ///ch_sel[3:0] bit_width[1:0] atten[1:0]
    SYSCON.saradc_ctrl2.sar1_inv = 1; //Inversion

Now my measurement looks much cleaner.

But wait, again this repeating values issue. And I've added another Channel, so one period of this 1 kHz signal must have 16/2 = 8 values. But it has 16. I found an ?error? in my config.
I've changed
.channel_format = I2S_CHANNEL_FMT_RIGHT_LEFT,
to
.channel_format = I2S_CHANNEL_FMT_ONLY_LEFT,
and voillà

Increasing the sample rate to 32kHz and adding another 2 channels also works fine now.
My full I2S Init is now:
void I2Sinit(uint32_t sample_rate)
{
    i2s_config_t i2s_config =
    {
    .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX | I2S_MODE_ADC_BUILT_IN),
    .sample_rate =  (int)(sample_rate),
    .bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT,
    .channel_format = I2S_CHANNEL_FMT_ONLY_LEFT,
    .communication_format = I2S_COMM_FORMAT_I2S_MSB,
    .intr_alloc_flags = ESP_INTR_FLAG_LEVEL1,
    .dma_buf_count = 2,
    .dma_buf_len = 1024,
    .use_apll = false,
    };

    i2s_driver_install(I2S_NUM_0, &i2s_config, 0, NULL);

    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_1);
    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_3);
    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_6);
    adc_gpio_init(ADC_UNIT_1, ADC_CHANNEL_7);

    i2s_set_adc_mode(ADC_UNIT_1, ADC1_CHANNEL_7); //Channel doenst care, will be overridden later

    // ADC-I2S Scanning does not normal start (more badly) after the reset of ESP32.
    // It is necessary to add a delay of 5 seconds before switching on the ADC for a reliable start, this is issue.
    vTaskDelay(5000/portTICK_RATE_MS);

    i2s_adc_enable(I2S_NUM_0);

    //Enable Multipattern scanning
    SYSCON.saradc_ctrl.sar1_patt_len = 3; //4 Items in pattern table
    SYSCON.saradc_sar1_patt_tab[0] = 0x7f3f6f1f; //Array[0] first 4 items, Array[1] next 4 items...
                                                 ///ch_sel[3:0] bit_width[1:0] atten[1:0]
    SYSCON.saradc_ctrl2.sar1_inv = 1; //Inversion
}

hopefully i could help someone :)

That does not works for me. I still get strange singals. I'am measuring a 4khz signal from a signal generator with my esp32 with 80.000hz. My signals looks just like yours before your corrections.
My i2s init:
void configure_i2s() {
  i2s_config_t i2s_config = {
    .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX | I2S_MODE_TX | I2S_MODE_ADC_BUILT_IN),                                        // I2S receive mode with ADC
    .sample_rate = samplingFrequency,                      // sample rate (80000)
    .bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT,          // 16 bit I2S
    .channel_format = I2S_CHANNEL_FMT_ONLY_LEFT,           // only the right channel
    .communication_format = I2S_COMM_FORMAT_I2S,           // I2S format
    .intr_alloc_flags = 0,                                 // none
    .dma_buf_count = 8, //8                               // number of DMA buffers
    .dma_buf_len = NUM_SAMPLES,                            // number of samples 100
    .use_apll = 0,                                         // no Audio PLL
  };
  // ADC channel 0 with 11db (divide by input 3.6)
  adc1_config_channel_atten(ADC_CHANNEL, ADC_ATTEN_11db);
  // 12 bit ADC
  adc1_config_width(ADC_WIDTH_12Bit);
  // install I2S 0 driver, using event queue
  i2s_driver_install(I2S_NUM_0, &i2s_config, 0, NULL);
  // ADC should use ADC_CHANNEL
  i2s_set_adc_mode(ADC_UNIT_1, ADC_CHANNEL);
  // The raw ADC data is written in DMA in inverted form. This add aninversion:
  SET_PERI_REG_MASK(SYSCON_SARADC_CTRL2_REG, SYSCON_SARADC_SAR1_INV);
  // enable I2S ADC
  vTaskDelay(5000/portTICK_RATE_MS);
  i2s_adc_enable(I2S_NUM_0);
  olvasunk_e = true;
  Serial.println("I2S started");
}

And the ADC Sampling function where i split the data to the web:
static const inline void ADC_Sampling(){
  //portENTER_CRITICAL_ISR(&timerMux);
  uint16_t i2s_read_buff[NUM_SAMPLES];
  int num = i2s_read_bytes(I2S_NUM_0, (char*)i2s_read_buff,  NUM_SAMPLES * sizeof(uint16_t), portMAX_DELAY);
  //collected_samples += num / sizeof(uint16_t);
  if(millis() - getfastdatamillis >= Frissit && Chart_is_ok_to_Send_Data && olvasunk_e){
    getfastdatamillis = millis();
    for (int i=0;i<NUM_SAMPLES;i++) {
      String json = "";
      json += String((i2s_read_buff[i] & 0xFFF)/ (float)40.95);
      json += "}";
      webSocket.broadcastTXT(json.c_str(), json.length());
    }
  }
  //portEXIT_CRITICAL_ISR(&timerMux);
}

The signals that i'am getting:

That does not works for me. I still get strange singals. I'am measuring a 4khz signal from a signal generator with my esp32 with 80.000hz. My signals looks just like yours before your corrections.

Have you added multipattern scanning? I had the problem when only one channel is in this pattern table. So I needed at least two channels.

I just had to modify the channel format to :
.channel_format = I2S_CHANNEL_FMT_ALL_LEFT,
The signals are okay but now i have a buffer overflow issue. :'D

That does not works for me. I still get strange singals. I'am measuring a 4khz signal from a signal generator with my esp32 with 80.000hz. My signals looks just like yours before your corrections.

Have you added multipattern scanning? I had the problem when only one channel is in this pattern table. So I needed at least two channels.

I just had to modify the channel format to :
.channel_format = I2S_CHANNEL_FMT_ALL_LEFT,
The signals are okay but now i have a buffer overflow issue. :'D

The buffer overflow issue has been solved by separating the i2s read and the plotting functions to the two cores.
My i2s init now:
void configure_i2s(){
  i2s_config_t i2s_config =
    {
    .mode = (i2s_mode_t)(I2S_MODE_MASTER | I2S_MODE_RX | I2S_MODE_ADC_BUILT_IN),  // I2S receive mode with ADC
    .sample_rate = samplingFrequency,                                             // sample rate 153260hz idk why but works with 4khz signals O_o
    .bits_per_sample = I2S_BITS_PER_SAMPLE_16BIT,                                 // 16 bit I2S
    .channel_format = I2S_CHANNEL_FMT_ALL_LEFT,                                   // all the left channel
    .communication_format = (i2s_comm_format_t)(I2S_COMM_FORMAT_I2S | I2S_COMM_FORMAT_I2S_MSB),   // I2S format
    .intr_alloc_flags = 0,                                                        // none
    .dma_buf_count = 2,                                                           // number of DMA buffers
    .dma_buf_len = 1024,                                                   // number of samples
    .use_apll = 0,                                                                // no Audio PLL
  };
  adc1_config_channel_atten(ADC_CHANNEL, ADC_ATTEN_11db);
  adc1_config_width(ADC_WIDTH_12Bit);
  i2s_driver_install(I2S_NUM_0, &i2s_config, 0, NULL);

  i2s_set_adc_mode(ADC_UNIT_1, ADC_CHANNEL);
  SET_PERI_REG_MASK(SYSCON_SARADC_CTRL2_REG, SYSCON_SARADC_SAR1_INV);
  i2s_adc_enable(I2S_NUM_0);
  vTaskDelay(1000);
}

ADC i2s read function on core 1:
just like that: O_o
uint16_t i2s_read_buff[NUM_SAMPLES];

static const inline void Sampling(){
    i2s_read(I2S_NUM_0, (char*)i2s_read_buff,NUM_SAMPLES * sizeof(uint16_t), &bytes_read, portMAX_DELAY);
}

Reading and plotting function to web on core 0:
static const inline void Plotting(uint16_t* Buffer){
   String data;
  if (Chart_is_ok_to_Send_Data) // if user opened the chart page
  {
    for(int i = 0;i<NUM_SAMPLES;i++)
    {
      data = String((Buffer[i])/(float)40.95); // divide for % representation
      if(olvasunk_e){  // turn on/off flag for visualization
      data += "}";
      webSocket.broadcastTXT(data.c_str(), data.length());
      }
    }
  }
}

SYSCON.saradc_ctrl2.meas_num_limit = 0;
This will help with issues with random skipping and reordering of samples.

I am having similar issues. Too sad this issue got so little attention.

Thanks for reporting, feel free to reopen.

Is this fixed?

The issue looks like mainly related to the I2S configuration. Due to the limitation of the legacy driver, channel_format and communication_format have to be set to a particular value to avoid the adjacent data swapped. Glad to see that the comments above have give out the solution (solution 1, solution 2).
It should have been fixed in the new esp_adc since v5.0 driver, the new driver uses fixed I2S slot format instead of configuring by users. Suggest to migrate to the version that >= v5.0 to have a try.


Import simplification too aggressive for transpileOnly in super call

TypeScript Version: 2.9.1
Search Terms: transpile-only import
Code
import { QueryEntity } from '../../../Framework/Signum.React/Scripts/Signum.Entities.Basics'
import { ToolbarConfig, ToolbarResponse } from './ToolbarClient'

export default class QueryToolbarConfig extends ToolbarConfig<QueryEntity> {
    constructor() {
        super(QueryEntity);
    }
}

Expected behavior:
QueryEntity is imported in the generated JS.
Actual behavior:
QueryEntity is simplified away.
"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _Framework_Signum_React_Scripts_Reflection__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../../../Framework/Signum.React/Scripts/Reflection */ "../Framework/Signum.React/Scripts/Reflection.ts");
/* harmony import */ var _Framework_Signum_React_Scripts_Finder__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../../Framework/Signum.React/Scripts/Finder */ "../Framework/Signum.React/Scripts/Finder.tsx");
/* harmony import */ var _ToolbarClient__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./ToolbarClient */ "../Extensions/Signum.React.Extensions/Toolbar/ToolbarClient.tsx");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = Object.setPrototypeOf ||
        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
    return function (d, b) {
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();
var QueryToolbarConfig = /** @class */ (function (_super) {
    __extends(QueryToolbarConfig, _super);
    function QueryToolbarConfig() {
        return _super.call(this, QueryEntity) || this; //<--- problem here
    }
}

bundle.main.1e1e130d262a7c0b7498.js:6772 Uncaught (in promise) ReferenceError: QueryEntity is not defined
    at new QueryToolbarConfig (bundle.main.1e1e130d262a7c0b7498.js:6772)
    at bundle.main.1e1e130d262a7c0b7498.js:30387

The problem is fixed just by assigning QueryEntity to a variable first:
export default class QueryToolbarConfig extends ToolbarConfig<QueryEntity> {
    constructor() {
        var a = QueryEntity;
        super(a);
    }
}

Duplicate of https://github.com/Microsoft/TypeScript/issues/24551, fixed by https://github.com/Microsoft/TypeScript/pull/24591.
Fix should be already in typescript@next today, and in<EMAIL_ADDRESS>in two weeks.

This is pretty annoying since it blocks use of TS 2.9 when running with a large project with type errors / partially typed files (forcing use of transpileOnly). Any way to get this fix to a stable version faster?
I'm assuming this is the issue causing https://github.com/TypeStrong/ts-node/issues/591

This also happens when using webpack. Even worse: This error is only noticed once an instance of the corresponding class is constructed at runtime, which might only happen seldom and thus not be noticed.
I have many files that look like this:
import config from "client/config";

class Something extends XYZ {
	constructor() {
		super(config.var); [...]
	}

I can't even find all instances of this error without it crashing my code randomly and fixing it when it does.


add docs to connect to remote server via ssh tunnel

@tyler-smith @cpacia what do you think of this?

This is exactly what running an OpenBazaar server on a P2P VPS will do. It's not trival, or easy. Even with step-by-step directions, not many people are going to be able to follow it.

Hmmm... I'm not sure this makes sense in this doc. It seems like a really advanced, unique scenario. I'm not sure where it should go, but questioning if this is the right place.

Going to close this for now as an advanced configuration option which we're not sure exactly where to document. Thanks @MaximilianMeister for the submission. We may very well circle back to it.


Add Validation to Forms

At the moment, the forms are not throwing any errors if the wrong are inserted. Add a function to alert users to input a proper email or have a secure password or username.

i've planned to put those client validation functions in static/js/func.js, and using it by calling from static/js/signin.js + signup.js specifically on each pages; I hope this way can help to make it clear and easy to understand/re-using them.


tensorflow.python.framework.errors_impl.NotFoundError: undefined symbol: nlopt_destroy

Hi Yu Xiang,
I have compiled successfully all your installation steps and I run this './experiments/scripts/demo.sh $GPU_ID' . However, I get the trouble:
Traceback (most recent call last):   File "./tools/demo.py", line 113, in <module>     from networks.factory import get_network   File "/home/quannguyen/quan/Solomon/python/Deep Learning/PoseCNN-master/tools/../lib/networks/__init__.py", line 8, in <module>     from .vgg16 import vgg16   File "/home/quannguyen/quan/Solomon/python/Deep Learning/PoseCNN-master/tools/../lib/networks/vgg16.py", line 2, in <module>     from networks.network import Network   File "/home/quannguyen/quan/Solomon/python/Deep Learning/PoseCNN-master/tools/../lib/networks/network.py", line 17, in <module>     import hough_voting_layer.hough_voting_op as hough_voting_op   File "/home/quannguyen/quan/Solomon/python/Deep Learning/PoseCNN-master/tools/../lib/hough_voting_layer/hough_voting_op.py", line 5, in <module>     _hough_voting_module = tf.load_op_library(filename)   File "/home/quannguyen/anaconda3/envs/CV_TF_python36/lib/python3.6/site-packages/tensorflow/python/framework/load_library.py", line 56, in load_op_library     lib_handle = py_tf.TF_LoadLibrary(library_filename) tensorflow.python.framework.errors_impl.NotFoundError: /home/quannguyen/quan/Solomon/python/Deep Learning/PoseCNN-master/tools/../lib/hough_voting_layer/hough_voting.cpython-36m-x86_64-linux-gnu.so: undefined symbol: nlopt_destroy
#Update:
I have fix it follow thread #1, so I close this topic, thanks.

I have the same problem. What solution from #1  fixed it?
D_GLIBCXX_USE_CXX11_ABI=0?
I get the error even with this flag.

＠QuanNguyen94　hello? could you tell me how to solve the problem? i add the flag in the command, but still have error.
do u compile tensorflow from source code?


Training code?

Hi, I have a couple of questions:

Do you plan to upload the training code as well? If so, could you share when you might do this?
From what I understand, you adopted x₀ prediction instead of ϵ prediction. Does the base model (the one you pretrained) originally use ϵ prediction, and did you switch it to x₀ prediction afterward? If so, did you find that changing the prediction target negatively impacted optimization, given that the model had to learn a different objective?

Thanks in advance for any clarification!

Hi, thanks so much for your interest!
We do plan to release the training code, but we have to ask our supervisor first.
Please wait for my reply. Thanks.
Best,

Hi there, thanks again for your interest!
The training code will be released upon the acceptance of our paper. Same as Marigold.
Upon any questions, please feel free to reach out to us :)


Register only one DOMContentLoaded event listener in onDOMContentLoaded

Closes #34103
Since #34114 is more focused around changing the way we register our components with jQuery, this PR is changing the onDOMContentLoaded utility function, to make use of an array to cache callbacks (while the document is loading) and execute them all at once. Therefore we register only one DOMContentLoaded event listener instead of one for every call to the function.

Seems fine by me

@GeoSot Changed the implementation so it wouldn't add an event listener when the function isn't called during loading state. Updated the test to check that addEventListener isn't called more than once.

@rohit2sharma95  give it a look, if you like, for a second opinion

@XhmikosR removed the IIFE as requested


Function seems overly complex...

https://github.com/jcupitt/ruby-vips/blob/9aae997817c13ba9dd71a2d28dfc62246654fa08/lib/vips/call.rb#L10-L214
Just wondering if this function is more complex than it needs to be. It looks like it's doing a lot of "redundant" processing. Could it be simplified?
Also, the function is hard to read and understand. I believe it's covering too much "surface area". Perhaps it could be broken up into smaller more manageable bits.

Also, this comment disturbs me slightly: https://github.com/jcupitt/ruby-vips/blob/9aae997817c13ba9dd71a2d28dfc62246654fa08/lib/vips/call.rb#L3-L7

Yes, it wasn't easy to get that working. See for example:
https://sourceforge.net/p/ruby-gnome2/mailman/message/34555202/
The crashes were if a Ruby GC hit during vips object construction. It seems stable now: I use ruby-vips on quite large projects.
Yes, perhaps call_base_nogc should be broken into a class and a set of methods. I don't think there's much redundant processing, but I'm often wrong.

It's probably more a matter of style. The function is 200 LOC which is pretty big, and looks like it could do with a bit of refactoring.
As for the GC issue, it's a nasty hack and perhaps you should bring that discussion to ruby-dev mailing list for discussion.

The crashes are in gobject-introspection, so I think it'd be for them to fix, if anyone.
I made them a sample crasher, but it was huge, unfortunately, and I'm not sure they ever investigated.  The way forward would probably be to make a smaller crash demo for them.

I've reworked it, it's probably a bit more straightforward.

This is in 1.0.3, I'll close.


Add filters to JsonPathBodyFilterBuilder jsonPath

Add filters to:
public static JsonPathBodyFilterBuilder jsonPath(final String jsonPath) {
        return new JsonPathBodyFilterBuilder(compile(jsonPath));
    }

public static JsonPathBodyFilterBuilder jsonPath(final String jsonPath, Predicate... filters) {
        return new JsonPathBodyFilterBuilder(compile(jsonPath, filters));
    }

For example, we can select only leaf element:
jsonPath("$..pets[?]", new Predicate() {
    @Override
    public boolean apply(PredicateContext ctx) {
        Object val = ctx.item();
        return !(val instanceof Map || val instanceof List);
    }
});

Happy to contribute

Anyone working on this one?

Anyone working on this one?

@kasmarian

@pedroluiznogueira If @bata19 is not looking into this, then I'd not expect any progress at the moment. I haven't seen PRs yet

@kasmarian may I work on this then?

@pedroluiznogueira Feel free to do it if you have any bandwidth. I could only do it some time at a later point.

Will do! I've got some time to take a look into that.

@kasmarian @whiskeysierra I was searching for a way to contribute to this project and I remembered this issue, is this still worth doing? I took a look and it seems like it's still not supported.

@pedroluiznogueira if you find a need for this feature, feel free to reopen this issue and add a PR with your proposal. There was no interest in the issue in the last several months, so the bot closed it.


README Project links aren't rendering correctly

Describe your problem and - if possible - how to reproduce it
Project lists in the README aren't rendered correctly (see screenshot below).
Add a Link to the page with the problem
E.g. https://github.com/freeCodeCamp/freeCodeCamp/blob/staging/README.md#1-responsive-web-design-certification
Solution
Just need to add a new line before the Projects list for the six certifications in the README.
If possible, add a screenshot here

Hello,
First timer here wanting to contribute.  Made my first pull request for the issue.  Hope it helps!  Happy to make changes if it's incorrect. Thanks!


NIFI 945:  New property (wrap as array) in avro2json converter

Create a new property (wrap as array) in ConvertAvroToJson, which determines how stream of records is exposed: either as a sequence of single Objects (false), writing every Object to a new line, or as an array of Objects. Default value is true, meaning that the Avro content is exposed as an array of Object entries. False value is useful, when you want to write your records as single instances to a target component (e.g. Kafka).
Let's assume you have an Avro content as stream of tracking events ({"id":"user1", "item":"itemX", "action": "buy"}, {"id":"user2", "item":"itemY", "action": "like"})...{"id":"userN", ...}).
If wrap as array is false, the converter will expose the records as sequence of single JSON objects:
{"id":"user1", "item":"itemX", "action": "buy"}
{"id":"user2", "item":"itemY", "action": "like"}
...
{"id":"userN", ...}

Please bear in mind, that the final output is not a valid JSON content. You can then forward this content e.g. to Kafka, where every record will be a single Kafka message.
If wrap as array is true, the output looks like this:
[{"id":"user1", "item":"itemX", "action": "buy"},{"id":"user2", "item":"itemY", "action": "like"},...,{"id":"userN", ...}]

It is useful when you want to convert your Avro content to a valid JSON array.

I'm having a heck of a time getting this to merge clean due to whitespace issues (^M newlines)

I commented on https://issues.apache.org/jira/browse/NIFI-945 - looks good, modulo some minor tweaks

@joemeszaros - I amended your changes to get it to merge clean and for some consistency with other processors in that thread (see commit d1acd152). I just noticed a the getBytes on 140 needs a charset though. Hoping you can look it over and confirm the amendments are representative of your intent?

I can confirm the amendments, please find my inline comments at the referenced commit.

Thanks for your help!


TGRSILoop HTML Docs

formatting/comments need to be added to the code to generate the appropriate html docs. see #211

Library has been killed.


Make receive_packet to report we are at the end of a flushing command

Coverage increased (+0.04%) to 79.573% when pulling 234b4a89bfdbdc4e8e84be062627dfc2d7f5256b on rust-av:flushing into a45a2ac3b4cd035ca78febff6e3d56e83acaa486 on xiph:master.


Evaluate Profile-Guided Optimization (PGO) and LLVM BOLT

Hi!
Recently I did a lot of PGO benchmarks on different software - all available results are here. According to my tests, PGO can help with achieving better performance in many workloads. Since Lychee cares about performance (I think so because the project has benchmarks), I think it would be a good idea to test PGO on it.
So I tested PGO on Lychee on my Macbook M1 Pro, macOS 13.4, Rust 1.72 and here are the results. All tests was done via cargo bench. PGO optimization is done with cargo-pgo.
Release:
extract from large docs time:   [12.814 ms 12.908 ms 13.045 ms]
Found 1 outliers among 10 measurements (10.00%)
  1 (10.00%) high severe

Release + PGO optimization (compared to Release), cargo pgo optimize bench command:
extract from large docs time:   [10.084 ms 10.098 ms 10.113 ms]
                        change: [-20.758% -20.030% -19.527%] (p = 0.00 < 0.05)
                        Performance has improved.
Found 1 outliers among 10 measurements (10.00%)
  1 (10.00%) high severe

Release + PGO instrumented, compared to Release (I publish these numbers so you can estimate how Lychee is slow in the PGO instrumentation mode), cargo pgo bench command:
extract from large docs time:   [39.635 ms 39.781 ms 39.874 ms]
                        change: [+205.32% +207.99% +210.21%] (p = 0.00 < 0.05)
                        Performance has regressed.

As you see, at least in the provided by the projects benchmarks, PGO allows to achieve better performance.
I can suggest to do the following things:

Add a note to the Lychee documentation about building with PGO. In this case, users and maintainers who build their own Lychee packages will be aware of PGO as an additional way to optimize Lychee
Optimize provided by Lychee team binaries on the CI (like it's already done for other projects like Rustc), if you have any
After that, I suggest trying to apply LLVM BOLT as an additional post-PGO step. Rustc already does it on some platforms.

Apologies for the delay.
The numbers look promising.
At the end you mentioned Ruff, but I assume you meant lychee.
If you have the time, I'd be happy about the CI optimizations you mentioned.

Apologies for the delay.

No worries :)

At the end you mentioned Ruff, but I assume you meant lychee.

Whoops! Sorry - fixed that now.

If you have the time, I'd be happy about the CI optimizations you mentioned.

I will try my best but right now have quite a tight backlog with other projects. Hopefully, once will find enough time for Lychee.

@zamazan4ik, is still something you'd like to tackle in the foreseeable future?

is still something you'd like to tackle in the foreseeable future?

Yep! I just want to finish my article about PGO. After that as a next step, I think I will get enough free time for integrating PGO into the build pipelines for more open-source projects (like Lychee).

Awesomeness! Thanks for the update. 😊

Uhm, that's not article, that's a book! 😆 You should actually consider to make this an ebook or so.

Uhm, that's not article, that's a book! 😆 You should actually consider to make this an ebook or so.

Huh! From my estimations, it's a half-finished article (or just a bit more like 60%). I am considering in the future creating something like a "PGO book" (as we already have an awesome Rust book, and many other similar ebooks). If the community will give feedback about creating a book - why not?  An awesome book sounds like a great idea to me. It could make the content more accessible.

Still open for PRs, but I'm closing this as it's technically not an issue with the project.

Then I suggest converting the issue into the Discussion (and moving to the "Ideas" section). It will be the better place for this activity since I agree with you - it's not a bug or something like that.

Good idea!


Feature: make typer optional and move to faststream[cli] distribution

Also we should update documentation accordingly

I think, we should remove CLI typer dependency from default destribution and move it to faststream[cli] optionals (with watchfiles probably)

Hey @Lancetnik, I would like to contribute to this repository and would like to pick this issue. I already start working on this probably by the end of this week I might open a PR.

@RubenRibGarcia thank you for your interest! I will wait for PR from you 😄